[LLVMdev] Recently failing vector tests

Dale Johannesen dalej at apple.com
Mon Jun 30 11:36:45 PDT 2008


On Jun 30, 2008, at 11:29 AMPDT, Duncan Sands wrote:

> Hi Dale,
>
>> OK, the test is not quite right then.  This doesn't happen on Darwin
>> so I'm
>> afraid you'll have to debug it.  Perhaps testing for
>>        (RegInfo->needsStackRealignment(Fn) &&
>>         FFI->getObjectIndexEnd()!=0)
>> ?
>
> yes, that works - thanks!  Since I have no idea what this is
> doing, is it ok if I leave it to you to commit it?
>
> Thanks again,
>
> Duncan.

OK, I'll test that for Darwin and commit.

>>> On Friday 27 June 2008 19:51:00 Dale Johannesen wrote:
>>>> On Jun 27, 2008, at 3:11 AMPDT, Duncan Sands wrote:
>>>>> FAIL: test/CodeGen/X86/vec_shuffle-10.ll
>>>>> Failed with exit(1) at line 3
>>>>> while running: llvm-as < test/CodeGen/X86/vec_shuffle-10.ll |  
>>>>> llc -
>>>>> march=x86 -mattr=+sse2 |  not grep {sub.*esp}
>>>>>      subl    $16, %esp
>>>>>      subl    $16, %esp
>>>>> child process exited abnormally
>>>>
>>>> Is the code actually loading and storing to the stack, or just
>>>> allocating space?
>>>> If the latter it is probably this patch:
>>>> http://llvm.org/viewvc/llvm-project?view=rev&revision=52750
>>>>
>>>> Rounding up the stack size does not have to be done if there are no
>>>> stack
>>>> objects, so that would be the preferred way to fix this.  See if  
>>>> this
>>>> works for you.
>>>> It will be something close to this.
>>>>
>>>> Index: CodeGen/PrologEpilogInserter.cpp
>>>> ===================================================================
>>>> --- CodeGen/PrologEpilogInserter.cpp	(revision 52829)
>>>> +++ CodeGen/PrologEpilogInserter.cpp	(working copy)
>>>> @@ -464,7 +464,8 @@
>>>>   // works.
>>>>   if (!RegInfo->targetHandlesStackFrameRounding() &&
>>>>       (FFI->hasCalls() || FFI->hasVarSizedObjects() ||
>>>> -       RegInfo->needsStackRealignment(Fn))) {
>>>> +       (RegInfo->needsStackRealignment(Fn) &&
>>>> +        Offset > std::abs(TFI.getOffsetOfLocalArea())))) {
>>>>     // If we have reserved argument space for call sites in the
>>>> function
>>>>     // immediately on entry to the current function, count it as
>>>> part of the
>>>>     // overall stack size.
>>>>
>>>> _______________________________________________
>>>> 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