@@ -17,7 +17,7 @@ class CCIfNotInReg<CCAction A> : CCIf<"!ArgFlags.isInReg()", A> {}
1717// Calling convention for SI
1818def CC_SI : CallingConv<[
1919
20- CCIfInReg<CCIfType<[f32, i32] , CCAssignToReg<[
20+ CCIfInReg<CCIfType<[f32, i32, f16 ] , CCAssignToReg<[
2121 SGPR0, SGPR1, SGPR2, SGPR3, SGPR4, SGPR5, SGPR6, SGPR7,
2222 SGPR8, SGPR9, SGPR10, SGPR11, SGPR12, SGPR13, SGPR14, SGPR15,
2323 SGPR16, SGPR17, SGPR18, SGPR19, SGPR20, SGPR21, SGPR22, SGPR23,
@@ -35,7 +35,7 @@ def CC_SI : CallingConv<[
3535 >>>,
3636
3737 // 32*4 + 4 is the minimum for a fetch shader consumer with 32 inputs.
38- CCIfNotInReg<CCIfType<[f32, i32] , CCAssignToReg<[
38+ CCIfNotInReg<CCIfType<[f32, i32, f16 ] , CCAssignToReg<[
3939 VGPR0, VGPR1, VGPR2, VGPR3, VGPR4, VGPR5, VGPR6, VGPR7,
4040 VGPR8, VGPR9, VGPR10, VGPR11, VGPR12, VGPR13, VGPR14, VGPR15,
4141 VGPR16, VGPR17, VGPR18, VGPR19, VGPR20, VGPR21, VGPR22, VGPR23,
@@ -76,7 +76,7 @@ def RetCC_SI : CallingConv<[
7676 ]>>,
7777
7878 // 32*4 + 4 is the minimum for a fetch shader with 32 outputs.
79- CCIfType<[f32] , CCAssignToReg<[
79+ CCIfType<[f32, f16 ] , CCAssignToReg<[
8080 VGPR0, VGPR1, VGPR2, VGPR3, VGPR4, VGPR5, VGPR6, VGPR7,
8181 VGPR8, VGPR9, VGPR10, VGPR11, VGPR12, VGPR13, VGPR14, VGPR15,
8282 VGPR16, VGPR17, VGPR18, VGPR19, VGPR20, VGPR21, VGPR22, VGPR23,
0 commit comments