diff options
author | uweigand <uweigand@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-03-07 22:03:27 +0000 |
---|---|---|
committer | uweigand <uweigand@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-03-07 22:03:27 +0000 |
commit | 0605fce2f8ccd3e8e53f40b19c795b7c1e2696bc (patch) | |
tree | 0f8a7e342b92206077e616b3ba655af9489aa3c1 | |
parent | 2594daf730036efc83c9ed5ebaacf003bee3eda3 (diff) | |
download | gcc-0605fce2f8ccd3e8e53f40b19c795b7c1e2696bc.tar.gz |
* genextract.c (walk_rtx): Recurse into MATCH_PAR_DUP.
genoutput.c (scan_operands): Recurse into MATCH_PAR_DUP
and MATCH_OP_DUP.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@50412 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/genextract.c | 4 | ||||
-rw-r--r-- | gcc/genoutput.c | 2 |
3 files changed, 9 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 09c61902f1f..ea31da8016b 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2002-03-06 Ulrich Weigand <uweigand@de.ibm.com> + + * genextract.c (walk_rtx): Recurse into MATCH_PAR_DUP. + genoutput.c (scan_operands): Recurse into MATCH_PAR_DUP + and MATCH_OP_DUP. + Thu Mar 7 16:54:10 CET 2002 Jan Hubicka <jh@suse.cz> * reload1.c (reload_cse_delete_noop_set): Purge dead edges. diff --git a/gcc/genextract.c b/gcc/genextract.c index 72e3e56e449..d52fc36f2d0 100644 --- a/gcc/genextract.c +++ b/gcc/genextract.c @@ -210,12 +210,12 @@ walk_rtx (x, path) break; case MATCH_DUP: - case MATCH_PAR_DUP: duplocs[dup_count] = xstrdup (path); dupnums[dup_count] = XINT (x, 0); dup_count++; break; + case MATCH_PAR_DUP: case MATCH_OP_DUP: duplocs[dup_count] = xstrdup (path); dupnums[dup_count] = XINT (x, 0); @@ -227,7 +227,7 @@ walk_rtx (x, path) for (i = XVECLEN (x, 1) - 1; i >= 0; i--) { - newpath[depth] = '0' + i; + newpath[depth] = (code == MATCH_OP_DUP ? '0' : 'a') + i; walk_rtx (XVECEXP (x, 1, i), newpath); } free (newpath); diff --git a/gcc/genoutput.c b/gcc/genoutput.c index b11e08331ed..7ed98bbbe26 100644 --- a/gcc/genoutput.c +++ b/gcc/genoutput.c @@ -530,7 +530,7 @@ scan_operands (d, part, this_address_p, this_strict_low) case MATCH_OP_DUP: case MATCH_PAR_DUP: ++num_dups; - return; + break; case ADDRESS: scan_operands (d, XEXP (part, 0), 1, 0); |