llvm-project/llvm/lib
Bjorn Pettersson 839775a277 [Debug info] Handle endianness when moving debug info for split integer values
Summary:
Take the target's endianness into account when splitting the
debug information in DAGTypeLegalizer::SetExpandedInteger.

This patch fixes so that, for big-endian targets, the fragment
expression corresponding to the high part of a split integer
value is placed at offset 0, in order to correctly represent
the memory address order.

I have attached a PPC32 reproducer where the resulting DWARF
pieces for a 64-bit integer were incorrectly reversed.

Patch by: dstenb

Reviewers: JDevlieghere, aprantl, dblaikie

Reviewed By: JDevlieghere, aprantl, dblaikie

Subscribers: nemanjai

Differential Revision: https://reviews.llvm.org/D38172

llvm-svn: 314666
2017-10-02 12:46:32 +00:00
..
Analysis Revert "Fix typo [NFC]" 2017-10-01 00:09:53 +00:00
AsmParser [AMDGPU] calling conventions for AMDPAL OS type 2017-09-29 09:51:22 +00:00
BinaryFormat llvm-dwarfdump: implement --find for .apple_names 2017-09-28 18:10:52 +00:00
Bitcode [llvm] Fix some typos. NFC. 2017-09-15 20:01:43 +00:00
CodeGen [Debug info] Handle endianness when moving debug info for split integer values 2017-10-02 12:46:32 +00:00
DebugInfo [dwarfdump][NFC] Consistent printing of address ranges 2017-09-29 15:41:22 +00:00
Demangle [ItaniumDemangle] Fix a exponential string copying bug 2017-05-28 23:24:52 +00:00
ExecutionEngine [ORC] Fix the type of RTDyldObjectLinkingLayer::NotifyLoadedFtor. 2017-09-28 17:43:07 +00:00
FuzzMutate Move some CLI utils out of llvm-isel-fuzzer and into the library 2017-09-02 23:43:04 +00:00
Fuzzer Moving libFuzzer from LLVM to compiler-rt. 2017-08-21 23:25:12 +00:00
IR [AMDGPU] calling conventions for AMDPAL OS type 2017-09-29 09:51:22 +00:00
IRReader
LTO [Support] Rename tool_output_file to ToolOutputFile, NFC 2017-09-23 01:03:17 +00:00
LineEditor
Linker Linker: Create a function declaration when moving a non-prevailing alias of function type. 2017-08-10 01:07:44 +00:00
MC [WebAssembly] Allow each data segment to specify its own alignment 2017-09-29 16:50:08 +00:00
Object [WebAssembly] Allow each data segment to specify its own alignment 2017-09-29 16:50:08 +00:00
ObjectYAML [WebAssembly] Allow each data segment to specify its own alignment 2017-09-29 16:50:08 +00:00
Option Revert "Revert r311552: [Bash-autocompletion] Add support for static analyzer flags" 2017-08-29 00:09:31 +00:00
Passes Separate the logic when handling indirect calls in SamplePGO ThinLTO compile phase and other phases. 2017-10-01 05:24:51 +00:00
ProfileData [llvm-cov] Improve error messaging for function mismatches 2017-09-21 01:11:30 +00:00
Support [Triple] Add AMDPAL operating system type 2017-09-29 09:48:12 +00:00
TableGen [Support] Rename tool_output_file to ToolOutputFile, NFC 2017-09-23 01:03:17 +00:00
Target [X86][SSE] Add createPackShuffleMask helper function. NFCI. 2017-10-02 10:12:51 +00:00
Testing Mark LLVMTestingSupport as not installed in LLVMBuild. 2017-06-19 22:01:50 +00:00
ToolDrivers Convert the archive writer to use Error. 2017-09-21 23:13:36 +00:00
Transforms [InstCombine] Use APInt for all the math in foldICmpDivConstant 2017-10-01 23:53:54 +00:00
WindowsManifest Fix bug 34608 by moving private header out of public header. 2017-09-14 23:01:13 +00:00
XRay [XRay] initialize all members of YAMLXRayRecord for -Wmissing-field-initializers 2017-09-27 07:30:48 +00:00
CMakeLists.txt Moving libFuzzer from LLVM to compiler-rt. 2017-08-21 23:25:12 +00:00
LLVMBuild.txt Re-apply "Introduce FuzzMutate library" 2017-08-21 22:57:06 +00:00