diff options
author | Richard Henderson <rth@redhat.com> | 2001-12-02 11:04:23 -0800 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 2001-12-02 11:04:23 -0800 |
commit | 998d7deb143c6511c68e21abb811af9f5524f89d (patch) | |
tree | 7dcf60eaed1d63b62946ca9c11cf34b2d9ceaa21 /gcc/rtl.h | |
parent | 3d55d212918e4f8853365fbf7531d30b9d88a82f (diff) | |
download | gcc-998d7deb143c6511c68e21abb811af9f5524f89d.zip gcc-998d7deb143c6511c68e21abb811af9f5524f89d.tar.gz gcc-998d7deb143c6511c68e21abb811af9f5524f89d.tar.bz2 |
rtl.h (mem_attrs): Rename decl to expr; adjust all users.
* rtl.h (mem_attrs): Rename decl to expr; adjust all users.
(MEM_EXPR): Rename from MEM_DECL; adjust all users.
* emit-rtl.c (set_mem_expr): Rename from set_mem_decl.
* expr.h, final.c, reload1.c: Adjust users.
* alias.c (nonoverlapping_component_refs_p): New.
(decl_for_component_ref, adjust_offset_for_component_ref): New.
(nonoverlapping_memrefs_p): Use them.
* emit-rtl.c (component_ref_for_mem_expr): New.
(set_mem_attributes): Use it.
(set_mem_offset): New.
* expr.c (expand_assignment): Call set_mem_attributes for
inner references; adjust the memory offset as needed.
* print-rtl.c (print_mem_expr): New.
(print_rtx): Use it.
From-SVN: r47534
Diffstat (limited to 'gcc/rtl.h')
-rw-r--r-- | gcc/rtl.h | 9 |
1 files changed, 5 insertions, 4 deletions
@@ -92,7 +92,7 @@ typedef struct typedef struct { HOST_WIDE_INT alias; /* Memory alias set. */ - tree decl; /* decl corresponding to MEM. */ + tree expr; /* expr corresponding to MEM. */ rtx offset; /* Offset from start of DECL, as CONST_INT. */ rtx size; /* Size in bytes, as a CONST_INT. */ unsigned int align; /* Alignment of MEM in bits. */ @@ -904,10 +904,10 @@ extern unsigned int subreg_regno PARAMS ((rtx)); #define MEM_ALIAS_SET(RTX) (MEM_ATTRS (RTX) == 0 ? 0 : MEM_ATTRS (RTX)->alias) /* For a MEM rtx, the decl it is known to refer to, if it is known to - refer to part of a DECL. */ -#define MEM_DECL(RTX) (MEM_ATTRS (RTX) == 0 ? 0 : MEM_ATTRS (RTX)->decl) + refer to part of a DECL. It may also be a COMPONENT_REF. */ +#define MEM_EXPR(RTX) (MEM_ATTRS (RTX) == 0 ? 0 : MEM_ATTRS (RTX)->expr) -/* For a MEM rtx, the offset from the start of MEM_DECL, if known, as a +/* For a MEM rtx, the offset from the start of MEM_EXPR, if known, as a RTX that is always a CONST_INT. */ #define MEM_OFFSET(RTX) (MEM_ATTRS (RTX) == 0 ? 0 : MEM_ATTRS (RTX)->offset) @@ -1865,6 +1865,7 @@ extern void debug_rtx_list PARAMS ((rtx, int)); extern void debug_rtx_range PARAMS ((rtx, rtx)); extern rtx debug_rtx_find PARAMS ((rtx, int)); #ifdef BUFSIZ +extern void print_mem_expr PARAMS ((FILE *, tree)); extern void print_rtl PARAMS ((FILE *, rtx)); extern void print_simple_rtl PARAMS ((FILE *, rtx)); extern int print_rtl_single PARAMS ((FILE *, rtx)); |