SymbolTable symtab = ir.getSymbolTable(); DefUse du = getBuilder().getCFAContextInterpreter().getDU(opNode); if (contentsAreInvariant(symtab, du, 1)) { system.recordImplicitPointsToSet(F); final InstanceKey[] functionKeys = getInvariantContents(symtab, du, opNode, 1);
SymbolTable symtab = ir.getSymbolTable(); DefUse du = getBuilder().getCFAContextInterpreter().getDU(opNode); if (contentsAreInvariant(symtab, du, 1)) { system.recordImplicitPointsToSet(F); final InstanceKey[] functionKeys = getInvariantContents(symtab, du, opNode, 1);
if (contentsAreInvariant(st, du, vn)) { system.recordImplicitPointsToSet(rhs); final InstanceKey[] objs = getInvariantContents(st, du, definingNode, vn);
if (contentsAreInvariant(symtab, du, objVn)) { InstanceKey[] x = getInvariantContents(symtab, du, opNode, objVn); for (InstanceKey element : x) { if (contentsAreInvariant(symtab, du, fieldsVn)) { InstanceKey[] x = getInvariantContents(symtab, du, opNode, fieldsVn); for (InstanceKey element : x) { if (contentsAreInvariant(symtab, du, objVn)) { system.recordImplicitPointsToSet(objKey); final InstanceKey[] objKeys = getInvariantContents(symtab, du, opNode, objVn); if (contentsAreInvariant(symtab, du, fieldsVn)) { system.recordImplicitPointsToSet(fieldKey); InstanceKey[] fieldsKeys = getInvariantContents(symtab, du, opNode, fieldsVn); if (contentsAreInvariant(symtab, du, fieldsVn)) { system.recordImplicitPointsToSet(fieldKey); final InstanceKey[] fieldsKeys = getInvariantContents(symtab, du, opNode, fieldsVn);
assert fieldNameKeys.length == 1; if (contentsAreInvariant(symtab, du, objVn)) { system.recordImplicitPointsToSet(objKey); final InstanceKey[] objKeys = getInvariantContents(objVn);
assert fieldNameKeys.length == 1; if (contentsAreInvariant(symtab, du, objVn)) { system.recordImplicitPointsToSet(objKey); final InstanceKey[] objKeys = getInvariantContents(objVn);
if (contentsAreInvariant(symtab, du, objVn)) { InstanceKey[] x = getInvariantContents(symtab, du, opNode, objVn); for (InstanceKey element : x) { if (contentsAreInvariant(symtab, du, fieldsVn)) { InstanceKey[] x = getInvariantContents(symtab, du, opNode, fieldsVn); for (InstanceKey element : x) { if (contentsAreInvariant(symtab, du, objVn)) { system.recordImplicitPointsToSet(objKey); final InstanceKey[] objKeys = getInvariantContents(symtab, du, opNode, objVn); if (contentsAreInvariant(symtab, du, fieldsVn)) { system.recordImplicitPointsToSet(fieldKey); InstanceKey[] fieldsKeys = getInvariantContents(symtab, du, opNode, fieldsVn); if (contentsAreInvariant(symtab, du, fieldsVn)) { system.recordImplicitPointsToSet(fieldKey); final InstanceKey[] fieldsKeys = getInvariantContents(symtab, du, opNode, fieldsVn);
final PointerKey rk = getPointerKeyForLocal(rval); if (contentsAreInvariant(symbolTable, du, rval)) { InstanceKey objects[] = getInvariantContents(rval); for (InstanceKey object : objects) {
final PointerKey rk = getPointerKeyForLocal(rval); if (contentsAreInvariant(symbolTable, du, rval)) { InstanceKey objects[] = getInvariantContents(rval); for (InstanceKey object : objects) {
if (contentsAreInvariant(st, du, vn)) { system.recordImplicitPointsToSet(rhs); final InstanceKey[] objs = getInvariantContents(st, du, definingNode, vn);
protected void newFieldOperationFieldConstant(CGNode opNode, final boolean isLoadOperation, final ReflectedFieldAction action, final int objVn, final InstanceKey[] fieldsKeys) { IRView ir = getBuilder().getCFAContextInterpreter().getIRView(opNode); SymbolTable symtab = ir.getSymbolTable(); DefUse du = getBuilder().getCFAContextInterpreter().getDU(opNode); PointerKey objKey = getBuilder().getPointerKeyForLocal(opNode, objVn); if (contentsAreInvariant(symtab, du, objVn)) { system.recordImplicitPointsToSet(objKey); InstanceKey[] objectKeys = getInvariantContents(symtab, du, opNode, objVn); newFieldOperationObjectAndFieldConstant(isLoadOperation, action, objectKeys, fieldsKeys); } else { newFieldOperationOnlyFieldConstant(isLoadOperation, action, objKey, fieldsKeys); } }
protected void newFieldOperationFieldConstant(CGNode opNode, final boolean isLoadOperation, final ReflectedFieldAction action, final int objVn, final InstanceKey[] fieldsKeys) { IRView ir = getBuilder().getCFAContextInterpreter().getIRView(opNode); SymbolTable symtab = ir.getSymbolTable(); DefUse du = getBuilder().getCFAContextInterpreter().getDU(opNode); PointerKey objKey = getBuilder().getPointerKeyForLocal(opNode, objVn); if (contentsAreInvariant(symtab, du, objVn)) { system.recordImplicitPointsToSet(objKey); InstanceKey[] objectKeys = getInvariantContents(symtab, du, opNode, objVn); newFieldOperationObjectAndFieldConstant(isLoadOperation, action, objectKeys, fieldsKeys); } else { newFieldOperationOnlyFieldConstant(isLoadOperation, action, objKey, fieldsKeys); } }
public void newFieldWrite(CGNode opNode, int objVn, int fieldsVn, int rhsVn) { IRView ir = getBuilder().getCFAContextInterpreter().getIRView(opNode); SymbolTable symtab = ir.getSymbolTable(); DefUse du = getBuilder().getCFAContextInterpreter().getDU(opNode); PointerKey rhsKey = getBuilder().getPointerKeyForLocal(opNode, rhsVn); if (contentsAreInvariant(symtab, du, rhsVn)) { system.recordImplicitPointsToSet(rhsKey); newFieldWrite(opNode, objVn, fieldsVn, getInvariantContents(symtab, du, opNode, rhsVn)); } else { newFieldWrite(opNode, objVn, fieldsVn, rhsKey); } }
public void newFieldWrite(CGNode opNode, int objVn, int fieldsVn, int rhsVn) { IRView ir = getBuilder().getCFAContextInterpreter().getIRView(opNode); SymbolTable symtab = ir.getSymbolTable(); DefUse du = getBuilder().getCFAContextInterpreter().getDU(opNode); PointerKey rhsKey = getBuilder().getPointerKeyForLocal(opNode, rhsVn); if (contentsAreInvariant(symtab, du, rhsVn)) { system.recordImplicitPointsToSet(rhsKey); newFieldWrite(opNode, objVn, fieldsVn, getInvariantContents(symtab, du, opNode, rhsVn)); } else { newFieldWrite(opNode, objVn, fieldsVn, rhsKey); } }