Sign up


Match Document Document Title
8701097 Partial inlining with software based restart  
A compiler and method of optimizing code by partial inlining of a subset of blocks of called blocks of code into calling blocks of code. A restart of the called blocks of code is provided for the...
8694971 Scalable property-sensitive points-to analysis for program code  
A novel system, computer program product, and method are disclosed for transforming a program to facilitate points-to analysis. The method begins with accessing at least a portion of program code,...
8694973 Abstracting computational instructions to improve performance  
Methods and systems for executing a code stream of non-native binary code on a computing system are disclosed. One method includes parsing the code stream to detect a plurality of elements...
8689199 Optimizing compiler transforms for a high level shader language  
A high level shader language compiler incorporates transforms to optimize shader code for graphics processing hardware. An instruction reordering transform determines instruction encapsulations of...
8689201 Automated diversity using return oriented programming  
A method of automatically creating functionally and structurally diverse equivalent copies of software executables using return oriented programming for the purpose of passing through a filter and...
8689197 Instruction cache  
Disclosed herein is a method of optimizing an executable program to improve instruction cache hit rate when executed on a processor. A method of predicting instruction cache behavior of an...
8689200 Method and system for optimizing an executable program by generating special operations for identical program entities  
A system and method for optimizing the object codes of a computer program is disclosed. The method includes receiving one or more object code units associated with an executable program;...
8683454 Reducing redundancy in source code  
Processing program code can include comparing functions specified in program code to identify a function group including a plurality of matching functions. A generalized function can be generated,...
8677338 Data dependence testing for loop fusion with code replication, array contraction, and loop interchange  
Methods and apparatus to data dependence testing for loop fusion, e.g., with code replication, array contraction, and/or loop interchange, are described. In one embodiment, a compiler may optimize...
8677330 Processors and compiling methods for processors  
A compiling method compiles an object program to be executed by a processor having a plurality of execution units operable in parallel. In the method a first availability chain is created from a...
8677337 Static profitability control for speculative automatic parallelization  
A compilation method and mechanism for parallelizing program code. A method for compilation includes analyzing source code and identifying candidate code for parallelization. Having identified one...
8677316 Enforcement of architectural design during software development  
Architectural design intent for software is represented in some type of concrete form. A set of computable rules are inferred from the representation of the architectural design intent. The rules...
8667600 Trusted computing source code escrow and optimization  
A software installation package includes encrypted source code. An installer receives an encryption key for decrypting the encrypted source code. The installer further causes the establishment of a...
8656381 Presenting machine instructions in a machine-independent tree form suitable for post-link optimizations  
A machine-independent representation of computer instructions can serve as a standard for machine instruction description that is suitable for post-link transformation tools, such as post-link...
8656375 Cross-logical entity accelerators  
A cross-logical entity group is created that includes one or more accelerators to be shared by a plurality of logical entities. Instantiated on the accelerators are functions that are common across...
8656379 Systems and methods for uniquely defining Fortran run time type descriptors for polymorphic entities  
Systems and methods disclosed herein uniquely define each type of Fortran type descriptor within an executable file or shared library to allow for a rapid determination of how the dynamic type of...
8650555 Method for increasing the speed of speculative execution  
A method of code execution by a processor including duplicating a first set of instructions to generate a second set of instructions, modifying the second set of instructions, executing the...
8645933 Method and apparatus for detection and optimization of presumably parallel program regions  
A method and apparatus for optimizing source code for use in a parallel computing environment by compiling an application source code, performing analysis, and optimizing the application source...
8645934 Simultaneous compiler binary optimizations  
The present invention provides a method to optimize object code files produced by a compiler for several different types of target processors. The compiler divides the source code to be compiled...
8645399 Dynamic record blocking  
Dynamic blocking determines which pairs of records in a data set should be examined as potential duplicates. Records are grouped together into blocks by shared properties that are indicators of...
8645931 Moving static elements between a document and an external resource file in a document editor  
Embodiments of the present invention address deficiencies of the art in respect to externally stored static elements for a document in a document editor and provide a method, system and computer...
8640112 Vectorizing combinations of program operations  
System and method for vectorizing combinations of program operations. Program code is received that includes a combination of individually vectorizable program portions that collectively implement...
8635627 Method, medium and apparatus storing and restoring register context for fast context switching between tasks  
A method, medium and apparatus for storing and restoring a register context for a fast context switching between tasks is disclosed. The method, medium and apparatus may improve overall operating...
8635606 Dynamic optimization using a resource cost registry  
Technologies are generally described for runtime optimization adjusted dynamically according to changing costs of one or more system resources. Multicore systems may encounter dynamic variations in...
8627303 Memory optimization of virtual machine code by partitioning extraneous information  
A method, computer program product, and system for memory optimization by partitioning extraneous information from executable virtual machine code or interpreted code. The extraneous information...
8627300 Parallel dynamic optimization  
Technologies are generally described for parallel dynamic optimization using multicore processors. A runtime compiler may be adapted to generate multiple instances of executable code from a...
8615749 Execution control during program code conversion  
An execution control method is described for use in a translator (19) which converts subject code (17) into target code (21). The translator (19) includes a translator trampoline function (191)...
8615750 Optimizing application compiling  
A computer implemented method includes receiving a client programming language input and a server programming language input, processing the client and server programming language inputs, and...
8612958 Program converting apparatus and program conversion method  
A compiler, which corresponds to a recent processor having a multithread function, that enables execution of efficient instruction scheduling and allows a programmer to control the instruction...
8612946 Cross-building support using dependency information  
A mechanism for cross-building support using dependency information is disclosed. A method of the invention includes parsing a source code package received for compilation into a binary source code...
8607210 Code patching for non-volatile memory  
Example embodiments described herein may comprise a transfer of firmware execution within a non-volatile memory device to one or more replacement instructions at least in part in response to a...
8601456 Software transactional protection of managed pointers  
Various technologies and techniques are disclosed that provide software transactional protection of managed pointers. A software transactional memory system interacts with and/or includes a...
8595284 Web application script migration  
In a first embodiment of the present invention, a method is provided comprising: determining if a portion of a script of web application code within a web application is migratable to a remote...
8589900 Runtime code modification in a multi-threaded environment  
A code region forming part of a computer program is modified during execution of the computer program by a plurality of threads. In one aspect, identical modification instructions are provided to...
8589897 System and method for branch extraction obfuscation  
Disclosed herein are systems, methods, and computer readable-media for obfuscating code. The method includes extracting a conditional statement from a computer program, creating a function...
8589884 Method and system for identifying regression test cases for a software  
The present invention provides a method, system and computer program product for identifying regression test cases for a software application by identifying one or more units of functionalities of...
8584111 Runtime code modification in a multi-threaded environment  
A code region forming part of a computer program is modified during execution of the computer program by a plurality of threads. In one aspect, identical modification instructions are provided to...
8578357 Endian conversion tool  
In one embodiment of the invention code (e.g., compiler, tool) may generate information so a first code portion, which includes a pointer value in a first endian format (e.g., big endian), can be...
8572596 Runtime code modification in a multi-threaded environment  
A code region forming part of a computer program is modified during execution of the computer program by a plurality of threads. In one aspect, identical modification instructions are provided to...
8561045 Constructing runtime state for inlined code  
Techniques for processing computer code are disclosed. In one example, an indication that a computer code is to begin execution at a portion of code other than a starting portion of the code is...
8561041 Parallel execution of function calls in a graphical model  
A method, tangible computer-readable medium and apparatus for concurrently executing subsystems in a graphical model is provided. An embodiment can transform a conventional graphical model...
8554807 Incremental class unloading in a region-based garbage collector  
A technique for incrementally unloading classes using a region-based garbage collector is described. One aspect of such a technique includes maintaining a remembered set for a class set. The...
8555267 Performing register allocation of program variables based on priority spills and assignments  
A mechanism for performing register allocation based on priority spills and assignments is disclosed. A method of embodiments of the invention includes repetitively detecting fat points during a...
8549503 Detecting dangling pointers and memory leaks within software  
Dangling pointers and memory leak locations within software are detected. As the software allocates and deallocates memory, lists of pointers referencing the memory, and pointer status, are...
8549506 Resumable methods  
APIs are provided, that are external to a programming language but that provide functionality that can be plugged into a language compiler. The provided APIs tailor functionality associated with...
8549507 Loop coalescing method and loop coalescing device  
A loop coalescing method and a loop coalescing device are disclosed. The loop coalescing method comprises removing an inner-most loop from among nested loops, so that an outer operation provided...
8539467 Method and data processing system for solving resource conflicts in assembler programs  
Embodiments relate to solving conflicts in assembler programs. An aspect includes generating an internal representation of the control flow of the source code of the assembler program, the internal...
8539458 Transforming addressing alignment during code generation  
The present invention extends to methods, systems, and computer program products for changing addressing mode during code generation. Generally, embodiments of the invention use a compiler...
8533665 Generating object annotations  
A computer-implemented method is disclosed for generating Dojo-conforming JavaScript Object Notation (JSON) objects for base objects of an object-oriented programming environment that have been...
8527971 Parallel program generation method  
A method for compiling a source code into a parallel executable form, in which the execution order of the executable is partially undefined. During the compilation process a partial execution order...