llvm/lib/Target/XCore
Sergey Dmitrouk 1f7a90d793 Reapply r235977 "[DebugInfo] Add debug locations to constant SD nodes"
[DebugInfo] Add debug locations to constant SD nodes

This adds debug location to constant nodes of Selection DAG and updates
all places that create constants to pass debug locations
(see PR13269).

Can't guarantee that all locations are correct, but in a lot of cases choice
is obvious, so most of them should be. At least all tests pass.

Tests for these changes do not cover everything, instead just check it for
SDNodes, ARM and AArch64 where it's easy to get incorrect locations on
constants.

This is not complete fix as FastISel contains workaround for wrong debug
locations, which drops locations from instructions on processing constants,
but there isn't currently a way to use debug locations from constants there
as llvm::Constant doesn't cache it (yet). Although this is a bit different
issue, not directly related to these changes.

Differential Revision: http://reviews.llvm.org/D9084

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@235989 91177308-0d34-0410-b5e6-96231b3b80d8
2015-04-28 14:05:47 +00:00
..
Disassembler Pass an ArrayRef to MCDisassembler::getInstruction. 2014-11-12 02:04:27 +00:00
InstPrinter [MCInstPrinter] Enable MCInstPrinter to change its behavior based on the 2015-03-27 20:36:02 +00:00
MCTargetDesc Replace the MCSubtargetInfo parameter with a Triple when creating 2015-03-31 00:10:04 +00:00
TargetInfo
CMakeLists.txt [PM] Switch the TargetMachine interface from accepting a pass manager 2015-01-31 11:17:59 +00:00
LLVMBuild.txt
Makefile
README.txt
XCore.h [PM] Remove a bunch of stale TTI creation method declarations. I nuked 2015-02-01 00:22:15 +00:00
XCore.td
XCoreAsmPrinter.cpp [AsmPrinter] Make AsmPrinter's OutStreamer member a unique_ptr. 2015-04-24 19:11:51 +00:00
XCoreCallingConv.td [XCore] Support functions returning more than 4 words. 2014-02-27 17:47:54 +00:00
XCoreFrameLowering.cpp Use the function template getSubtarget on the MachineFunction 2015-02-02 17:52:25 +00:00
XCoreFrameLowering.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
XCoreFrameToArgsOffsetElim.cpp Have MachineFunction cache a pointer to the subtarget to make lookups 2014-08-05 02:39:49 +00:00
XCoreInstrFormats.td
XCoreInstrInfo.cpp Work around bugs in MSVC "14" CTP 3's conversion logic 2014-10-31 23:19:46 +00:00
XCoreInstrInfo.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
XCoreInstrInfo.td Reapply r235977 "[DebugInfo] Add debug locations to constant SD nodes" 2015-04-28 14:05:47 +00:00
XCoreISelDAGToDAG.cpp Reapply r235977 "[DebugInfo] Add debug locations to constant SD nodes" 2015-04-28 14:05:47 +00:00
XCoreISelLowering.cpp Reapply r235977 "[DebugInfo] Add debug locations to constant SD nodes" 2015-04-28 14:05:47 +00:00
XCoreISelLowering.h Make each target map all inline assembly memory constraints to InlineAsm::Constraint_m. NFC. 2015-03-16 13:13:41 +00:00
XCoreLowerThreadLocal.cpp [opaque pointer type] More GEP IRBuilder API migrations... 2015-04-03 21:33:42 +00:00
XCoreMachineFunctionInfo.cpp
XCoreMachineFunctionInfo.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
XCoreMCInstLower.cpp
XCoreMCInstLower.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
XCoreRegisterInfo.cpp Have getCalleeSavedRegs take a non-null MachineFunction all the 2015-03-11 21:41:28 +00:00
XCoreRegisterInfo.h Have getCalleeSavedRegs take a non-null MachineFunction all the 2015-03-11 21:41:28 +00:00
XCoreRegisterInfo.td
XCoreSelectionDAGInfo.cpp Have MachineFunction cache a pointer to the subtarget to make lookups 2014-08-05 02:39:49 +00:00
XCoreSelectionDAGInfo.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
XCoreSubtarget.cpp Since TargetLowering is already subtarget dependent just pass 2015-02-02 17:52:27 +00:00
XCoreSubtarget.h Move DataLayout back to the TargetMachine from TargetSubtargetInfo 2015-01-26 19:03:15 +00:00
XCoreTargetMachine.cpp Move the DataLayout to the generic TargetMachine, making it mandatory. 2015-03-12 00:07:24 +00:00
XCoreTargetMachine.h Remove the target independent TargetMachine::getSubtarget and 2015-03-21 04:22:23 +00:00
XCoreTargetObjectFile.cpp Compute the ELF SectionKind from the flags. 2015-01-29 17:33:21 +00:00
XCoreTargetObjectFile.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
XCoreTargetStreamer.h Use 'override/final' instead of 'virtual' for overridden methods 2015-04-11 02:11:45 +00:00
XCoreTargetTransformInfo.h [multiversion] Switch the TTI queries from TargetMachine to Subtarget 2015-02-01 14:22:17 +00:00

To-do
-----

* Instruction encodings
* Tailcalls
* Investigate loop alignment
* Add builtins