Patents by Inventor Robert R. Roediger

Robert R. Roediger has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 8701098
    Abstract: A method, apparatus and program product are provided for parallelizing analysis and optimization in a compiler. A plurality of basic blocks and a subset of data points of a computer program is prepared for processing by a main thread selected from a plurality of hardware threads. The plurality of prepared basic blocks and subset of data points are placed in a shared data structure by the main thread. A prepared basic block of the plurality of prepared basic blocks and/or a tuple associated with the subset of data points is concurrently retrieved from the shared data structure by a work thread selected from the plurality of hardware threads. A compiler analysis or optimization is performed on the prepared basic block or tuple by the work thread.
    Type: Grant
    Filed: April 2, 2009
    Date of Patent: April 15, 2014
    Assignee: International Business Machines Corporation
    Inventors: Robert R. Roediger, William J. Schmidt
  • Patent number: 8250551
    Abstract: A method and apparatuses for allowing additional tail call optimizations. The compiler generates both optimized and non-optimized code for tail call candidates. At a later time when there is more information (e.g. regarding program bounds), a decision and a modification to the executable code is made, implementing one of the two earlier codes.
    Type: Grant
    Filed: January 17, 2008
    Date of Patent: August 21, 2012
    Assignee: International Business Machines Corporation
    Inventors: James A. Kryka, Tim C. Muehe, Robert R. Roediger, Roger W. Southwick
  • Publication number: 20100257516
    Abstract: A method, apparatus and program product are provided for parallelizing analysis and optimization in a compiler. A plurality of basic blocks and a subset of data points of a computer program is prepared for processing by a main thread selected from a plurality of hardware threads. The plurality of prepared basic blocks and subset of data points are placed in a shared data structure by the main thread. A prepared basic block of the plurality of prepared basic blocks and/or a tuple associated with the subset of data points is concurrently retrieved from the shared data structure by a work thread selected from the plurality of hardware threads. A compiler analysis or optimization is performed on the prepared basic block or tuple by the work thread.
    Type: Application
    Filed: April 2, 2009
    Publication date: October 7, 2010
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Robert R. Roediger, William J. Schmidt
  • Publication number: 20090187884
    Abstract: A method and apparatuses for allowing additional tail call optimizations. The compiler generates both optimized and non-optimized code for tail call candidates. At a later time when there is more information (e.g. regarding program bounds), a decision and a modification to the executable code is made, implementing one of the two earlier codes.
    Type: Application
    Filed: January 17, 2008
    Publication date: July 23, 2009
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: James A. Kryka, Tim C. Muehe, Robert R. Roediger, Roger W. Southwick
  • Patent number: 5790867
    Abstract: A compiler and method of compiling provide extended redundant copy elimination by eliminating copy statements having provably equivalent data items when it is determined that the defined operand of a copy statement has both a non-uniquely reachable use, and an additional, uniquely reachable use that is also a copy statement.
    Type: Grant
    Filed: January 2, 1996
    Date of Patent: August 4, 1998
    Assignee: International Business Machines Corporation
    Inventors: William J. Schmidt, Robert R. Roediger