code. throw_runtime_exceptions flag is set. expr is null and throws NullPointerException/ generates an assertion when necessary; Exceptions are thrown when the throw_runtime_exceptions flag is set. class1 is an instance of class2 and throws ClassCastException/generates an assertion when necessary; Exceptions are thrown when the throw_runtime_exceptions flag is set. length >= 0 and throws NegativeArraySizeException/ generates an assertion when necessary; Exceptions are thrown when the throw_runtime_exceptions flag is set. code with instrumentation in the form of either assertions or runtime exceptions. expr requires instrumentation, and if so adds it to block. code to instrumentation and overwrites reference code with the augmented block if instrumentation is non-empty. expr in the form of either assertions or runtime exceptions. Definition at line 24 of file java_bytecode_instrument.cpp.
Definition at line 27 of file java_bytecode_instrument.cpp.
Checks whether expr requires instrumentation, and if so adds it to block.
Definition at line 308 of file java_bytecode_instrument.cpp.
Checks whether there is a division by zero and throws ArithmeticException if necessary.
Exceptions are thrown when the throw_runtime_exceptions flag is set.
throw_runtime_exceptions, it returns code that either throws an ArithmeticException or asserts a nonzero denominator. Definition at line 137 of file java_bytecode_instrument.cpp.
Checks whether the array access array_struct[idx] is out-of-bounds, and throws ArrayIndexOutofBoundsException/generates an assertion if necessary; Exceptions are thrown when the throw_runtime_exceptions flag is set.
Otherwise, assertions are emitted.
throw_runtime_exceptions, it returns code that either throws an ArrayIndexOutPfBoundsException or emits an assertion checking the array access Definition at line 168 of file java_bytecode_instrument.cpp.
Checks whether length >= 0 and throws NegativeArraySizeException/ generates an assertion when necessary; Exceptions are thrown when the throw_runtime_exceptions flag is set.
Otherwise, assertions are emitted.
throw_runtime_exceptions, it returns code that either throws an NegativeArraySizeException or emits an assertion checking the subtype relation Definition at line 284 of file java_bytecode_instrument.cpp.
Checks whether class1 is an instance of class2 and throws ClassCastException/generates an assertion when necessary; Exceptions are thrown when the throw_runtime_exceptions flag is set.
Otherwise, assertions are emitted.
throw_runtime_exceptions, it returns code that either throws an ClassCastException or emits an assertion checking the subtype relation Definition at line 211 of file java_bytecode_instrument.cpp.
Checks whether expr is null and throws NullPointerException/ generates an assertion when necessary; Exceptions are thrown when the throw_runtime_exceptions flag is set.
Otherwise, assertions are emitted.
throw_runtime_exceptions, it returns code that either throws an NullPointerException or emits an assertion checking the subtype relation Definition at line 255 of file java_bytecode_instrument.cpp.
Augments code with instrumentation in the form of either assertions or runtime exceptions.
Definition at line 342 of file java_bytecode_instrument.cpp.
Computes the instrumentation for expr in the form of either assertions or runtime exceptions.
expr if required Definition at line 451 of file java_bytecode_instrument.cpp.
Instruments code.
Definition at line 528 of file java_bytecode_instrument.cpp.
Appends code to instrumentation and overwrites reference code with the augmented block if instrumentation is non-empty.
Definition at line 325 of file java_bytecode_instrument.cpp.
Creates a class stub for exc_name and generates a conditional GOTO such that exc_name is thrown when cond is met.
Definition at line 93 of file java_bytecode_instrument.cpp.
Definition at line 42 of file java_bytecode_instrument.cpp.
Definition at line 40 of file java_bytecode_instrument.cpp.
Definition at line 41 of file java_bytecode_instrument.cpp.