pr29006.c
213 Bytes
-
re PR target/29006 (Incorrect zeroing of unaligned 64-bit fields on MIPS targets) · 9226543b
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. From-SVN: r116822
Richard Sandiford committed