[LLVMdev] how to set -pre-ra-sched from code?

Andrew Friedley afriedle at indiana.edu
Mon Apr 19 05:27:21 PDT 2010


Sorry for responding to my own message but I would really appreciate 
some help with this.

Looking through the documentation again this morning I noticed that 
setSchedulingPreference is a protected method of LLVMTargetLowering, so 
it looks like it's not something I can call directly anyway. 
Furthermore it's only called from one place with a hard-coded value for 
any particular platform.

Andrew

Andrew Friedley wrote:
> Sanjiv Gupta wrote:
>> On Wed, 2010-04-14 at 11:33 -0400, Andrew Friedley wrote:
>>> I've found that I need to set the -pre-RA-sched parameter when using 
>>> tools like llc to get the kind of instruction scheduling I want.
>>>
>>> However I'm normally generating and running code on the fly using the 
>>> JIT, and can't figure out how to set the -pre-RA-sched option anywhere 
>>> other than on the command line for the provided tools.  So what code 
>>> would I write (or where is the API?) to change the pre-regalloc 
>>> instruction scheduler algorithm?
>> Does this thing below in TargetLowering help?
>>
>> /// setSchedulingPreference - Specify the target scheduling preference.
>>   void setSchedulingPreference(SchedPreference Pref) 
> 
> Thanks!  That doesn't look like what -pre-RA-sched eventually maps to, 
> but it looks like the switch I want to change.  Pardon my ignorance, but 
> I have no idea how I'm supposed to get to a point where I can call this 
> when all I have is a module and an execution engine.
> 
> Better yet, how would I go about figuring this out from the 
> documentation?  I'm having no luck at all finding these things.
> 
> Andrew
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev



More information about the llvm-dev mailing list