https://github.com/arsenm created 
https://github.com/llvm/llvm-project/pull/205368

Typed image load/store operations with 16-bit elements require d16
support which was introduced in gfx8. They were previously gated only
on image-insts, so they were wrongly accepted on targets that have
images but lack 16-bit support (e.g. gfx700), where the backend then
fails to select.

Co-Authored-By: Claude (Opus 4.8) <[email protected]>

>From 5d02d982de60256c932bfbb8fdbc6973c20d25fc Mon Sep 17 00:00:00 2001
From: Matt Arsenault <[email protected]>
Date: Tue, 23 Jun 2026 17:34:09 +0200
Subject: [PATCH] clang/AMDGPU: Require 16-bit-insts for half typed image
 builtins

Typed image load/store operations with 16-bit elements require d16
support which was introduced in gfx8. They were previously gated only
on image-insts, so they were wrongly accepted on targets that have
images but lack 16-bit support (e.g. gfx700), where the backend then
fails to select.

Co-Authored-By: Claude (Opus 4.8) <[email protected]>
---
 clang/include/clang/Basic/BuiltinsAMDGPU.td   | 48 +++++++--------
 .../builtins-amdgcn-d16-image-16bit-error.c   | 59 +++++++++++++++++++
 2 files changed, 83 insertions(+), 24 deletions(-)
 create mode 100644 clang/test/Sema/builtins-amdgcn-d16-image-16bit-error.c

diff --git a/clang/include/clang/Basic/BuiltinsAMDGPU.td 
b/clang/include/clang/Basic/BuiltinsAMDGPU.td
index 6c4b135c6077b..ab3d91d37a8e2 100644
--- a/clang/include/clang/Basic/BuiltinsAMDGPU.td
+++ b/clang/include/clang/Basic/BuiltinsAMDGPU.td
@@ -1244,61 +1244,61 @@ def __builtin_amdgcn_cooperative_atomic_store_8x16B : 
AMDGPUBuiltin<"void(_ExtVe
 // Image builtins
 
//===----------------------------------------------------------------------===//
 def __builtin_amdgcn_image_load_1d_v4f32_i32 : AMDGPUBuiltin<"_ExtVector<4, 
float>(int, int, __amdgpu_texture_t, int, int)", [Const], "image-insts">;
-def __builtin_amdgcn_image_load_1d_v4f16_i32 : AMDGPUBuiltin<"_ExtVector<4, 
_Float16>(int, int, __amdgpu_texture_t, int, int)", [Const], "image-insts">;
+def __builtin_amdgcn_image_load_1d_v4f16_i32 : AMDGPUBuiltin<"_ExtVector<4, 
_Float16>(int, int, __amdgpu_texture_t, int, int)", [Const], 
"image-insts,16-bit-insts">;
 def __builtin_amdgcn_image_load_1darray_v4f32_i32 : 
AMDGPUBuiltin<"_ExtVector<4, float>(int, int, int, __amdgpu_texture_t, int, 
int)", [Const], "image-insts">;
-def __builtin_amdgcn_image_load_1darray_v4f16_i32 : 
AMDGPUBuiltin<"_ExtVector<4, _Float16>(int, int, int, __amdgpu_texture_t, int, 
int)", [Const], "image-insts">;
+def __builtin_amdgcn_image_load_1darray_v4f16_i32 : 
AMDGPUBuiltin<"_ExtVector<4, _Float16>(int, int, int, __amdgpu_texture_t, int, 
int)", [Const], "image-insts,16-bit-insts">;
 def __builtin_amdgcn_image_load_2d_f32_i32 : AMDGPUBuiltin<"float(int, int, 
int, __amdgpu_texture_t, int, int)", [Const], "image-insts">;
 def __builtin_amdgcn_image_load_2d_v4f32_i32 : AMDGPUBuiltin<"_ExtVector<4, 
