bool initializeTestJit(TR_RuntimeHelper *helperIDs, void **helperAddresses, int32_t numHelpers, char *options) { // Create a bootstrap raw allocator. // TR::RawAllocator rawAllocator; try { // Allocate the host environment structure // TR::Compiler = new (rawAllocator) TR::CompilerEnv(rawAllocator, TR::PersistentAllocatorKit(rawAllocator)); } catch (const std::bad_alloc& ba) { return false; } TR::Compiler->initialize(); // -------------------------------------------------------------------------- static TestCompiler::FrontEnd fe; auto jitConfig = fe.jitConfig(); initializeAllHelpers(jitConfig, helperIDs, helperAddresses, numHelpers); if (commonJitInit(fe, options) < 0) return false; initializeCodeCache(fe.codeCacheManager()); return true; }
bool initializeTestJit(TR_RuntimeHelper *helperIDs, void **helperAddresses, int32_t numHelpers, char *options) { // Force enable tree verifier std::string optionsWithVerifier = options; if(optionsWithVerifier == "-Xjit") optionsWithVerifier += ":paranoidOptCheck"; else optionsWithVerifier += ",paranoidOptCheck"; // Create a bootstrap raw allocator. // TR::RawAllocator rawAllocator; try { // Allocate the host environment structure // TR::Compiler = new (rawAllocator) TR::CompilerEnv(rawAllocator, TR::PersistentAllocatorKit(rawAllocator)); } catch (const std::bad_alloc& ba) { return false; } TR::Compiler->initialize(); // -------------------------------------------------------------------------- static TestCompiler::FrontEnd fe; auto jitConfig = fe.jitConfig(); initializeAllHelpers(jitConfig, helperIDs, helperAddresses, numHelpers); if (commonJitInit(fe, const_cast<char *>(optionsWithVerifier.c_str())) < 0) return false; initializeCodeCache(fe.codeCacheManager()); return true; }