diff options
Diffstat (limited to 'src/amd/common')
-rw-r--r-- | src/amd/common/ac_nir_to_llvm.c | 6 | ||||
-rw-r--r-- | src/amd/common/ac_shader_abi.h | 4 |
2 files changed, 10 insertions, 0 deletions
diff --git a/src/amd/common/ac_nir_to_llvm.c b/src/amd/common/ac_nir_to_llvm.c index 42ddebbeef0..cad4adfa03b 100644 --- a/src/amd/common/ac_nir_to_llvm.c +++ b/src/amd/common/ac_nir_to_llvm.c @@ -4369,6 +4369,12 @@ static void visit_intrinsic(struct ac_nir_context *ctx, result = ctx->abi->load_tess_coord(ctx->abi, type, instr->num_components); break; } + case nir_intrinsic_load_tess_level_outer: + result = ctx->abi->load_tess_level(ctx->abi, VARYING_SLOT_TESS_LEVEL_OUTER); + break; + case nir_intrinsic_load_tess_level_inner: + result = ctx->abi->load_tess_level(ctx->abi, VARYING_SLOT_TESS_LEVEL_INNER); + break; case nir_intrinsic_load_patch_vertices_in: result = LLVMConstInt(ctx->ac.i32, ctx->nctx->options->key.tcs.input_vertices, false); break; diff --git a/src/amd/common/ac_shader_abi.h b/src/amd/common/ac_shader_abi.h index 277e4efe47e..e3a47089a52 100644 --- a/src/amd/common/ac_shader_abi.h +++ b/src/amd/common/ac_shader_abi.h @@ -103,6 +103,10 @@ struct ac_shader_abi { LLVMTypeRef type, unsigned num_components); + LLVMValueRef (*load_tess_level)(struct ac_shader_abi *abi, + unsigned varying_id); + + LLVMValueRef (*load_ubo)(struct ac_shader_abi *abi, LLVMValueRef index); /** |