#include "system.h"
#include "toplev.h"
#include "tree.h"
+#include "c-tree.h"
#include "tree-inline.h"
#include "rtl.h"
#include "insn-config.h"
#include "integrate.h"
#include "langhooks.h"
+#include "langhooks-def.h"
/* Do nothing; in many cases the default hook. */
void
-lang_hook_default_do_nothing ()
+lhd_do_nothing ()
{
}
+/* Do nothing (return the tree node passed). */
+
+tree
+lhd_return_tree (t)
+ tree t;
+{
+ return t;
+}
+
/* Do nothing; the default hook to decode an option. */
int
-lang_hook_default_decode_option (argc, argv)
+lhd_decode_option (argc, argv)
int argc ATTRIBUTE_UNUSED;
char **argv ATTRIBUTE_UNUSED;
{
return 0;
}
+/* Called from by print-tree.c. */
+
+void
+lhd_print_tree_nothing (file, node, indent)
+ FILE *file ATTRIBUTE_UNUSED;
+ tree node ATTRIBUTE_UNUSED;
+ int indent ATTRIBUTE_UNUSED;
+{
+}
+
+/* Called from safe_from_p. */
+
+int
+lhd_safe_from_p (x, exp)
+ rtx x ATTRIBUTE_UNUSED;
+ tree exp ATTRIBUTE_UNUSED;
+{
+ return 1;
+}
+
+/* Called when -dy is given on the command line. */
+
+void
+lhd_set_yydebug (value)
+ int value;
+{
+ if (value)
+ fprintf (stderr, "warning: no yacc/bison-generated output to debug!\n");
+}
+
/* Provide a default routine to clear the binding stack. This is used
by languages that don't need to do anything special. */
void
-lang_hook_default_clear_binding_stack ()
+lhd_clear_binding_stack ()
{
while (! global_bindings_p ())
poplevel (0, 0, 0);
is used by languages that don't need to do anything special. */
HOST_WIDE_INT
-lang_hook_default_get_alias_set (t)
+lhd_get_alias_set (t)
tree t ATTRIBUTE_UNUSED;
{
return -1;
when the function is called. */
tree
-tree_inlining_default_hook_walk_subtrees (tp,subtrees,func,data,htab)
+lhd_tree_inlining_walk_subtrees (tp,subtrees,func,data,htab)
tree *tp ATTRIBUTE_UNUSED;
int *subtrees ATTRIBUTE_UNUSED;
walk_tree_fn func ATTRIBUTE_UNUSED;
inlining a given function. */
int
-tree_inlining_default_hook_cannot_inline_tree_fn (fnp)
+lhd_tree_inlining_cannot_inline_tree_fn (fnp)
tree *fnp ATTRIBUTE_UNUSED;
{
return 0;
if it would exceed inlining limits. */
int
-tree_inlining_default_hook_disregard_inline_limits (fn)
+lhd_tree_inlining_disregard_inline_limits (fn)
tree fn ATTRIBUTE_UNUSED;
{
return 0;
returned. */
tree
-tree_inlining_default_hook_add_pending_fn_decls (vafnp, pfn)
+lhd_tree_inlining_add_pending_fn_decls (vafnp, pfn)
void *vafnp ATTRIBUTE_UNUSED;
tree pfn;
{
whether it should be walked, copied and preserved across copies. */
int
-tree_inlining_default_hook_tree_chain_matters_p (t)
+lhd_tree_inlining_tree_chain_matters_p (t)
tree t ATTRIBUTE_UNUSED;
{
return 0;
whether VT is an automatic variable defined in function FT. */
int
-tree_inlining_default_hook_auto_var_in_fn_p (var, fn)
+lhd_tree_inlining_auto_var_in_fn_p (var, fn)
tree var, fn;
{
return (DECL_P (var) && DECL_CONTEXT (var) == fn
match RES. */
tree
-tree_inlining_default_hook_copy_res_decl_for_inlining (res, fn, caller,
- dm, ndp, texps)
+lhd_tree_inlining_copy_res_decl_for_inlining (res, fn, caller,
+ dm, ndp, texps)
tree res, fn, caller;
void *dm ATTRIBUTE_UNUSED;
int *ndp ATTRIBUTE_UNUSED;
i.e., one whose members are in the same scope as the union itself. */
int
-tree_inlining_default_hook_anon_aggr_type_p (t)
+lhd_tree_inlining_anon_aggr_type_p (t)
+ tree t ATTRIBUTE_UNUSED;
+{
+ return 0;
+}
+
+/* lang_hooks.tree_dump.dump_tree: Dump language-specific parts of tree
+ nodes. Returns non-zero if it does not want the usual dumping of the
+ second argument. */
+
+int
+lhd_tree_dump_dump_tree (di, t)
+ void *di ATTRIBUTE_UNUSED;
tree t ATTRIBUTE_UNUSED;
{
return 0;
}
+/* lang_hooks.tree_dump.type_qual: Determine type qualifiers in a
+ language-specific way. */
+
+int
+lhd_tree_dump_type_quals (t)
+ tree t;
+{
+ return TYPE_QUALS (t);
+}
+