@@ -157,23 +157,14 @@ private newtype TMemoryLocation =
157
157
) and
158
158
languageType = type .getCanonicalLanguageType ( )
159
159
} or
160
- TEntireAllocationMemoryLocation ( Allocation var , boolean isMayAccess ) {
161
- (
162
- var instanceof IndirectParameterAllocation or
163
- var instanceof DynamicAllocation
164
- ) and
165
- ( isMayAccess = false or isMayAccess = true )
160
+ TEntireAllocationMemoryLocation ( Allocation var , Boolean isMayAccess ) {
161
+ var instanceof IndirectParameterAllocation or
162
+ var instanceof DynamicAllocation
166
163
} or
167
164
TGroupedMemoryLocation ( VariableGroup vg , Boolean isMayAccess , Boolean isAll ) or
168
- TUnknownMemoryLocation ( IRFunction irFunc , boolean isMayAccess ) {
169
- isMayAccess = false or isMayAccess = true
170
- } or
171
- TAllNonLocalMemory ( IRFunction irFunc , boolean isMayAccess ) {
172
- isMayAccess = false or isMayAccess = true
173
- } or
174
- TAllAliasedMemory ( IRFunction irFunc , boolean isMayAccess ) {
175
- isMayAccess = false or isMayAccess = true
176
- }
165
+ TUnknownMemoryLocation ( IRFunction irFunc , Boolean isMayAccess ) or
166
+ TAllNonLocalMemory ( IRFunction irFunc , Boolean isMayAccess ) or
167
+ TAllAliasedMemory ( IRFunction irFunc , Boolean isMayAccess )
177
168
178
169
/**
179
170
* Represents the memory location accessed by a memory operand or memory result. In this implementation, the location is
@@ -249,12 +240,8 @@ abstract class AllocationMemoryLocation extends MemoryLocation {
249
240
Allocation var ;
250
241
boolean isMayAccess ;
251
242
252
- AllocationMemoryLocation ( ) {
253
- this instanceof TMemoryLocation and
254
- isMayAccess = false
255
- or
256
- isMayAccess = true // Just ensures that `isMayAccess` is bound.
257
- }
243
+ bindingset [ isMayAccess]
244
+ AllocationMemoryLocation ( ) { any ( ) }
258
245
259
246
final override VirtualVariable getVirtualVariable ( ) {
260
247
if allocationEscapes ( var )
0 commit comments