switch_float.hlsl 353 B

1234567891011121314151617181920212223242526
  1. // RUN: %dxc -E main -T ps_6_0 %s | FileCheck %s
  2. // CHECK: fptosi float
  3. ByteAddressBuffer A : register(t5);
  4. float main(float3 a : A, int b : B, int N : C) : SV_Target
  5. {
  6. float r = a.z;
  7. switch (a.x) {
  8. case 0:
  9. r += A.Load(a.y);
  10. break;
  11. case 1:
  12. r += A.Load(a.z);
  13. break;
  14. default:
  15. r += 23;
  16. break;
  17. }
  18. return r*3+2;
  19. }