optimized.hlsl 1.2 KB

123456789101112131415161718192021222324252627
  1. // RUN: %dxc -E main -T vs_6_0 -pack_optimized %s | FileCheck %s
  2. // CHECK: ; Output signature:
  3. // CHECK: ; Name Index Mask Register SysValue Format Used
  4. // CHECK-NEXT: ; -------------------- ----- ------ -------- -------- ------- ------
  5. // CHECK-NEXT: ; First 0 xyz 0 NONE float xyz
  6. // CHECK-NEXT: ; WithFirst 0 w 0 NONE float w
  7. // CHECK-NEXT: ; SV_ClipDistance 1 yz 1 CLIPDST float yz
  8. // CHECK-NEXT: ; SV_CullDistance 0 w 1 CULLDST float w
  9. // CHECK-NEXT: ; BeforeClipCull 0 x 1 NONE float x
  10. // CHECK-NEXT: ; SV_ClipDistance 0 w 2 CLIPDST float w
  11. // CHECK-NEXT: ; SV_CullDistance 1 xyz 2 CULLDST float xyz
  12. struct VS_OUT {
  13. float3 first : First;
  14. float clip0 : SV_ClipDistance0;
  15. float3 cull1 : SV_CullDistance1;
  16. float cull0 : SV_CullDistance0;
  17. float2 clip1 : SV_ClipDistance1;
  18. float withFirst : WithFirst; // packs with First
  19. float afterClipCull : BeforeClipCull; // packed before clip/cull in same row
  20. };
  21. VS_OUT main() {
  22. return (VS_OUT)1.0F;
  23. }