float>(int, int, int, __amdgpu_texture_t, int, int)", [Const], "image-insts">;
-def __builtin_amdgcn_image_load_2d_v4f16_i32 : AMDGPUBuiltin<"_ExtVector<4, 
_Float16>(int, int, int, __amdgpu_texture_t, int, int)", [Const], 
"image-insts">;
+def __builtin_amdgcn_image_load_2d_v4f16_i32 : AMDGPUBuiltin<"_ExtVector<4, 
_Float16>(int, int, int, __amdgpu_texture_t, int, int)", [Const], 
"image-insts,16-bit-insts">;
 def __builtin_amdgcn_image_load_2darray_f32_i32 : AMDGPUBuiltin<"float(int, 
int, int, int, __amdgpu_texture_t, int, int)", [Const], "image-insts">;
 def __builtin_amdgcn_image_load_2darray_v4f32_i32 : 
AMDGPUBuiltin<"_ExtVector<4, float>(int, int, int, int, __amdgpu_texture_t, 
int, int)", [Const], "image-insts">;
-def __builtin_amdgcn_image_load_2darray_v4f16_i32 : 
AMDGPUBuiltin<"_ExtVector<4, _Float16>(int, int, int, int, __amdgpu_texture_t, 
int, int)", [Const], "image-insts">;
+def __builtin_amdgcn_image_load_2darray_v4f16_i32 : 
AMDGPUBuiltin<"_ExtVector<4, _Float16>(int, int, int, int, __amdgpu_texture_t, 
int, int)", [Const], "image-insts,16-bit-insts">;
 def __builtin_amdgcn_image_load_3d_v4f32_i32 : AMDGPUBuiltin<"_ExtVector<4, 
float>(int, int, int, int, __amdgpu_texture_t, int, int)", [Const], 
"image-insts">;
-def __builtin_amdgcn_image_load_3d_v4f16_i32 : AMDGPUBuiltin<"_ExtVector<4, 
_Float16>(int, int, int, int, __amdgpu_texture_t, int, int)", [Const], 
"image-insts">;
+def __builtin_amdgcn_image_load_3d_v4f16_i32 : AMDGPUBuiltin<"_ExtVector<4, 
_Float16>(int, int, int, int, __amdgpu_texture_t, int, int)", [Const], 
"image-insts,16-bit-insts">;
 def __builtin_amdgcn_image_load_cube_v4f32_i32 : AMDGPUBuiltin<"_ExtVector<4, 
float>(int, int, int, int, __amdgpu_texture_t, int, int)", [Const], 
"image-insts">;
-def __builtin_amdgcn_image_load_cube_v4f16_i32 : AMDGPUBuiltin<"_ExtVector<4, 
_Float16>(int, int, int, int, __amdgpu_texture_t, int, int)", [Const], 
"image-insts">;
+def __builtin_amdgcn_image_load_cube_v4f16_i32 : AMDGPUBuiltin<"_ExtVector<4, 
_Float16>(int, int, int, int, __amdgpu_texture_t, int, int)", [Const], 
"image-insts,16-bit-insts">;
 def __builtin_amdgcn_image_load_mip_1d_v4f32_i32 : 
AMDGPUBuiltin<"_ExtVector<4, float>(int, int, int, __amdgpu_texture_t, int, 
int)", [Const], "image-insts">;
-def __builtin_amdgcn_image_load_mip_1d_v4f16_i32 : 
AMDGPUBuiltin<"_ExtVector<4, _Float16>(int, int, int, __amdgpu_texture_t, int, 
int)", [Const], "image-insts">;
+def __builtin_amdgcn_image_load_mip_1d_v4f16_i32 : 
AMDGPUBuiltin<"_ExtVector<4, _Float16>(int, int, int, __amdgpu_texture_t, int, 
int)", [Const], "image-insts,16-bit-insts">;
 def __builtin_amdgcn_image_load_mip_1darray_v4f32_i32 : 
AMDGPUBuiltin<"_ExtVector<4, float>(int, int, int, int, __amdgpu_texture_t, 
int, int)", [Const], "image-insts">;
-def __builtin_amdgcn_image_load_mip_1darray_v4f16_i32 : 
AMDGPUBuiltin<"_ExtVector<4, _Float16>(int, int, int, int, __amdgpu_texture_t, 
int, int)", [Const], "image-insts">;
+def __builtin_amdgcn_image_load_mip_1darray_v4f16_i32 : 
AMDGPUBuiltin<"_ExtVector<4, _Float16>(int, int, int, int, __amdgpu_texture_t, 
int, int)", [Const], "image-insts,16-bit-insts">;
 def __builtin_amdgcn_image_load_mip_2d_f32_i32 : AMDGPUBuiltin<"float(int, 
