OSDN Git Service

gcc/
authorrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 10 Sep 2006 19:28:48 +0000 (19:28 +0000)
committerrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 10 Sep 2006 19:28:48 +0000 (19:28 +0000)
commitee116d2bb794dacbae64f973c8741037cfa8dc46
treeb9dc496a59b71728c2401746553b841ebcbcaa38
parent2805e80bf76f40b224a465a73733e2ed5a7e81b5
gcc/
PR target/29006
* config/mips/mips-protos.h (mips_mem_fits_mode_p): Declare.
* config/mips/mips.c (mips_expand_unaligned_store): Use the mode
returned by mode_for_size, rather than the mode of src itself,
to choose between 32-bit and 64-bit patterns.
(mips_mem_fits_mode_p): New function.
* config/mips/mips.md (mov_<load>l, mov_<load>r): Use it to check
that the size of the source matches the size of the destination.
(mov_<store>l, mov_<store>r): Likewise.

gcc/testsuite/
PR target/29006
* gcc.c-torture/execute/pr29006.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@116822 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/config/mips/mips-protos.h
gcc/config/mips/mips.c
gcc/config/mips/mips.md
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.c-torture/execute/pr29006.c [new file with mode: 0644]