mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 09:38:07 +02:00
radeonsi: only touch first three coordinates in si_prepare_cube_coords
Sourcing coords_arg[4] is actually never correct, since bias is handled differently in tex_fetch_args anyway. Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Reviewed-by: Marek Olšák <marek.olsak@amd.com>
This commit is contained in:
parent
9f590ee9d9
commit
0ee1ee5fbb
1 changed files with 1 additions and 12 deletions
|
|
@ -1027,7 +1027,7 @@ void si_prepare_cube_coords(struct lp_build_tgsi_context *bld_base,
|
|||
LLVMBuilderRef builder = gallivm->builder;
|
||||
LLVMTypeRef type = bld_base->base.elem_type;
|
||||
struct cube_selection_coords selcoords;
|
||||
LLVMValueRef coords[4];
|
||||
LLVMValueRef coords[3];
|
||||
LLVMValueRef invma;
|
||||
|
||||
build_cube_intrinsic(gallivm, coords_arg, &selcoords);
|
||||
|
|
@ -1100,16 +1100,5 @@ void si_prepare_cube_coords(struct lp_build_tgsi_context *bld_base,
|
|||
coords_arg[3], lp_build_const_float(gallivm, 8.0), coords[2]);
|
||||
}
|
||||
|
||||
/* Preserve compare/lod/bias. Put it in coords.w. */
|
||||
if (opcode == TGSI_OPCODE_TEX2 ||
|
||||
opcode == TGSI_OPCODE_TXB2 ||
|
||||
opcode == TGSI_OPCODE_TXL2) {
|
||||
coords[3] = coords_arg[4];
|
||||
} else if (opcode == TGSI_OPCODE_TXB ||
|
||||
opcode == TGSI_OPCODE_TXL ||
|
||||
target == TGSI_TEXTURE_SHADOWCUBE) {
|
||||
coords[3] = coords_arg[3];
|
||||
}
|
||||
|
||||
memcpy(coords_arg, coords, sizeof(coords));
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue