12

Data flow analysis

CL 717 SC 155
7043696 Graphical program system having a single graphical user interface shared by a plurality of graphical programs
May-9-2006 A system and method for executing multiple graphical programs, in which program output from each graphical program is displayed in a single graphical user interface. Program output from a first graphical...
7003760 Method for enhancing pointer analyses
Feb-21-2006 Methods are described that enhance pointer analysis for programs. Whereas previous methods are constrained by the extremes of an inverse relationship between time and information, the present methods selectively...
7000227 Iterative optimizing compiler
Feb-14-2006 An optimizing compiler and method thereof performs a sequence of optimizing changes to an intermediate language representation of a routine, and measures an execution characteristic of each optimization,...
6988263 Apparatus and method for cataloging symbolic data for use in performance analysis of computer programs
Jan-17-2006 An apparatus and method for cataloging symbolic data for use in performance analysis of computer programs is provided. The apparatus and method stores symbolic data for loaded modules during or shortly...
6986130 Methods and apparatus for compiling computer programs using partial function inlining
Jan-10-2006 A method and system makes inlining decisions that are efficient for subprograms that have significantly varying execution times over a range of variables or execution paths. A subprogram of a computer...
6986128 Multiple stage program recompiler and method
Jan-10-2006 A method for dynamic recompilation of source software instructions for execution by a target processor, which considers not only the specific source instructions, but also the intent and purpose of the...
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...
6952817 Generating hardware interfaces for designs specified in a high level language
Oct-4-2005 A method of processing a general-purpose, high level language program to determine a hardware representation of the program can include compiling the general-purpose, high level language program to generate...
6925638 Mutability analysis in Java
Aug-2-2005 A system and method for detecting the mutability of fields and classes in an arbitrary program component written in an object oriented programming language is disclosed. A variable is considered to be...
6922830 Skip list data storage during compilation
Jul-26-2005 A compiler and method of compiling provide enhanced performance by utilizing a skip list data structure to store various properties of a program at points of interest in the procedure, for example, the...
6880154 Alias-free test for dynamic array structures
Apr-12-2005 An apparatus, method, and program product for optimizing code that contains dynamically-allocated memory. The aliasing behavior of internal pointers of dynamically-allocated memory is used to disambiguate...
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...
6820257 Optimized production of hardware from source programs involving multiplications
Nov-16-2004 A method of compiling a source program to produce hardware is provided. The method includes the steps of carrying out data flow analysis of the source program to produce a data flow representation of the...
6820256 System and method for whole-system program analysis
Nov-16-2004 Defect detection in a software system made of multiple computer program programs is facilitated by using information about cross-program interactions and dependency relationships between programs to analyze...
6820253 Method and system for interprocedural analysis with separate compilation
Nov-16-2004 A method and system for interprocedural analysis with separate compilation is disclosed. In one embodiment, the method is applied to a software program having a plurality of separately compilable components....
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...
6745384 Anticipatory optimization with composite folding
Jun-1-2004 A method and system for anticipatory optimization of computer programs. The system generates code for a program that is specified using programming-language-defined computational constructs and user-defined,...
6718541 Register economy heuristic for a cycle driven multiple issue instruction scheduler
Apr-6-2004 A method for scheduling operations utilized by an optimizing compiler to reduce register pressure on a target hardware platform assigns register economy priority (REP) values to each operation in a basic...
6711717 Method and system for compiling circuit designs
Mar-23-2004 The present invention is a programming language method called Pipeline Language 1 (PL1) and its associated compiler system for generating logical circuit designs. The semantics allow the implementation...
6694512 Data processing device, data processing method and supply medium thereof
Feb-17-2004 A data processing device, data processing method and a supply medium thereof for generating machine instructions to allow faster processing. A DAG (Directed Acyclic Graph) is generated from a substitute...
6694310 Data flow plan optimizer
Feb-17-2004 An optimizer for a data transformation system. The optimizer optimizes data flow plans that describe how data is to be transformed from the form it has in a data source to the form required in a data destination....
6675379 Automatic removal of array memory leaks
Jan-6-2004 A method for memory management in execution of a program by a computer having a memory includes identifying in the program an array of array elements. At a given point in the program, a range of the elements...
6675291 Hardware device for parallel processing of any instruction within a set of instructions
Jan-6-2004 Hardware device for parallel processing a determined instruction of a set of instructions having a same format defining operand fields and other data fields, the execution of this determined instruction...
6637026 Instruction reducing predicate copy
Oct-21-2003 When compiling software for a processor that supports predication, an alerting instruction can be inserted to alert a global register allocator to map particular virtual predicates into the same physical...
6634023 Compile method, exception handling method and computer
Oct-14-2003 The present invention enables re-ordering of instructions to be executed while assuring a precise exception. In Java language, an optimization process of re-ordering instructions to be executed is performed...
6609084 Data transfer performance measuring system and method
Aug-19-2003 A system is disclosed for benchmarking data transfers using different transport mechanisms between processes run on various nodes of a network. A central manager component interfaces with a user and reports...
6584611 Critical path optimization--unload hard extended scalar block
Jun-24-2003 A method, implemented in a compiler, of balancing the workload between blocks in a control flow to reduce the overall execution time of control block includes steps for identifying "hard" blocks the consume...
6567975 Method and apparatus for inserting data prefetch operations using data flow analysis
May-20-2003 A software method and apparatus for inserting prefetch operations according to data flow analysis. The invention traverses program code to ascertain memory operations and associated address forming operations,...
6470493 Computer method and apparatus for safe instrumentation of reverse executable program modules
Oct-22-2002 Computer method and apparatus allows instrumentation of program modules while maintaining exception-handling unwinding context. In the case of instrumenting procedure prologues, the invention preserves...
6449713 Implementation of a conditional move instruction in an out-of-order processor
Sep-10-2002 A technique for handling a conditional move instruction in an out-of-order data processor. The technique involves detecting a conditional move instruction within an instruction stream, and generating multiple...
6442751 Determination of local variable type and precision in the presence of subroutines
Aug-27-2002 A method is provided for tracking the type of at least one local variable after calling a subroutine. The exemplary method associates each one of a plurality of branch instructions calling the subroutine...
6412109 Method for optimizing java bytecodes in the presence of try-catch blocks
Jun-25-2002 A method for optimizing bytecode in the presence of try-catch blocks comprises generating an Intermediate Representation of the bytecode, scanning each basic block of the bytecode to identify try blocks,...
6370685 Data-flow method of analyzing definitions and uses of L values in programs
Apr-9-2002 A method for analyzing and optimizing programs that contain pointers or aggregates or both, such as found in the languages C, C++, FORTRAN-90, Ada, and Java is disclosed. The program is represented as...
6317869 Method of run-time tracking of object references in Java programs
Nov-13-2001 Many programming languages utilize reference pointers in computer code. Furthermore, some of these programming languages perform memory management in the form of garbage collection. Once such language...
6301652 Instruction cache alignment mechanism for branch targets based on predicted execution frequencies
Oct-9-2001 A compiler system and method is provided that can 1) generate a second instruction stream from a first instruction stream, 2) read in and process predetermined external information regarding the basic...
6293712 Method and apparatus for constructing a stack unwind data structure
Sep-25-2001 A computer-implemented method of constructing a stack unwind data structure is described. In one embodiment, the method commences when a procedure, which comprises part of the computer program, is compiled....
6289507 Optimization apparatus and computer-readable storage medium storing optimization program
Sep-11-2001 In an optimization apparatus embedded in a compiler apparatus that compiles a high-level language program to a machine language program, equivalence relations among a plurality of expressions are analyzed...
6233733 Method for generating a Java bytecode data flow graph
May-15-2001 According to a first aspect of the present invention, a method for linking bytecodes of an uninterrupted block of bytecodes in the formation of a data flow graph comprises the steps of scanning the uninterrupted...
6226789 Method and apparatus for data flow analysis
May-1-2001 A computer system for executing a binary image conversion system which converts instructions from a instruction set of a first, non native computer system to a second, different, native computer system,...
6219833 Method of using primary and secondary processors
Apr-17-2001 The compilation of source code to a primary and a secondary processor. The method relates to reconfigurable secondary processors, and is especially relevant to secondary processors which can be reconfigured...
6192513 Mechanism for finding spare registers in binary code
Feb-20-2001 The inventive system and method determines the availability of spare registers in binary code for use by an instrument or program by conducting a local search of either the immediate block of program code...
6182284 Method and system for eliminating phi instruction resource interferences and redundant copy instructions from static-single-assignment-form computer code
Jan-30-2001 A method and system for detecting and eliminating interferences between resources in SSA-form .phi.-instructions so that an optimizing compiler can translate optimized SSA-form code back to non-SSA-form...
6151706 Method, system, and computer program product for extending sparse partial redundancy elimination to support speculative code motion within an optimizing compiler
Nov-21-2000 A method, system, and computer program product for performing speculative code motion within a sparse partial redundancy elimination (PRE) framework. Speculative code motion (i.e., speculation) refers...
6139199 Fast just-in-time (JIT) scheduler
Oct-31-2000 A just-in-time (JIT) compiler typically generates code from bytecodes that have a sequence of assembly instructions forming a "template". It has been discovered that a just-in-time (JIT) compiler generates...
6117185 Skip list data storage during compilation
Sep-12-2000 A compiler and method of compiling provide enhanced performance by utilizing a skip list data structure to store various properties of a program at points of interest in the procedure, for example, the...
6102970 System and method for optimizing a program containing a number of the flows through flow branches
Aug-15-2000 A system and method for optimizing a scripting program, such as utilized on a telephone system adapted to place and receive telephone calls includes a selectable script database having stored therein a...
6077313 Type partitioned dataflow analyses
Jun-20-2000 Type partitioned dataflow analyses perform a dataflow analysis of a program by partitioning the dataflow analysis into phases using types to help reduce costs attendant to the dataflow analysis of the...
6072952 Method and apparatus for coalescing variables
Jun-6-2000 A method and apparatus for improving the process of software development by a fast coalescing compiler optimizer tool that operates with one compiler pass. The present invention is a software development...
6035123 Determining hardware complexity of software operations
Mar-7-2000 A new class of general purpose computers called Programmable Reduced Instruction Set Computers (PRISC) use RISC techniques a basis for operation. In addition to the conventional RISC instructions, PRISC...