aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorBin Cheng <bin.cheng@arm.com>2017-05-11 09:27:55 +0000
committerBin Cheng <amker@gcc.gnu.org>2017-05-11 09:27:55 +0000
commitc2b64ceab2ae2e0b86271248a5c31690a1604984 (patch)
treef2d50aadfadee8dc2e84c4a9b1c459d29a36567f /gcc
parentb7b5203d98d56d5015a13727dd807412bd1559a2 (diff)
downloadgcc-c2b64ceab2ae2e0b86271248a5c31690a1604984.zip
gcc-c2b64ceab2ae2e0b86271248a5c31690a1604984.tar.gz
gcc-c2b64ceab2ae2e0b86271248a5c31690a1604984.tar.bz2
tree-ssa-address.c (struct mem_address): Move to header file.
* tree-ssa-address.c (struct mem_address): Move to header file. (valid_mem_ref_p, move_fixed_address_to_symbol): Make it global. * tree-ssa-address.h (struct mem_address): Move from C file. (valid_mem_ref_p, move_fixed_address_to_symbol): Declare. From-SVN: r247884
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/tree-ssa-address.c11
-rw-r--r--gcc/tree-ssa-address.h10
3 files changed, 19 insertions, 9 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 3bfd958..09096ec 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,12 @@
2017-05-11 Bin Cheng <bin.cheng@arm.com>
+ * tree-ssa-address.c (struct mem_address): Move to header file.
+ (valid_mem_ref_p, move_fixed_address_to_symbol): Make it global.
+ * tree-ssa-address.h (struct mem_address): Move from C file.
+ (valid_mem_ref_p, move_fixed_address_to_symbol): Declare.
+
+2017-05-11 Bin Cheng <bin.cheng@arm.com>
+
* tree-affine.h (aff_combination_type): New interface.
(aff_combination_zero_p): Remove static.
(aff_combination_const_p): New interface.
diff --git a/gcc/tree-ssa-address.c b/gcc/tree-ssa-address.c
index 8d46a3e..e35d323 100644
--- a/gcc/tree-ssa-address.c
+++ b/gcc/tree-ssa-address.c
@@ -178,13 +178,6 @@ gen_addr_rtx (machine_mode address_mode,
*addr = const0_rtx;
}
-/* Description of a memory address. */
-
-struct mem_address
-{
- tree symbol, base, index, step, offset;
-};
-
/* Returns address for TARGET_MEM_REF with parameters given by ADDR
in address space AS.
If REALLY_EXPAND is false, just make fake registers instead
@@ -330,7 +323,7 @@ tree_mem_ref_addr (tree type, tree mem_ref)
/* Returns true if a memory reference in MODE and with parameters given by
ADDR is valid on the current target. */
-static bool
+bool
valid_mem_ref_p (machine_mode mode, addr_space_t as,
struct mem_address *addr)
{
@@ -408,7 +401,7 @@ fixed_address_object_p (tree obj)
/* If ADDR contains an address of object that is a link time constant,
move it to PARTS->symbol. */
-static void
+void
move_fixed_address_to_symbol (struct mem_address *parts, aff_tree *addr)
{
unsigned i;
diff --git a/gcc/tree-ssa-address.h b/gcc/tree-ssa-address.h
index 311348e..cd62ed9 100644
--- a/gcc/tree-ssa-address.h
+++ b/gcc/tree-ssa-address.h
@@ -20,10 +20,20 @@ along with GCC; see the file COPYING3. If not see
#ifndef GCC_TREE_SSA_ADDRESS_H
#define GCC_TREE_SSA_ADDRESS_H
+/* Description of a memory address. */
+
+struct mem_address
+{
+ tree symbol, base, index, step, offset;
+};
+
extern rtx addr_for_mem_ref (struct mem_address *, addr_space_t, bool);
extern rtx addr_for_mem_ref (tree exp, addr_space_t as, bool really_expand);
extern void get_address_description (tree, struct mem_address *);
extern tree tree_mem_ref_addr (tree, tree);
+extern bool valid_mem_ref_p (machine_mode, addr_space_t, struct mem_address *);
+extern void move_fixed_address_to_symbol (struct mem_address *,
+ struct aff_tree *);
tree create_mem_ref (gimple_stmt_iterator *, tree,
struct aff_tree *, tree, tree, tree, bool);
extern void copy_ref_info (tree, tree);