[llvm-dev] how to determine abi alignment of function based on its type?

Andrew Kelley via llvm-dev llvm-dev at lists.llvm.org
Sun Sep 16 08:17:26 PDT 2018


The following assertion is tripping when I do LLVMABIAlignmentOfType on a
function type:

#4  0x0000000005b67fc4 in llvm::DataLayout::getAlignment (this=0xa0bb960,
Ty=0xa0bee58,
    abi_or_pref=true) at
/home/andy/downloads/llvm_release_70/lib/IR/DataLayout.cpp:672
672      assert(Ty->isSized() && "Cannot getTypeInfo() on a type that is
unsized!");

(gdb) p Ty->dump()
void ()

Shouldn't this type be sized? Is this a bug?

As a workaround, I have to assume that all functions are only 1-byte
aligned, but that doesn't seem sound. Is it possible to find out the ABI
alignment of a function?

Regards,
Andrew
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20180916/ca329798/attachment.html>


More information about the llvm-dev mailing list