指令调度（instruction scheduling）是一种代码优化手段，常见于优化编译器，其主要功能在于通过加强指令层级的并行运行，使得程序在拥有指令流水线的中央处理器上能够高效运行。换句话说，此手段力求以不改变程序运算结果的方式，完成以下任务：其中流水线停顿主要由结构型冒险（受处理器的资源所限）、数据型冒险以及控制流型冒险导致。
数据型冒险.指令调度一般在某基础块（basic block）上执行。为了确保指令的运行顺序在重组后，其运算结果依旧不变，编译器的开发者们必须要认