@@ -47,19 +47,19 @@ private module Cached {
47
47
}
48
48
49
49
cached
50
- ReadAccess getAFirstRead ( Definition def ) {
50
+ ReadAccess getAFirstReadExt ( DefinitionExt def ) {
51
51
exists ( BasicBlock bb1 , int i1 , BasicBlock bb2 , int i2 |
52
- def .definesAt ( _, bb1 , i1 ) and
53
- adjacentDefRead ( def , bb1 , i1 , bb2 , i2 ) and
52
+ def .definesAt ( _, bb1 , i1 , _ ) and
53
+ adjacentDefReadExt ( def , _ , bb1 , i1 , bb2 , i2 ) and
54
54
result = bb2 .getNode ( i2 )
55
55
)
56
56
}
57
57
58
58
cached
59
- predicate hasAdjacentReads ( Definition def , ReadAccess first , ReadAccess second ) {
59
+ predicate hasAdjacentReadsExt ( DefinitionExt def , ReadAccess first , ReadAccess second ) {
60
60
exists ( BasicBlock bb1 , int i1 , BasicBlock bb2 , int i2 |
61
61
first = bb1 .getNode ( i1 ) and
62
- adjacentDefRead ( def , bb1 , i1 , bb2 , i2 ) and
62
+ adjacentDefReadExt ( def , _ , bb1 , i1 , bb2 , i2 ) and
63
63
second = bb2 .getNode ( i2 )
64
64
)
65
65
}
@@ -68,9 +68,35 @@ private module Cached {
68
68
Definition getAPhiInput ( PhiNode phi ) { phiHasInputFromBlock ( phi , result , _) }
69
69
70
70
cached
71
- predicate lastRefBeforeRedef ( Definition def , BasicBlock bb , int i , Definition next ) {
72
- lastRefRedef ( def , bb , i , next )
71
+ predicate lastRefBeforeRedefExt ( DefinitionExt def , BasicBlock bb , int i , DefinitionExt next ) {
72
+ lastRefRedefExt ( def , _ , bb , i , next )
73
73
}
74
74
}
75
75
76
76
import Cached
77
+
78
+ private module Deprecated {
79
+ private import CIL
80
+
81
+ deprecated ReadAccess getAFirstRead ( Definition def ) {
82
+ exists ( BasicBlock bb1 , int i1 , BasicBlock bb2 , int i2 |
83
+ def .definesAt ( _, bb1 , i1 ) and
84
+ adjacentDefRead ( def , bb1 , i1 , bb2 , i2 ) and
85
+ result = bb2 .getNode ( i2 )
86
+ )
87
+ }
88
+
89
+ deprecated predicate hasAdjacentReads ( Definition def , ReadAccess first , ReadAccess second ) {
90
+ exists ( BasicBlock bb1 , int i1 , BasicBlock bb2 , int i2 |
91
+ first = bb1 .getNode ( i1 ) and
92
+ adjacentDefRead ( def , bb1 , i1 , bb2 , i2 ) and
93
+ second = bb2 .getNode ( i2 )
94
+ )
95
+ }
96
+
97
+ deprecated predicate lastRefBeforeRedef ( Definition def , BasicBlock bb , int i , Definition next ) {
98
+ lastRefRedef ( def , bb , i , next )
99
+ }
100
+ }
101
+
102
+ import Deprecated
0 commit comments