aboutsummaryrefslogtreecommitdiff
path: root/gcc/config
diff options
context:
space:
mode:
authorUros Bizjak <uros@gcc.gnu.org>2013-01-27 14:16:54 +0100
committerUros Bizjak <uros@gcc.gnu.org>2013-01-27 14:16:54 +0100
commit77dc529721aeb3a3f9a1c9bac860ae96fe089a5e (patch)
tree69e3a0ec7f7aa47fb74a45a5a589ec9d276b1c32 /gcc/config
parentca3227497d1c87eeb275cc2d5f85af3b02436c9c (diff)
downloadgcc-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.md4
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,*")