[llvm-dev] sizeof(DIFlags)

via llvm-dev llvm-dev at lists.llvm.org
Mon Jul 16 10:17:09 PDT 2018


DIFlags is internal to the compiler, not directly determined by the DWARF standard.  It mostly happens to be full of data that gets turned into DWARF flags.
I suspect it's nailed down to 32 bits mainly because we haven't needed more, so far.  Also MSVC historically failed to handle enum values wider than 32 bits; I don't know whether that's still true.
--paulr

From: llvm-dev [mailto:llvm-dev-bounces at lists.llvm.org] On Behalf Of Sohail Somani (Fizz Buzz Inc.) via llvm-dev
Sent: Monday, July 16, 2018 8:57 AM
To: llvm-dev at lists.llvm.org
Subject: [llvm-dev] sizeof(DIFlags)

Hi list,

Is there a standards based reason why the DIFlags enum is set to uint32_t[1]? I am sure my DWARF-std-reading-fu is not up to snuff and so I cannot seem to find it.

The reason I ask is that we are running out of space for our own DIFlags and would like to nail this down before deciding on an approach.

Thanks!

Sohail

[1] The code in question: https://github.com/llvm-mirror/llvm/blob/master/include/llvm/IR/DebugInfoMetadata.h#L194


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


More information about the llvm-dev mailing list