[LLVMdev] data layout string questions.

reed kotler rkotler at mips.com
Fri Oct 31 15:42:45 PDT 2014


in the language reference manual there is no definition for the prefix 
"s" (only for large "S" which has to do with the stack).

BTW for x86, I get
s0:64:64

Not sure what this means.

The form:
i<size>:<abi>:<pref>

Seems to mean that llvm type i<size> and then abi == the number of bits.

what is the acronym here for abi or does this mean that the ABI 
specified size?

for "a", the definition is

a:<abi>:<pref>

But if I compile a program with x86 on a 64 bit machine I get:

a0:0:64

So this means that as long as the number of bits is greater than 0, the 
alignment is 64.
0 is like a wildcard in this case and the <abi> field is not relevant?

In any case, the syntax is incorrect since there is no size field.

BTW, it seems that S0 means the natural alignment is unspecified, which 
not in the document.
Also, the absence of S means unspecified also.

Tia.

Reed

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20141031/35fad806/attachment.html>


More information about the llvm-dev mailing list