diff options
author | Uros Bizjak <uros@gcc.gnu.org> | 2013-01-27 14:16:54 +0100 |
---|---|---|
committer | Uros Bizjak <uros@gcc.gnu.org> | 2013-01-27 14:16:54 +0100 |
commit | 77dc529721aeb3a3f9a1c9bac860ae96fe089a5e (patch) | |
tree | 69e3a0ec7f7aa47fb74a45a5a589ec9d276b1c32 /gcc/config | |
parent | ca3227497d1c87eeb275cc2d5f85af3b02436c9c (diff) | |
download | gcc-77dc529721aeb3a3f9a1c9bac860ae96fe089a5e.zip gcc-77dc529721aeb3a3f9a1c9bac860ae96fe089a5e.tar.gz gcc-77dc529721aeb3a3f9a1c9bac860ae96fe089a5e.tar.bz2 |
re PR target/56114 (x86_64-linux-gnu-gcc generate wrong asm instruction MOVABS for intel syntax)
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.
From-SVN: r195494
Diffstat (limited to 'gcc/config')
-rw-r--r-- | gcc/config/i386/i386.md | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md index 9d0a499..59b5b69 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,*") |