[LLVMdev] RegAllocFast uses too much stack
Jakob Stoklund Olesen
stoklund at 2pi.dk
Mon Jul 11 15:49:37 PDT 2011
On Jul 11, 2011, at 3:43 PM, Eric Christopher wrote:
>
> On Jul 11, 2011, at 3:41 PM, Dan Gohman wrote:
>
>> On Jul 11, 2011, at 3:06 PM, Eli Friedman wrote:
>>
>>> On Mon, Jul 11, 2011 at 2:44 PM, Eric Christopher <echristo at apple.com> wrote:
>>>>
>>>> On Jul 11, 2011, at 1:48 PM, Nick Lewycky wrote:
>>>>
>>>> This seems odd. I'd think that fast-isel should be able to materialize the constants when we want them rather than at the beginning of the block.
>>>
>>> I'm not entirely sure why, but FastISel does intentionally materialize
>>> constants at the beginning of the block. See
>>> FastISel::enterLocalValueArea etc. Maybe Dan knows why?
>>
>>
>> Going bottom-up, FastISel doesn't know when it'll see the first use of a value
>> in a block. Cleverer schemes are possible.
>
> Or less clever by not caching the result? :)
At least, we shouldn't cache stuff across function calls.
/jakob
More information about the llvm-dev
mailing list