mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-07-30 02:25:19 +00:00
Temporarily Revert "Nuke the old JIT." as it's not quite ready to
be deleted. This will be reapplied as soon as possible and before the 3.6 branch date at any rate. Approved by Jim Grosbach, Lang Hames, Rafael Espindola. This reverts commits r215111, 215115, 215116, 215117, 215136. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@215154 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -247,6 +247,10 @@ void MCJIT::finalizeModule(Module *M) {
|
||||
finalizeLoadedModules();
|
||||
}
|
||||
|
||||
void *MCJIT::getPointerToBasicBlock(BasicBlock *BB) {
|
||||
report_fatal_error("not yet implemented");
|
||||
}
|
||||
|
||||
uint64_t MCJIT::getExistingSymbolAddress(const std::string &Name) {
|
||||
Mangler Mang(TM->getSubtargetImpl()->getDataLayout());
|
||||
SmallString<128> FullName;
|
||||
@@ -368,6 +372,14 @@ void *MCJIT::getPointerToFunction(Function *F) {
|
||||
return (void*)Dyld.getSymbolLoadAddress(Name);
|
||||
}
|
||||
|
||||
void *MCJIT::recompileAndRelinkFunction(Function *F) {
|
||||
report_fatal_error("not yet implemented");
|
||||
}
|
||||
|
||||
void MCJIT::freeMachineCodeForFunction(Function *F) {
|
||||
report_fatal_error("not yet implemented");
|
||||
}
|
||||
|
||||
void MCJIT::runStaticConstructorsDestructorsInModulePtrSet(
|
||||
bool isDtors, ModulePtrSet::iterator I, ModulePtrSet::iterator E) {
|
||||
for (; I != E; ++I) {
|
||||
@@ -537,7 +549,8 @@ void MCJIT::UnregisterJITEventListener(JITEventListener *L) {
|
||||
if (!L)
|
||||
return;
|
||||
MutexGuard locked(lock);
|
||||
auto I = std::find(EventListeners.rbegin(), EventListeners.rend(), L);
|
||||
SmallVector<JITEventListener*, 2>::reverse_iterator I=
|
||||
std::find(EventListeners.rbegin(), EventListeners.rend(), L);
|
||||
if (I != EventListeners.rend()) {
|
||||
std::swap(*I, EventListeners.back());
|
||||
EventListeners.pop_back();
|
||||
@@ -553,8 +566,7 @@ void MCJIT::NotifyObjectEmitted(const ObjectImage& Obj) {
|
||||
void MCJIT::NotifyFreeingObject(const ObjectImage& Obj) {
|
||||
MutexGuard locked(lock);
|
||||
for (unsigned I = 0, S = EventListeners.size(); I < S; ++I) {
|
||||
JITEventListener *L = EventListeners[I];
|
||||
L->NotifyFreeingObject(Obj);
|
||||
EventListeners[I]->NotifyFreeingObject(Obj);
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user