mirror of
https://github.com/github/codeql.git
synced 2025-12-16 16:53:25 +01:00
Guards: Align the SSA signature with the one from shared SSA.
This commit is contained in:
@@ -380,18 +380,20 @@ private module LogicInput_v1 implements GuardsImpl::LogicInputSig {
|
||||
GuardsInput::Expr getARead() { result = this.getAUse().getDef() }
|
||||
}
|
||||
|
||||
class SsaWriteDefinition extends SsaDefinition instanceof ExplicitDefinition {
|
||||
GuardsInput::Expr getDefinition() { result = super.getAssignedInstruction() }
|
||||
class SsaExplicitWrite extends SsaDefinition instanceof ExplicitDefinition {
|
||||
GuardsInput::Expr getValue() { result = super.getAssignedInstruction() }
|
||||
}
|
||||
|
||||
class SsaPhiNode extends SsaDefinition instanceof PhiNode {
|
||||
class SsaPhiDefinition extends SsaDefinition instanceof PhiNode {
|
||||
predicate hasInputFromBlock(SsaDefinition inp, BasicBlock bb) {
|
||||
super.hasInputFromBlock(inp, bb)
|
||||
}
|
||||
}
|
||||
|
||||
predicate parameterDefinition(GuardsInput::Parameter p, SsaDefinition def) {
|
||||
def.isParameterDefinition(p)
|
||||
class SsaParameterInit extends SsaDefinition {
|
||||
SsaParameterInit() { this.isParameterDefinition(_) }
|
||||
|
||||
GuardsInput::Parameter getParameter() { this.isParameterDefinition(result) }
|
||||
}
|
||||
|
||||
predicate additionalImpliesStep(
|
||||
|
||||
Reference in New Issue
Block a user