@@ -151,25 +151,24 @@ module Ssa {
151151
152152 cached
153153 ControlFlowNode getAFirstRead ( ) {
154- exists ( SsaInput:: BasicBlock bb1 , int i1 , SsaInput:: BasicBlock bb2 , int i2 |
155- this .definesAt ( _, bb1 , i1 ) and
156- SsaImpl:: adjacentDefRead ( this , bb1 , i1 , bb2 , i2 ) and
157- result = bb2 .getNode ( i2 )
154+ exists ( SsaInput:: BasicBlock bb , int i |
155+ SsaImpl:: firstUse ( this , bb , i , true ) and
156+ result = bb .getNode ( i )
158157 )
159158 }
160159
161160 cached
162161 predicate adjacentReadPair ( ControlFlowNode read1 , ControlFlowNode read2 ) {
162+ read1 = this .getARead ( ) and
163163 exists ( SsaInput:: BasicBlock bb1 , int i1 , SsaInput:: BasicBlock bb2 , int i2 |
164164 read1 = bb1 .getNode ( i1 ) and
165- SsaInput:: variableRead ( bb1 , i1 , _, true ) and
166- SsaImpl:: adjacentDefRead ( this , bb1 , i1 , bb2 , i2 ) and
165+ SsaImpl:: adjacentUseUse ( bb1 , i1 , bb2 , i2 , _, true ) and
167166 read2 = bb2 .getNode ( i2 )
168167 )
169168 }
170169
171170 cached
172- predicate lastRefRedef ( SsaInput:: BasicBlock bb , int i , Definition next ) {
171+ deprecated predicate lastRefRedef ( SsaInput:: BasicBlock bb , int i , Definition next ) {
173172 SsaImpl:: lastRefRedef ( this , bb , i , next )
174173 }
175174 }
0 commit comments