summaryrefslogtreecommitdiff
path: root/gcc/target-globals.c
diff options
context:
space:
mode:
authorrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>2010-07-12 18:54:08 +0000
committerrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>2010-07-12 18:54:08 +0000
commit6ebe4c6978847bb027afb24b03e91aa4a850056e (patch)
treebbd31df3f0f8e6de8d0b1dc923fc0b8c2395a5ce /gcc/target-globals.c
parent5f00384a2df620694cde858c379b6fa5060f3692 (diff)
downloadgcc-6ebe4c6978847bb027afb24b03e91aa4a850056e.tar.gz
gcc/
* Makefile.in (expmed.o, target-globals.o): Depend on expmed.h. * expmed.h: New file. * expmed.c (default_target_costs): New variable. (this_target_costs): New conditional variable. (sdiv_pow2_cheap, smod_pow2_cheap, zero_cost, add_cost, neg_cost) (shift_cost, shiftadd_cost, shiftsub0_cost, shiftsub1_cost, mul_cost) (sdiv_cost, udiv_cost, mul_widen_cost, mul_highpart_cost): Delete. * target-globals.h (this_target_expmed): Declare. (target_globals): Add a expmed field. (restore_target_globals): Copy the expmed field to this_target_expmed. * target-globals.c: Include expmed.h. (default_target_globals): Initialize the expmed field. (save_target_globals): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@162094 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/target-globals.c')
-rw-r--r--gcc/target-globals.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/gcc/target-globals.c b/gcc/target-globals.c
index f78e58d0927..5934ad9f9e9 100644
--- a/gcc/target-globals.c
+++ b/gcc/target-globals.c
@@ -31,6 +31,7 @@ along with GCC; see the file COPYING3. If not see
#include "rtl.h"
#include "hard-reg-set.h"
#include "reload.h"
+#include "expmed.h"
#if SWITCHABLE_TARGET
struct target_globals default_target_globals = {
@@ -38,7 +39,8 @@ struct target_globals default_target_globals = {
&default_target_regs,
&default_target_rtl,
&default_target_hard_regs,
- &default_target_reload
+ &default_target_reload,
+ &default_target_expmed
};
struct target_globals *
@@ -52,6 +54,7 @@ save_target_globals (void)
g->rtl = ggc_alloc_cleared_target_rtl ();
g->hard_regs = XCNEW (struct target_hard_regs);
g->reload = XCNEW (struct target_reload);
+ g->expmed = XCNEW (struct target_expmed);
restore_target_globals (g);
target_reinit ();
return g;