Home
last modified time | relevance | path

Searched refs:LVI (Results 1 – 22 of 22) sorted by relevance

/llvm-project-15.0.7/llvm/lib/Transforms/Scalar/
H A DCorrelatedValuePropagation.cpp361 if (constantFoldCmp(Cmp, LVI)) in processCmp()
365 if (processICmp(ICmp, LVI)) in processCmp()
552 processBinOp(BO, LVI); in processAbsIntrinsic()
593 processBinOp(BO, LVI); in processOverflowIntrinsic()
613 processBinOp(BO, LVI); in processSaturatingInst()
713 if (isNonNegative(V, LVI, CxtI)) in getDomain()
715 if (isNonPositive(V, LVI, CxtI)) in getDomain()
863 processUDivOrURem(URem, LVI); in processSRem()
920 processUDivOrURem(UDiv, LVI); in processSDiv()
932 if (processSDiv(Instr, LVI)) in processSDivOrSRem()
[all …]
H A DJumpThreading.cpp329 LVI->printLVI(F, DTU.getDomTree(), dbgs()); in runOnFunction()
342 auto &LVI = AM.getResult<LazyValueAnalysis>(F); in run() local
359 LVI.printLVI(F, DTU.getDomTree(), dbgs()); in run()
379 LVI = LVI_; in runImpl()
445 LVI->eraseBlock(&BB); in runImpl()
466 LVI->eraseBlock(&BB); in runImpl()
873 LVI->getPredicateOnEdge(Pred, CmpLHS, in computeValueKnownInPredecessorsImpl()
979 Constant *CI = LVI->getConstant(V, CxtI); in computeValueKnownInPredecessorsImpl()
1972 LVI->eraseBlock(SinglePred); in maybeMergeBasicBlockIntoOnlyPred()
2003 LVI->eraseBlock(BB); in maybeMergeBasicBlockIntoOnlyPred()
[all …]
/llvm-project-15.0.7/llvm/lib/CodeGen/
H A DSplitKit.cpp243 assert(LVI->start == LVI->valno->def && "Dangling Segment start"); in calcLiveBlockInfo()
250 while (LVI->end < Stop) { in calcLiveBlockInfo()
252 if (++LVI == LVE || LVI->start >= Stop) { in calcLiveBlockInfo()
275 assert(LVI->start == LVI->valno->def && "Dangling Segment start"); in calcLiveBlockInfo()
277 BI.FirstDef = LVI->start; in calcLiveBlockInfo()
283 if (LVI == LVE) in calcLiveBlockInfo()
288 if (LVI->end == Stop && ++LVI == LVE) in calcLiveBlockInfo()
292 if (LVI->start < Stop) in calcLiveBlockInfo()
315 LVI = li->advanceTo(LVI, Stop); in countLiveBlocks()
316 if (LVI == LVE) in countLiveBlocks()
[all …]
/llvm-project-15.0.7/llvm/lib/Transforms/Utils/
H A DLowerSwitch.cpp356 AssumptionCache *AC, LazyValueInfo *LVI) { in ProcessSwitchInst() argument
412 const ConstantRange LVIRange = LVI->getConstantRange(Val, SI); in ProcessSwitchInst()
530 bool LowerSwitch(Function &F, LazyValueInfo *LVI, AssumptionCache *AC) { in LowerSwitch() argument
543 ProcessSwitchInst(SI, DeleteList, AC, LVI); in LowerSwitch()
548 LVI->eraseBlock(BB); in LowerSwitch()
592 LazyValueInfo *LVI = &getAnalysis<LazyValueInfoWrapperPass>().getLVI(); in runOnFunction() local
595 return LowerSwitch(F, LVI, AC); in runOnFunction()
600 LazyValueInfo *LVI = &AM.getResult<LazyValueAnalysis>(F); in run() local
602 return LowerSwitch(F, LVI, AC) ? PreservedAnalyses::none() in run()
/llvm-project-15.0.7/llvm/test/Analysis/LazyValueAnalysis/
H A Dlvi-after-jumpthreading.ll4 ; Testing LVI cache after jump-threading
12 ; CHECK-LABEL: LVI for function 'test1':
48 ; CHECK-LABEL: LVI for function 'test2':
106 ; LVI info as LVI info for the beginning of do block. LVI info for %i is Range[0,1)
109 ; CHECK-LABEL: LVI for function 'test3':
153 ; When we do so, LVI for cont cannot be the one for the merged do block.
155 ; CHECK-LABEL: LVI for function 'test4':
H A Dinvalidation.ll2 ; away. Sadly, you can neither print nor verify LVI so we just have to require
/llvm-project-15.0.7/llvm/test/CodeGen/X86/
H A Dlvi-hardening-inline-asm.ll88 ; WARN: warning: Instruction may be vulnerable to LVI
95 ; WARN: warning: Instruction may be vulnerable to LVI
102 ; WARN: warning: Instruction may be vulnerable to LVI
120 ; WARN: warning: Instruction may be vulnerable to LVI
127 ; WARN: warning: Instruction may be vulnerable to LVI
134 ; WARN: warning: Instruction may be vulnerable to LVI
H A DO0-pipeline.ll76 ; CHECK-NEXT: X86 Load Value Injection (LVI) Ret-Hardening
H A Dopt-pipeline.ll160 ; CHECK-NEXT: X86 Load Value Injection (LVI) Load Hardening
209 ; CHECK-NEXT: X86 Load Value Injection (LVI) Ret-Hardening
/llvm-project-15.0.7/llvm/test/Transforms/CorrelatedValuePropagation/
H A Dalloca.ll8 ; CHECK-NOT: LVI Getting edge value %a.i = alloca i64, align 8 at 'for.body'
9 ; CHECK-NOT: LVI Getting edge value %tmp = bitcast i64* %a.i to i8* from 'for.cond' to 'for.body'
/llvm-project-15.0.7/llvm/test/Transforms/JumpThreading/
H A Dthread-cmp.ll2 ; When simplify a branch based on LVI predicates, we should replace the
28 ; but that's a CSE problem, not a LVI/jump threading problem)
H A Dguards.ll219 ; LVI uses guard to identify value of %c2 in branch as true, we cannot replace that
/llvm-project-15.0.7/llvm/include/llvm/Transforms/Scalar/
H A DJumpThreading.h80 LazyValueInfo *LVI; variable
101 LazyValueInfo *LVI, AAResults *AA, DomTreeUpdater *DTU,
/llvm-project-15.0.7/llvm/test/Transforms/GlobalDCE/
H A Dcrash-assertingvh.ll2 ; like LVI with asserting handles into the body of a function, those don't begin
/llvm-project-15.0.7/llvm/test/Transforms/Inline/
H A Dclear-analyses.ll2 ; as LVI with references back into the IR of a function that the inliner will
/llvm-project-15.0.7/llvm/test/Transforms/Attributor/
H A Dlvi-after-jumpthreading.ll177 ; FIXME: COND should be replaced with false. This will be fixed by improving LVI.
H A Drange.ll542 ; TEST4 LVI test
/llvm-project-15.0.7/llvm/lib/Target/X86/
H A DX86.td356 // Mitigate LVI attacks against indirect calls/branches and call returns
371 "and conditional branches. Implies LVI Control Flow integrity.",
374 // Mitigate LVI attacks against data loads
/llvm-project-15.0.7/llvm/lib/Analysis/
H A DLazyValueInfo.cpp1966 auto &LVI = getAnalysis<LazyValueInfoWrapperPass>().getLVI(); in runOnFunction() local
1968 LVI.printLVI(F, DTree, dbgs()); in runOnFunction()
/llvm-project-15.0.7/clang/docs/
H A DClangCommandLineReference.rst3187 Enable only control-flow mitigations for Load Value Injection (LVI)
3191 Enable all mitigations for Load Value Injection (LVI)
3259 Enable speculative execution side effect suppression (SESES). Includes LVI control flow integrity m…
/llvm-project-15.0.7/llvm/lib/Transforms/IPO/
H A DAttributorAttributes.cpp8110 LazyValueInfo *LVI = in getConstantRangeFromLVI() local
8114 if (!LVI || !CtxI) in getConstantRangeFromLVI()
8116 return LVI->getConstantRange(&getAssociatedValue(), in getConstantRangeFromLVI()
/llvm-project-15.0.7/clang/include/clang/Driver/
H A DOptions.td3461 HelpText<"Enable all mitigations for Load Value Injection (LVI)">;
3463 HelpText<"Disable mitigations for Load Value Injection (LVI)">;
3465 HelpText<"Enable only control-flow mitigations for Load Value Injection (LVI)">;
3467 HelpText<"Disable control-flow mitigations for Load Value Injection (LVI)">;
3470 "Includes LVI control flow integrity mitigations">;