summaryrefslogtreecommitdiff
path: root/gcc/langhooks.h
diff options
context:
space:
mode:
authorOllie Wild <aaw@google.com>2007-09-29 03:47:05 +0000
committerOllie Wild <aaw@gcc.gnu.org>2007-09-29 03:47:05 +0000
commit6dcee2d6ca1ef0f5868640c4880c80d53dffb5c3 (patch)
tree117f5e7112f351b5d67c496778a7e3a085dcdc1b /gcc/langhooks.h
parent387b05077888ce040a6263a62e0aaef63570ccfb (diff)
downloadgcc-6dcee2d6ca1ef0f5868640c4880c80d53dffb5c3.tar.gz
Revert
2007-09-27 Ollie Wild <aaw@google.com> gcc/ * varasm.c (compare_constant): Removed call to lang_hooks.expand_constant. (copy_constants): Removed call to lang_hooks.expand_constant. (compute_reloc_for_constant): Removed call to lang_hooks.expand_constant. (output_addressed_constants): Removed call to lang_hooks.expand_constant. (constructor_static_from_elts_p): Removed call to lang_hooks.expand_constant. (output_constant): Removed calls to lang_hooks.expand_constant. * langhooks.h (struct lang_hooks): Removed field expand_constant. * langhooks-def.h (lhd_return_tree): Removed. (LANG_HOOKS_EXPAND_CONSTANT): Removed. (LANG_HOOKS_INITIALIZER): Removed LANG_HOOKS_EXPAND_CONSTANT. * langhooks.c (lhd_return_tree): Removed. gcc/cp/ * typeck2.c (digest_init): Call cplus_expand_constant after convert_for_initialization. * cp-objcp-common.h (LANG_HOOKS_EXPAND_CONSTANT): Removed. * expr.c (cplus_expand_constant): Updated function description. From-SVN: r128881
Diffstat (limited to 'gcc/langhooks.h')
-rw-r--r--gcc/langhooks.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/langhooks.h b/gcc/langhooks.h
index 0efb13956d3..8a442753b1f 100644
--- a/gcc/langhooks.h
+++ b/gcc/langhooks.h
@@ -287,6 +287,11 @@ struct lang_hooks
Returns -1 if the language does nothing special for it. */
alias_set_type (*get_alias_set) (tree);
+ /* Called with an expression that is to be processed as a constant.
+ Returns either the same expression or a language-independent
+ constant equivalent to its input. */
+ tree (*expand_constant) (tree);
+
/* Called by expand_expr for language-specific tree codes.
Fourth argument is actually an enum expand_modifier. */
rtx (*expand_expr) (tree, rtx, enum machine_mode, int, rtx *);