llvm-6502/lib/Target/XCore
Mehdi Amini ceb9150268 Move the DataLayout to the generic TargetMachine, making it mandatory.
Summary:
I don't know why every singled backend had to redeclare its own DataLayout.
There was a virtual getDataLayout() on the common base TargetMachine, the
default implementation returned nullptr. It was not clear from this that
we could assume at call site that a DataLayout will be available with
each Target.

Now getDataLayout() is no longer virtual and return a pointer to the
DataLayout member of the common base TargetMachine. I plan to turn it into
a reference in a future patch.

The only backend that didn't have a DataLayout previsouly was the CPPBackend.
It now initializes the default DataLayout. This commit is NFC for all the
other backends.

Test Plan: clang+llvm ninja check-all

Reviewers: echristo

Subscribers: jfb, jholewinski, llvm-commits

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

From: Mehdi Amini <mehdi.amini@apple.com>

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@231987 91177308-0d34-0410-b5e6-96231b3b80d8
2015-03-12 00:07:24 +00:00
..
Disassembler Pass an ArrayRef to MCDisassembler::getInstruction. 2014-11-12 02:04:27 +00:00
InstPrinter Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
MCTargetDesc TableGen: Use 'enum : uint64_t' for feature flags to fix -Wmicrosoft 2015-03-09 20:23:14 +00:00
TargetInfo Prune redundant dependencies in LLVMBuild.txt. 2013-12-11 00:30:57 +00:00
CMakeLists.txt [PM] Switch the TargetMachine interface from accepting a pass manager 2015-01-31 11:17:59 +00:00
LLVMBuild.txt Add proper dependencies to LLVMBuild.txt in llvm/lib. 2013-12-10 05:39:34 +00:00
Makefile Add instruction encodings and disassembly for 1r instructions. 2012-12-16 17:37:34 +00:00
README.txt test commit 2013-07-29 09:23:13 +00:00
XCore.h [PM] Remove a bunch of stale TTI creation method declarations. I nuked 2015-02-01 00:22:15 +00:00
XCore.td Change the default of AsmWriterClassName and isMCAsmWriter. 2013-12-02 04:55:42 +00:00
XCoreAsmPrinter.cpp Remove unused class variable. 2015-02-02 17:52:23 +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 [XCore] Add missing 2r instructions. 2013-02-17 22:38:05 +00:00
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 Replace neverHasSideEffects=1 with hasSideEffects=0 in all .td files. 2014-11-26 00:46:26 +00:00
XCoreISelDAGToDAG.cpp Remove unused class variable. 2015-02-02 17:52:20 +00:00
XCoreISelLowering.cpp getRegForInlineAsmConstraint wants to use TargetRegisterInfo for 2015-02-26 22:38:43 +00:00
XCoreISelLowering.h getRegForInlineAsmConstraint wants to use TargetRegisterInfo for 2015-02-26 22:38:43 +00:00
XCoreLowerThreadLocal.cpp [PM] Replace the Pass argument to SplitEdge with specific analyses used 2015-01-19 12:36:53 +00:00
XCoreMachineFunctionInfo.cpp XCore target: Fix llvm.eh.return and EH info register handling 2014-02-18 11:21:48 +00:00
XCoreMachineFunctionInfo.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
XCoreMCInstLower.cpp Move the llvm mangler to lib/IR. 2014-01-07 21:19:40 +00:00
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 [XCore] The RRegs register class is a superset of GRRegs. 2013-04-04 19:57:46 +00:00
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 Move the DataLayout to the generic TargetMachine, making it mandatory. 2015-03-12 00:07:24 +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 Canonicalize header guards into a common format. 2014-08-13 16:26:38 +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