mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-11-02 22:23:10 +00:00
Introduce MCCodeGenInfo, which keeps information that can affect codegen
(including compilation, assembly). Move relocation model Reloc::Model from TargetMachine to MCCodeGenInfo so it's accessible even without TargetMachine. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135468 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -30,6 +30,10 @@ extern "C" {
|
||||
void LLVMInitialize##TargetName##MCAsmInfo();
|
||||
#include "llvm/Config/Targets.def"
|
||||
|
||||
#define LLVM_TARGET(TargetName) \
|
||||
void LLVMInitialize##TargetName##MCCodeGenInfo();
|
||||
#include "llvm/Config/Targets.def"
|
||||
|
||||
#define LLVM_TARGET(TargetName) \
|
||||
void LLVMInitialize##TargetName##MCInstrInfo();
|
||||
#include "llvm/Config/Targets.def"
|
||||
@@ -91,6 +95,16 @@ namespace llvm {
|
||||
#include "llvm/Config/Targets.def"
|
||||
}
|
||||
|
||||
/// InitializeAllMCCodeGenInfos - The main program should call this function
|
||||
/// if it wants access to all targets machines that LLVM is configured to
|
||||
/// support, to make them available via the TargetRegistry.
|
||||
///
|
||||
/// It is legal for a client to make multiple calls to this function.
|
||||
inline void InitializeAllMCCodeGenInfos() {
|
||||
#define LLVM_TARGET(TargetName) LLVMInitialize##TargetName##MCCodeGenInfo();
|
||||
#include "llvm/Config/Targets.def"
|
||||
}
|
||||
|
||||
/// InitializeAllMCInstrInfos - The main program should call this function
|
||||
/// if it wants access to all available instruction infos for targets that
|
||||
/// LLVM is configured to support, to make them available via the
|
||||
@@ -164,6 +178,7 @@ namespace llvm {
|
||||
LLVM_NATIVE_TARGETINFO();
|
||||
LLVM_NATIVE_TARGET();
|
||||
LLVM_NATIVE_MCASMINFO();
|
||||
LLVM_NATIVE_MCCODEGENINFO();
|
||||
return false;
|
||||
#else
|
||||
return true;
|
||||
|
||||
Reference in New Issue
Block a user