[llvm-commits] [llvm][commits] r162603

Jakob Stoklund Olesen stoklund at 2pi.dk
Tue Nov 13 06:50:26 PST 2012


On Nov 13, 2012, at 1:20 AM, "Silviu Baranga" <silbar01 at arm.com> wrote:

> Hi Jakob,
> 
> Do you have a testcase? I know it's been a while since the
> commit but it would help anyone who might try to fix this.

I think there are already tests covering this in the tree, otherwise a switch inside a loop should do it.



> 
>> -----Original Message-----
>> From: Jakob Stoklund Olesen [mailto:stoklund at 2pi.dk]
>> Sent: 12 November 2012 17:33
>> To: Silviu Baranga
>> Cc: llvm-commits at cs.uiuc.edu
>> Subject: Re: [llvm][commits] r162603
>> 
>> 
>> On Nov 12, 2012, at 2:31 AM, "Silviu Baranga" <silbar01 at arm.com> wrote:
>> 
>>> Hi Jakob,
>>> 
>>> Why is the LEApcrel marked as having side effects?
>>> This is preventing it from being hoisted by the MachineLICM pass.
>> 
>> Hi Silviu,
>> 
>> As the commit message says, hoisting the lea breaks the pass that forms
>> tbb instructions for jump tables.
>> 
>> Patches welcome, it's the constant island pass IIRC.
>> 
>> /jakob
>> 
>>>> Explicitly mark LEApcrel pseudos with hasSideEffects.
>>>> 
>>>> It's not clear that they should be marked as such, but tbb formation
>>> fails if t2LEApcrelJT is hoisted of of a loop.
>>>> 
>>>> This doesn't change the flags on these instructions,
>>>> UnmodeledSideEffects was already inferred from the missing pattern.
>>> 
>>> 
>>> 
>> 
>> 
> 
> 
> 
> 




More information about the llvm-commits mailing list