diff options
author | Richard Sandiford <rdsandiford@googlemail.com> | 2010-07-12 18:55:48 +0000 |
---|---|---|
committer | Richard Sandiford <rsandifo@gcc.gnu.org> | 2010-07-12 18:55:48 +0000 |
commit | 3e9c326a88c289e25d58d2e9efb8517ef272410d (patch) | |
tree | 3386f4b0b387575b31aa4559e02d101b1270353f /gcc/target-globals.h | |
parent | 9f7f18923aa399f15f5ba5f7f5bd4c76def90265 (diff) | |
download | gcc-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.h | 3 |
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 |