(write_test_expr, case MATCH_DUP): Use operands[N] instead of
authorkenner <kenner@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 12 May 1995 11:13:25 +0000 (11:13 +0000)
committerkenner <kenner@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 12 May 1995 11:13:25 +0000 (11:13 +0000)
JUMP_LABEL (which may not be set).
(walk_attr_value, case MATCH_DUP): Set must_extract.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@9640 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/genattrtab.c

index 29a4038..b71c15c 100644 (file)
@@ -4487,7 +4487,7 @@ write_test_expr (exp, in_comparison)
 
     /* The address of the branch target.  */
     case MATCH_DUP:
-      printf ("insn_addresses[INSN_UID (JUMP_LABEL (insn))]");
+      printf ("insn_addresses[INSN_UID (operands[%d])]", XINT (exp, 0));
       break;
 
     /* The address of the current insn.  It would be more consistent with
@@ -4592,6 +4592,10 @@ walk_attr_value (exp)
       return;
 
     case MATCH_DUP:
+      must_extract = 1;
+      address_used = 1;
+      return;
+
     case PC:
       address_used = 1;
       return;