summaryrefslogtreecommitdiff
path: root/gcc/print-rtl.c
diff options
context:
space:
mode:
authorRichard Kenner <kenner@vlsi1.ultra.nyu.edu>2001-10-17 09:31:36 +0000
committerRichard Kenner <kenner@gcc.gnu.org>2001-10-17 05:31:36 -0400
commit738cc472453eb61b6d18e223877e5380d7adb0dd (patch)
tree3f3a09b804dc2ad899529714f44003c6933712ab /gcc/print-rtl.c
parent4d8f669f9481e4154eea13098cb6def6b64bcb1f (diff)
downloadgcc-738cc472453eb61b6d18e223877e5380d7adb0dd.tar.gz
Makefile.in (print-rtl.o): Depend on TREE_H.
* Makefile.in (print-rtl.o): Depend on TREE_H. * alias.c (get_alias_set): Make two passes over objects to first see if inner object is access via restricted pointer. Defer allocating alias set for restricted pointer until here. Call find_placeholder with second arg nonzero. Minor cleanups. * emit-rtl.c (set_mem_attributes): Set more attributes. (set_mem_align, change_address, adjust_address_1): New functions. (change_address_1): Now static. (adjust_address, adjust_address_nv): Deleted. (replace_equiv_address): Call change_address_1. * expr.c (get_inner_reference): Handle PLACEHOLDER_EXPR. (find_placeholder): Get starting point from PLIST arg. (expand_expr, case PLACEHOLDER_EXPR): Initialize find_placeholder arg. * expr.h (set_mem_align, change_address, adjust_address_1): New decls. (adjust_address, adjust_address_nv): New macros. * print-rtl.c (tree.h): New include. (print_rtx, case MEM): Print all memory attributes. From-SVN: r46313
Diffstat (limited to 'gcc/print-rtl.c')
-rw-r--r--gcc/print-rtl.c29
1 files changed, 28 insertions, 1 deletions
diff --git a/gcc/print-rtl.c b/gcc/print-rtl.c
index f2025b500ba..3d78dd392f0 100644
--- a/gcc/print-rtl.c
+++ b/gcc/print-rtl.c
@@ -23,6 +23,11 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA
#include "config.h"
#include "system.h"
#include "rtl.h"
+
+/* We don't want the tree code checking code for the access to the
+ DECL_NAME to be included in the gen* programs. */
+#undef ENABLE_TREE_CHECKING
+#include "tree.h"
#include "real.h"
#include "flags.h"
#include "hard-reg-set.h"
@@ -446,8 +451,30 @@ print_rtx (in_rtx)
switch (GET_CODE (in_rtx))
{
case MEM:
- fputc (' ', outfile);
+ fputs (" [", outfile);
fprintf (outfile, HOST_WIDE_INT_PRINT_DEC, MEM_ALIAS_SET (in_rtx));
+ if (MEM_DECL (in_rtx) && DECL_NAME (MEM_DECL (in_rtx)))
+ fprintf (outfile, " %s",
+ IDENTIFIER_POINTER (DECL_NAME (MEM_DECL (in_rtx))));
+
+ if (MEM_OFFSET (in_rtx))
+ {
+ fputc ('+', outfile);
+ fprintf (outfile, HOST_WIDE_INT_PRINT_DEC,
+ INTVAL (MEM_OFFSET (in_rtx)));
+ }
+
+ if (MEM_SIZE (in_rtx))
+ {
+ fputs (" S", outfile);
+ fprintf (outfile, HOST_WIDE_INT_PRINT_DEC,
+ INTVAL (MEM_SIZE (in_rtx)));
+ }
+
+ if (MEM_ALIGN (in_rtx) != 1)
+ fprintf (outfile, " A%u", MEM_ALIGN (in_rtx));
+
+ fputc (']', outfile);
break;
#if HOST_FLOAT_FORMAT == TARGET_FLOAT_FORMAT && MAX_LONG_DOUBLE_TYPE_SIZE == 64