[llvm-commits] [llvm] r83122 - in /llvm/trunk: include/llvm/Target/TargetSubtarget.h lib/CodeGen/LLVMTargetMachine.cpp lib/CodeGen/PostRASchedulerList.cpp lib/Target/ARM/ARM.td lib/Target/ARM/ARMSubtarget.cpp lib/Target/ARM/ARMSubtarget.h test/CodeGen/ARM/2009-08-21-PostRAKill.ll test/CodeGen/ARM/2009-08-21-PostRAKill2.ll test/CodeGen/ARM/2009-08-21-PostRAKill3.ll test/CodeGen/ARM/2009-08-21-PostRAKill4.ll test/CodeGen/ARM/2009-09-01-PostRAProlog.ll

David Goodwin david_goodwin at apple.com
Wed Sep 30 09:58:01 PDT 2009


I suppose I could set the default programmatically based on the CPU  
string, and then have a hidden tri-state flag (keep default, force on,  
force off) for overriding. Note that we have another attribute like  
this that is used to indicate that NEON instructions should be used  
for single-precision FP.

David

On Sep 30, 2009, at 8:40 AM, David Goodwin wrote:

> I did add a subtarget hook to control post-ra scheduling. And by  
> default it is off except for the one CPU that is ready for it  
> (cortex-a8). But there needs to be a way to override the default (in  
> either direction), as well as a way to set the default for a  
> particular CPU. -mattr satisfies both of those requirements. Can I  
> get the same behavior in a different way?
>
> Evan, all CPUs have an itinerary (even if it is an empty itinerary)  
> so I don't think that can be used... and we would still need a way  
> to override the default.
>
> David
>
> On Sep 30, 2009, at 12:43 AM, Evan Cheng wrote:
>
>>
>> On Sep 29, 2009, at 10:16 PM, Chris Lattner wrote:
>>
>>>
>>> On Sep 29, 2009, at 5:10 PM, David Goodwin wrote:
>>>
>>>> Author: david_goodwin
>>>> Date: Tue Sep 29 19:10:16 2009
>>>> New Revision: 83122
>>>>
>>>> URL: http://llvm.org/viewvc/llvm-project?rev=83122&view=rev
>>>> Log:
>>>> Remove -post-RA-schedule flag and add a TargetSubtarget method to
>>>> enable post-register-allocation scheduling. By default it is off.
>>>> For ARM, enable/disable with -mattr=+/-postrasched. Enable by
>>>> default for cortex-a8.
>>>
>>> Hi David,
>>>
>>> -mattr should be used for CPU attributes, not for optimization  
>>> flags.
>>> Having a subtarget hook (or even TargetMachine hook) to indicate
>>> whether this should default to on or not makes sense to me, but  
>>> should
>>> it really be controlled via -mattr?
>>
>> I think ARM target should run postalloc scheduling when scheduling  
>> itinerary is available for the given cpu?
>>
>> Evan
>>
>>>
>>> -Chris
>>>
>>> _______________________________________________
>>> 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