search for: getlongdoubleformat

Displaying 4 results from an estimated 4 matches for "getlongdoubleformat".

2015 Nov 02
2
Representing X86 long double in Debug Info
...that sizeof() is supposed to give. sizeof() is typically a multiple of alignment, so if alignof() is 128, sizeof must be 128. Other common alignments are 32 and 64, which makes sizeof() 96 and 128 respectively. In practice, sizeof(long double) is never 80. Maybe CGDebugInfo should ask TargetInfo::getLongDoubleFormat() what model is in use and generate dwarf accordingly. It's a bit of a hack, so I'm open to better suggestions. -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20151102/c8b7b982/attachment.html>
2015 Nov 02
4
Representing X86 long double in Debug Info
...nion out there: 1) Use the DW_AT_bit_size/DW_AT_byte_size 2) Add a new `storage_size` attribute to DIBaseType that is generally equal to size, except in cases like this, where we should have `storage_size = 128, size = 80` 3) Have clang set those based on `getLongDoubeSize` (for storage size) and `getLongDoubleFormat` as Reid suggested. This did seem very hacky too me at first as well, but thinking about it again, the format does encode how many semantic bits there are (because it is needed for correctly constant folding etc.), which is really what we're asking for here. However, I personally don't hav...
2015 Nov 03
2
Representing X86 long double in Debug Info
...ing back compat?) - the >> new/differently named field should describe the new thing we want to add, >> the actual functional size (not sure what to name it, though)? >> >> >> >> 3) Have clang set those based on `getLongDoubeSize` (for storage size) >> and `getLongDoubleFormat` as Reid suggested. This did seem very hacky too >> me at first as well, but thinking about it again, the format does encode >> how many semantic bits there are (because it is needed for correctly >> constant folding etc.), which is really what we're asking for here. >>...
2015 Nov 01
4
Representing X86 long double in Debug Info
I'm in the process of teaching the Verifier to validate that the size of debug info variable and the described value matches (already caught a couple of bugs, both in my frontend and in LLVM itself). However, I've run into the following: size of passed value (80) does not match size of declared variable (128) call void @llvm.dbg.declare(metadata x86_fp80* %x, metadata !11, metadata