@@ -191,7 +191,7 @@ abstract class DefImpl extends TDefImpl {
191
191
* Holds if this definition (or use) has index `index` in block `block`,
192
192
* and is a definition (or use) of the variable `sv`
193
193
*/
194
- final predicate hasIndexInBlock ( IRBlock block , int index , SourceVariable sv ) {
194
+ final predicate hasIndexInBlock ( SourceVariable sv , IRBlock block , int index ) {
195
195
this .hasIndexInBlock ( block , index ) and
196
196
sv = this .getSourceVariable ( )
197
197
}
@@ -891,12 +891,12 @@ private module SsaInput implements SsaImplCommon::InputSig<Location> {
891
891
predicate variableWrite ( BasicBlock bb , int i , SourceVariable v , boolean certain ) {
892
892
DataFlowImplCommon:: forceCachingInSameStage ( ) and
893
893
(
894
- exists ( DefImpl def | def .hasIndexInBlock ( bb , i , v ) |
894
+ exists ( DefImpl def | def .hasIndexInBlock ( v , bb , i ) |
895
895
if def .isCertain ( ) then certain = true else certain = false
896
896
)
897
897
or
898
898
exists ( GlobalDefImpl global |
899
- global .hasIndexInBlock ( bb , i , v ) and
899
+ global .hasIndexInBlock ( v , bb , i ) and
900
900
certain = true
901
901
)
902
902
)
@@ -934,10 +934,11 @@ module SsaCached {
934
934
}
935
935
936
936
/** Gets the `DefImpl` corresponding to `def`. */
937
+ pragma [ nomagic]
937
938
private DefImpl getDefImpl ( SsaImpl:: Definition def ) {
938
939
exists ( SourceVariable sv , IRBlock bb , int i |
939
940
def .definesAt ( sv , bb , i ) and
940
- result .hasIndexInBlock ( bb , i , sv )
941
+ result .hasIndexInBlock ( sv , bb , i )
941
942
)
942
943
}
943
944
0 commit comments