diff --git a/include/luisa/xir/instructions/intrinsic.h b/include/luisa/xir/instructions/intrinsic.h index cb0890354..2dfdf0f56 100644 --- a/include/luisa/xir/instructions/intrinsic.h +++ b/include/luisa/xir/instructions/intrinsic.h @@ -208,8 +208,6 @@ enum struct IntrinsicOp { BINDLESS_BUFFER_READ, // (bindless_array, index: uint, elem_index: uint) -> T BINDLESS_BUFFER_WRITE,// (bindless_array, index: uint, elem_index: uint, value: T) -> void BINDLESS_BUFFER_SIZE, // (bindless_array, index: uint, stride: uint) -> size: uint64 - BINDLESS_BUFFER_TYPE, // (bindless_array, index: uint) -> uint64 (type id of the element); the returned value - // could be compared with the value of a TypeIDExpr to examine the type of the buffer BINDLESS_BYTE_BUFFER_READ, // (bindless_array, index: uint, offset_bytes: uint64) -> T BINDLESS_BYTE_BUFFER_WRITE,// (bindless_array, index: uint, offset_bytes: uint64, value: T) -> void diff --git a/src/backends/fallback/fallback_builtin/fallback_device_api_wrappers.cpp b/src/backends/fallback/fallback_builtin/fallback_device_api_wrappers.cpp index 4c7110402..69f4c3fa1 100644 --- a/src/backends/fallback/fallback_builtin/fallback_device_api_wrappers.cpp +++ b/src/backends/fallback/fallback_builtin/fallback_device_api_wrappers.cpp @@ -276,7 +276,6 @@ LUISA_FALLBACK_WRAPPER void luisa_fallback_wrapper_texture3d_size(const TextureV auto texture = bindless_handle->slots[slot_index].tex3d; \ auto sampler = bindless_handle->slots[slot_index]._compressed_buffer_size_sampler_2d_sampler_3d & 0x0fu; - LUISA_FALLBACK_WRAPPER void luisa_fallback_wrapper_bindless_texture2d_sample(const BindlessArrayView *handle, uint slot_index, const float2 *uv, float4 *out) noexcept { LUISA_FALLBACK_BINDLESS_DECODE_TEXTURE2D(handle, slot_index) *out = luisa_fallback_bindless_texture2d_sample(texture, sampler, uv->x, uv->y); diff --git a/src/backends/fallback/fallback_codegen.cpp b/src/backends/fallback/fallback_codegen.cpp index 207e02a1c..b236a4c05 100644 --- a/src/backends/fallback/fallback_codegen.cpp +++ b/src/backends/fallback/fallback_codegen.cpp @@ -2512,7 +2512,6 @@ class FallbackCodegen { case xir::IntrinsicOp::BINDLESS_BUFFER_READ: return _translate_bindless_buffer_read(current, b, inst); case xir::IntrinsicOp::BINDLESS_BUFFER_WRITE: return _translate_bindless_buffer_write(current, b, inst); case xir::IntrinsicOp::BINDLESS_BUFFER_SIZE: return _translate_bindless_buffer_size(current, b, inst); - case xir::IntrinsicOp::BINDLESS_BUFFER_TYPE: break; case xir::IntrinsicOp::BINDLESS_BYTE_BUFFER_READ: return _translate_bindless_buffer_read(current, b, inst, true); case xir::IntrinsicOp::BINDLESS_BYTE_BUFFER_WRITE: return _translate_bindless_buffer_write(current, b, inst, true); case xir::IntrinsicOp::BINDLESS_BYTE_BUFFER_SIZE: return _translate_bindless_buffer_size(current, b, inst, true); diff --git a/src/xir/instructions/intrinsic_name_map.inl.h b/src/xir/instructions/intrinsic_name_map.inl.h index 376bf5096..e2b417e14 100644 --- a/src/xir/instructions/intrinsic_name_map.inl.h +++ b/src/xir/instructions/intrinsic_name_map.inl.h @@ -162,7 +162,6 @@ luisa::string to_string(IntrinsicOp op) noexcept { case IntrinsicOp::BINDLESS_BUFFER_READ: return "bindless_buffer_read"; case IntrinsicOp::BINDLESS_BUFFER_WRITE: return "bindless_buffer_write"; case IntrinsicOp::BINDLESS_BUFFER_SIZE: return "bindless_buffer_size"; - case IntrinsicOp::BINDLESS_BUFFER_TYPE: return "bindless_buffer_type"; case IntrinsicOp::BINDLESS_BYTE_BUFFER_READ: return "bindless_byte_buffer_read"; case IntrinsicOp::BINDLESS_BYTE_BUFFER_WRITE: return "bindless_byte_buffer_write"; case IntrinsicOp::BINDLESS_BYTE_BUFFER_SIZE: return "bindless_byte_buffer_size"; @@ -401,7 +400,6 @@ IntrinsicOp intrinsic_op_from_string(luisa::string_view name) noexcept { {"bindless_buffer_read", IntrinsicOp::BINDLESS_BUFFER_READ}, {"bindless_buffer_write", IntrinsicOp::BINDLESS_BUFFER_WRITE}, {"bindless_buffer_size", IntrinsicOp::BINDLESS_BUFFER_SIZE}, - {"bindless_buffer_type", IntrinsicOp::BINDLESS_BUFFER_TYPE}, {"bindless_byte_buffer_read", IntrinsicOp::BINDLESS_BYTE_BUFFER_READ}, {"bindless_byte_buffer_write", IntrinsicOp::BINDLESS_BYTE_BUFFER_WRITE}, {"bindless_byte_buffer_size", IntrinsicOp::BINDLESS_BYTE_BUFFER_SIZE}, diff --git a/src/xir/translators/ast2xir.cpp b/src/xir/translators/ast2xir.cpp index 33160909e..e0cb440ee 100644 --- a/src/xir/translators/ast2xir.cpp +++ b/src/xir/translators/ast2xir.cpp @@ -575,7 +575,7 @@ class AST2XIRContext { case CallOp::BINDLESS_BUFFER_WRITE: return resource_call(IntrinsicOp::BINDLESS_BUFFER_WRITE); case CallOp::BINDLESS_BYTE_BUFFER_READ: return resource_call(IntrinsicOp::BINDLESS_BYTE_BUFFER_READ); case CallOp::BINDLESS_BUFFER_SIZE: return resource_call(IntrinsicOp::BINDLESS_BUFFER_SIZE); - case CallOp::BINDLESS_BUFFER_TYPE: return resource_call(IntrinsicOp::BINDLESS_BUFFER_TYPE); + case CallOp::BINDLESS_BUFFER_TYPE: LUISA_ERROR_WITH_LOCATION("Removed bindless_buffer_type operation."); case CallOp::BINDLESS_BUFFER_ADDRESS: return resource_call(IntrinsicOp::BINDLESS_BUFFER_DEVICE_ADDRESS); case CallOp::MAKE_BOOL2: return make_vector_call(Type::of(), 2); case CallOp::MAKE_BOOL3: return make_vector_call(Type::of(), 3);