Patent ID: 9183021
Filing Date: 2015-11-10
Classification: G06F

Abstract:
1. A method comprising: loading, by a processing device, application code that has been intermediately compiled into bytecode; executing the application code by the processing device after compiling the application code with the processing device, wherein during runtime the application code makes a call from a call site to an implementation of an operation, which returns a value to the application code and transmits a notification to an agent; receiving the notification of the call by the agent during the runtime of the application code, the agent operating independently of all compilers; in response to receiving the notification, performing an analysis on the application code by the agent during runtime of the application code to determine whether the value is used by the application code; and optimizing, by the processing device, the application code by the agent, wherein the optimizing comprises transforming the call site in view of a result of the analysis to call an alternative implementation, which returns a value without transmitting the notification to the agent, wherein the transforming is performed in response to a determination that the value is used by the application code.