Patent ReferencesGarbage collection, tail recursion and first-class continuations in stack-oriented languages Method and system for memory allocation in a multiprocessing environment Determination of local variable type and precision in the presence of subroutines Patent #: 6442751 InventorApplicationNo. 09/478378 filed on 01/06/2000US Classes:717/154, Including analysis of program717/108, Object oriented717/116, Object oriented717/118, Bytecode (e.g., Java)717/151, Optimization717/165Object orientedExaminersPrimary: Nguyen-Ba, Hoang-Vu AntonyAttorney, Agent or FirmInternational ClassesG06F 9/44 (20060101)G06F 9/45 (20060101) AbstractAn object oriented mechanism and method allow allocating Java array objects of unknown size at compile time to a method's invocation stack if the array's size is less than a predetermined threshold value. If the array object could typically be allocated to the invocation stack if it were of a known size at compile time, run-time code is generated that examines the actual size of the array object at run-time and that allocates the array object to the invocation stack if the size is less than a predetermined threshold value. In this manner Java array objects that have an unknown size at compile time may still be allocated to an invocation stack at run-time if the size of the object is sufficiently small.Other References
Field of SearchIncluding analysis of programOptimization Static (source or intermediate level) Dynamic (i.e., machine or object level) Data flow analysis Using flow graph Using procedure or function call graph Including instrumentation and profiling Code restructuring Including loop Including scheduling instructions Object oriented Programming language Object oriented Bytecode (e.g., Java) Including intermediate code Platform-independent form (e.g., abstract code) Just-in-time compiling or dynamic compiling (e.g., compiling Java bytecode on a virtual machine) For a parallel or multiprocessor system Loop compiling | |