mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2026-04-25 05:22:04 +00:00
Provide TargetMachine implementations with reference to Target they were created
from. - This commit is almost entirely propogating the reference through the TargetMachine subclasses' constructor calls. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75778 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -44,17 +44,19 @@ Y(TheCooperTarget, "cooper", "PIC16 Cooper [experimental].");
|
||||
extern "C" void LLVMInitializePIC16Target() { }
|
||||
|
||||
// PIC16TargetMachine - Traditional PIC16 Machine.
|
||||
PIC16TargetMachine::PIC16TargetMachine(const Module &M, const std::string &FS,
|
||||
bool Cooper)
|
||||
: Subtarget(M, FS, Cooper),
|
||||
PIC16TargetMachine::PIC16TargetMachine(const Target &T, const Module &M,
|
||||
const std::string &FS, bool Cooper)
|
||||
: LLVMTargetMachine(T),
|
||||
Subtarget(M, FS, Cooper),
|
||||
DataLayout("e-p:16:8:8-i8:8:8-i16:8:8-i32:8:8"),
|
||||
InstrInfo(*this), TLInfo(*this),
|
||||
FrameInfo(TargetFrameInfo::StackGrowsUp, 8, 0) { }
|
||||
|
||||
// CooperTargetMachine - Uses the same PIC16TargetMachine, but makes IsCooper
|
||||
// as true.
|
||||
CooperTargetMachine::CooperTargetMachine(const Module &M, const std::string &FS)
|
||||
: PIC16TargetMachine(M, FS, true) {}
|
||||
CooperTargetMachine::CooperTargetMachine(const Target &T, const Module &M,
|
||||
const std::string &FS)
|
||||
: PIC16TargetMachine(T, M, FS, true) {}
|
||||
|
||||
|
||||
const TargetAsmInfo *PIC16TargetMachine::createTargetAsmInfo() const {
|
||||
|
||||
Reference in New Issue
Block a user