mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-08-18 12:29:21 +00:00
'Tis quite silly to check for a cached version of the entire executable. That
amounts to checking for a completely-native version. We'll cache on a function-by-function basis instead (in the JIT's CodeEmitter). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9894 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
ee8adb1955
commit
aab9ca73fd
@ -5,7 +5,6 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "OSInterface.h"
|
||||
#include "SysUtils.h"
|
||||
#include "Config/errno.h"
|
||||
#include "Config/stdlib.h"
|
||||
@ -52,21 +51,6 @@ int execve(const char *filename, char *const argv[], char *const envp[])
|
||||
close(file);
|
||||
if (bytesRead != (ssize_t)headerSize) return EIO;
|
||||
if (!memcmp(llvmHeader, header, headerSize)) {
|
||||
/*
|
||||
* Check if we have a cached translation on disk
|
||||
*/
|
||||
struct stat buf;
|
||||
llvmStat(realFilename, &buf);
|
||||
if (isExecutable(&buf)) {
|
||||
size_t size;
|
||||
void *fileAddr = llvmReadFile(realFilename, &size);
|
||||
fprintf(stderr, "Found in cache: '%s'\n", realFilename);
|
||||
if (fileAddr) {
|
||||
free(fileAddr);
|
||||
}
|
||||
llvmExecve(realFilename, argv, envp);
|
||||
}
|
||||
|
||||
/*
|
||||
* This is a bytecode file, so execute the JIT with the program and
|
||||
* parameters.
|
||||
|
Loading…
Reference in New Issue
Block a user