This is the mail archive of the
gcc-cvs@gcc.gnu.org
mailing list for the GCC project.
r139254 - in /branches/cell-4_3-branch/gcc: Cha...
- From: tsmigiel at gcc dot gnu dot org
- To: gcc-cvs at gcc dot gnu dot org
- Date: Wed, 20 Aug 2008 01:42:52 -0000
- Subject: r139254 - in /branches/cell-4_3-branch/gcc: Cha...
Author: tsmigiel
Date: Wed Aug 20 01:42:52 2008
New Revision: 139254
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=139254
Log:
Improve branch hints and scheduling. Implement -msafe-hints.
* doc/invoke.texi (-mdual-nops, -mhint-max-nops,
-mhint-max-distance -msafe-hints) : Document.
* config/spu/spu.c (spu_flag_var_tracking): New.
(TARGET_SCHED_INIT_GLOBAL, TARGET_SCHED_INIT,
TARGET_SCHED_REORDER, TARGET_SCHED_REORDER2,
TARGET_ASM_FILE_START): Define.
(TARGET_SCHED_ADJUST_PRIORITY): Remove.
(STOP_HINT_P, HINTED_P, SCHED_ON_EVEN_P): Define.
(spu_emit_branch_hint) Add blocks argument.
(insert_branch_hints, insert_nops) Remove.
(pad_bb, insert_hbrp_for_ilb_runout, insert_hbrp, in_spu_reorg,
uses_ls_unit, spu_sched_init_global, spu_sched_init,
spu_sched_reorder, asm_file_start) New functions.
(clock_var, spu_sched_length, pipe0_clock,
pipe1_clock, prev_clock_var, prev_priority,
spu_ls_first, prev_ls_clock) New static variables.
* config/spu/spu.h (TARGET_DEFAULT): Add MASK_SAFE_HINTS
* config/spu.md (iprefetch): Add operand, make it clobber MEM.
(nopn_nv): Add a non-volatile version of nop.
* config/spu/spu.opt (-mdual-nops, -mhint-max-nops,
-mhint-max-distance, -msafe-hints): New options.
Modified:
branches/cell-4_3-branch/gcc/ChangeLog
branches/cell-4_3-branch/gcc/config/spu/spu.c
branches/cell-4_3-branch/gcc/config/spu/spu.h
branches/cell-4_3-branch/gcc/config/spu/spu.md
branches/cell-4_3-branch/gcc/config/spu/spu.opt
branches/cell-4_3-branch/gcc/doc/invoke.texi