[LLVMbugs] [Bug 21435] New: LLVM no longer honours -stack-alignment=4
bugzilla-daemon at llvm.org
bugzilla-daemon at llvm.org
Fri Oct 31 12:16:17 PDT 2014
http://llvm.org/bugs/show_bug.cgi?id=21435
Bug ID: 21435
Summary: LLVM no longer honours -stack-alignment=4
Product: libraries
Version: trunk
Hardware: PC
OS: All
Status: NEW
Severity: normal
Priority: P
Component: Backend: X86
Assignee: unassignedbugs at nondot.org
Reporter: jfonseca at vmware.com
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
Created attachment 13268
--> http://llvm.org/bugs/attachment.cgi?id=13268&action=edit
bug1347703.ll
LLVM stoped honouring
This can easily be reproduced with the attached bug1347703.ll doing
$ llc -o - -mtriple=i686-pc-mingw32 -mattr=+avx -stack-alignment=4
bug1347703.ll | grep '\<and.*[er]sp'
$
which produces nothing showing that the stack pointer is never aligned.
However if one disables frame-pointer elimination then it works again:
$
/home/jfonseca/work/vmware/llvm/llvm/build/linux-x86_64/Debug+Asserts/bin/llc
-disable-fp-elim -o - -mtriple=i686-pc-mingw32 -mattr=+avx -stack-alignment=4
bug1347703.ll | grep '\<and.*[er]sp'
andl $-32, %esp
andl $-32, %esp
$
Which doesn't seem the right behavior -- using the frame-pointer to align the
stack seems an implementation detail -- there are probably other ways, and if
frame-pointer is indeed necessary it should be automatically employed as
necessary.
This regression happened between LLVM release 3.2 and release 3.3. I strongly
suspect r168627 --
https://github.com/llvm-mirror/llvm/commit/1243922fc1a1e3d2681ed9e78503eeabd875ba93
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20141031/2ee0e8a9/attachment.html>
More information about the llvm-bugs
mailing list