[llvm-commits] [PATCH] Adding x32 ABI triple and separate StackSlotSize in MCAsmInfo

Eli Bendersky eliben at google.com
Fri Jan 18 09:00:19 PST 2013


Hello,

Following David's email on llvmdev
(http://lists.cs.uiuc.edu/pipermail/llvmdev/2013-January/058209.html),
here is an initial patch for adding the x32 ABI triple to LLVM.

The patch is deliberately very simple. All it does is add the new
Triple::EnvironmentType value for the x32 ABI, and uses it on one
place - separating stack slot size and pointer size in MCAsmInfo. All
targets provide the same value there, but x86-64 has to behave
differently based on the ABI.
One place where this is important is the data alignment factor in
DWARF frame section. I discussed this with Rafael previosuly and we
agreed this solution makes sense.

A limitation in our llvm-dwarfdump tool currently precludes me from
adding more tests that direct the slot size. I will try to see if I
can patch up llvm-dwarfdump to allow this separately. Once that
capability is in place, I will add more tests.

Note that changes based on the x32 ABI will have to eventually
propagate into other places, but I will break it to small reviewable
and testable chunks over time. For the full picture of where this is
going, you can refer to the patches Michael Liao sent last year
(http://lists.cs.uiuc.edu/pipermail/llvmdev/2012-June/050360.html and
other threads).

Eli
-------------- next part --------------
A non-text attachment was scrubbed...
Name: x32-triple-asminfo-slotsize.1.patch
Type: application/octet-stream
Size: 8023 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20130118/d9f5ff19/attachment.obj>


More information about the llvm-commits mailing list