.addReferencedField(this));
.addReferencedField(lastFieldSeen));
    public void sawOpcode(int seen) {	// System.out.println("PC: " + PC + ", stage: " + stage1);	switch (seen) {		case ALOAD_0: 			if (DEBUG) System.out.println("   ALOAD_0 at PC " + PC);			start = PC;			stage  = 1;			break;		case GETFIELD:			if (DEBUG) System.out.println("   getfield in stage " + stage);			if (stage == 1) {				stage = 2;				}			else stage = 0;			break;		case GOTO:		case IFNE:		case IFEQ:		case IFNULL:		case IFNONNULL:			if (DEBUG) System.out.println("   conditional branch in stage " + stage + " to " + branchTarget );			if (stage == 2 && branchTarget == start) {				bugReporter.reportBug(new BugInstance("SP_SPIN_ON_FIELD", NORMAL_PRIORITY)					.addClassAndMethod(this)					.addSourceLine(this, start)					.addReferencedField(this));				stage = 0;				}			else if (branchTarget < PC)				stage = 0;			break;		default:			stage = 0;			break;		}		}