摘要 |
PROBLEM TO BE SOLVED: To provide a framework to integrate control speculative and data speculative into a unified style as an optimizing strategy in the field of compiler optimization. SOLUTION: First of all, the instruction latently speculated and arranged again is detected and the generation of a dependency SDAG is corrected so as to integrate a control speculative edge and data speculative edge directed toward the latently speculated and arranged instruction. Next, the instruction latently speculated and arranged again is scheduled while ignoring safety so that a compiled program including the rearranged speculated instruction can be generated. Next, a special instruction is inserted at the position of a program code originally including the instruction speculated and arranged again and the dependency DAG(directed non-cyclic graph) is corrected so as to express the inserted special instruction. Finally, a recovery block is prepared for correcting an execution error caused by executing the instruction speculated and arranged again, and that block is included in the compiled executable program code. |