llvm-6502/lib/Target/XCore
Jeffrey Yasskin f0356fe140 Kill ModuleProvider and ghost linkage by inverting the relationship between
Modules and ModuleProviders. Because the "ModuleProvider" simply materializes
GlobalValues now, and doesn't provide modules, it's renamed to
"GVMaterializer". Code that used to need a ModuleProvider to materialize
Functions can now materialize the Functions directly. Functions no longer use a
magic linkage to record that they're materializable; they simply ask the
GVMaterializer.

Because the C ABI must never change, we can't remove LLVMModuleProviderRef or
the functions that refer to it. Instead, because Module now exposes the same
functionality ModuleProvider used to, we store a Module* in any
LLVMModuleProviderRef and translate in the wrapper methods.  The bindings to
other languages still use the ModuleProvider concept.  It would probably be
worth some time to update them to follow the C++ more closely, but I don't
intend to do it.

Fixes http://llvm.org/PR5737 and http://llvm.org/PR5735.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94686 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-27 20:34:15 +00:00
..
AsmPrinter Kill ModuleProvider and ghost linkage by inverting the relationship between 2010-01-27 20:34:15 +00:00
TargetInfo make -fno-rtti the default unless a directory builds with REQUIRES_RTTI. 2010-01-24 20:43:08 +00:00
CMakeLists.txt Normalize makefile comments and sort cmake file lists. 2009-08-31 13:05:24 +00:00
Makefile make -fno-rtti the default unless a directory builds with REQUIRES_RTTI. 2010-01-24 20:43:08 +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 Eliminate target hook IsEligibleForTailCallOptimization. 2010-01-27 00:07:07 +00:00
XCoreISelLowering.h Eliminate target hook IsEligibleForTailCallOptimization. 2010-01-27 00:07:07 +00:00
XCoreMachineFunctionInfo.h Add explicit keywords. 2009-06-05 23:05:51 +00:00
XCoreMCAsmInfo.cpp Eliminate SetDirective, and replace it with HasSetDirective. 2010-01-26 20:40:54 +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