int, int, int, __amdgpu_texture_t, int, int)", [Const], "image-insts">;
 def __builtin_amdgcn_image_load_mip_2d_v4f32_i32 : 
AMDGPUBuiltin<"_ExtVector<4, float>(int, int, int, int, __amdgpu_texture_t, 
int, int)", [Const], "image-insts">;
-def __builtin_amdgcn_image_load_mip_2d_v4f16_i32 : 
AMDGPUBuiltin<"_ExtVector<4, _Float16>(int, int, int, int, __amdgpu_texture_t, 
int, int)", [Const], "image-insts">;
+def __builtin_amdgcn_image_load_mip_2d_v4f16_i32 : 
AMDGPUBuiltin<"_ExtVector<4, _Float16>(int, int, int, int, __amdgpu_texture_t, 
int, int)", [Const], "image-insts,16-bit-insts">;
 def __builtin_amdgcn_image_load_mip_2darray_f32_i32 : 
AMDGPUBuiltin<"float(int, int, int, int, int, __amdgpu_texture_t, int, int)", 
[Const], "image-insts">;
 def __builtin_amdgcn_image_load_mip_2darray_v4f32_i32 : 
AMDGPUBuiltin<"_ExtVector<4, float>(int, int, int, int, int, 
__amdgpu_texture_t, int, int)", [Const], "image-insts">;
-def __builtin_amdgcn_image_load_mip_2darray_v4f16_i32 : 
AMDGPUBuiltin<"_ExtVector<4, _Float16>(int, int, int, int, int, 
__amdgpu_texture_t, int, int)", [Const], "image-insts">;
+def __builtin_amdgcn_image_load_mip_2darray_v4f16_i32 : 
AMDGPUBuiltin<"_ExtVector<4, _Float16>(int, int, int, int, int, 
__amdgpu_texture_t, int, int)", [Const], "image-insts,16-bit-insts">;
 def __builtin_amdgcn_image_load_mip_3d_v4f32_i32 : 
AMDGPUBuiltin<"_ExtVector<4, float>(int, int, int, int, int, 
__amdgpu_texture_t, int, int)", [Const], "image-insts">;
-def __builtin_amdgcn_image_load_mip_3d_v4f16_i32 : 
AMDGPUBuiltin<"_ExtVector<4, _Float16>(int, int, int, int, int, 
__amdgpu_texture_t, int, int)", [Const], "image-insts">;
+def __builtin_amdgcn_image_load_mip_3d_v4f16_i32 : 
AMDGPUBuiltin<"_ExtVector<4, _Float16>(int, int, int, int, int, 
__amdgpu_texture_t, int, int)", [Const], "image-insts,16-bit-insts">;
 def __builtin_amdgcn_image_load_mip_cube_v4f32_i32 : 
AMDGPUBuiltin<"_ExtVector<4, float>(int, int, int, int, int, 
__amdgpu_texture_t, int, int)", [Const], "image-insts">;
-def __builtin_amdgcn_image_load_mip_cube_v4f16_i32 : 
AMDGPUBuiltin<"_ExtVector<4, _Float16>(int, int, int, int, int, 
__amdgpu_texture_t, int, int)", [Const], "image-insts">;
+def __builtin_amdgcn_image_load_mip_cube_v4f16_i32 : 
AMDGPUBuiltin<"_ExtVector<4, _Float16>(int, int, int, int, int, 
__amdgpu_texture_t, int, int)", [Const], "image-insts,16-bit-insts">;
 def __builtin_amdgcn_image_store_1d_v4f32_i32 : 
