[llvm-commits] [ARM] Scheduler FixedFrame object vs byval formal parameters

Manman Ren mren at apple.com
Thu Oct 4 16:01:36 PDT 2012


On Oct 4, 2012, at 3:10 PM, Manman Ren <mren at apple.com> wrote:

> 
> On Oct 4, 2012, at 12:45 PM, Bill Schmidt <wschmidt at linux.vnet.ibm.com> wrote:
> 
>> On Thu, 2012-10-04 at 22:30 +0400, Stepan Dyatkovskiy wrote:
>>> Hi all!
>>> 
>>> Small but very important issue is, that 
>>> SchedulerDAGInstrs::buildSchedGraph ignores dependencies between 
>>> FixedStack objects and byval parameters. So loading byval parameters 
>>> from stack may be inserted *before* it will stored, since these 
>>> operations are treated as independent.
>>> 
>>> Frankly right now, I couldn't found better solution than make byval 
>>> arguments dependent from all fixed-frame objects. Perhaps guys, you have 
>>> any ideas?
>> 
>> Hi Stepan,
>> 
>> You should look at the thread from September 29 with subject 
>> 
>> Re: [llvm-commits] byval arg lowering (was: [PATCH, RFC] Fix PR13891
>> (AliasChain not properly maintained in
>> ScheduleDAGInstrs::buildSchedGraph()))
>> 
>> Both MIPS and PowerPC have hit similar problems, and we were able to fix
>> this by providing some aliasing information on the stores of the byVal
>> arguments.  I hope this will be possible for you as well!
> 
> This will not apply to ARM, since we handle byval arguments for ARM in a different way.
> We insert  a pseudo instruction in DAG, then expand it to MIs during ExpandISelPseudos.

I was confused with the problem here. This is related to the callee site, not the caller site.
And I was talking about the implementation at the caller site :]

The fix for Mips and PowerPC should apply for ARM as well.

Thanks,
Manman

> 
> I will check with Andy on this.
> 
> Thanks,
> Manman
> 
>> 
>> Thanks,
>> Bill
>> 
>>> 
>>> Please find patch in attachment.
>>> 
>>> -Stepan.
>>> _______________________________________________
>>> llvm-commits mailing list
>>> llvm-commits at cs.uiuc.edu
>>> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>> 
>> -- 
>> Bill Schmidt, Ph.D.
>> IBM Advance Toolchain for PowerLinux
>> IBM Linux Technology Center
>> wschmidt at linux.vnet.ibm.com
>> wschmidt at us.ibm.com
>> 
>> 
>> _______________________________________________
>> llvm-commits mailing list
>> llvm-commits at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
> 
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits




More information about the llvm-commits mailing list