aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Stump <mrs@apple.com>2006-04-26 19:48:00 +0000
committerMike Stump <mrs@apple.com>2006-04-26 19:48:00 +0000
commite6d1dd18d84a23b7dac1d09953d54b7d3d9f2d77 (patch)
treef32c4e3b1e3c31a4d7b67126d166b42cb542424c
parent5051afb6673c6c9c0f8fbba55c100d1e599d9c45 (diff)
Radar 4505697
* config/i386/i386.c (iasm_x86_canonicalize_operands): Fix movzx handling. testsuite: * g++.apple/asm-block-51.C: Add. * gcc.apple/asm-block-51.c: Add. git-svn-id: https://gcc.gnu.org/svn/gcc/branches/apple-local-200502-branch@113282 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog.apple-ppc5
-rw-r--r--gcc/config/i386/i386.c3
-rw-r--r--gcc/testsuite/ChangeLog.apple-ppc8
-rw-r--r--gcc/testsuite/g++.apple/asm-block-51.C8
-rw-r--r--gcc/testsuite/gcc.apple/asm-block-51.c8
5 files changed, 30 insertions, 2 deletions
diff --git a/gcc/ChangeLog.apple-ppc b/gcc/ChangeLog.apple-ppc
index 80660b60d59..2e595bb3026 100644
--- a/gcc/ChangeLog.apple-ppc
+++ b/gcc/ChangeLog.apple-ppc
@@ -1,5 +1,10 @@
2006-04-26 Mike Stump <mrs@apple.com>
+ Radar 4505697
+ * config/i386/i386.c (iasm_x86_canonicalize_operands): Fix movzx handling.
+
+2006-04-26 Mike Stump <mrs@apple.com>
+
Radar 4505741
* c-common.c (iasm_print_operand): Fix .machine all for ppc64.
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
index 06164e75d9d..7cf00a31731 100644
--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -19670,7 +19670,8 @@ iasm_x86_canonicalize_operands (const char **opcode_p, tree iargs, void *ep)
same before and after size is accepted and it just a normal
move. */
if (argnum == 2
- && e->mod[0] == e->mod[1])
+ && (e->mod[0] == e->mod[1]
+ || e->mod[1] == 0))
opcode = "mov";
else
opcode = "movz";
diff --git a/gcc/testsuite/ChangeLog.apple-ppc b/gcc/testsuite/ChangeLog.apple-ppc
index 020564fe192..d40c98ade2b 100644
--- a/gcc/testsuite/ChangeLog.apple-ppc
+++ b/gcc/testsuite/ChangeLog.apple-ppc
@@ -1,4 +1,10 @@
-2006-04-21 Mike Stump <mrs@apple.com>
+2006-04-26 Mike Stump <mrs@apple.com>
+
+ Radar 4505697
+ * g++.apple/asm-block-51.C: Add.
+ * gcc.apple/asm-block-51.c: Add.
+
+2006-04-26 Mike Stump <mrs@apple.com>
Radar 4505741
* gcc.apple/asm-block-46.c: Fix warning line.
diff --git a/gcc/testsuite/g++.apple/asm-block-51.C b/gcc/testsuite/g++.apple/asm-block-51.C
new file mode 100644
index 00000000000..91db1e8c0c0
--- /dev/null
+++ b/gcc/testsuite/g++.apple/asm-block-51.C
@@ -0,0 +1,8 @@
+/* APPLE LOCAL file CW asm blocks */
+/* { dg-do assemble { target i?86*-*-darwin* } } */
+/* { dg-options { -fasm-blocks } } */
+/* Radar 4505697 */
+
+void foo() {
+ asm movzx eax, [edi+8]
+}
diff --git a/gcc/testsuite/gcc.apple/asm-block-51.c b/gcc/testsuite/gcc.apple/asm-block-51.c
new file mode 100644
index 00000000000..91db1e8c0c0
--- /dev/null
+++ b/gcc/testsuite/gcc.apple/asm-block-51.c
@@ -0,0 +1,8 @@
+/* APPLE LOCAL file CW asm blocks */
+/* { dg-do assemble { target i?86*-*-darwin* } } */
+/* { dg-options { -fasm-blocks } } */
+/* Radar 4505697 */
+
+void foo() {
+ asm movzx eax, [edi+8]
+}