AMDGPUBuiltin<"void(_ExtVector<4, float>, int, int, __amdgpu_texture_t, int, 
int)", [Const], "image-insts">;
-def __builtin_amdgcn_image_store_1d_v4f16_i32 : 
AMDGPUBuiltin<"void(_ExtVector<4, _Float16>, int, int, __amdgpu_texture_t, int, 
int)", [Const], "image-insts">;
+def __builtin_amdgcn_image_store_1d_v4f16_i32 : 
AMDGPUBuiltin<"void(_ExtVector<4, _Float16>, int, int, __amdgpu_texture_t, int, 
int)", [Const], "image-insts,16-bit-insts">;
 def __builtin_amdgcn_image_store_1darray_v4f32_i32 : 
AMDGPUBuiltin<"void(_ExtVector<4, float>, int, int, int, __amdgpu_texture_t, 
int, int)", [Const], "image-insts">;
-def __builtin_amdgcn_image_store_1darray_v4f16_i32 : 
AMDGPUBuiltin<"void(_ExtVector<4, _Float16>, int, int, int, __amdgpu_texture_t, 
int, int)", [Const], "image-insts">;
+def __builtin_amdgcn_image_store_1darray_v4f16_i32 : 
AMDGPUBuiltin<"void(_ExtVector<4, _Float16>, int, int, int, __amdgpu_texture_t, 
int, int)", [Const], "image-insts,16-bit-insts">;
 def __builtin_amdgcn_image_store_2d_f32_i32 : AMDGPUBuiltin<"void(float, int, 
int, int, __amdgpu_texture_t, int, int)", [Const], "image-insts">;
 def __builtin_amdgcn_image_store_2d_v4f32_i32 : 
AMDGPUBuiltin<"void(_ExtVector<4, float>, int, int, int, __amdgpu_texture_t, 
int, int)", [Const], "image-insts">;
-def __builtin_amdgcn_image_store_2d_v4f16_i32 : 
AMDGPUBuiltin<"void(_ExtVector<4, _Float16>, int, int, int, __amdgpu_texture_t, 
int, int)", [Const], "image-insts">;
+def __builtin_amdgcn_image_store_2d_v4f16_i32 : 
AMDGPUBuiltin<"void(_ExtVector<4, _Float16>, int, int, int, __amdgpu_texture_t, 
int, int)", [Const], "image-insts,16-bit-insts">;
 def __builtin_amdgcn_image_store_2darray_f32_i32 : AMDGPUBuiltin<"void(float, 
int, int, int, int, __amdgpu_texture_t, int, int)", [Const], "image-insts">;
 def __builtin_amdgcn_image_store_2darray_v4f32_i32 : 
AMDGPUBuiltin<"void(_ExtVector<4, float>, int, int, int, int, 
__amdgpu_texture_t, int, int)", [Const], "image-insts">;
-def __builtin_amdgcn_image_store_2darray_v4f16_i32 : 
AMDGPUBuiltin<"void(_ExtVector<4, _Float16>, int, int, int, int, 
__amdgpu_texture_t, int, int)", [Const], "image-insts">;
+def __builtin_amdgcn_image_store_2darray_v4f16_i32 : 
AMDGPUBuiltin<"void(_ExtVector<4, _Float16>, int, int, int, int, 
__amdgpu_texture_t, int, int)", [Const], "image-insts,16-bit-insts">;
 def __builtin_amdgcn_image_store_3d_v4f32_i32 : 
AMDGPUBuiltin<"void(_ExtVector<4, float>, int, int, int, int, 
__amdgpu_texture_t, int, int)", [Const], "image-insts">;
-def __builtin_amdgcn_image_store_3d_v4f16_i32 : 
AMDGPUBuiltin<"void(_ExtVector<4, _Float16>, int, int, int, int, 
__amdgpu_texture_t, int, int)", [Const], "image-insts">;
+def __builtin_amdgcn_image_store_3d_v4f16_i32 : 
AMDGPUBuiltin<"void(_ExtVector<4, _Float16>, int, int, int, int, 
__amdgpu_texture_t, int, int)", [Const], "image-insts,16-bit-insts">;
 def __builtin_amdgcn_image_store_cube_v4f32_i32 : 
