aboutsummaryrefslogtreecommitdiff
path: root/gcc/target-globals.h
diff options
context:
space:
mode:
authorRichard Sandiford <rdsandiford@googlemail.com>2010-07-12 18:55:48 +0000
committerRichard Sandiford <rsandifo@gcc.gnu.org>2010-07-12 18:55:48 +0000
commit3e9c326a88c289e25d58d2e9efb8517ef272410d (patch)
tree3386f4b0b387575b31aa4559e02d101b1270353f /gcc/target-globals.h
parent9f7f18923aa399f15f5ba5f7f5bd4c76def90265 (diff)
downloadgcc-3e9c326a88c289e25d58d2e9efb8517ef272410d.zip
gcc-3e9c326a88c289e25d58d2e9efb8517ef272410d.tar.gz
gcc-3e9c326a88c289e25d58d2e9efb8517ef272410d.tar.bz2
Makefile.in (LIBFUNCS_H): Add $(HASHTAB_H).
gcc/ * Makefile.in (LIBFUNCS_H): Add $(HASHTAB_H). (target-globals.o): Depend on $(LIBFUNCS_H). * libfuncs.h: Include hashtab.h. (libfunc_entry): Moved from optabs.c. (target_libfuncs): New structure. (default_target_libfuncs): Declare. (this_target_libfuncs): Declare as a variable or define as a macro. (libfunc_table): Redefine as a macro. * optabs.c (default_target_libfuncs): New variable. (this_target_libfuncs): New conditional variable. (libfunc_table): Delete. (libfunc_entry): Moved to optabs.h. (libfunc_hash): Redefine as a macro. (hash_libfunc, eq_libfunc): Fix comments. (init_optabs): Use libfunc_hash to detect cases where the function has already been called. Clear the hash table instead of recreating it. * target-globals.h (this_target_libfuncs): Declare. (target_globals): Add a libfuncs field. (restore_target_globals): Copy the libfuncs field to this_target_libfuncs. * target-globals.c: Include libfuncs.h. (default_target_globals): Initialize the libfuncs field. (save_target_globals): Likewise. From-SVN: r162099
Diffstat (limited to 'gcc/target-globals.h')
-rw-r--r--gcc/target-globals.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/target-globals.h b/gcc/target-globals.h
index a1f4866..7b7b725 100644
--- a/gcc/target-globals.h
+++ b/gcc/target-globals.h
@@ -28,6 +28,7 @@ extern struct target_hard_regs *this_target_hard_regs;
extern struct target_reload *this_target_reload;
extern struct target_expmed *this_target_expmed;
extern struct target_optabs *this_target_optabs;
+extern struct target_libfuncs *this_target_libfuncs;
struct GTY(()) target_globals {
struct target_flag_state *GTY((skip)) flag_state;
@@ -37,6 +38,7 @@ struct GTY(()) target_globals {
struct target_reload *GTY((skip)) reload;
struct target_expmed *GTY((skip)) expmed;
struct target_optabs *GTY((skip)) optabs;
+ struct target_libfuncs *libfuncs;
};
extern struct target_globals default_target_globals;
@@ -53,6 +55,7 @@ restore_target_globals (struct target_globals *g)
this_target_reload = g->reload;
this_target_expmed = g->expmed;
this_target_optabs = g->optabs;
+ this_target_libfuncs = g->libfuncs;
}
#endif