diff options
Diffstat (limited to 'contrib/gcc/loop.h')
-rw-r--r-- | contrib/gcc/loop.h | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/contrib/gcc/loop.h b/contrib/gcc/loop.h index 6d18b01..362013f 100644 --- a/contrib/gcc/loop.h +++ b/contrib/gcc/loop.h @@ -28,7 +28,7 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA #define LOOP_UNROLL 1 #define LOOP_BCT 2 #define LOOP_PREFETCH 4 -#define LOOP_FIRST_PASS 8 +#define LOOP_AUTO_UNROLL 8 /* Get the loop info pointer of a loop. */ #define LOOP_INFO(LOOP) ((struct loop_info *) (LOOP)->aux) @@ -145,7 +145,7 @@ struct induction same biv register. */ struct induction *same; /* If this giv has been combined with another giv, this points to the base giv. The base - giv will have COMBINED_WITH non-zero. */ + giv will have COMBINED_WITH nonzero. */ HOST_WIDE_INT const_adjust; /* Used by loop unrolling, when an address giv is split, and a constant is eliminated from the address, the -constant is stored here @@ -205,7 +205,7 @@ enum iv_mode struct iv { enum iv_mode type; - union + union { struct iv_class *class; struct induction *info; @@ -248,7 +248,7 @@ struct loop_reg During code motion, a negative value indicates a reg that has been made a candidate; in particular -2 means that it is an candidate that we know is equal to a constant and -1 means that - it is an candidate not known equal to a constant. After code + it is a candidate not known equal to a constant. After code motion, regs moved have 0 (which is accurate now) while the failed candidates have the original number of times set. @@ -304,6 +304,8 @@ struct loop_info int has_libcall; /* Nonzero if there is a non constant call in the current loop. */ int has_nonconst_call; + /* Nonzero if there is a prefetch instruction in the current loop. */ + int has_prefetch; /* Nonzero if there is a volatile memory reference in the current loop. */ int has_volatile; @@ -375,7 +377,7 @@ struct loop_info struct loop_regs regs; /* The induction variable information in loop. */ struct loop_ivs ivs; - /* Non-zero if call is in pre_header extended basic block. */ + /* Nonzero if call is in pre_header extended basic block. */ int pre_header_has_call; }; @@ -395,7 +397,7 @@ int loop_invariant_p PARAMS ((const struct loop *, rtx)); rtx get_condition_for_loop PARAMS ((const struct loop *, rtx)); void loop_iv_add_mult_hoist PARAMS ((const struct loop *, rtx, rtx, rtx, rtx)); void loop_iv_add_mult_sink PARAMS ((const struct loop *, rtx, rtx, rtx, rtx)); -void loop_iv_add_mult_emit_before PARAMS ((const struct loop *, rtx, +void loop_iv_add_mult_emit_before PARAMS ((const struct loop *, rtx, rtx, rtx, rtx, basic_block, rtx)); rtx express_from PARAMS ((struct induction *, struct induction *)); @@ -415,7 +417,7 @@ int back_branch_in_range_p PARAMS ((const struct loop *, rtx)); int loop_insn_first_p PARAMS ((rtx, rtx)); typedef rtx (*loop_insn_callback) PARAMS ((struct loop *, rtx, int, int)); void for_each_insn_in_loop PARAMS ((struct loop *, loop_insn_callback)); -rtx loop_insn_emit_before PARAMS((const struct loop *, basic_block, +rtx loop_insn_emit_before PARAMS((const struct loop *, basic_block, rtx, rtx)); rtx loop_insn_sink PARAMS((const struct loop *, rtx)); rtx loop_insn_hoist PARAMS((const struct loop *, rtx)); |