Re: Using MEM_EXPR inside a call expression

2009-09-02 Thread Richard Sandiford
Adam Nemet writes: > Richard Henderson writes: >> On 09/01/2009 12:48 PM, Adam Nemet wrote: >> > I see. So I guess you're saying that there is little chance to optimize >> > the >> > loop I had in my previous email ;(. >> >> Not at the rtl level. Gimple-level loop splitting should do it though

Re: Using MEM_EXPR inside a call expression

2009-09-01 Thread Adam Nemet
Richard Henderson writes: > On 09/01/2009 12:48 PM, Adam Nemet wrote: > > I see. So I guess you're saying that there is little chance to optimize the > > loop I had in my previous email ;(. > > Not at the rtl level. Gimple-level loop splitting should do it though. > > > Now suppose we split lat

Re: Using MEM_EXPR inside a call expression

2009-09-01 Thread Richard Henderson
On 09/01/2009 12:48 PM, Adam Nemet wrote: I see. So I guess you're saying that there is little chance to optimize the loop I had in my previous email ;(. Not at the rtl level. Gimple-level loop splitting should do it though. Now suppose we split late, shouldn't we still assume that data-flo

Re: Using MEM_EXPR inside a call expression

2009-09-01 Thread Adam Nemet
Richard Henderson writes: > On 08/28/2009 12:38 AM, Adam Nemet wrote: > > ... To assist the linker we need to annotate the indirect call > > with the function symbol. > > > > Since the call is expanded early... > > Having experimented with this on Alpha a few years back, > the only thing I can sug

Re: Using MEM_EXPR inside a call expression

2009-09-01 Thread Richard Henderson
On 08/28/2009 12:38 AM, Adam Nemet wrote: ... To assist the linker we need to annotate the indirect call with the function symbol. Since the call is expanded early... Having experimented with this on Alpha a few years back, the only thing I can suggest is to not expand them early. I use a com

Using MEM_EXPR inside a call expression

2009-08-28 Thread Adam Nemet
On MIPS, PIC calls are indirect calls that need to be dispatched via an ABI mandated register. At expansion time we load the symbol into a pseudo then expand the call. There is a linker optimization that can turn these indirect calls into direct calls under some circumstances. This can improve b