Re: Fix finding reg-sets of call insn in collect_fn_hard_reg_usage

2014-07-02 Thread Jeff Law
On 07/02/14 02:32, Eric Botcazou wrote: So in order to known whether it's safe and optimal to use regs_ever_live instead, the question is whether the passes after pass_free_cfg (are allowed to) add or remove sets or clobbers of call_really_used_regs. I don't know the full answer there. pass_mac

Re: Fix finding reg-sets of call insn in collect_fn_hard_reg_usage

2014-07-02 Thread Eric Botcazou
> So in order to known whether it's safe and optimal to use regs_ever_live > instead, the question is whether the passes after pass_free_cfg (are allowed > to) add or remove sets or clobbers of call_really_used_regs. I don't know > the full answer there. pass_machine_reorg is run after pass_free_c

Re: Fix finding reg-sets of call insn in collect_fn_hard_reg_usage

2014-06-30 Thread Jeff Law
On 06/26/14 04:56, Tom de Vries wrote: On 19-06-14 18:47, Richard Henderson wrote: And I forgot to mention it might be worth while to notice simple recursion. Avoid the early exit path if caller == callee, despite the caller-save info not being valid. Richard, attached patch enables handlin

Re: Fix finding reg-sets of call insn in collect_fn_hard_reg_usage

2014-06-27 Thread Tom de Vries
On 19-06-14 18:40, Richard Henderson wrote: On 06/19/2014 09:07 AM, Tom de Vries wrote: 2014-06-19 Tom de Vries * final.c (collect_fn_hard_reg_usage): Add separate IOR_HARD_REG_SET for get_call_reg_set_usage. Ok, as far as it goes, but... It seems like there should be qui

Re: Fix finding reg-sets of call insn in collect_fn_hard_reg_usage

2014-06-26 Thread Tom de Vries
On 19-06-14 18:47, Richard Henderson wrote: And I forgot to mention it might be worth while to notice simple recursion. Avoid the early exit path if caller == callee, despite the caller-save info not being valid. Richard, attached patch enables handling of self-recursive functions in the fu

Re: Fix finding reg-sets of call insn in collect_fn_hard_reg_usage

2014-06-19 Thread Richard Henderson
On 06/19/2014 09:40 AM, Richard Henderson wrote: > It appears that regs_ever_live includes any register mentioned explicitly, and > thus the only registers it doesn't contain are those killed by the callees. > That should be an easier scan than the rtl, since we have those already > collected in th

Re: Fix finding reg-sets of call insn in collect_fn_hard_reg_usage

2014-06-19 Thread Richard Henderson
On 06/19/2014 09:07 AM, Tom de Vries wrote: > > 2014-06-19 Tom de Vries > > * final.c (collect_fn_hard_reg_usage): Add separate IOR_HARD_REG_SET for > get_call_reg_set_usage. Ok, as far as it goes, but... It seems like there should be quite a bit of overlap with regs_ever_live he