re PR rtl-optimization/57344 (wrong code with pragma pack(1) and -O1 on x86)
authorJakub Jelinek <jakub@redhat.com>
Thu, 23 May 2013 09:17:34 +0000 (11:17 +0200)
committerJakub Jelinek <jakub@gcc.gnu.org>
Thu, 23 May 2013 09:17:34 +0000 (11:17 +0200)
commitbd3647bf76d1d207eaa80c7c6b5a460fecc327a9
tree57fea5153070c42926cb9de1a4e5502db3ae37bd
parenta55757eae4c6711e558143595cbbfad97550b3e0
re PR rtl-optimization/57344 (wrong code with pragma pack(1) and -O1 on x86)

PR middle-end/57344
* expmed.c (store_split_bit_field): If op0 is a REG or
SUBREG of a REG, don't lower unit.  Handle unit not being
always BITS_PER_WORD.

* gcc.c-torture/execute/pr57344-1.c: New test.
* gcc.c-torture/execute/pr57344-2.c: New test.
* gcc.c-torture/execute/pr57344-3.c: New test.
* gcc.c-torture/execute/pr57344-4.c: New test.

From-SVN: r199238
gcc/ChangeLog
gcc/expmed.c
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.c-torture/execute/pr57344-1.c [new file with mode: 0644]
gcc/testsuite/gcc.c-torture/execute/pr57344-2.c [new file with mode: 0644]
gcc/testsuite/gcc.c-torture/execute/pr57344-3.c [new file with mode: 0644]
gcc/testsuite/gcc.c-torture/execute/pr57344-4.c [new file with mode: 0644]