diff options
author | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-12-02 19:04:23 +0000 |
---|---|---|
committer | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-12-02 19:04:23 +0000 |
commit | b10dbbca9b7e1ebe6ffac08718324bc744ecf845 (patch) | |
tree | 7dcf60eaed1d63b62946ca9c11cf34b2d9ceaa21 /gcc/expr.h | |
parent | b1be45ef7362e013bb1560a7cd2374fdde315795 (diff) | |
download | gcc-b10dbbca9b7e1ebe6ffac08718324bc744ecf845.tar.gz |
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@47534 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/expr.h')
-rw-r--r-- | gcc/expr.h | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/gcc/expr.h b/gcc/expr.h index 4275b812953..aa4bde69fdb 100644 --- a/gcc/expr.h +++ b/gcc/expr.h @@ -614,8 +614,11 @@ extern void set_mem_alias_set PARAMS ((rtx, HOST_WIDE_INT)); /* Set the alignment of MEM to ALIGN bits. */ extern void set_mem_align PARAMS ((rtx, unsigned int)); -/* Set the DECL for MEM to DECL. */ -extern void set_mem_decl PARAMS ((rtx, tree)); +/* Set the expr for MEM to EXPR. */ +extern void set_mem_expr PARAMS ((rtx, tree)); + +/* Set the offset for MEM to OFFSET. */ +extern void set_mem_offset PARAMS ((rtx, rtx)); /* Return a memory reference like MEMREF, but with its mode changed to MODE and its address changed to ADDR. |