cb_array_mutate2.hlsl 461 B

12345678910111213141516171819
  1. // RUN: %dxc -E main -T ps_6_0 %s | FileCheck %s
  2. // CHECK:%[[ID:[0-9]+]] = call i32 @dx.op.loadInput
  3. // CHECK:lshr i32 %[[ID]], 1
  4. // CHECK:and i32 %[[ID]], 1
  5. // Make sure only 1 cb load.
  6. // CHECK:call %dx.types.CBufRet.i64 @dx.op.cbufferLoadLegacy.i64
  7. // CHECK-NOT:call %dx.types.CBufRet
  8. cbuffer Pack
  9. {
  10. int64_t2 __packed[16];
  11. };
  12. static int64_t arrayReallyWant[32] = (int64_t[32])__packed;
  13. float main(int i:I) : SV_Target {
  14. return arrayReallyWant[i];
  15. }