R600/SI: Fix schedule model for v_div_scale_{f32|f64}
[oota-llvm.git] / lib / Target / R600 / SIInstructions.td
index 9ec79945b7a37d56749851ab64fcde900446d114..032d6c2abfcffc18cfd5cd9b8bdd60095a1a593a 100644 (file)
@@ -1735,9 +1735,11 @@ defm V_MUL_HI_I32 : VOP3Inst <vop3<0x16c, 0x287>, "v_mul_hi_i32",
 
 } // isCommutable = 1, SchedRW = [WriteQuarterRate32]
 
+let SchedRW = [WriteFloatFMA, WriteSALU] in {
 defm V_DIV_SCALE_F32 : VOP3b_32 <vop3<0x16d, 0x1e0>, "v_div_scale_f32", []>;
+}
 
-let SchedRW = [WriteDouble] in {
+let SchedRW = [WriteDouble, WriteSALU] in {
 // Double precision division pre-scale.
 defm V_DIV_SCALE_F64 : VOP3b_64 <vop3<0x16e, 0x1e1>, "v_div_scale_f64", []>;
 } // let SchedRW = [WriteDouble]