aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZack Weinberg <zackw@stanford.edu>2001-07-03 19:23:35 +0000
committerZack Weinberg <zack@gcc.gnu.org>2001-07-03 19:23:35 +0000
commit3b324340369b9c67e16382e949b63fb0cfeafaaa (patch)
tree219bb7714144485db8a26f9ad99fb10ea2468edd
parentbf4eebe0c1afd43c7d982fdf9614aa65c9c4928e (diff)
downloadgcc-3b324340369b9c67e16382e949b63fb0cfeafaaa.zip
gcc-3b324340369b9c67e16382e949b63fb0cfeafaaa.tar.gz
gcc-3b324340369b9c67e16382e949b63fb0cfeafaaa.tar.bz2
rtl.c (copy_rtx): Handle 'T' format letter.
* rtl.c (copy_rtx): Handle 'T' format letter. * gensupport.c (collect_insn_data): Likewise. * print-rtl.c (print_rtx): Print 'T' slots like 's'. From-SVN: r43732
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/gensupport.c2
-rw-r--r--gcc/print-rtl.c15
-rw-r--r--gcc/rtl.c1
4 files changed, 20 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index a021f3d..175c5df 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2001-07-03 Zack Weinberg <zackw@stanford.edu>
+
+ * rtl.c (copy_rtx): Handle 'T' format letter.
+ * gensupport.c (collect_insn_data): Likewise.
+ * print-rtl.c (print_rtx): Print 'T' slots like 's'.
+
2001-07-03 Nick Clifton <nickc@cambridge.redhat.com>
* doc/invoke.texi (Directory Options): Specifiy range for <N> in
diff --git a/gcc/gensupport.c b/gcc/gensupport.c
index 6bad18e..bd80ca4 100644
--- a/gcc/gensupport.c
+++ b/gcc/gensupport.c
@@ -453,7 +453,7 @@ collect_insn_data (pattern, palt, pmax)
collect_insn_data (XVECEXP (pattern, i, j), palt, pmax);
break;
- case 'i': case 'w': case '0': case 's': case 'S':
+ case 'i': case 'w': case '0': case 's': case 'S': case 'T':
break;
default:
diff --git a/gcc/print-rtl.c b/gcc/print-rtl.c
index 1c4e6f3..aca6700 100644
--- a/gcc/print-rtl.c
+++ b/gcc/print-rtl.c
@@ -163,16 +163,25 @@ print_rtx (in_rtx)
for (; i < GET_RTX_LENGTH (GET_CODE (in_rtx)); i++)
switch (*format_ptr++)
{
+ const char *str;
+
+ case 'T':
+ str = XTMPL (in_rtx, i);
+ goto string;
+
case 'S':
case 's':
- if (XSTR (in_rtx, i) == 0)
+ str = XSTR (in_rtx, i);
+ string:
+
+ if (str == 0)
fputs (dump_for_graph ? " \\\"\\\"" : " \"\"", outfile);
else
{
if (dump_for_graph)
- fprintf (outfile, " (\\\"%s\\\")", XSTR (in_rtx, i));
+ fprintf (outfile, " (\\\"%s\\\")", str);
else
- fprintf (outfile, " (\"%s\")", XSTR (in_rtx, i));
+ fprintf (outfile, " (\"%s\")", str);
}
sawclose = 1;
break;
diff --git a/gcc/rtl.c b/gcc/rtl.c
index 0e4a9b3..de5e048 100644
--- a/gcc/rtl.c
+++ b/gcc/rtl.c
@@ -420,6 +420,7 @@ copy_rtx (orig)
case 'i':
case 's':
case 'S':
+ case 'T':
case 'u':
case '0':
/* These are left unchanged. */