[LLVMdev] Recently failing vector tests
Dale Johannesen
dalej at apple.com
Fri Jun 27 10:51:00 PDT 2008
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.
More information about the llvm-dev
mailing list