AMDGPUBuiltin<"void(_ExtVector<4, float>, int, int, int, int, 
__amdgpu_texture_t, int, int)", [Const], "image-insts">;
-def __builtin_amdgcn_image_store_cube_v4f16_i32 : 
AMDGPUBuiltin<"void(_ExtVector<4, _Float16>, int, int, int, int, 
__amdgpu_texture_t, int, int)", [Const], "image-insts">;
+def __builtin_amdgcn_image_store_cube_v4f16_i32 : 
AMDGPUBuiltin<"void(_ExtVector<4, _Float16>, int, int, int, int, 
__amdgpu_texture_t, int, int)", [Const], "image-insts,16-bit-insts">;
 def __builtin_amdgcn_image_store_mip_1d_v4f32_i32 : 
AMDGPUBuiltin<"void(_ExtVector<4, float>, int, int, int, __amdgpu_texture_t, 
int, int)", [Const], "image-insts">;
-def __builtin_amdgcn_image_store_mip_1d_v4f16_i32 : 
AMDGPUBuiltin<"void(_ExtVector<4, _Float16>, int, int, int, __amdgpu_texture_t, 
int, int)", [Const], "image-insts">;
+def __builtin_amdgcn_image_store_mip_1d_v4f16_i32 : 
AMDGPUBuiltin<"void(_ExtVector<4, _Float16>, int, int, int, __amdgpu_texture_t, 
int, int)", [Const], "image-insts,16-bit-insts">;
 def __builtin_amdgcn_image_store_mip_1darray_v4f32_i32 : 
AMDGPUBuiltin<"void(_ExtVector<4, float>, int, int, int, int, 
__amdgpu_texture_t, int, int)", [Const], "image-insts">;
-def __builtin_amdgcn_image_store_mip_1darray_v4f16_i32 : 
AMDGPUBuiltin<"void(_ExtVector<4, _Float16>, int, int, int, int, 
__amdgpu_texture_t, int, int)", [Const], "image-insts">;
+def __builtin_amdgcn_image_store_mip_1darray_v4f16_i32 : 
AMDGPUBuiltin<"void(_ExtVector<4, _Float16>, int, int, int, int, 
__amdgpu_texture_t, int, int)", [Const], "image-insts,16-bit-insts">;
 def __builtin_amdgcn_image_store_mip_2d_f32_i32 : AMDGPUBuiltin<"void(float, 
int, int, int, int, __amdgpu_texture_t, int, int)", [Const], "image-insts">;
 def __builtin_amdgcn_image_store_mip_2d_v4f32_i32 : 
AMDGPUBuiltin<"void(_ExtVector<4, float>, int, int, int, int, 
__amdgpu_texture_t, int, int)", [Const], "image-insts">;
-def __builtin_amdgcn_image_store_mip_2d_v4f16_i32 : 
AMDGPUBuiltin<"void(_ExtVector<4, _Float16>, int, int, int, int, 
__amdgpu_texture_t, int, int)", [Const], "image-insts">;
+def __builtin_amdgcn_image_store_mip_2d_v4f16_i32 : 
AMDGPUBuiltin<"void(_ExtVector<4, _Float16>, int, int, int, int, 
__amdgpu_texture_t, int, int)", [Const], "image-insts,16-bit-insts">;
 def __builtin_amdgcn_image_store_mip_2darray_f32_i32 : 
AMDGPUBuiltin<"void(float, int, int, int, int, int, __amdgpu_texture_t, int, 
int)", [Const], "image-insts">;
 def __builtin_amdgcn_image_store_mip_2darray_v4f32_i32 : 
AMDGPUBuiltin<"void(_ExtVector<4, float>, int, int, int, int, int, 
__amdgpu_texture_t, int, int)", [Const], "image-insts">;
-def __builtin_amdgcn_image_store_mip_2darray_v4f16_i32 : 
AMDGPUBuiltin<"void(_ExtVector<4, _Float16>, int, int, int, int, int, 
__amdgpu_texture_t, int, int)", [Const], "image-insts">;
+def __builtin_amdgcn_image_store_mip_2darray_v4f16_i32 : 
AMDGPUBuiltin<"void(_ExtVector<4, _Float16>, int, int, int, int, int, 
__amdgpu_texture_t, int, int)", [Const], "image-insts,16-bit-insts">;
 def __builtin_amdgcn_image_store_mip_3d_v4f32_i32 : 
