| 7020872 |
Method for verifying code transformers for an incorporated system, in particular in a chip card |
| Mar-28-2006 |
The invention relates to a method for verifying transformation (2) of a source code (1) into a transformed code (3) designed for an embedded system (7) such as in a smart card... |
| 7017153 |
Uninstrumenting in-line code instrumentation via stack unwinding and cleanup |
| Mar-21-2006 |
A method and system for reverting a process in an in-line instrumented state to an uninstrumented state. In one embodiment, the present invention modifies selected text segment portions from the process... |
| 7010786 |
Predictive arithmetic overflow detection |
| Mar-7-2006 |
A method for arithmetic overflow detection includes receiving a first instruction defined for a first processor having a first base, where the instruction comprises an operator and at least one operand... |
| 7007272 |
Compiling computer programs including branch instructions |
| Feb-28-2006 |
This patent describes a method of compiling a computer program from a sequence of computer instructions including a plurality of first, set branch, instructions which each identify a target address for... |
| 6993754 |
Annotations to executable images for improved dynamic optimization functions |
| Jan-31-2006 |
A method of optimizing a computer program includes generating annotation information about the computer program, storing the annotation information with the computer program, and dynamically optimizing... |
| 6973648 |
Method and device to process multidimensional array objects |
| Dec-6-2005 |
A method for processing a multidimensional array object in which a multidimensional array is implemented by an array of array objects. The multidimensional array object comprises array objects which constitute... |
| 6971091 |
System and method for adaptively optimizing program execution by sampling at selected program points |
| Nov-29-2005 |
A sampling-based system and method for adaptively optimizing a computer program executing in an execution environment that comprises one or more compiler devices for providing various levels of program... |
| 6968545 |
Method and apparatus for no-latency conditional branching |
| Nov-22-2005 |
An apparatus to perform no-latency conditional branching has a sequencer for executing program instructions including one or more conditional branch instructions. The conditional branch instruction is... |
| 6964042 |
System and method for iterative code optimization using adaptive size metrics |
| Nov-8-2005 |
A system and method for iterative code optimization using adaptive or dynamic size metrics, for use with run-time software systems and virtual machines. The dynamic size metric may be calculated both for... |
| 6964039 |
Method to create optimized machine code through combined verification and translation of JAVA™ bytecode |
| Nov-8-2005 |
The present invention is a new method and apparatus to perform combined compilation and verification of platform independent bytecode instruction listings into optimized machine code. More specifically,... |
| 6957424 |
Method for optimizing performance of software applications within a computer system |
| Oct-18-2005 |
A method for optimizing a software application within a computer system is disclosed. A controller and a group of agents are initially provided within a computer system. Each agent within the group is... |
| 6954927 |
Hardware supported software pipelined loop prologue optimization |
| Oct-11-2005 |
A method for optimizing a software pipelineable loop in a software code is provided. The loop comprises one or more pipelined stages and one or more loop operations. The method comprises evaluating an... |
| 6934943 |
Optimization of control transfers to dynamically loaded modules |
| Aug-23-2005 |
Method and apparatus for optimization of an executable program that calls procedures in a shared library. Code segments that read procedure address information from a linkage table are first identified.... |
| 6925639 |
Method and system for register allocation |
| Aug-2-2005 |
A method, system, and apparatus for inserting spill code optimized for a complex instruction set computing (CISC) two-address machine, such as a machine utilizing an 80x86 processor is described. The spill... |
| 6922826 |
Debugger impact reduction through breakpoint motion |
| Jul-26-2005 |
A first type of debugger impact reduction includes removing, from within a loop, an initial conditional breakpoint ("ICB"); extracting a first Boolean expression ("BE_1") therefrom; setting a special conditional... |
| 6910207 |
Method of executing a computer program with an interpreter, computer system and computer program product |
| Jun-21-2005 |
An interpreter uses a symbol table containing information for resolving symbolic references in instructions. Memory is provided for storing symbolic reference-result associations, the result of the association... |
| 6910206 |
Data processing with native and interpreted program instruction words |
| Jun-21-2005 |
An interpreter invocation mechanism for switching between execution of native instruction words to interpreted instruction words uses a subroutine call instruction to start execution of the interpreter.... |
| 6895581 |
Replaceable classes and virtual constructors for object-oriented programming languages |
| May-17-2005 |
An extension of object-oriented programming languages enables the use of replaceable classes and virtual constructors, thereby allowing existing code that creates objects of a base class to be reusable... |
| 6886157 |
Method and apparatus for creating efficient native methods that extend a bytecode interpreter |
| Apr-26-2005 |
Methods, apparatus and computer program products are disclosed for a method of invoking a native method in a Java virtual machine ("JVM"). A special-purpose fast interface, executing in conjunction with... |
| 6865734 |
Method and apparatus for performing byte-code optimization during pauses |
| Mar-8-2005 |
Methods and apparatus for dynamically compiling byte codes associated with methods during idle periods in the execution of a computer program are disclosed. The described methods are particularly suitable... |
| 6865730 |
Interprocedural analysis and optimization of an object oriented program in the presence of dynamic class loading |
| Mar-8-2005 |
A method is provided for analyzing an object oriented program that supports dynamic class loading. A set A of classes in the program is identified, wherein each class within set A is capable of, during... |
| 6865429 |
Real-time control system development tool |
| Mar-8-2005 |
A composite object group (COG) data structure embodied in a computer-readable medium for building a control system that has both a clock cycle and event processing is provided. An interface for passing... |
| 6862730 |
Register allocation in code translation between processors |
| Mar-1-2005 |
This invention provides a low level code translation technique that separates a source code into blocks based on a target processor register capability. The source code of a source processor, is first... |
| 6857120 |
Method for characterizing program execution by periodic call stack inspection |
| Feb-15-2005 |
A method for characterizing runtime behavior of a computer program executing in an execution environment comprising: generating a call stack runtime data structure for tracking methods currently active... |
| 6854110 |
System and method for obtaining scratch registers in computer executable binaries |
| Feb-8-2005 |
A system and method for obtaining scratch registers in a computer-executable binary is provided. Register allocation requests in a computer-executable binary are discovered. In one method, the register... |
| 6851110 |
Optimizing an executable computer program having address-bridging code segments |
| Feb-1-2005 |
Method and apparatus for optimizing an executable computer program having address-bridging code segments. Various embodiments are described for optimizing an executable computer program that occupies a... |
| 6820254 |
Method and system for optimizing code using an optimizing coprocessor |
| Nov-16-2004 |
A data processing system includes a central processing unit (CPU) in communication with a system memory. Within the system memory, there is stored legacy code that does not utilize the full features of... |
| 6813764 |
Compiler generation of instruction sequences for unresolved storage references |
| Nov-2-2004 |
A compiler component for the generation of an optimal instruction sequence, the sequence including a compile-time unresolved reference to be resolved at runtime. The compiler generating a snippet list... |
| 6799320 |
Providing binding options for component interfaces |
| Sep-28-2004 |
A proxy component system having dispatch proxies and object proxies is disclosed. The computerized system includes an operating system supporting component interfaces. In addition, the system includes... |
| 6779188 |
Apparatus and method for improved devirtualization of method calls |
| Aug-17-2004 |
Apparatus and methods are provided for improving devirtualization of method calls. The apparatus and methods reduce the amount of processing time used in performing lookups of methods by limiting such... |
| 6772413 |
Method and apparatus of data exchange using runtime code generator and translator |
| Aug-3-2004 |
A high level transformation method and apparatus for converting data formats in the context of network applications, among other places. A flexible transformation mechanism is provided that facilitates... |
| 6760905 |
Lazy compilation of template-generated classes in dynamic compilation execution environments |
| Jul-6-2004 |
Template-generated classes in program code are compiled efficiently through a process of lazy compilation resulting in improved compilation times. Lazy compilation includes the generation of objects representing... |
| 6748589 |
Method for increasing the speed of speculative execution |
| Jun-8-2004 |
A method for increasing the speed of execution by a processor including the steps of selecting a sequence of instructions to optimize, optimizing the sequence of instructions, creating a duplicate of instructions... |
| 6738966 |
Compiling device, computer-readable recording medium on which a compiling program is recorded and a compiling method |
| May-18-2004 |
Formal parameters which are to use registers are replaced with variables generated inside a compiler. Then, if a variable allocated to a register has a live range (lifetime) that includes an inline assembly... |
| 6732356 |
System and method of using partially resolved predicates for elimination of comparison instruction |
| May-4-2004 |
Systems and methods are provided through which compare instructions in computer code are eliminated partially resolving the predicate of the compare instructions. Partially resolved predicates are used... |
| 6718540 |
Data processing system and method for storing data in a communication network |
| Apr-6-2004 |
A data processing system and method for managing the storage of compiled instructions used in interpretive programming language applications is implemented. As the applications are implemented in an interpreted... |
| 6704927 |
Static binding of dynamically-dispatched calls in the presence of dynamic linking and loading |
| Mar-9-2004 |
Techniques for performing static binding of dispatched-calls in the presence of dynamic linking and loading are provided. A method for increasing the execution performance of a function at run-time includes... |
| 6701520 |
Preventing garbage collection of objects in object oriented computer programming languages |
| Mar-2-2004 |
A method to improve object-oriented computer processing by reducing the incidences of object creation and garbage collection. A compiler, preferably of object-oriented language such as Java, identifies... |
| 6687899 |
Relocation format for linking |
| Feb-3-2004 |
An executable program is prepared from a plurality of object code modules, each object code module including special relocations that have a type field for identifying the nature of a function to be implemented... |
| 6687898 |
Optimization of n-base typed arithmetic expressions |
| Feb-3-2004 |
A method for arithmetic expression optimization includes receiving a first instruction defined for a first processor having a first base, the first instruction including an operator and at least one operand,... |
| 6684392 |
Method and apparatus for distinguishing reference values from non-reference values in a runtime environment |
| Jan-27-2004 |
A method and apparatus for distinguishing reference values from non-reference values in a runtime environment is described. A set of volatile registers and a set of non-volatile registers are statically... |
| 6678745 |
Dynamic object synthesis with automatic late binding |
| Jan-13-2004 |
A method and system of automatically synthesizing object names. Variables are synthesized with object types associated with the variables. Buffers into which data is to be transferred are dynamically created... |
| 6658658 |
Implicit forwarding and resolving of a reference made by an importing module to an exporting module for a specified export |
| Dec-2-2003 |
The present system and method improves the way of forwarding a reference from an importing module to an exporting module. The present system and method allow forwarding of a reference(s) through a forwarder... |
| 6634021 |
User controlled relaxation of optimization constraints related to volatile memory references |
| Oct-14-2003 |
A regime of keywords modifying a volatile type-qualifier for use in source code accessing volatile objects via, for example, pointers to volatile memory locations. Each keyword permits corresponding selected... |
| 6631513 |
Methods for laying out memories bidirectionally for object oriented applications |
| Oct-7-2003 |
There is provided a method for laying out objects corresponding to an object-oriented application. The method including the step of determining whether any two given objects have opposing directionalities.... |
| 6629314 |
Management of reuse invalidation buffer for computation reuse |
| Sep-30-2003 |
A mechanism for maintaining reuse invalidation information includes a reuse buffer and a reuse invalidation buffer. The reuse buffer stores multiple instances of the reuse region. Each instance stored... |
| 6615403 |
Compare speculation in software-pipelined loops |
| Sep-2-2003 |
The present invention provides a mechanism for implementing compare speculation in software pipelined loops. A data dependency graph (DDG) is generated for a loop that includes a control compare instruction,... |
| 6611844 |
Method and system for java program storing database object entries in an intermediate form between textual form and an object-oriented form |
| Aug-26-2003 |
A method and system for providing an intelligent intermediate form of an object-oriented database. The intermediate form is derived from a grammatical form of an object-oriented database through the process... |
| 6609248 |
Cross module representation of heterogeneous programs |
| Aug-19-2003 |
An output translator provides for cross module representations of components within a heterogeneous program by translating modifying a platform-neutral intermediate representation (IR) of the program into... |
| 6606742 |
Object-oriented interface for portability to diverse operating systems or hardware platforms |
| Aug-12-2003 |
An object-oriented interface is disclosed for conferring portability for object-oriented programming to diverse operating systems on diverse hardware platforms in a computer system. The object-oriented... |