Including loop

CL 717 SC 160
6993757 Method and apparatus for multi-versioning loops to facilitate modulo scheduling
Jan-31-2006 One embodiment of the present invention provides a system that facilitates multi-versioning loops to facilitate modulo scheduling. Upon receiving a computer program, the system analyzes the code to locate...
6993756 Optimization apparatus that decreases delays in pipeline processing of loop and computer-readable storage medium storing optimization program
Jan-31-2006 An optimization apparatus is capable of improving the execution efficiency of a loop that includes a loop carry dependency between consecutive iterations of the loop. For example, a value resulting from...
6988266 Method of transforming variable loops into constant loops
Jan-17-2006 A system and method for processing a variable looping statement into a constant looping statement to enable loop unrolling. A lower bound and an upper bound of the loop index within the variable looping...
6986131 Method and apparatus for efficient code generation for modulo scheduled uncounted loops
Jan-10-2006 A method of efficient code generation for modulo scheduled uncounted loops includes: assigning a given stage predicate to each instruction in each stage, including assigning a given stage predicate to...
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...
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...
6952821 Method and system for memory management optimization
Oct-4-2005 A system and method of automatically configuring memory in a data processing system, including the steps of: receiving source code containing a loop nest, wherein the loop nest includes data arrays with...
6952816 Methods and apparatus for digital circuit design generation
Oct-4-2005 A technique for synthesizing digital circuit designs by incorporating timing convergence and routability considerations. In one aspect, the invention provides a system and programmatic method for generating...
6938249 Compiler apparatus and method for optimizing loops in a computer program
Aug-30-2005 A profile-based loop optimizer generates an execution frequency table for each loop that gives more detailed profile data that allows making a more intelligent decision regarding if and how to optimize...
6928642 Code generation for mapping object fields within nested arrays
Aug-9-2005 A method and device for generating mapping source code to establish mapping connections between enterprise system nested array object fields and legacy system nested array object fields is disclosed. For...
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...
6892380 Method for software pipelining of irregular conditional control loops
May-10-2005 A method for software pipelining of irregular conditional control loops including pre-processing the loops so they can be safely software pipelined. The pre-processing step ensures that each original instruction...
6842895 Single instruction for multiple loops
Jan-11-2005 Embodiments of the present invention relate generally to the manner in which processors execute multiple loop instructions. That is, embodiments of the invention relate to the organization of multiple...
6839895 Method of, system for, and computer program product for providing efficient utilization of memory hierarchy through code restructuring
Jan-4-2005 Code restructuring or reordering based on profiling information and memory hierarchy is provided by constructing a Program Execution Graph (PEG) corresponding to a level of the memory hierarchy, partitioning...
6795908 Method and apparatus for instruction execution in a data processing system
Sep-21-2004 A method for processing scalar and vector executions, where vector executions may be "true" vector operations, CVA, or pseudo-vector operations, PVA. All three types of executions are processed using one...
6772414 Lifetime-sensitive mechanism and method for hoisting invariant computations out of loops in a computer program
Aug-3-2004 A mechanism and method for hoisting invariant computations from loops analyzes the lifetimes of fixed processor resources defined by an instruction, and determines whether a group of computations present...
6721943 Compile-time memory coalescing for dynamic arrays
Apr-13-2004 In general, the malloc-combining transformation optimization during compile-time of a source program engaged in dynamically constructing multi-dimensional arrays provides an effective method of improving...
6708331 Method for automatic parallelization of software
Mar-16-2004 The invention provides a scalable, automated, network friendly method for building parallel applications from embarrassingly parallel serial programs. Briefly, the steps of an exemplary method in this...
6671878 Modulo scheduling via binary search for minimum acceptable initiation interval method and apparatus
Dec-30-2003 Disclosed herein is an instruction set scheduling system for scheduling instruction sets in a pipelined processing system. In particular, the scheduling system includes a binary search technique for ascertaining...
6665864 Method and apparatus for generating code for array range check and method and apparatus for versioning
Dec-16-2003 The present invention eliminates redundant array range checks. A two-phased check is performed, namely a wide range check is performed by combining a plurality of array range checks, and a strict range...
6651246 Loop allocation for optimizing compilers
Nov-18-2003 Loop allocation for optimizing compilers includes the generation of a program dependence graph for a source code segment. Control dependence graph representations of the nested loops, from innermost to...
6634024 Integration of data prefetching and modulo scheduling using postpass prefetch insertion
Oct-14-2003 The present invention integrates data prefetching into a modulo scheduling technique to provide for the generation of assembly code having improved performance. Modulo scheduling can produce optimal steady...
6631465 Method and apparatus for instruction re-alignment using a branch on a falsehood of a qualifying predicate
Oct-7-2003 A method and apparatus that provides instruction re-alignment using a branch on a falsehood of a qualifying predicate. A complementary predicate related to a qualifying predicate is determined to be available....
6622301 Parallel program generating method
Sep-16-2003 When converting a sequential execution source program into a parallel program to be executed by respective processors (nodes) of a distributed shared memory parallel computer, a compiler computer transforms...
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,...
6567976 Method for unrolling two-deep loops with convex bounds and imperfectly nested code, and for unrolling arbitrarily deep nests with constant bounds and imperfectly nested code
May-20-2003 A compiler for compiling source code whereby the compiled source code is optimized by performing outer loop unrolling (a generalization of "unroll and jam" on selected loop nests. The present invention...
6539543 Method and apparatus for compiling source code by flattening hierarchies
Mar-25-2003 A method and apparatus for optimizing the compilation of computer program by exposing parallelism are disclosed. The computer program contains steps which involve index expressions. The program also involves...
6539541 Method of constructing and unrolling speculatively counted loops
Mar-25-2003 A method of constructing and unrolling speculatively counted loops. The method of the present invention first locates a memory load instruction within the loop body of a loop. An advance load instruction...
6507947 Programmatic synthesis of processor element arrays
Jan-14-2003 A programmatic method transforms a nested loop in a high level programming language into a set of parallel processes, each a single time loop, such that the parallel processes satisfy a specified design...
6438747 Programmatic iteration scheduling for parallel processors
Aug-20-2002 A parallel compiler maps iterations of a nested loop to processor elements in a parallel array and schedules a start time for each iteration such that the processor elements are fully utilized without...
6421826 Method and apparatus for performing prefetching at the function level
Jul-16-2002 One embodiment of the present invention provides a system for compiling source code into executable code that performs prefetching for memory operations within regions of code that tend to generate cache...
6415433 Method and system for identifying locations to move portions of the computer program
Jul-2-2002 A method system for optimizing a computer program. In one embodiment, the system identifies depths of blocks of a computer program and identifies the availability of expressions of the computer program....
6367071 Compiler optimization techniques for exploiting a zero overhead loop mechanism
Apr-2-2002 The invention provides compiler loop optimization techniques to take advantage of a zero overhead loop mechanism (ZOLM) in a processor, e.g., a ZOLM in the form of a zero overhead loop buffer (ZOLB). In...
6367070 Means and method for establishing loop-level parallelism
Apr-2-2002 A method for recognizing a parallel executable region within a sequence of source code. The parallel executable region is identified by locating a loop structure within the sequence of source code. The...
6363522 Method and apparatus for handling exceptions as normal control flow
Mar-26-2002 Methods and apparatus for handling exceptions as a part of normal program control flow are disclosed. According to one aspect of the present invention, a method for processing an exception in an object-based...
6363521 Process for processing programs, process for detecting depth of frame associated with specified method, detection method, and computer
Mar-26-2002 The present invention is directed to expanding the scope of execution optimization by method inlining in a language with a security facility such as Java. More particularly, the present invention is directed...
6360360 Object-oriented compiler mechanism for automatically selecting among multiple implementations of objects
Mar-19-2002 In an object-oriented or object-based computer system, a compiler mechanism allows a compiler to automatically select among multiple implementations of an object to optimize the performance of the compiled...
6345384 Optimized program code generator, a method for compiling a source text and a computer-readable medium for a processor capable of operating with a plurality of instruction sets
Feb-5-2002 An improved optimization technique is described for a program code for a processor capable of operating on the basis of either one of a plurality of instruction sets in a computer system. The optimization...
6301706 Compiler method and apparatus for elimination of redundant speculative computations from innermost loops
Oct-9-2001 A method and system for use with VLIW processing architectures for avoiding redundant speculative computations in the compilation of the innermost loops. The method includes identifying a plurality of...
6247173 Computer compiler optimizer for reducing computer resource consumption during dependence analysis after loop unrolling
Jun-12-2001 A method and apparatus for improving the process of determining whether two computer system memory references are exactly dependent. While loop unrolling creates a large number of memory reference pairs...
6226790 Method for selecting optimal parameters for compiling source code
May-1-2001 In a computer system, a method for determining an optimal loop interchange, set of register tiling amount, and cache tiling size for compiling source code into object code. The method first constructs...
6173443 Method of compiling a loop
Jan-9-2001 In a method of compiling, the contents of registers corresponding to data arrays having the same array names but having different indexes in sequence with the progress of a loop prior to loop return are...
6151704 Method for optimizing a loop in a computer program by speculatively removing loads from within the loop
Nov-21-2000 A method for optimizing a loop in a computer program. The loop contains at least a first statement that uses a variable. The method includes inserting a second statement that loads the variable. The second...
6148439 Nested loop data prefetching using inner loop splitting and next outer loop referencing
Nov-14-2000 A nested-loop data prefetching method in which a program is converted so that prefetching is performed effectively even in nested loops in which the loop length of the innermost loops is short and the...
6113650 Compiler for optimization in generating instruction sequence and compiling method
Sep-5-2000 A compiler has optimization processing part which comprise a loop normalization processing part for normalizing a loop structure in an intermediate language program, a subscript expression analyzing part...
6074433 Optimization control apparatus and optimization control method for array descriptions
Jun-13-2000 In order to generate optimum codes for array descriptions having a new language specification, an optimization control apparatus or method for array description executes a function of determining a scope...
6070011 Compiler for performing a loop fusion, dependent upon loop peeling and/or loop reversal
May-30-2000 A compile method employs loop fusion to improve execution of a first loop and a second loop in a code sequence. A compile method initially peels one or more loop iterations from one of the loops to cause...
6064820 Apparatus and method to incrementally update single static assignment (SSA) form
May-16-2000 A method and apparatus for incrementally updating SSA form after loop unrolling. The incremental SSA tool generates a non-ambiguous new name, in SSA form, for each original name defined in a loop and used...
6058266 Method of, system for, and computer program product for performing weighted loop fusion by an optimizing compiler
May-2-2000 An integer programming formulation for weighted loop fusion is presented. Loop fusion is a well-known program transformation that has shown to be effective in reducing loop overhead and improving register...
6055371 Compile device, compile method and recording medium for recording compiler
Apr-25-2000 When an object program including loops with conditional branch instructions is generated, information necessary for generation of an object program including an optimum code for high-efficiency execution...