Patents by Inventor William Jon Schmidt

William Jon Schmidt 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: 5960198
    Abstract: Disclosed is a system and method for a profiling system wherein the collection of profile data may be enabled and disabled during the execution of an instrumented computer program. The invention utilizes a dedicated bit in a condition register which is checked each time a block of instrumentation code is to be executed. If the bit is enabled, the instrumentation code is executed and profile data is collected. If the bit is not enabled, then the instrumentation block is skipped and not executed and no profile information is collected. The enabling and disabling of the bit in the condition register may be implemented in hardware, in software, or in a combination of the two.
    Type: Grant
    Filed: March 19, 1997
    Date of Patent: September 28, 1999
    Assignee: International Business Machines Corporation
    Inventors: Robert Ralph Roediger, William Jon Schmidt
  • Patent number: 5950009
    Abstract: An apparatus and several methods provide for a more optimized computer program that will have a faster execution time than was possible using the prior art reordering technique that adds to a trace until it finds no more predecessors or successors to add. The apparatus and methods disclosed herein use a variety of methods to reorder the program portions in a more intelligent manner that will improve its run-time performance. Each of these methods involves constructing traces in the control flow graph of the computer program. In a first embodiment, a basic block is only added to a trace if it is not negligible within predetermined limits. This negligibility test results in traces that are not extended for infrequently executed basic blocks. In a second embodiment, a basic block is only added to a trace if it is a perfect partner with the last basic block added to the trace. The concept of a "perfect partner" helps to match basic blocks together in a trace that have the greatest affinity for each other.
    Type: Grant
    Filed: March 10, 1997
    Date of Patent: September 7, 1999
    Assignee: International Business Machines Coporation
    Inventors: Vita Bortnikov, Bilha Mendelson, Mark Novick, William Jon Schmidt, Inbal Shavit-Lottem
  • Patent number: 5946491
    Abstract: A method and apparatus for minimizing spill code in regions of low register pressure determines the register pressure at various locations in the computer program. When a live range is selected for spilling, spill code is generated to relieve the register pressure in regions of high register pressure, while spill code is avoided in regions of low register pressure. In this manner a minimum amount of spill code is generated, enhancing both the compile time and the run time of the resultant instruction stream.
    Type: Grant
    Filed: June 6, 1996
    Date of Patent: August 31, 1999
    Assignee: International Business Machines Corporation
    Inventors: Nava Arela Aizikowitz, Liviu Asnash, Roy Bar-Haim, Edward Curtis Prosser, Robert Ralph Roediger, William Jon Schmidt
  • Patent number: 5937196
    Abstract: A compiler and method of compiling provide partial redundant copy elimination by eliminating copy statements having at least one eligible reachable use and at least one ineligible reachable use. To eliminate such statements, the used operand of each eligible use is replaced with the used operand in the copy statement, and the copy statement is duplicated prior to each ineligible use.
    Type: Grant
    Filed: September 19, 1997
    Date of Patent: August 10, 1999
    Assignee: International Business Machines Corporation
    Inventors: William Jon Schmidt, Edward Curtis Prosser, Robert Ralph Roediger
  • Patent number: 5857198
    Abstract: Historically, graphics editors, text editors, presentation editors, and word processors provide a number of special processing functions that operate on a presented object as a whole. For word processors, these special functions might include: spelling checks, style (grammar) checks, hyphenation, and pagination. The present invention provides a transparent mechanism for making these special processing functions incremental, in the sense that the mechanisms re-process only those portions of presented objects that have changed since the last time the function was performed.
    Type: Grant
    Filed: July 21, 1997
    Date of Patent: January 5, 1999
    Assignee: International Business Machines Corporation
    Inventor: William Jon Schmidt
  • Patent number: 5774730
    Abstract: A method and apparatus for coloring an interference graph yields a higher number of colored nodes by taking into consideration the colors of neighbors of a node's uncolored constrained neighbors. By assigning a color to a node that is also the color of a neighbor of an uncolored constrained neighbor, one color constraint is removed, increasing the probability of coloring the uncolored constrained neighbor. If more than one of the neighbors of the uncolored constrained neighbors are colored, one of the colors may be selected over the others using an appropriate heuristic.
    Type: Grant
    Filed: July 31, 1995
    Date of Patent: June 30, 1998
    Assignee: International Business Machines Corporation
    Inventors: Nava Arela Aizikowitz, Liviu Asnash, Roy Bar-Haim, Orit Edelstein, Mircea Namolaru, Edward Curtis Prosser, Robert Ralph Roediger, William Jon Schmidt
  • Patent number: 5761514
    Abstract: A method and apparatus for truncating runaway lifetimes of program variables calculates liveness for each variable based on upwardly exposed uses. Reaching definitions are then calculated for at least the program variables that have runaway lifetimes. The liveness information is compared to the reaching definition information to determine whether a variable that is live upon entry to a basic block has a definition that reaches the end of each predecessor block, or has a use within the basic block. If the reaching definition for a variable reaches the beginning of the block and if there is a predecessor block for which there is no reaching definition, the variable has a runaway lifetime. The variable also has a runaway lifetime if there is a use of the variable in a block without a reaching definition for the variable at the beginning of the block. The runaway lifetime is truncated by inserting an instruction such as a pseudo-definition of the variable into the instruction stream at an appropriate place.
    Type: Grant
    Filed: August 31, 1995
    Date of Patent: June 2, 1998
    Assignee: International Business Machines Corporation
    Inventors: Nava Arela Aizikowitz, Roy Bar-Haim, Edward Curtis Prosser, Robert Ralph Roediger, William Jon Schmidt