Steven Perron
296f5a75bd
[SPIR-V] Implement sample and sample_clamp intrinsics for HLSL resources ( #177234 )
...
This patch implements the `sample` and `sample_clamp` intrinsics for
HLSL
resources in the SPIR-V backend. It adds the necessary intrinsic
definitions
in `IntrinsicsDirectX.td` and `IntrinsicsSPIRV.td`, and implements the
instruction selection logic in `SPIRVInstructionSelector.cpp`.
Key changes:
- Added `int_dx_resource_sample` and `int_dx_resource_sample_clamp`
intrinsics.
- Added `int_spv_resource_sample` and `int_spv_resource_sample_clamp`
intrinsics.
- Implemented `selectSampleIntrinsic` to handle
`OpImageSampleImplicitLod` generation.
- Added `ResourceDimension` enum in `DXILABI.h` and `HLSLResource.h`.
- Added a new test case
`llvm/test/CodeGen/SPIRV/hlsl-resources/Sample.ll` to verify the
implementation.
2026-01-23 12:21:31 -05:00
..
2026-01-06 13:00:24 +01:00
2026-01-06 13:00:24 +01:00
2026-01-20 21:41:31 -08:00
2026-01-22 15:57:19 +00:00
2026-01-19 12:19:15 -06:00
2025-12-18 19:46:59 +00:00
2026-01-20 10:08:26 -08:00
2026-01-23 12:21:31 -05:00
2025-06-03 09:50:23 -04:00
2026-01-12 18:11:14 +02:00
2026-01-15 07:55:14 -05:00
2026-01-06 13:00:24 +01:00
2026-01-14 00:20:40 -08:00
2026-01-06 13:00:24 +01:00
2025-12-18 19:46:59 +00:00
2025-12-18 19:46:59 +00:00
2025-11-04 12:45:53 +00:00
2026-01-14 17:43:06 +01:00
2025-12-02 13:19:00 +00:00
2026-01-06 13:00:24 +01:00
2025-09-11 15:02:43 +02:00
2026-01-08 15:32:55 +00:00
2025-08-03 22:27:36 +02:00
2025-11-06 10:42:58 +00:00
2025-08-05 15:10:15 +02:00
2026-01-06 13:00:24 +01:00
2025-08-20 13:19:45 +01:00
2026-01-06 13:00:24 +01:00
2025-11-26 09:51:59 -05:00
2026-01-06 13:00:24 +01:00
2025-11-26 09:51:59 -05:00
2025-10-14 23:31:40 -07:00
2026-01-06 13:00:24 +01:00
2026-01-06 13:00:24 +01:00
2026-01-06 13:00:24 +01:00
2025-09-30 16:01:30 +01:00
2026-01-06 13:00:24 +01:00
2026-01-06 13:00:24 +01:00
2026-01-06 13:00:24 +01:00
2026-01-06 13:00:24 +01:00
2025-11-07 01:59:36 +02:00
2025-12-08 11:37:16 +00:00
2025-06-11 20:13:01 +02:00
2025-10-14 23:31:40 -07:00
2025-08-03 22:27:36 +02:00
2025-06-03 09:50:23 -04:00
2025-06-03 09:50:23 -04:00
2026-01-06 13:00:24 +01:00
2026-01-06 13:00:24 +01:00
2025-12-18 19:46:59 +00:00
2026-01-06 13:00:24 +01:00
2025-11-26 09:51:59 -05:00
2025-08-28 09:12:36 -07:00
2025-06-10 14:48:25 +02:00
2026-01-06 13:00:24 +01:00
2026-01-13 23:56:32 +02:00
2025-10-14 23:31:40 -07:00
2025-10-14 23:34:28 -07:00
2026-01-22 13:39:21 +00:00
2025-11-12 08:47:26 +00:00
2026-01-06 13:00:24 +01:00
2025-12-18 19:46:59 +00:00
2025-12-23 11:14:37 +00:00
2026-01-03 21:58:47 -08:00
2026-01-03 21:58:47 -08:00
2026-01-03 21:58:47 -08:00
2026-01-03 21:58:47 -08:00
2025-12-23 11:14:37 +00:00
2025-08-03 21:17:55 +02:00
2025-06-03 09:50:23 -04:00
2025-08-03 22:27:36 +02:00
2026-01-06 13:00:24 +01:00
2026-01-06 13:00:24 +01:00
2026-01-22 13:39:21 +00:00
2026-01-08 11:53:45 +00:00
2025-09-28 16:34:42 -07:00
2026-01-06 13:00:24 +01:00
2025-08-03 21:17:55 +02:00
2026-01-07 16:58:53 +00:00
2026-01-07 16:58:53 +00:00
2026-01-07 16:58:53 +00:00
2026-01-07 16:58:53 +00:00
2026-01-07 16:58:53 +00:00
2026-01-07 16:58:53 +00:00
2026-01-07 16:58:53 +00:00
2026-01-07 16:58:53 +00:00
2026-01-07 16:58:53 +00:00
2026-01-07 16:58:53 +00:00
2026-01-07 16:58:53 +00:00
2026-01-07 16:58:53 +00:00
2026-01-06 13:10:39 +00:00
2026-01-06 13:00:24 +01:00
2025-08-04 10:42:33 +02:00
2026-01-19 12:19:15 -06:00
2025-10-14 09:04:13 +02:00
2025-11-26 09:51:59 -05:00
2025-11-26 09:51:59 -05:00
2026-01-06 13:00:24 +01:00
2025-08-05 15:10:15 +02:00
2026-01-06 13:00:24 +01:00
2025-11-10 11:02:53 +01:00
2025-06-11 20:13:01 +02:00
2025-11-26 09:51:59 -05:00
2025-11-26 09:51:59 -05:00
2025-11-26 09:51:59 -05:00
2025-11-26 09:51:59 -05:00
2025-08-03 22:27:36 +02:00
2026-01-06 13:00:24 +01:00
2026-01-06 13:00:24 +01:00
2026-01-06 13:00:24 +01:00
2026-01-06 13:00:24 +01:00
2026-01-06 13:00:24 +01:00
2026-01-06 13:00:24 +01:00
2025-08-28 09:12:36 -07:00
2026-01-06 13:00:24 +01:00
2026-01-06 13:00:24 +01:00
2026-01-06 13:00:24 +01:00
2025-12-18 19:46:59 +00:00
2026-01-06 13:00:24 +01:00
2026-01-06 13:00:24 +01:00
2025-11-04 17:04:39 +00:00
2026-01-12 10:23:13 +01:00
2026-01-12 10:23:13 +01:00
2026-01-07 16:58:53 +00:00