summaryrefslogtreecommitdiff
path: root/gcc/ChangeLog
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/ChangeLog')
-rw-r--r--gcc/ChangeLog40
1 files changed, 40 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index b5d15ce51b6..7f58b923164 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,43 @@
+2010-11-02 Maxim Kuvyrkov <maxim@codesourcery.com>
+
+ Model decoder of Core 2/i7 for multipass scheduling.
+
+ * config/i386/i386-protos.h (struct ix86_first_cycle_multipass_data_):
+ New type to hold target-specific data for multipass scheduling.
+ (TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DATA_T): Define.
+ * config/i386/i386.c (ia32_multipass_dfa_lookahead): Update for
+ Core 2/i7.
+ (core2i7_secondary_decoder_max_insn_size,)
+ (core2i7_secondary_ifetch_block_size, core2i7_ifetch_block_max_insns):
+ New static variables.
+ ([const_]ix86_first_cycle_multipass_data_t): New typedefs.
+ ([_]ix86_first_cycle_multipass_data): New static variable.
+ (core2i7_first_cycle_multipass_init, core2i7_dfa_poast_advance_cycle):
+ Implement targetm.sched hooks.
+ (core2i7_first_cycle_multipass_filter_ready_try): New static subroutine
+ of ...
+ (core2i7_first_cycle_multipass_{begin, issue, backtrack, end, fini}):
+ Implement new targetm.sched hooks.
+ (ix86_sched_init_global, TARGET_SCHED_INIT_GLOBAL): Define
+ targetm.sched hook to install multipass scheduling hooks on demand.
+
+ * doc/tm.texi.in: Document new targetm.sched hooks.
+ * doc/tm.texi: Regenerate.
+
+ * haifa-sched.c (TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DATA_T): Define.
+ (first_cycle_multipass_data_t): New typedef.
+ (struct choice_entry: target_data): New field.
+ (max_issue): Add first_cycle_insn_p parameter. Call new target hooks
+ to allow target model restrictions not represented in DFA.
+ (choose_ready, schedule_block): Update.
+ (sched_extend_ready_list, sched_finish_ready_list): Call new target
+ hooks to initialize target-specific data for multipass scheduling.
+ * sched-int.h (max_issue): Update declaration.
+ * sel-sched.c (choose_best_insn): Update.
+ * target.def (first_cycle_multipass_{begin, issue, backtrack},)
+ (first_cycle_multipass_{init, fini}): Define and document new
+ targetm.sched hooks.
+
2010-11-02 Richard Guenther <rguenther@suse.de>
PR tree-optimization/46184