* rtl.def (ATTR_FLAG): Remove probability indicating flags.
* genattr.c (main): Remove ATTR_FLAG_likely, ATTR_FLAG_unlikely,
ATTR_FLAG_very_likely, and ATTR_FLAG_very_unlikely.
* reorg.c (get_jump_flags): Do not set the removed flags.
From-SVN: r187178
+2012-05-04 Steven Bosscher <steven@gcc.gnu.org>
+
+ * rtl.def (ATTR_FLAG): Remove probability indicating flags.
+ * genattr.c (main): Remove ATTR_FLAG_likely, ATTR_FLAG_unlikely,
+ ATTR_FLAG_very_likely, and ATTR_FLAG_very_unlikely.
+ * reorg.c (get_jump_flags): Do not set the removed flags.
+
2012-05-04 Uros Bizjak <ubizjak@gmail.com>
PR target/53228
/* Output flag masks for use by reorg.
- Flags are used to hold branch direction and prediction information
- for use by eligible_for_... */
+ Flags are used to hold branch direction for use by eligible_for_... */
printf("\n#define ATTR_FLAG_forward\t0x1\n");
printf("#define ATTR_FLAG_backward\t0x2\n");
- printf("#define ATTR_FLAG_likely\t0x4\n");
- printf("#define ATTR_FLAG_very_likely\t0x8\n");
- printf("#define ATTR_FLAG_unlikely\t0x10\n");
- printf("#define ATTR_FLAG_very_unlikely\t0x20\n");
puts("\n#endif /* GCC_INSN_ATTR_H */");
else
flags = 0;
- /* If insn is a conditional branch call mostly_true_jump to get
- determine the branch prediction.
-
- Non conditional branches are predicted as very likely taken. */
- if (JUMP_P (insn)
- && (condjump_p (insn) || condjump_in_parallel_p (insn)))
- {
- int prediction;
-
- prediction = mostly_true_jump (insn, get_branch_condition (insn, label));
- switch (prediction)
- {
- case 2:
- flags |= (ATTR_FLAG_very_likely | ATTR_FLAG_likely);
- break;
- case 1:
- flags |= ATTR_FLAG_likely;
- break;
- case 0:
- flags |= ATTR_FLAG_unlikely;
- break;
- case -1:
- flags |= (ATTR_FLAG_very_unlikely | ATTR_FLAG_unlikely);
- break;
-
- default:
- gcc_unreachable ();
- }
- }
- else
- flags |= (ATTR_FLAG_very_likely | ATTR_FLAG_likely);
-
return flags;
}
true for the insn being scheduled in reorg.
genattr.c defines the following flags which can be tested by
- (attr_flag "foo") expressions in eligible_for_delay.
-
- forward, backward, very_likely, likely, very_unlikely, and unlikely. */
+ (attr_flag "foo") expressions in eligible_for_delay: forward, backward. */
DEF_RTL_EXPR (ATTR_FLAG, "attr_flag", "s", RTX_EXTRA)