On Fri, Jun 30, 2017 at 10:36:27PM +0100, Ramana Radhakrishnan wrote: > On Fri, Jun 30, 2017 at 2:36 PM, David Edelsohn <dje....@gmail.com> wrote: > > Convert the rs6000 port to use the new API for branch probabilities. > > > > Okay? > > > > Thanks, David > > > > * config/rs6000/rs6000.c (emit_unlikely_jump): Adjust to new branch > > probability data type. > > > > Index: rs6000.c > > =================================================================== > > --- rs6000.c (revision 249839) > > +++ rs6000.c (working copy) > > @@ -23514,10 +23514,9 @@ > > static void > > emit_unlikely_jump (rtx cond, rtx label) > > { > > - int very_unlikely = REG_BR_PROB_BASE / 100 - 1; > > rtx x = gen_rtx_IF_THEN_ELSE (VOIDmode, cond, label, pc_rtx); > > rtx_insn *insn = emit_jump_insn (gen_rtx_SET (pc_rtx, x)); > > - add_int_reg_note (insn, REG_BR_PROB, very_unlikely); > > + add_int_reg_note (insn, REG_BR_PROB, profile_probability::very_unlikely > > ()); > > Hmmm isn't this very unlikely to work :) ? > > I used this as inspiration to do this for the arm ports but > add_int_reg_note expects an integer but very_unlikely returns > profile_probability ...
It probably should be converted using to_reg_br_prob_base ? Segher