[LLVMdev] MI-Sched temporarily enabled on x86.

Andrew Trick atrick at apple.com
Mon Jun 24 02:55:45 PDT 2013


On Jun 24, 2013, at 2:47 AM, Chandler Carruth <chandlerc at google.com> wrote:

> 
> On Mon, Jun 24, 2013 at 2:41 AM, Andrew Trick <atrick at apple.com> wrote:
> I'm briefly enabling the MachineScheduler pass for x86 tonight to collect information on any failures that may show up.
> 
> To properly enable the new scheduler, this hook is implemented in X86Subtarget:
> 
>   bool enableMachineScheduler() const LLVM_OVERRIDE { return true; }
> 
> The MachineScheduler pass itself can be enabled/disabled with -enable-misched=true/false. But most of the codegen changes result rather from moving to source-order SD scheduling and subsequent register coalescing decisions. This makes it extremely challenging to keep the unit tests functioning during the transition. So you'll see unit test churn when I flip the switch.
> 
> This is really cool. Is there a way to provide a flag to enable the whole thing so that folks can help you test stuff in advance of making it the default? (Yes, I'm volunteering. =D)

I'll probably turn it off soon ;)

If want the same behavior as the target hook you can use these flags:

-pre-RA-sched=source -join-globalcopies -enable-misched

Thanks for any testing! Bug reports would be great.

-Andy
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20130624/83ad28ec/attachment.html>


More information about the llvm-dev mailing list