summaryrefslogtreecommitdiff
path: root/gcc/target-def.h
diff options
context:
space:
mode:
authorrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>2002-12-09 23:54:01 +0000
committerrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>2002-12-09 23:54:01 +0000
commita6bbccc16ab103200f32334351dc57b5838c9dd4 (patch)
tree57341f6e2c1ac600113f5797665b9c84f0d000d3 /gcc/target-def.h
parent8c3ad36d400b606ebd98a6ce8d0cd61a417a7fc7 (diff)
downloadgcc-a6bbccc16ab103200f32334351dc57b5838c9dd4.tar.gz
* target.h (gcc_target): Add cannot_force_const_mem.
* target-def.h (TARGET_CANNOT_FORCE_CONST_MEM): New. (TARGET_INITIALIZER): Add it. * varasm.c (force_const_mem): Fail if cannot_force_const_mem. * expr.c (emit_move_insn): Be prepared for force_const_mem to fail. * reload1.c (reload): Likewise. * hooks.c (hook_bool_rtx_false): New. * hooks.h: Declare it. * config/i386/i386.c (ix86_cannot_force_const_mem): New. (TARGET_CANNOT_FORCE_CONST_MEM): New. (ix86_expand_move): Remove de-const-pooling hack. * gcc.dg/tls/opt-4.c: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@59971 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/target-def.h')
-rw-r--r--gcc/target-def.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/target-def.h b/gcc/target-def.h
index b866c858de7..154d58d47e9 100644
--- a/gcc/target-def.h
+++ b/gcc/target-def.h
@@ -241,6 +241,7 @@ Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
/* In hook.c. */
#define TARGET_CANNOT_MODIFY_JUMPS_P hook_bool_void_false
+#define TARGET_CANNOT_FORCE_CONST_MEM hook_bool_rtx_false
#define TARGET_COMP_TYPE_ATTRIBUTES hook_int_tree_tree_1
#define TARGET_SET_DEFAULT_TYPE_ATTRIBUTES hook_void_tree
#define TARGET_INSERT_ATTRIBUTES hook_void_tree_treeptr
@@ -272,6 +273,7 @@ Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
TARGET_EXPAND_BUILTIN, \
TARGET_SECTION_TYPE_FLAGS, \
TARGET_CANNOT_MODIFY_JUMPS_P, \
+ TARGET_CANNOT_FORCE_CONST_MEM, \
TARGET_IN_SMALL_DATA_P, \
TARGET_BINDS_LOCAL_P, \
TARGET_ENCODE_SECTION_INFO, \