From 08da927a2831c304478d3aa2bbefe882c11c61f5 Mon Sep 17 00:00:00 2001 From: Helena Kotas Date: Mon, 4 Aug 2025 14:14:08 -0700 Subject: [PATCH] [HLSL][NFC] Move all resource tests under CodeGenHLSL\resources Also removes an outdated test buffer-array-operator.hlsl. Array operator on resources is tested in StructuredBuffers-subscripts.hlsl and RWBuffer-subscript.hlsl. --- .../CodeGenHLSL/buffer-array-operator.hlsl | 33 ------------------- .../AppendStructuredBuffer-elementtype.hlsl | 0 .../ByteAddressBuffers-constructors.hlsl | 0 .../ConsumeStructuredBuffer-elementtype.hlsl | 0 .../RWBuffer-constructor-opt.hlsl | 0 .../RWBuffer-constructor.hlsl | 0 .../RWBuffer-elementtype.hlsl | 0 .../RWBuffer-subscript.hlsl | 0 .../RWStructuredBuffer-elementtype.hlsl | 0 ...erOrderedStructuredBuffer-elementtype.hlsl | 0 .../StructuredBuffer-elementtype.hlsl | 0 .../StructuredBuffers-constructors.hlsl | 0 .../StructuredBuffers-methods-lib.hlsl | 0 .../StructuredBuffers-methods-ps.hlsl | 0 .../StructuredBuffers-subscripts.hlsl | 0 .../CodeGenHLSL/{ => resources}/cbuffer.hlsl | 0 .../{ => resources}/cbuffer_align.hlsl | 0 .../cbuffer_and_namespaces.hlsl | 0 .../cbuffer_with_packoffset.hlsl | 0 ...uffer_with_static_global_and_function.hlsl | 0 .../{ => resources}/default_cbuffer.hlsl | 0 .../default_cbuffer_with_layout.hlsl | 0 .../{ => resources}/resource-bindings.hlsl | 0 23 files changed, 33 deletions(-) delete mode 100644 clang/test/CodeGenHLSL/buffer-array-operator.hlsl rename clang/test/CodeGenHLSL/{builtins => resources}/AppendStructuredBuffer-elementtype.hlsl (100%) rename clang/test/CodeGenHLSL/{builtins => resources}/ByteAddressBuffers-constructors.hlsl (100%) rename clang/test/CodeGenHLSL/{builtins => resources}/ConsumeStructuredBuffer-elementtype.hlsl (100%) rename clang/test/CodeGenHLSL/{builtins => resources}/RWBuffer-constructor-opt.hlsl (100%) rename clang/test/CodeGenHLSL/{builtins => resources}/RWBuffer-constructor.hlsl (100%) rename clang/test/CodeGenHLSL/{builtins => resources}/RWBuffer-elementtype.hlsl (100%) rename clang/test/CodeGenHLSL/{builtins => resources}/RWBuffer-subscript.hlsl (100%) rename clang/test/CodeGenHLSL/{builtins => resources}/RWStructuredBuffer-elementtype.hlsl (100%) rename clang/test/CodeGenHLSL/{builtins => resources}/RasterizerOrderedStructuredBuffer-elementtype.hlsl (100%) rename clang/test/CodeGenHLSL/{builtins => resources}/StructuredBuffer-elementtype.hlsl (100%) rename clang/test/CodeGenHLSL/{builtins => resources}/StructuredBuffers-constructors.hlsl (100%) rename clang/test/CodeGenHLSL/{builtins => resources}/StructuredBuffers-methods-lib.hlsl (100%) rename clang/test/CodeGenHLSL/{builtins => resources}/StructuredBuffers-methods-ps.hlsl (100%) rename clang/test/CodeGenHLSL/{builtins => resources}/StructuredBuffers-subscripts.hlsl (100%) rename clang/test/CodeGenHLSL/{ => resources}/cbuffer.hlsl (100%) rename clang/test/CodeGenHLSL/{ => resources}/cbuffer_align.hlsl (100%) rename clang/test/CodeGenHLSL/{ => resources}/cbuffer_and_namespaces.hlsl (100%) rename clang/test/CodeGenHLSL/{ => resources}/cbuffer_with_packoffset.hlsl (100%) rename clang/test/CodeGenHLSL/{ => resources}/cbuffer_with_static_global_and_function.hlsl (100%) rename clang/test/CodeGenHLSL/{ => resources}/default_cbuffer.hlsl (100%) rename clang/test/CodeGenHLSL/{ => resources}/default_cbuffer_with_layout.hlsl (100%) rename clang/test/CodeGenHLSL/{ => resources}/resource-bindings.hlsl (100%) diff --git a/clang/test/CodeGenHLSL/buffer-array-operator.hlsl b/clang/test/CodeGenHLSL/buffer-array-operator.hlsl deleted file mode 100644 index f65cdbb43e27b..0000000000000 --- a/clang/test/CodeGenHLSL/buffer-array-operator.hlsl +++ /dev/null @@ -1,33 +0,0 @@ -// RUN: %clang_cc1 -triple dxil-pc-shadermodel6.3-library -x hlsl -emit-llvm -disable-llvm-passes -o - %s | FileCheck %s - -// XFAIL: * -// Resource indexing will be properly implemented in llvm/llvm-project#95956 - -const RWBuffer In; -RWBuffer Out; - -void fn(int Idx) { - Out[Idx] = In[Idx]; -} - -// This test is intended to verify reasonable code generation of the subscript -// operator. In this test case we should be generating both the const and -// non-const operators so we verify both cases. - -// Non-const comes first. -// CHECK: ptr @"??A?$RWBuffer@M@hlsl@@QBAAAMI@Z" -// CHECK: %this1 = load ptr, ptr %this.addr, align 4 -// CHECK-NEXT: %h = getelementptr inbounds nuw %"class.hlsl::RWBuffer", ptr %this1, i32 0, i32 0 -// CHECK-NEXT: %0 = load ptr, ptr %h, align 4 -// CHECK-NEXT: %1 = load i32, ptr %Idx.addr, align 4 -// CHECK-NEXT: %arrayidx = getelementptr inbounds nuw float, ptr %0, i32 %1 -// CHECK-NEXT: ret ptr %arrayidx - -// Const comes next, and returns the pointer instead of the value. -// CHECK: ptr @"??A?$RWBuffer@M@hlsl@@QAAAAMI@Z" -// CHECK: %this1 = load ptr, ptr %this.addr, align 4 -// CHECK-NEXT: %h = getelementptr inbounds nuw %"class.hlsl::RWBuffer", ptr %this1, i32 0, i32 0 -// CHECK-NEXT: %0 = load ptr, ptr %h, align 4 -// CHECK-NEXT: %1 = load i32, ptr %Idx.addr, align 4 -// CHECK-NEXT: %arrayidx = getelementptr inbounds nuw float, ptr %0, i32 %1 -// CHECK-NEXT: ret ptr %arrayidx diff --git a/clang/test/CodeGenHLSL/builtins/AppendStructuredBuffer-elementtype.hlsl b/clang/test/CodeGenHLSL/resources/AppendStructuredBuffer-elementtype.hlsl similarity index 100% rename from clang/test/CodeGenHLSL/builtins/AppendStructuredBuffer-elementtype.hlsl rename to clang/test/CodeGenHLSL/resources/AppendStructuredBuffer-elementtype.hlsl diff --git a/clang/test/CodeGenHLSL/builtins/ByteAddressBuffers-constructors.hlsl b/clang/test/CodeGenHLSL/resources/ByteAddressBuffers-constructors.hlsl similarity index 100% rename from clang/test/CodeGenHLSL/builtins/ByteAddressBuffers-constructors.hlsl rename to clang/test/CodeGenHLSL/resources/ByteAddressBuffers-constructors.hlsl diff --git a/clang/test/CodeGenHLSL/builtins/ConsumeStructuredBuffer-elementtype.hlsl b/clang/test/CodeGenHLSL/resources/ConsumeStructuredBuffer-elementtype.hlsl similarity index 100% rename from clang/test/CodeGenHLSL/builtins/ConsumeStructuredBuffer-elementtype.hlsl rename to clang/test/CodeGenHLSL/resources/ConsumeStructuredBuffer-elementtype.hlsl diff --git a/clang/test/CodeGenHLSL/builtins/RWBuffer-constructor-opt.hlsl b/clang/test/CodeGenHLSL/resources/RWBuffer-constructor-opt.hlsl similarity index 100% rename from clang/test/CodeGenHLSL/builtins/RWBuffer-constructor-opt.hlsl rename to clang/test/CodeGenHLSL/resources/RWBuffer-constructor-opt.hlsl diff --git a/clang/test/CodeGenHLSL/builtins/RWBuffer-constructor.hlsl b/clang/test/CodeGenHLSL/resources/RWBuffer-constructor.hlsl similarity index 100% rename from clang/test/CodeGenHLSL/builtins/RWBuffer-constructor.hlsl rename to clang/test/CodeGenHLSL/resources/RWBuffer-constructor.hlsl diff --git a/clang/test/CodeGenHLSL/builtins/RWBuffer-elementtype.hlsl b/clang/test/CodeGenHLSL/resources/RWBuffer-elementtype.hlsl similarity index 100% rename from clang/test/CodeGenHLSL/builtins/RWBuffer-elementtype.hlsl rename to clang/test/CodeGenHLSL/resources/RWBuffer-elementtype.hlsl diff --git a/clang/test/CodeGenHLSL/builtins/RWBuffer-subscript.hlsl b/clang/test/CodeGenHLSL/resources/RWBuffer-subscript.hlsl similarity index 100% rename from clang/test/CodeGenHLSL/builtins/RWBuffer-subscript.hlsl rename to clang/test/CodeGenHLSL/resources/RWBuffer-subscript.hlsl diff --git a/clang/test/CodeGenHLSL/builtins/RWStructuredBuffer-elementtype.hlsl b/clang/test/CodeGenHLSL/resources/RWStructuredBuffer-elementtype.hlsl similarity index 100% rename from clang/test/CodeGenHLSL/builtins/RWStructuredBuffer-elementtype.hlsl rename to clang/test/CodeGenHLSL/resources/RWStructuredBuffer-elementtype.hlsl diff --git a/clang/test/CodeGenHLSL/builtins/RasterizerOrderedStructuredBuffer-elementtype.hlsl b/clang/test/CodeGenHLSL/resources/RasterizerOrderedStructuredBuffer-elementtype.hlsl similarity index 100% rename from clang/test/CodeGenHLSL/builtins/RasterizerOrderedStructuredBuffer-elementtype.hlsl rename to clang/test/CodeGenHLSL/resources/RasterizerOrderedStructuredBuffer-elementtype.hlsl diff --git a/clang/test/CodeGenHLSL/builtins/StructuredBuffer-elementtype.hlsl b/clang/test/CodeGenHLSL/resources/StructuredBuffer-elementtype.hlsl similarity index 100% rename from clang/test/CodeGenHLSL/builtins/StructuredBuffer-elementtype.hlsl rename to clang/test/CodeGenHLSL/resources/StructuredBuffer-elementtype.hlsl diff --git a/clang/test/CodeGenHLSL/builtins/StructuredBuffers-constructors.hlsl b/clang/test/CodeGenHLSL/resources/StructuredBuffers-constructors.hlsl similarity index 100% rename from clang/test/CodeGenHLSL/builtins/StructuredBuffers-constructors.hlsl rename to clang/test/CodeGenHLSL/resources/StructuredBuffers-constructors.hlsl diff --git a/clang/test/CodeGenHLSL/builtins/StructuredBuffers-methods-lib.hlsl b/clang/test/CodeGenHLSL/resources/StructuredBuffers-methods-lib.hlsl similarity index 100% rename from clang/test/CodeGenHLSL/builtins/StructuredBuffers-methods-lib.hlsl rename to clang/test/CodeGenHLSL/resources/StructuredBuffers-methods-lib.hlsl diff --git a/clang/test/CodeGenHLSL/builtins/StructuredBuffers-methods-ps.hlsl b/clang/test/CodeGenHLSL/resources/StructuredBuffers-methods-ps.hlsl similarity index 100% rename from clang/test/CodeGenHLSL/builtins/StructuredBuffers-methods-ps.hlsl rename to clang/test/CodeGenHLSL/resources/StructuredBuffers-methods-ps.hlsl diff --git a/clang/test/CodeGenHLSL/builtins/StructuredBuffers-subscripts.hlsl b/clang/test/CodeGenHLSL/resources/StructuredBuffers-subscripts.hlsl similarity index 100% rename from clang/test/CodeGenHLSL/builtins/StructuredBuffers-subscripts.hlsl rename to clang/test/CodeGenHLSL/resources/StructuredBuffers-subscripts.hlsl diff --git a/clang/test/CodeGenHLSL/cbuffer.hlsl b/clang/test/CodeGenHLSL/resources/cbuffer.hlsl similarity index 100% rename from clang/test/CodeGenHLSL/cbuffer.hlsl rename to clang/test/CodeGenHLSL/resources/cbuffer.hlsl diff --git a/clang/test/CodeGenHLSL/cbuffer_align.hlsl b/clang/test/CodeGenHLSL/resources/cbuffer_align.hlsl similarity index 100% rename from clang/test/CodeGenHLSL/cbuffer_align.hlsl rename to clang/test/CodeGenHLSL/resources/cbuffer_align.hlsl diff --git a/clang/test/CodeGenHLSL/cbuffer_and_namespaces.hlsl b/clang/test/CodeGenHLSL/resources/cbuffer_and_namespaces.hlsl similarity index 100% rename from clang/test/CodeGenHLSL/cbuffer_and_namespaces.hlsl rename to clang/test/CodeGenHLSL/resources/cbuffer_and_namespaces.hlsl diff --git a/clang/test/CodeGenHLSL/cbuffer_with_packoffset.hlsl b/clang/test/CodeGenHLSL/resources/cbuffer_with_packoffset.hlsl similarity index 100% rename from clang/test/CodeGenHLSL/cbuffer_with_packoffset.hlsl rename to clang/test/CodeGenHLSL/resources/cbuffer_with_packoffset.hlsl diff --git a/clang/test/CodeGenHLSL/cbuffer_with_static_global_and_function.hlsl b/clang/test/CodeGenHLSL/resources/cbuffer_with_static_global_and_function.hlsl similarity index 100% rename from clang/test/CodeGenHLSL/cbuffer_with_static_global_and_function.hlsl rename to clang/test/CodeGenHLSL/resources/cbuffer_with_static_global_and_function.hlsl diff --git a/clang/test/CodeGenHLSL/default_cbuffer.hlsl b/clang/test/CodeGenHLSL/resources/default_cbuffer.hlsl similarity index 100% rename from clang/test/CodeGenHLSL/default_cbuffer.hlsl rename to clang/test/CodeGenHLSL/resources/default_cbuffer.hlsl diff --git a/clang/test/CodeGenHLSL/default_cbuffer_with_layout.hlsl b/clang/test/CodeGenHLSL/resources/default_cbuffer_with_layout.hlsl similarity index 100% rename from clang/test/CodeGenHLSL/default_cbuffer_with_layout.hlsl rename to clang/test/CodeGenHLSL/resources/default_cbuffer_with_layout.hlsl diff --git a/clang/test/CodeGenHLSL/resource-bindings.hlsl b/clang/test/CodeGenHLSL/resources/resource-bindings.hlsl similarity index 100% rename from clang/test/CodeGenHLSL/resource-bindings.hlsl rename to clang/test/CodeGenHLSL/resources/resource-bindings.hlsl