mirror of
https://github.com/jeremysrand/llvm-65816.git
synced 2024-09-28 18:55:21 +00:00
More work towards getting the compiler to not crash.
This commit is contained in:
parent
6900b043ed
commit
9bb9bf24c8
@ -90,6 +90,7 @@ const char *Triple::getArchTypePrefix(ArchType Kind) {
|
|||||||
case amdil: return "amdil";
|
case amdil: return "amdil";
|
||||||
case spir: return "spir";
|
case spir: return "spir";
|
||||||
case spir64: return "spir";
|
case spir64: return "spir";
|
||||||
|
case wdc65816: return "wdc65816";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -188,6 +189,7 @@ Triple::ArchType Triple::getArchTypeForLLVMName(StringRef Name) {
|
|||||||
.Case("amdil", amdil)
|
.Case("amdil", amdil)
|
||||||
.Case("spir", spir)
|
.Case("spir", spir)
|
||||||
.Case("spir64", spir64)
|
.Case("spir64", spir64)
|
||||||
|
.Case("wdc65816", wdc65816)
|
||||||
.Default(UnknownArch);
|
.Default(UnknownArch);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -214,6 +216,7 @@ const char *Triple::getArchNameForAssembler() {
|
|||||||
.Case("amdil", "amdil")
|
.Case("amdil", "amdil")
|
||||||
.Case("spir", "spir")
|
.Case("spir", "spir")
|
||||||
.Case("spir64", "spir64")
|
.Case("spir64", "spir64")
|
||||||
|
.Case("wdc65816", "wdc65816")
|
||||||
.Default(NULL);
|
.Default(NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -251,6 +254,7 @@ static Triple::ArchType parseArch(StringRef ArchName) {
|
|||||||
.Case("amdil", Triple::amdil)
|
.Case("amdil", Triple::amdil)
|
||||||
.Case("spir", Triple::spir)
|
.Case("spir", Triple::spir)
|
||||||
.Case("spir64", Triple::spir64)
|
.Case("spir64", Triple::spir64)
|
||||||
|
.Case("wdc65816", Triple::wdc65816)
|
||||||
.Default(Triple::UnknownArch);
|
.Default(Triple::UnknownArch);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -54,6 +54,10 @@ namespace {
|
|||||||
};
|
};
|
||||||
} // namespace
|
} // namespace
|
||||||
|
|
||||||
|
TargetPassConfig *WDC65816TargetMachine::createPassConfig(PassManagerBase &PM) {
|
||||||
|
return new WDC65816PassConfig(this, PM);
|
||||||
|
}
|
||||||
|
|
||||||
bool WDC65816PassConfig::addInstSelector() {
|
bool WDC65816PassConfig::addInstSelector() {
|
||||||
addPass(createWDC65816ISelDag(getWDC65816TargetMachine()));
|
addPass(createWDC65816ISelDag(getWDC65816TargetMachine()));
|
||||||
return false;
|
return false;
|
||||||
|
@ -52,9 +52,9 @@ namespace llvm {
|
|||||||
}
|
}
|
||||||
virtual const DataLayout *getDataLayout() const { return &DL; }
|
virtual const DataLayout *getDataLayout() const { return &DL; }
|
||||||
|
|
||||||
#if 0 // WDC_TODO - Do I need this? I think these are both related to JIT
|
|
||||||
// Pass Pipeline Configuration
|
// Pass Pipeline Configuration
|
||||||
virtual TargetPassConfig *createPassConfig(PassManagerBase &PM);
|
virtual TargetPassConfig *createPassConfig(PassManagerBase &PM);
|
||||||
|
#if 0 // WDC_TODO - Do I need this? I think this is related to JIT
|
||||||
virtual bool addCodeEmitter(PassManagerBase &PM, JITCodeEmitter &JCE);
|
virtual bool addCodeEmitter(PassManagerBase &PM, JITCodeEmitter &JCE);
|
||||||
#endif
|
#endif
|
||||||
};
|
};
|
||||||
|
Loading…
Reference in New Issue
Block a user