发明名称 Scalable decode-time instruction sequence optimization of dependent instructions
摘要 Producer-consumer instructions, comprising a first instruction and a second instruction in program order, are fetched requiring in-order execution, the second instruction is modified by the processor so that the first instruction and second instruction can be completed out-of-order, the modification comprising any one of extending an immediate field of the second instruction using immediate field information of the first instruction or providing a source location of the first instruction as an additional source location to source locations of the second instruction.
申请公布号 US9424036(B2) 申请公布日期 2016.08.23
申请号 US201314055194 申请日期 2013.10.16
申请人 International Business Machines Corporation 发明人 Gschwind Michael K;Salapura Valentina
分类号 G06F9/30;G06F9/38 主分类号 G06F9/30
代理机构 代理人 Kinnaman, Jr. William A.
主权项 1. A computer system for executing dependent machine instructions of an instruction set architecture (ISA) out-of-order, the system comprising: a processor configured to communicate with a main storage, the processor comprising an instruction fetcher, an instruction modifier and one or more execution units, the processor configured to perform a method comprising: fetching for execution, by the processor, a first instruction of the ISA and a second instruction of the ISA; determining out-of-order execution candidacy, by the processor, of the first instruction and the second instruction, wherein the first instruction and second instruction are configured to be executed in-order but are candidates for modification of the second instruction to create a new second instruction to permit its execution out-of-order, the determination comprising determining that the first instruction specifies a target operand location for a target operand and the second instruction specifies a source operand location for a source operand, wherein the first instruction is configured to store a target operand at the target operand location, wherein the source operand location is the same as the target operand location, wherein the second instruction is configured to obtain the source operand at the source operand location; and based on the determining out-of-order execution candidacy, executing, by the processor, the first instruction and the second instruction by executing, by the processor, the first instruction of the ISA and a new second instruction not of the ISA, wherein the new second instruction is not dependent on the target operand of the first instruction.
地址 Armonk NY US