AMDGPUBuiltin<"void(_ExtVector<4, float>, int, int, int, int, int, 
__amdgpu_texture_t, int, int)", [Const], "image-insts">;
-def __builtin_amdgcn_image_store_mip_3d_v4f16_i32 : 
AMDGPUBuiltin<"void(_ExtVector<4, _Float16>, int, int, int, int, int, 
__amdgpu_texture_t, int, int)", [Const], "image-insts">;
+def __builtin_amdgcn_image_store_mip_3d_v4f16_i32 : 
AMDGPUBuiltin<"void(_ExtVector<4, _Float16>, int, int, int, int, int, 
__amdgpu_texture_t, int, int)", [Const], "image-insts,16-bit-insts">;
 def __builtin_amdgcn_image_store_mip_cube_v4f32_i32 : 
AMDGPUBuiltin<"void(_ExtVector<4, float>, int, int, int, int, int, 
__amdgpu_texture_t, int, int)", [Const], "image-insts">;
-def __builtin_amdgcn_image_store_mip_cube_v4f16_i32 : 
AMDGPUBuiltin<"void(_ExtVector<4, _Float16>, int, int, int, int, int, 
__amdgpu_texture_t, int, int)", [Const], "image-insts">;
+def __builtin_amdgcn_image_store_mip_cube_v4f16_i32 : 
AMDGPUBuiltin<"void(_ExtVector<4, _Float16>, int, int, int, int, int, 
__amdgpu_texture_t, int, int)", [Const], "image-insts,16-bit-insts">;
 def __builtin_amdgcn_image_sample_1d_v4f32_f32 : AMDGPUBuiltin<"_ExtVector<4, 
float>(int, float, __amdgpu_texture_t, _ExtVector<4, int>, bool, int, int)", 
[Const], "image-insts">;
 def __builtin_amdgcn_image_sample_1d_v4f16_f32 : AMDGPUBuiltin<"_ExtVector<4, 
_Float16>(int, float, __amdgpu_texture_t, _ExtVector<4, int>, bool, int, int)", 
[Const], "image-insts">;
 def __builtin_amdgcn_image_sample_1darray_v4f32_f32 : 
