diff --git a/lib/BeautifyGHAST/BeautifyGHASTPass.cpp b/lib/BeautifyGHAST/BeautifyGHASTPass.cpp index 07524168b..f3d8a8468 100644 --- a/lib/BeautifyGHAST/BeautifyGHASTPass.cpp +++ b/lib/BeautifyGHAST/BeautifyGHASTPass.cpp @@ -35,7 +35,7 @@ bool BeautifyGHASTPass::runOnFunction(llvm::Function &F) { return false; // Skip functions that are not lifted - if (not FunctionTags::TagsSet::from(&F).contains(FunctionTags::Lifted)) + if (not FunctionTags::TagsSet::from(&F).contains(FunctionTags::Isolated)) return false; // If we passed the `-single-decompilation` option to the command line, skip diff --git a/lib/DataLayoutAnalysis/Frontend/DLACreateInterProceduralTypes.cpp b/lib/DataLayoutAnalysis/Frontend/DLACreateInterProceduralTypes.cpp index 7899f711d..1e44a006c 100644 --- a/lib/DataLayoutAnalysis/Frontend/DLACreateInterProceduralTypes.cpp +++ b/lib/DataLayoutAnalysis/Frontend/DLACreateInterProceduralTypes.cpp @@ -36,7 +36,7 @@ bool TSBuilder::createInterproceduralTypes(llvm::Module &M, const model::Binary &Model) { for (const Function &F : M.functions()) { auto FTags = FunctionTags::TagsSet::from(&F); - if (F.isIntrinsic() or not FTags.contains(FunctionTags::Lifted)) + if (F.isIntrinsic() or not FTags.contains(FunctionTags::Isolated)) continue; revng_assert(not F.isVarArg()); @@ -97,7 +97,7 @@ bool TSBuilder::createInterproceduralTypes(llvm::Module &M, continue; auto CTags = FunctionTags::TagsSet::from(Callee); - if (Callee->isIntrinsic() or not CTags.contains(FunctionTags::Lifted)) + if (Callee->isIntrinsic() or not CTags.contains(FunctionTags::Isolated)) continue; unsigned ArgNo = 0U; diff --git a/lib/DataLayoutAnalysis/Frontend/DLACreateIntraProceduralTypes.cpp b/lib/DataLayoutAnalysis/Frontend/DLACreateIntraProceduralTypes.cpp index 2ba96c418..50bc4ec25 100644 --- a/lib/DataLayoutAnalysis/Frontend/DLACreateIntraProceduralTypes.cpp +++ b/lib/DataLayoutAnalysis/Frontend/DLACreateIntraProceduralTypes.cpp @@ -431,7 +431,7 @@ public: // 2. @env is not a construct coming from the original program being // decompiled, rather a QEMU artifact that represents the CPU // state. Hence it has no really meaningful type in the program. - if (not CTags.contains(FunctionTags::Lifted)) + if (not CTags.contains(FunctionTags::Isolated)) continue; revng_assert(not Callee->isVarArg()); @@ -684,7 +684,7 @@ bool Builder::createIntraproceduralTypes(llvm::Module &M, for (Function &F : M.functions()) { auto FTags = FunctionTags::TagsSet::from(&F); - if (F.isIntrinsic() or not FTags.contains(FunctionTags::Lifted)) + if (F.isIntrinsic() or not FTags.contains(FunctionTags::Isolated)) continue; revng_assert(not F.isVarArg()); diff --git a/lib/DataLayoutAnalysis/Frontend/SCEVBaseAddressExplorer.cpp b/lib/DataLayoutAnalysis/Frontend/SCEVBaseAddressExplorer.cpp index 36a67b60d..aee02854e 100644 --- a/lib/DataLayoutAnalysis/Frontend/SCEVBaseAddressExplorer.cpp +++ b/lib/DataLayoutAnalysis/Frontend/SCEVBaseAddressExplorer.cpp @@ -39,7 +39,7 @@ static bool isCallToIsolated(const llvm::Value *V) { const llvm::Function *Callee = C->getCalledFunction(); if (Callee) { auto CTags = FunctionTags::TagsSet::from(Callee); - return CTags.contains(FunctionTags::Lifted); + return CTags.contains(FunctionTags::Isolated); } } diff --git a/lib/Decompiler/AddSCEVBarrierPass.cpp b/lib/Decompiler/AddSCEVBarrierPass.cpp index a9495962e..1f4e030cf 100644 --- a/lib/Decompiler/AddSCEVBarrierPass.cpp +++ b/lib/Decompiler/AddSCEVBarrierPass.cpp @@ -69,7 +69,7 @@ bool AddSCEVBarrierPass::runOnFunction(llvm::Function &F) { // Skip non-isolated functions auto FTags = FunctionTags::TagsSet::from(&F); - if (not FTags.contains(FunctionTags::Lifted)) + if (not FTags.contains(FunctionTags::Isolated)) return false; // If the MarkForSerializationPass was not executed, we have nothing to do. diff --git a/lib/Decompiler/CDecompilerAction.cpp b/lib/Decompiler/CDecompilerAction.cpp index 9cdce6ba5..129b297af 100644 --- a/lib/Decompiler/CDecompilerAction.cpp +++ b/lib/Decompiler/CDecompilerAction.cpp @@ -896,7 +896,7 @@ void Decompiler::HandleTranslationUnit(ASTContext &Context) { revng_assert(not TheF.isDeclaration()); auto FTags = FunctionTags::TagsSet::from(&TheF); - revng_assert(FTags.contains(FunctionTags::Lifted)); + revng_assert(FTags.contains(FunctionTags::Isolated)); DeclCreator Declarator(ValueLayouts); diff --git a/lib/Decompiler/CDecompilerPass.cpp b/lib/Decompiler/CDecompilerPass.cpp index bb5e691e6..4386ff6ad 100644 --- a/lib/Decompiler/CDecompilerPass.cpp +++ b/lib/Decompiler/CDecompilerPass.cpp @@ -96,7 +96,7 @@ bool CDecompilerPass::runOnFunction(llvm::Function &F) { // Skip non-isolated functions auto FTags = FunctionTags::TagsSet::from(&F); - if (not FTags.contains(FunctionTags::Lifted)) + if (not FTags.contains(FunctionTags::Isolated)) return false; // If the `-single-decompilation` option was passed from command line, skip diff --git a/lib/Decompiler/FuncDeclCreationAction.cpp b/lib/Decompiler/FuncDeclCreationAction.cpp index 1c9ff22c4..682a16167 100644 --- a/lib/Decompiler/FuncDeclCreationAction.cpp +++ b/lib/Decompiler/FuncDeclCreationAction.cpp @@ -125,7 +125,7 @@ void DeclCreator::createFunctionAndCalleesDecl(clang::ASTContext &Ctx, revng_assert(TheF); auto FTags = FunctionTags::TagsSet::from(TheF); - revng_assert(FTags.contains(FunctionTags::Lifted)); + revng_assert(FTags.contains(FunctionTags::Isolated)); std::set Called = getDirectlyCalledFunctions(*TheF); diff --git a/lib/FilterForDecompilation/FilterForDecompilationPass.cpp b/lib/FilterForDecompilation/FilterForDecompilationPass.cpp index eae209f6a..e53bc33d8 100644 --- a/lib/FilterForDecompilation/FilterForDecompilationPass.cpp +++ b/lib/FilterForDecompilation/FilterForDecompilationPass.cpp @@ -22,7 +22,7 @@ void FFDFP::getAnalysisUsage(llvm::AnalysisUsage &AU) const { /// `noinline` attributes so that they can be eliminated by DCE. static bool filterFunction(llvm::Function &F) { auto FTags = FunctionTags::TagsSet::from(&F); - if (not FTags.contains(FunctionTags::Lifted)) { + if (not FTags.contains(FunctionTags::Isolated)) { auto Attributes = F.getAttributes(); F.deleteBody(); diff --git a/lib/HeadersGeneration/HelpersToHeader.cpp b/lib/HeadersGeneration/HelpersToHeader.cpp index 324592c32..b44ffdc6b 100644 --- a/lib/HeadersGeneration/HelpersToHeader.cpp +++ b/lib/HeadersGeneration/HelpersToHeader.cpp @@ -69,7 +69,7 @@ bool dumpHelpersToHeader(const llvm::Module &M, llvm::raw_ostream &Header) { // and special injected functions, that are not translated as function // calls by the backend, since they have their only semantics. auto FTags = FunctionTags::TagsSet::from(&F); - if (FTags.contains(FunctionTags::Lifted) + if (FTags.contains(FunctionTags::Isolated) or FTags.contains(FunctionTags::ModelGEP) or FTags.contains(FunctionTags::SerializationMarker) or FTags.contains(FunctionTags::AddressOf) diff --git a/lib/IRCanonicalization/AddIRSerializationMarkerPass.cpp b/lib/IRCanonicalization/AddIRSerializationMarkerPass.cpp index 61909be39..ba042f493 100644 --- a/lib/IRCanonicalization/AddIRSerializationMarkerPass.cpp +++ b/lib/IRCanonicalization/AddIRSerializationMarkerPass.cpp @@ -40,7 +40,7 @@ bool AddIRSerializationMarkersPass::runOnFunction(llvm::Function &F) { // Skip non-isolated functions auto FTags = FunctionTags::TagsSet::from(&F); - if (not FTags.contains(FunctionTags::Lifted)) + if (not FTags.contains(FunctionTags::Isolated)) return false; // If the `-single-decompilation` option was passed from command line, skip diff --git a/lib/IRCanonicalization/ExitSSAPass.cpp b/lib/IRCanonicalization/ExitSSAPass.cpp index 5c6903bc5..94b32e700 100644 --- a/lib/IRCanonicalization/ExitSSAPass.cpp +++ b/lib/IRCanonicalization/ExitSSAPass.cpp @@ -284,7 +284,7 @@ static void computePHIVarAssignments(PHINode &ThePHI, bool ExitSSAPass::runOnFunction(Function &F) { // Skip non-isolated functions - if (not FunctionTags::Lifted.isTagOf(&F)) + if (not FunctionTags::Isolated.isTagOf(&F)) return false; // If the `-single-decompilation` option was passed from command line, skip diff --git a/lib/IRCanonicalization/MakeModelGEPPass.cpp b/lib/IRCanonicalization/MakeModelGEPPass.cpp index cd4fd82f5..dcb2b6fa6 100644 --- a/lib/IRCanonicalization/MakeModelGEPPass.cpp +++ b/lib/IRCanonicalization/MakeModelGEPPass.cpp @@ -686,7 +686,7 @@ static IRAccessPattern computeAccessPattern(const Use &U, // If the user is a ret, we want to look at the return type of the // function we're returning from, and use it as a pointee type. - revng_assert(FunctionTags::Lifted.isTagOf(ReturningF)); + revng_assert(FunctionTags::Isolated.isTagOf(ReturningF)); const model::Function &MF = getModelFunction(Model, *ReturningF); const model::Type *FType = MF.Prototype.get(); @@ -2210,7 +2210,7 @@ makeGEPReplacements(llvm::Function &F, const model::Binary &Model) { if (auto *CallI = dyn_cast(&I)) { auto *Callee = CallI->getCalledFunction(); - if (not Callee or not FunctionTags::Lifted.isTagOf(Callee)) { + if (not Callee or not FunctionTags::Isolated.isTagOf(Callee)) { revng_log(ModelGEPLog, "Skipping call to non-isolated function"); continue; } @@ -2361,7 +2361,7 @@ bool MakeModelGEPPass::runOnFunction(llvm::Function &F) { bool Changed = false; // Skip non-isolated functions - if (not FunctionTags::Lifted.isTagOf(&F)) + if (not FunctionTags::Isolated.isTagOf(&F)) return Changed; // If the `-single-decompilation` option was passed from command line, skip diff --git a/lib/MakeEnvNull/MakeEnvNull.cpp b/lib/MakeEnvNull/MakeEnvNull.cpp index 2f2131fd8..81e150bf7 100644 --- a/lib/MakeEnvNull/MakeEnvNull.cpp +++ b/lib/MakeEnvNull/MakeEnvNull.cpp @@ -22,7 +22,7 @@ bool MakeEnvNullPass::runOnFunction(llvm::Function &F) { // Skip non-isolated functions auto FTags = FunctionTags::TagsSet::from(&F); - if (not FTags.contains(FunctionTags::Lifted)) + if (not FTags.contains(FunctionTags::Isolated)) return false; bool Changed = false; diff --git a/lib/MarkForSerialization/MarkForSerializationPass.cpp b/lib/MarkForSerialization/MarkForSerializationPass.cpp index f696f2de5..17a337c2f 100644 --- a/lib/MarkForSerialization/MarkForSerializationPass.cpp +++ b/lib/MarkForSerialization/MarkForSerializationPass.cpp @@ -30,7 +30,7 @@ bool MarkForSerializationPass::runOnFunction(llvm::Function &F) { // Skip non-isolated functions auto FTags = FunctionTags::TagsSet::from(&F); - if (not FTags.contains(FunctionTags::Lifted)) + if (not FTags.contains(FunctionTags::Isolated)) return false; // If the `-single-decompilation` option was passed from command line, skip diff --git a/lib/PHIASAPAssignmentInfo/PHIASAPAssignmentInfo.cpp b/lib/PHIASAPAssignmentInfo/PHIASAPAssignmentInfo.cpp index b66c70a39..19fc4d243 100644 --- a/lib/PHIASAPAssignmentInfo/PHIASAPAssignmentInfo.cpp +++ b/lib/PHIASAPAssignmentInfo/PHIASAPAssignmentInfo.cpp @@ -249,7 +249,7 @@ bool PHIASAPAssignmentInfo::runOnFunction(llvm::Function &F) { // Skip non-isolated functions auto FTags = FunctionTags::TagsSet::from(&F); - if (not FTags.contains(FunctionTags::Lifted)) + if (not FTags.contains(FunctionTags::Isolated)) return false; DomTree DT; diff --git a/lib/PromoteStackPointer/DetectStackSizePass.cpp b/lib/PromoteStackPointer/DetectStackSizePass.cpp index 870bcf817..8de5f7b7e 100644 --- a/lib/PromoteStackPointer/DetectStackSizePass.cpp +++ b/lib/PromoteStackPointer/DetectStackSizePass.cpp @@ -103,7 +103,7 @@ public: public: void run(Module &M) { // Collect information about the stack of each function - for (llvm::Function &F : FunctionTags::Lifted.functions(&M)) + for (llvm::Function &F : FunctionTags::Isolated.functions(&M)) collectStackBounds(F); // At this point we have populated two data structures: diff --git a/lib/PromoteStackPointer/InjectStackSizeProbesAtCallSitesPass.cpp b/lib/PromoteStackPointer/InjectStackSizeProbesAtCallSitesPass.cpp index 653db3823..a6e03a4a5 100644 --- a/lib/PromoteStackPointer/InjectStackSizeProbesAtCallSitesPass.cpp +++ b/lib/PromoteStackPointer/InjectStackSizeProbesAtCallSitesPass.cpp @@ -28,7 +28,7 @@ bool InjectStackSizeProbesAtCallSitesPass::runOnModule(llvm::Module &M) { F->addFnAttr(Attribute::WillReturn); F->addFnAttr(Attribute::InaccessibleMemOnly); - for (Function &F : FunctionTags::Lifted.functions(&M)) { + for (Function &F : FunctionTags::Isolated.functions(&M)) { setInsertPointToFirstNonAlloca(B, F); auto *SP0 = B.CreateLoad(SP); diff --git a/lib/PromoteStackPointer/InstrumentStackAccessesPass.cpp b/lib/PromoteStackPointer/InstrumentStackAccessesPass.cpp index 330cf4095..fdad71ab4 100644 --- a/lib/PromoteStackPointer/InstrumentStackAccessesPass.cpp +++ b/lib/PromoteStackPointer/InstrumentStackAccessesPass.cpp @@ -157,7 +157,7 @@ void InstrumentStackAccesses::instrumentStackAccess(Instruction *I) { bool InstrumentStackAccessesPass::runOnModule(Module &M) { InstrumentStackAccesses Instrumenter(M); - for (Function &F : FunctionTags::Lifted.functions(&M)) + for (Function &F : FunctionTags::Isolated.functions(&M)) Instrumenter.run(F); return true; diff --git a/lib/PromoteStackPointer/PromoteStackPointerPass.cpp b/lib/PromoteStackPointer/PromoteStackPointerPass.cpp index 075e6e1c9..54155f6db 100644 --- a/lib/PromoteStackPointer/PromoteStackPointerPass.cpp +++ b/lib/PromoteStackPointer/PromoteStackPointerPass.cpp @@ -79,7 +79,7 @@ bool PSPPass::runOnFunction(Function &F) { // Skip non-isolated functions auto FTags = FunctionTags::TagsSet::from(&F); - if (not FTags.contains(FunctionTags::Lifted)) + if (not FTags.contains(FunctionTags::Isolated)) return Changed; // Get the global variable representing the stack pointer register. diff --git a/lib/PromoteStackPointer/SegregateStackAccessesPass.cpp b/lib/PromoteStackPointer/SegregateStackAccessesPass.cpp index 10da9a37a..1bd911672 100644 --- a/lib/PromoteStackPointer/SegregateStackAccessesPass.cpp +++ b/lib/PromoteStackPointer/SegregateStackAccessesPass.cpp @@ -254,7 +254,7 @@ public: bool run() { addStackArguments(M); - for (Function &F : FunctionTags::Lifted.functions(&M)) + for (Function &F : FunctionTags::Isolated.functions(&M)) segregateStackAccesses(F); // Purge stores that have been used at least once @@ -277,7 +277,7 @@ private: /// arguments void addStackArguments(Module &M) { // Identify all functions that have stack arguments - for (Function &F : FunctionTags::Lifted.functions(&M)) { + for (Function &F : FunctionTags::Isolated.functions(&M)) { MetaAddress Entry = getMetaAddressMetadata(&F, "revng.function.entry"); const model::Function &ModelFunction = Binary.Functions.at(Entry); const model::Type *StackArguments = ModelFunction.Prototype.get(); diff --git a/lib/RemoveCpuLoopStore/RemoveCpuLoopStorePass.cpp b/lib/RemoveCpuLoopStore/RemoveCpuLoopStorePass.cpp index 72ce164fa..50759fff9 100644 --- a/lib/RemoveCpuLoopStore/RemoveCpuLoopStorePass.cpp +++ b/lib/RemoveCpuLoopStore/RemoveCpuLoopStorePass.cpp @@ -27,7 +27,7 @@ bool RemoveCpuLoopStorePass::runOnFunction(Function &F) { // Skip non-isolated functions auto FTags = FunctionTags::TagsSet::from(&F); - if (not FTags.contains(FunctionTags::Lifted)) + if (not FTags.contains(FunctionTags::Isolated)) return false; // Retrieve the global variable `cpu_loop_exiting` diff --git a/lib/RemoveExceptionCalls/RemoveExceptionCallsPass.cpp b/lib/RemoveExceptionCalls/RemoveExceptionCallsPass.cpp index 7df7e2b5a..f1256ff84 100644 --- a/lib/RemoveExceptionCalls/RemoveExceptionCallsPass.cpp +++ b/lib/RemoveExceptionCalls/RemoveExceptionCallsPass.cpp @@ -31,7 +31,7 @@ bool RemoveExceptionCallsPass::runOnFunction(Function &F) { // Skip non-isolated functions auto FTags = FunctionTags::TagsSet::from(&F); - if (not FTags.contains(FunctionTags::Lifted)) + if (not FTags.contains(FunctionTags::Isolated)) return false; // Remove calls to `raise_exception_helper` in the current function. diff --git a/lib/RemoveLLVMAssumeCalls/RemoveLLVMAssumeCallsPass.cpp b/lib/RemoveLLVMAssumeCalls/RemoveLLVMAssumeCallsPass.cpp index fcb0d81d2..a8803454b 100644 --- a/lib/RemoveLLVMAssumeCalls/RemoveLLVMAssumeCallsPass.cpp +++ b/lib/RemoveLLVMAssumeCalls/RemoveLLVMAssumeCallsPass.cpp @@ -29,7 +29,7 @@ bool RemoveAssumePass::runOnFunction(Function &F) { // Skip non-isolated functions auto FTags = FunctionTags::TagsSet::from(&F); - if (not FTags.contains(FunctionTags::Lifted)) + if (not FTags.contains(FunctionTags::Isolated)) return false; // Remove calls to `llvm.assume` in isolated functions. diff --git a/lib/RemoveLLVMDbgIntrinsics/RemoveLLVMDbgIntrinsicsPass.cpp b/lib/RemoveLLVMDbgIntrinsics/RemoveLLVMDbgIntrinsicsPass.cpp index 9f11584cb..8a9c0f86e 100644 --- a/lib/RemoveLLVMDbgIntrinsics/RemoveLLVMDbgIntrinsicsPass.cpp +++ b/lib/RemoveLLVMDbgIntrinsics/RemoveLLVMDbgIntrinsicsPass.cpp @@ -30,7 +30,7 @@ bool RemoveDbgPass::runOnFunction(Function &F) { // Skip non-isolated functions auto FTags = FunctionTags::TagsSet::from(&F); - if (not FTags.contains(FunctionTags::Lifted)) + if (not FTags.contains(FunctionTags::Isolated)) return false; // Remove calls to `llvm.assume` in isolated functions. diff --git a/lib/RemoveNewPCCalls/RemoveNewPCCallsPass.cpp b/lib/RemoveNewPCCalls/RemoveNewPCCallsPass.cpp index 27f7e8146..d2fbe1ddb 100644 --- a/lib/RemoveNewPCCalls/RemoveNewPCCallsPass.cpp +++ b/lib/RemoveNewPCCalls/RemoveNewPCCallsPass.cpp @@ -26,7 +26,7 @@ bool RemoveNewPCCallsPass::runOnFunction(Function &F) { // Skip non-isolated functions auto FTags = FunctionTags::TagsSet::from(&F); - if (not FTags.contains(FunctionTags::Lifted)) + if (not FTags.contains(FunctionTags::Isolated)) return false; // Remove calls to `newpc` in the current function. diff --git a/lib/RestructureCFGPass/RestructureCFG.cpp b/lib/RestructureCFGPass/RestructureCFG.cpp index e5d38ef37..a7103708c 100644 --- a/lib/RestructureCFGPass/RestructureCFG.cpp +++ b/lib/RestructureCFGPass/RestructureCFG.cpp @@ -486,7 +486,7 @@ bool RestructureCFG::runOnFunction(Function &F) { // Skip non-isolated functions auto FTags = FunctionTags::TagsSet::from(&F); - if (not FTags.contains(FunctionTags::Lifted)) + if (not FTags.contains(FunctionTags::Isolated)) return false; // If we passed the `-single-decompilation` option to the command line, skip diff --git a/lib/TypeNames/LLVMTypeNames.cpp b/lib/TypeNames/LLVMTypeNames.cpp index 3e6f9a9a1..3623125f1 100644 --- a/lib/TypeNames/LLVMTypeNames.cpp +++ b/lib/TypeNames/LLVMTypeNames.cpp @@ -85,7 +85,7 @@ getScalarCType(const llvm::Type *LLVMType, llvm::StringRef BaseType) { TypeString getReturnType(const llvm::Function *Func) { auto *RetType = Func->getReturnType(); // Isolated functions' return types must be converted using model types - revng_assert(not FunctionTags::Lifted.isTagOf(Func)); + revng_assert(not FunctionTags::Isolated.isTagOf(Func)); if (RetType->isStructTy()) { const auto &FuncName = model::Identifier::fromString(Func->getName()); diff --git a/lib/ValueManipulationAnalysis/ValueManipulationAnalysis.cpp b/lib/ValueManipulationAnalysis/ValueManipulationAnalysis.cpp index c40efac45..47aa4d86c 100644 --- a/lib/ValueManipulationAnalysis/ValueManipulationAnalysis.cpp +++ b/lib/ValueManipulationAnalysis/ValueManipulationAnalysis.cpp @@ -40,7 +40,7 @@ void VMA::getAnalysisUsage(llvm::AnalysisUsage &AU) const { bool VMA::runOnFunction(Function &F) { // Skip non-isolated functions auto FTags = FunctionTags::TagsSet::from(&F); - if (not FTags.contains(FunctionTags::Lifted)) + if (not FTags.contains(FunctionTags::Isolated)) return false; revng_log(VMALog, "------ Function: " << F.getName() << " ------"); diff --git a/tests/Unit/llvm-lit-tests/CheckDLA.ll b/tests/Unit/llvm-lit-tests/CheckDLA.ll index 22721db2f..f0c7a154c 100644 --- a/tests/Unit/llvm-lit-tests/CheckDLA.ll +++ b/tests/Unit/llvm-lit-tests/CheckDLA.ll @@ -42,7 +42,7 @@ newFuncRoot: !revng.input.architecture = !{!5870} !revng.model = !{!5872} -!58898 = !{!"Lifted"} +!58898 = !{!"Isolated"} !5870 = !{!"x86_64", i32 1, i32 0, !"pc", !"rsp", !5871} !5871 = !{!"rax", !"rbx", !"rcx", !"rdx", !"rbp", !"rsp", !"rsi", !"rdi", !"r8", !"r9", !"r10", !"r11", !"r12", !"r13", !"r14", !"r15", !"state_0x8558", !"state_0x8598", !"state_0x85d8", !"state_0x8618", !"state_0x8658", !"state_0x8698", !"state_0x86d8", !"state_0x8718"} diff --git a/tests/Unit/llvm-lit-tests/ExitSSA.ll b/tests/Unit/llvm-lit-tests/ExitSSA.ll index a232d412e..c0912d06c 100644 --- a/tests/Unit/llvm-lit-tests/ExitSSA.ll +++ b/tests/Unit/llvm-lit-tests/ExitSSA.ll @@ -149,4 +149,4 @@ tail: ret i1 %res } -!0 = !{!"Lifted"} +!0 = !{!"Isolated"}