llvm-project/llvm/lib/CodeGen/AsmPrinter
Bjorn Pettersson b43235a76c [DebugInfo] Fix DwarfExpression::addConstantFP for float on big-endian
The byte swapping, when dealing with 4 byte (float) FP constants
in DwarfExpression::addConstantFP, added in commit ef8992b9f0
was not correct. It always performed byte swapping using an
uint64_t value. When dealing with 4 byte values the 4 interesting
bytes ended up in the big end of the uint64_t, but later we emitted
the 4 bytes at the little end. So we ended up with zeroes being
emitted and faulty debug information.

This patch simplifies things a bit, IMHO. Using the APInt
representation throughout the function, instead of looking at
the internal representation using getRawBytes and without using
reinterpret_cast etc. And using API.byteSwap() should result in
correct byte swapping independent of APInt being 4 or 8 bytes.

Differential Revision: https://reviews.llvm.org/D86272
2020-08-20 11:48:05 +02:00
..
ARMException.cpp [MC] De-capitalize another set of MCStreamer::Emit* functions 2020-02-14 19:26:52 -08:00
AccelTable.cpp [MCStreamer] De-capitalize EmitValue EmitIntValue{,InHex} 2020-02-14 23:08:40 -08:00
AddressPool.cpp [MCStreamer] De-capitalize EmitValue EmitIntValue{,InHex} 2020-02-14 23:08:40 -08:00
AddressPool.h Recommit "PR44685: DebugInfo: Handle address-use-invalid type units referencing non-type units" 2020-08-18 13:43:28 -07:00
AsmPrinter.cpp [AIX][XCOFF] change the operand of branch instruction from symbol name to qualified symbol name for function declarations 2020-08-11 15:26:19 -04:00
AsmPrinterDwarf.cpp [AArch64][SVE] Fix CFA calculation in presence of SVE objects. 2020-08-04 11:47:06 +01:00
AsmPrinterInlineAsm.cpp [MC] De-capitalize MCStreamer::Emit{Bundle,Addrsig}* etc 2020-02-15 09:11:48 -08:00
ByteStreamer.h [AsmPrinter] De-capitalize some AsmPrinter::Emit* functions 2020-02-13 13:38:33 -08:00
CMakeLists.txt [cmake] Explicitly mark libraries defined in lib/ as "Component Libraries" 2019-11-21 10:48:08 -08:00
CodeViewDebug.cpp Revert "Re-Re-land: [CodeView] Add full repro to LF_BUILDINFO record" 2020-08-17 15:49:18 -04:00
CodeViewDebug.h Re-land [Debug][CodeView] Emit fully qualified names for globals 2020-05-18 17:31:00 -07:00
DIE.cpp [DebugInfo] Clean up DIEUnit. NFC. 2020-08-07 15:55:44 +07:00
DIEHash.cpp DIEHash.cpp - remove headers explicitly included in DIEHash.h. NFC. 2020-05-16 15:00:57 +01:00
DIEHash.h [AsmPrinter] Remove unused forward declarations. NFC. 2020-04-22 14:01:52 +01:00
DIEHashAttributes.def
DbgEntityHistoryCalculator.cpp [DebugInfo] Drop location ranges for variables which exist entirely outside the variable's scope 2020-07-22 12:45:21 +01:00
DebugHandlerBase.cpp Revert rG5dd566b7c7b78bd- "PassManager.h - remove unnecessary Function.h/Module.h includes. NFCI." 2020-07-24 13:02:33 +01:00
DebugLocEntry.h [WebAssembly] Use TargetIndex operands in DbgValue to track WebAssembly operands locations 2019-12-20 14:39:05 -08:00
DebugLocStream.cpp hwasan: add tag_offset DWARF attribute to optimized debug info 2019-12-12 16:18:54 -08:00
DebugLocStream.h hwasan: add tag_offset DWARF attribute to optimized debug info 2019-12-12 16:18:54 -08:00
DwarfCFIException.cpp Call Frame Information (CFI) Handling for Basic Block Sections 2020-07-14 12:54:12 -07:00
DwarfCompileUnit.cpp [DebugInfo] Remove DwarfUnit::getDwarfVersion(). NFC. 2020-08-07 15:55:44 +07:00
DwarfCompileUnit.h [DebugInfo] Fix initialization of DwarfCompileUnit::LabelBegin. 2020-08-10 15:57:21 +07:00
DwarfDebug.cpp Re-apply "[DebugInfo] Emit DW_OP_implicit_value for Floating point constants" 2020-08-20 01:39:42 +05:30
DwarfDebug.h Recommit "PR44685: DebugInfo: Handle address-use-invalid type units referencing non-type units" 2020-08-18 13:43:28 -07:00
DwarfException.h Call Frame Information (CFI) Handling for Basic Block Sections 2020-07-14 12:54:12 -07:00
DwarfExpression.cpp [DebugInfo] Fix DwarfExpression::addConstantFP for float on big-endian 2020-08-20 11:48:05 +02:00
DwarfExpression.h Re-apply "[DebugInfo] Emit DW_OP_implicit_value for Floating point constants" 2020-08-20 01:39:42 +05:30
DwarfFile.cpp [MC] De-capitalize another set of MCStreamer::Emit* functions 2020-02-14 19:26:52 -08:00
DwarfFile.h Reapply "NFC: DebugInfo: Refactor RangeSpanList to be a struct, like DebugLocStream::List" 2019-12-18 16:28:19 -08:00
DwarfStringPool.cpp [MCStreamer] De-capitalize EmitValue EmitIntValue{,InHex} 2020-02-14 23:08:40 -08:00
DwarfStringPool.h
DwarfUnit.cpp DebugInfo: Emit class template parameters first, before members 2020-08-17 21:42:00 -07:00
DwarfUnit.h [DebugInfo] Remove DwarfUnit::getDwarfVersion(). NFC. 2020-08-07 15:55:44 +07:00
EHStreamer.cpp [MC] De-capitalize another set of MCStreamer::Emit* functions 2020-02-14 19:26:52 -08:00
EHStreamer.h
ErlangGCPrinter.cpp [AsmPrinter] De-capitalize all AsmPrinter::Emit* but EmitInstruction 2020-02-13 17:06:24 -08:00
LLVMBuild.txt
OcamlGCPrinter.cpp [MCStreamer] De-capitalize EmitValue EmitIntValue{,InHex} 2020-02-14 23:08:40 -08:00
WasmException.cpp [MC] De-capitalize another set of MCStreamer::Emit* functions 2020-02-14 19:26:52 -08:00
WasmException.h
WinCFGuard.cpp Revert rG5dd566b7c7b78bd- "PassManager.h - remove unnecessary Function.h/Module.h includes. NFCI." 2020-07-24 13:02:33 +01:00
WinCFGuard.h Add Windows Control Flow Guard checks (/guard:cf). 2019-10-28 15:19:39 +00:00
WinException.cpp TargetLowering.h - remove unnecessary TargetMachine.h include. NFC 2020-05-23 19:49:38 +01:00
WinException.h [AsmPrinter] Remove unused forward declarations. NFC. 2020-04-22 14:01:52 +01:00