AMDGPUBuiltin<"_ExtVector<4, float>(int, float, float, __amdgpu_texture_t, 
_ExtVector<4, int>, bool, int, int)", [Const], "image-insts">;
diff --git a/clang/test/Sema/builtins-amdgcn-d16-image-16bit-error.c 
b/clang/test/Sema/builtins-amdgcn-d16-image-16bit-error.c
new file mode 100644
index 0000000000000..9f4f18e572177
--- /dev/null
+++ b/clang/test/Sema/builtins-amdgcn-d16-image-16bit-error.c
@@ -0,0 +1,59 @@
+// REQUIRES: amdgpu-registered-target
+// RUN: %clang_cc1 -triple amdgcn-unknown-unknown -target-cpu gfx700 -verify 
-fsyntax-only %s
+
+// Verify that half typed image intrinsics require 16-bit-insts as well as
+// image-insts.
+
+typedef _Float16 half;
+typedef half half4 __attribute__((ext_vector_type(4)));
+
+void test(half4 v, __amdgpu_texture_t tex) {
+  v = __builtin_amdgcn_image_load_1d_v4f16_i32( // expected-error {{needs 
target feature image-insts,16-bit-insts}}
+      0, 0, tex, 0, 0);
+  v = __builtin_amdgcn_image_load_1darray_v4f16_i32( // expected-error {{needs 
target feature image-insts,16-bit-insts}}
+      0, 0, 0, tex, 0, 0);
+  v = __builtin_amdgcn_image_load_2d_v4f16_i32( // expected-error {{needs 
target feature image-insts,16-bit-insts}}
+      0, 0, 0, tex, 0, 0);
+  v = __builtin_amdgcn_image_load_2darray_v4f16_i32( // expected-error {{needs 
target feature image-insts,16-bit-insts}}
+      0, 0, 0, 0, tex, 0, 0);
+  v = __builtin_amdgcn_image_load_3d_v4f16_i32( // expected-error {{needs 
target feature image-insts,16-bit-insts}}
+      0, 0, 0, 0, tex, 0, 0);
+  v = __builtin_amdgcn_image_load_cube_v4f16_i32( // expected-error {{needs 
target feature image-insts,16-bit-insts}}
+      0, 0, 0, 0, tex, 0, 0);
+  v = __builtin_amdgcn_image_load_mip_1d_v4f16_i32( // expected-error {{needs 
target feature image-insts,16-bit-insts}}
+      0, 0, 0, tex, 0, 0);
+  v = __builtin_amdgcn_image_load_mip_1darray_v4f16_i32( // expected-error 
{{needs target feature image-insts,16-bit-insts}}
+      0, 0, 0, 0, tex, 0, 0);
+  v = __builtin_amdgcn_image_load_mip_2d_v4f16_i32( // expected-error {{needs 
target feature image-insts,16-bit-insts}}
+      0, 0, 0, 0, tex, 0, 0);
+  v = __builtin_amdgcn_image_load_mip_2darray_v4f16_i32( // expected-error 
{{needs target feature image-insts,16-bit-insts}}
+      0, 0, 0, 0, 0, tex, 0, 0);
+  v = __builtin_amdgcn_image_load_mip_3d_v4f16_i32( // expected-error {{needs 
target feature image-insts,16-bit-insts}}
+      0, 0, 0, 0, 0, tex, 0, 0);
+  v = __builtin_amdgcn_image_load_mip_cube_v4f16_i32( // expected-error 
{{needs target feature image-insts,16-bit-insts}}
+      0, 0, 0, 0, 0, tex, 0, 0);
+  __builtin_amdgcn_image_store_1d_v4f16_i32( // expected-error {{needs target 
feature image-insts,16-bit-insts}}
+      v, 0, 0, tex, 0, 0);
+  __builtin_amdgcn_image_store_1darray_v4f16_i32( // expected-error {{needs 
target feature image-insts,16-bit-insts}}
+      v, 0, 0, 0, tex, 0, 0);
+  __builtin_amdgcn_image_store_2d_v4f16_i32( // expected-error {{needs target 
feature image-insts,16-bit-insts}}
+      v, 0, 0, 0, tex, 0, 0);
+  __builtin_amdgcn_image_store_2darray_v4f16_i32( // expected-error {{needs 
target feature image-insts,16-bit-insts}}
+      v, 0, 0, 0, 0, tex, 0, 0);
+  __builtin_amdgcn_image_store_3d_v4f16_i32( // expected-error {{needs target 
feature image-insts,16-bit-insts}}
+      v, 0, 0, 0, 0, tex, 0, 0);
+  __builtin_amdgcn_image_store_cube_v4f16_i32( // expected-error {{needs 
target feature image-insts,16-bit-insts}}
+      v, 0, 0, 0, 0, tex, 0, 0);
+  __builtin_amdgcn_image_store_mip_1d_v4f16_i32( // expected-error {{needs 
target feature image-insts,16-bit-insts}}
+      v, 0, 0, 0, tex, 0, 0);
+  __builtin_amdgcn_image_store_mip_1darray_v4f16_i32( // expected-error 
{{needs target feature image-insts,16-bit-insts}}
+      v, 0, 0, 0, 0, tex, 0, 0);
+  __builtin_amdgcn_image_store_mip_2d_v4f16_i32( // expected-error {{needs 
target feature image-insts,16-bit-insts}}
+      v, 0, 0, 0, 0, tex, 0, 0);
+  __builtin_amdgcn_image_store_mip_2darray_v4f16_i32( // expected-error 
{{needs target feature image-insts,16-bit-insts}}
+      v, 0, 0, 0, 0, 0, tex, 0, 0);
+  __builtin_amdgcn_image_store_mip_3d_v4f16_i32( // expected-error {{needs 
target feature image-insts,16-bit-insts}}
+      v, 0, 0, 0, 0, 0, tex, 0, 0);
+  __builtin_amdgcn_image_store_mip_cube_v4f16_i32( // expected-error {{needs 
target feature image-insts,16-bit-insts}}
+      v, 0, 0, 0, 0, 0, tex, 0, 0);
+}

_______________________________________________
llvm-branch-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

Reply via email to