@ Override public void visitMethod ( Method obj ) { Code c = obj . getCode ( ) ; if ( c != null ) { byte [ ] opcodes = c . getCode ( ) ; if ( opcodes != null ) { trPCPos = opcodes . length - 1 ; if ( ! obj . getSignature ( ) . endsWith ( Values . SIG_VOID ) ) { trPCPos -= 1 ; } trPCPos -= TAILRECURSIONFUDGE ; possibleTailRecursion = true ; isStatic = obj . isStatic ( ) ; stack . resetForMethodEntry ( this ) ; super . visitMethod ( obj ) ; } } }
implements the visitor to figure the pc where the method call must occur depending on whether the method returns a value or not .