Re: PR 48826: NOTE_INSN_CALL_ARG_LOCATION vs. define_split

2011-05-29 Thread Eric Botcazou
> If this usage isn't legitimate, and the CALL_ARG_LOCATION is supposed > to come directly after the call, then it would be great if someone more > familiar with the var-tracking code could have a look at it. "Be liberal in what you accept" says the common wisdom. > gcc/ > * emit-rtl.c (try

Re: PR 48826: NOTE_INSN_CALL_ARG_LOCATION vs. define_split

2011-05-28 Thread Richard Sandiford
Richard Sandiford writes: > gcc/ > PR rtl-optimization/48826 > * emit-rtl.c (try_split): When splitting a call that is followed > by a NOTE_INSN_CALL_ARG_LOCATION, move the note after the new call. It turns out that this isn't enough. In the attached testcase, we have a: (

Re: PR 48826: NOTE_INSN_CALL_ARG_LOCATION vs. define_split

2011-05-23 Thread Eric Botcazou
> It sounded like you were more concerned with having the comments staying > in sync than the actual specifics, so I went ahead and installed the > patch below. That's fine, thanks. -- Eric Botcazou

Re: PR 48826: NOTE_INSN_CALL_ARG_LOCATION vs. define_split

2011-05-23 Thread Richard Sandiford
Eric Botcazou writes: >> PR rtl-optimization/48826 >> * emit-rtl.c (try_split): When splitting a call that is followed >> by a NOTE_INSN_CALL_ARG_LOCATION, move the note after the new call. > > OK if you move up the comment and merge it in the comment of the > block. And it would b

Re: PR 48826: NOTE_INSN_CALL_ARG_LOCATION vs. define_split

2011-05-23 Thread Eric Botcazou
> PR rtl-optimization/48826 > * emit-rtl.c (try_split): When splitting a call that is followed > by a NOTE_INSN_CALL_ARG_LOCATION, move the note after the new call. OK if you move up the comment and merge it in the comment of the block. And it would be nice to add the missing b

PR 48826: NOTE_INSN_CALL_ARG_LOCATION vs. define_split

2011-05-22 Thread Richard Sandiford
In PR 44826, we split a pre-reload call into another call followed by a load of GP. The problem is that we're running the split pass after var-tracking, and the original call had a NOTE_INSN_CALL_ARG_LOCATION attached to it. We need to move the note to the new call, just like we already move othe