diff options
author | Uros Bizjak <ubizjak@gmail.com> | 2013-01-27 13:16:54 +0000 |
---|---|---|
committer | Uros Bizjak <ubizjak@gmail.com> | 2013-01-27 13:16:54 +0000 |
commit | 99819b04d74faef50e48af48a47e35ea2321e2f0 (patch) | |
tree | 69e3a0ec7f7aa47fb74a45a5a589ec9d276b1c32 | |
parent | 61411d52b387ae193540282893413788a79f76be (diff) |
PR target/56114
* config/i386/i386.md (*movabs<mode>_1): Add square brackets around
operand 0 in movabs insn template for -masm=intel asm alternative.
(*movabs<mode>_2): Ditto for operand 1.
testsuite/ChangeLog:
PR target/56114
* gcc.target/i386/pr56114.c: New test.
git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@195494 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | gcc/ChangeLog | 38 | ||||
-rw-r--r-- | gcc/config/i386/i386.md | 4 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/gcc.target/i386/pr56114.c | 10 |
4 files changed, 36 insertions, 21 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index a49bfdda700..05f66351856 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2013-01-27 Uros Bizjak <ubizjak@gmail.com> + + PR target/56114 + * config/i386/i386.md (*movabs<mode>_1): Add square brackets around + operand 0 in movabs insn template for -masm=intel asm alternative. + (*movabs<mode>_2): Ditto for operand 1. + 2013-01-26 David Holsgrove <david.holsgrove@xilinx.com> PR target/54663 @@ -38,8 +45,8 @@ * config/aarch64/aarch64-simd-builtins.def: Separate sq<r>dmulh_lane entries into lane and laneq entries. - * config/aarch64/aarch64-simd.md (aarch64_sq<r>dmulh_lane<mode>): Remove - AdvSIMD scalar modes. + * config/aarch64/aarch64-simd.md (aarch64_sq<r>dmulh_lane<mode>): + Remove AdvSIMD scalar modes. (aarch64_sq<r>dmulh_laneq<mode>): New. (aarch64_sq<r>dmulh_lane<mode>): New RTL pattern for Scalar AdvSIMD modes. @@ -91,8 +98,7 @@ 2013-01-24 Diego Novillo <dnovillo@google.com> - * Makefile.in (GGC): Remove. Replace all instances with - ggc-page.o. + * Makefile.in (GGC): Remove. Replace all instances with ggc-page.o. (ggc-zone.o): Remove. * configure.ac: Remove option --with-gc. * configure: Re-generate. @@ -102,13 +108,11 @@ (output_type_enum): Remove. Update all users. (write_enum_defn): Remove. Update all users. (enum alloc_zone): Remove. Update all users. - (write_splay_tree_allocator_def): Remove generation of gt_e_* - argument. + (write_splay_tree_allocator_def): Remove generation of gt_e_* argument. * ggc-common.c (ggc_splay_alloc): Remove first argument. Update all callers. (struct ptr_data): Remove field TYPE. Update all users. - (gt_pch_note_object): Remove argument TYPE. Update all - users. + (gt_pch_note_object): Remove argument TYPE. Update all users. * ggc-internal.h (ggc_pch_alloc_object): Remove last argument. Update all users. * ggc-none.c (ggc_alloc_typed_stat): Remove. @@ -116,14 +120,11 @@ (ggc_internal_alloc_zone_stat): Remove. (ggc_internal_cleared_alloc_zone_stat): Remove. * ggc-page.c (ggc_alloc_typed_stat): Remove. - (ggc_pch_count_object): Remove last argument. Update all - users. - (ggc_pch_alloc_object): Remove last argument. Update all - users. + (ggc_pch_count_object): Remove last argument. Update all users. + (ggc_pch_alloc_object): Remove last argument. Update all users. (struct alloc_zone): Remove. * ggc-zone.c: Remove. - * ggc.h (gt_pch_note_object): Remove last argument. Update - all users. + * ggc.h (gt_pch_note_object): Remove last argument. Update all users. (struct alloc_zone): Remove. (ggc_alloc_typed_stat): Remove. (ggc_alloc_typed): Remove. @@ -132,11 +133,9 @@ (tree_zone): Remove. Update all users. (tree_id_zone): Remove. Update all users. (ggc_internal_zone_alloc_stat): Remove. Update all users. - (ggc_internal_zone_cleared_alloc_stat): Remove. Update all - users. + (ggc_internal_zone_cleared_alloc_stat): Remove. Update all users. (ggc_internal_zone_vec_alloc_stat): Remove. Update all users. - * tree-ssanames.c: Remove references to zone allocator in - comments. + * tree-ssanames.c: Remove references to zone allocator in comments. 2013-01-24 Georg-Johann Lay <avr@gjlay.de> @@ -179,7 +178,8 @@ 2013-01-23 Kostya Serebryany <kcc@google.com> - * config/darwin.h: remove dependency on CoreFoundation (asan on Mac OS). + * config/darwin.h: remove dependency on + CoreFoundation (asan on Mac OS). 2013-01-23 Jakub Jelinek <jakub@redhat.com> diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md index 9d0a4995fcc..59b5b69b13b 100644 --- a/gcc/config/i386/i386.md +++ b/gcc/config/i386/i386.md @@ -2308,7 +2308,7 @@ (match_operand:SWI1248x 1 "nonmemory_operand" "a,r<i>"))] "TARGET_LP64 && ix86_check_movabs (insn, 0)" "@ - movabs{<imodesuffix>}\t{%1, %P0|%P0, %1} + movabs{<imodesuffix>}\t{%1, %P0|[%P0], %1} mov{<imodesuffix>}\t{%1, %a0|%a0, %1}" [(set_attr "type" "imov") (set_attr "modrm" "0,*") @@ -2322,7 +2322,7 @@ (mem:SWI1248x (match_operand:DI 1 "x86_64_movabs_operand" "i,r")))] "TARGET_LP64 && ix86_check_movabs (insn, 1)" "@ - movabs{<imodesuffix>}\t{%P1, %0|%0, %P1} + movabs{<imodesuffix>}\t{%P1, %0|%0, [%P1]} mov{<imodesuffix>}\t{%a1, %0|%0, %a1}" [(set_attr "type" "imov") (set_attr "modrm" "0,*") diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 4d5a236727a..e5e19491997 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2013-01-27 Uros Bizjak <ubizjak@gmail.com> + + PR target/56114 + * gcc.target/i386/pr56114.c: New test. + 2013-01-27 Paul Thomas <pault@gcc.gnu.org> PR fortran/55984 diff --git a/gcc/testsuite/gcc.target/i386/pr56114.c b/gcc/testsuite/gcc.target/i386/pr56114.c new file mode 100644 index 00000000000..43e62ae3b73 --- /dev/null +++ b/gcc/testsuite/gcc.target/i386/pr56114.c @@ -0,0 +1,10 @@ +/* { dg-do assemble } */ +/* { dg-options "-O2 -masm=intel" } */ +/* { dg-require-effective-target lp64 } */ +/* { dg-require-effective-target masm_intel } */ + +long +foo2 (void) +{ + return *(volatile int *) 0xFEE00000; +} |