Targets should configure themselves based on the module, not some wierd flags

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8131 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner 2003-08-24 19:49:07 +00:00
parent 77c5f733ac
commit e3ac7565a0

View File

@ -8,32 +8,19 @@
#ifndef LLVM_TARGET_TARGETMACHINEIMPLS_H
#define LLVM_TARGET_TARGETMACHINEIMPLS_H
namespace TM {
enum {
PtrSizeMask = 1,
PtrSize32 = 0,
PtrSize64 = 1,
EndianMask = 2,
LittleEndian = 0,
BigEndian = 2,
};
}
class TargetMachine;
class Module;
// allocateSparcTargetMachine - Allocate and return a subclass of TargetMachine
// that implements the Sparc backend.
//
TargetMachine *allocateSparcTargetMachine(unsigned Configuration =
TM::PtrSize64|TM::BigEndian);
TargetMachine *allocateSparcTargetMachine(const Module &M);
// allocateX86TargetMachine - Allocate and return a subclass of TargetMachine
// that implements the X86 backend. The X86 target machine can run in
// "emulation" mode, where it is capable of emulating machines of larger pointer
// size and different endianness if desired.
//
TargetMachine *allocateX86TargetMachine(unsigned Configuration =
TM::PtrSize32|TM::LittleEndian);
TargetMachine *allocateX86TargetMachine(const Module &M);
#endif