-
oliver@apple.com authored
https://bugs.webkit.org/show_bug.cgi?id=118948 Source/JavaScriptCore: Reviewed by Sam Weinig. - Add the ability to generate LLVM IR but then not use it, via --llvmAlwaysFails=true. This allows doing "what if" experiments with IR generation, even if the generated IR can't yet execute. - Add an OSR exit path that just calls an intrinsic that combines the branch and the off-ramp. * JavaScriptCore.xcodeproj/project.pbxproj: * dfg/DFGPlan.cpp: (JSC::DFG::Plan::compileInThreadImpl): * ftl/FTLFail.cpp: Added. (FTL): (JSC::FTL::fail): * ftl/FTLFail.h: Added. (FTL): * ftl/FTLIntrinsicRepository.h: (FTL): * ftl/FTLLowerDFGToLLVM.cpp: (JSC::FTL::LowerDFGToLLVM::appendOSRExit): (JSC::FTL::LowerDFGToLLVM::emitOSRExitCall): * runtime/Options.h: (JSC): Tools: Reviewed by Sam Weinig. - Make ReducedFTL capable of dealing with code that uses the fake OSR exit intrinsic, by exporting it as a function. - Make combineModules...
6d1bb643