summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/config/i386/i386.c9
-rw-r--r--gcc/testsuite/ChangeLog5
-rw-r--r--gcc/testsuite/gcc.target/i386/pr43638.c9
4 files changed, 20 insertions, 9 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index f181b059c70..15fe7d74e82 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2010-04-06 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/43638
+ * config/i386/i386.c (print_operand): Remove 'e' and 'E' code
+ handling.
+
2010-04-06 Richard Guenther <rguenther@suse.de>
PR middle-end/43661
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
index 39b1da478c6..cfd2270fba5 100644
--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -11390,7 +11390,6 @@ get_some_local_dynamic_name (void)
L,W,B,Q,S,T -- print the opcode suffix for specified size of operand.
C -- print opcode suffix for set/cmov insn.
c -- like C, but print reversed condition
- E,e -- likewise, but for compare-and-branch fused insn.
F,f -- likewise, but for floating-point.
O -- if HAVE_AS_IX86_CMOV_SUN_SYNTAX, expand to "w.", "l." or "q.",
otherwise nothing
@@ -11795,14 +11794,6 @@ print_operand (FILE *file, rtx x, int code)
put_condition_code (GET_CODE (x), GET_MODE (XEXP (x, 0)), 1, 1, file);
return;
- case 'E':
- put_condition_code (GET_CODE (x), CCmode, 0, 0, file);
- return;
-
- case 'e':
- put_condition_code (GET_CODE (x), CCmode, 1, 0, file);
- return;
-
case 'H':
/* It doesn't actually matter what mode we use here, as we're
only going to use this for printing. */
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 9df8395fabe..7ea5901b0bc 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2010-04-06 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/43638
+ * gcc.target/i386/pr43638.c: New test.
+
2010-04-06 Richard Guenther <rguenther@suse.de>
PR middle-end/43661
diff --git a/gcc/testsuite/gcc.target/i386/pr43638.c b/gcc/testsuite/gcc.target/i386/pr43638.c
new file mode 100644
index 00000000000..9af06aedeb3
--- /dev/null
+++ b/gcc/testsuite/gcc.target/i386/pr43638.c
@@ -0,0 +1,9 @@
+/* PR target/43638 */
+/* { dg-do compile } */
+
+void
+foo (void)
+{
+ int x;
+ __asm __volatile ("mov $0,%e0" : "=r" (x)); /* { dg-error "invalid operand code" } */
+}