llvm-6502/lib/Target/XCore
Chris Lattner 74bfe21b50 Now that we have everything nicely factored (e.g. asmprinter is not
doing global variable classification anymore) and hookized, sink almost
all target targets global variable emission code into AsmPrinter and out
of each target.

Some notes:

1. PIC16 does completely custom and crazy stuff, so it is not changed.
2. XCore has some custom handling for extra directives.  I'll look at it next.
3. This switches linux/ppc to use .globl instead of .global.  If .globl is
   actually wrong, let me know and I'll fix it.
4. This makes linux/ppc get a lot of random cases right which were obviously
   wrong before, it is probably now a bit healthier.
5. Blackfin will probably start getting .comm and other things that it didn't
   before.  If this is undesirable, it should explicitly opt out of these
   things by clearing the relevant fields of MCAsmInfo.

This leads to a nice diffstat:
 14 files changed, 127 insertions(+), 830 deletions(-)




git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93858 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-19 05:38:33 +00:00
..
AsmPrinter Now that we have everything nicely factored (e.g. asmprinter is not 2010-01-19 05:38:33 +00:00
TargetInfo Factor commonality in triple match routines into helper template for registering 2009-07-26 05:03:33 +00:00
CMakeLists.txt Normalize makefile comments and sort cmake file lists. 2009-08-31 13:05:24 +00:00
Makefile Move XCore AsmPrinter to XCore/AsmPrinter directory. 2009-08-15 12:53:15 +00:00
MCSectionXCore.cpp rename TAI -> MAI, being careful not to make MAILJMP instructions :) 2009-08-22 21:43:10 +00:00
MCSectionXCore.h rename TAI -> MAI, being careful not to make MAILJMP instructions :) 2009-08-22 21:43:10 +00:00
README.txt
XCore.h Add new helpers for registering targets. 2009-07-25 06:49:55 +00:00
XCore.td Remove xs1b predicate since it is no longer needed to differentiate betweem 2009-10-06 16:17:57 +00:00
XCoreCallingConv.td
XCoreFrameInfo.cpp
XCoreFrameInfo.h
XCoreInstrFormats.td
XCoreInstrInfo.cpp Remove the target hook TargetInstrInfo::BlockHasNoFallThrough in favor of 2009-12-05 00:44:40 +00:00
XCoreInstrInfo.h Remove the target hook TargetInstrInfo::BlockHasNoFallThrough in favor of 2009-12-05 00:44:40 +00:00
XCoreInstrInfo.td Add XCore support for indirectbr / blockaddress. 2009-11-18 23:20:42 +00:00
XCoreISelDAGToDAG.cpp Change SelectCode's argument from SDValue to SDNode *, to make it more 2010-01-05 01:24:18 +00:00
XCoreISelLowering.cpp Add more plumbing. This time in the LowerArguments and "get" functions which 2009-12-22 02:10:19 +00:00
XCoreISelLowering.h Add XCore support for indirectbr / blockaddress. 2009-11-18 23:20:42 +00:00
XCoreMachineFunctionInfo.h Add explicit keywords. 2009-06-05 23:05:51 +00:00
XCoreMCAsmInfo.cpp Rename TargetAsmInfo (and its subclasses) to MCAsmInfo. 2009-08-22 20:48:53 +00:00
XCoreMCAsmInfo.h Rename TargetAsmInfo (and its subclasses) to MCAsmInfo. 2009-08-22 20:48:53 +00:00
XCoreRegisterInfo.cpp Add a bool flag to StackObjects telling whether they reference spill 2009-11-12 20:49:22 +00:00
XCoreRegisterInfo.h Make the MachineFunction argument of getFrameRegister const. 2009-11-12 21:00:03 +00:00
XCoreRegisterInfo.td
XCoreSubtarget.cpp Remove xs1b predicate since it is no longer needed to differentiate betweem 2009-10-06 16:17:57 +00:00
XCoreSubtarget.h Remove xs1b predicate since it is no longer needed to differentiate betweem 2009-10-06 16:17:57 +00:00
XCoreTargetMachine.cpp indicate what the native integer types for the target are. 2009-11-07 19:07:32 +00:00
XCoreTargetMachine.h Change TargetAsmInfo to be constructed via TargetRegistry from a Target+Triple 2009-08-12 07:22:17 +00:00
XCoreTargetObjectFile.cpp Remove xs1a subtarget. xs1a is a preproduction device used in 2009-10-06 16:01:09 +00:00
XCoreTargetObjectFile.h switch off of 'Section' onto MCSection. We're not properly using 2009-07-31 18:48:30 +00:00

To-do
-----

* Instruction encodings
* Tailcalls
* Investigate loop alignment
* Add builtins
* Make better use of lmul / macc