summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/virgl/virgl_tgsi.c
diff options
context:
space:
mode:
authorDave Airlie <[email protected]>2017-07-28 11:04:35 +1000
committerDave Airlie <[email protected]>2017-07-28 11:04:35 +1000
commit554aa094406f3f5a935c4adbe77569cc9beb4312 (patch)
treed827b15dc64b144b2dc71986f6d3126945a9e211 /src/gallium/drivers/virgl/virgl_tgsi.c
parent7257c171e9eadc05903140cffa26a253f0d0178a (diff)
virgl: drop precise modifier.
The host doesn't understand this yet, so drop it for now. Fixes: virgl regressions. Fixes: af22adee4f (tgsi: add precise flag to tgsi_instruction) Signed-off-by: Dave Airlie <[email protected]>
Diffstat (limited to 'src/gallium/drivers/virgl/virgl_tgsi.c')
-rw-r--r--src/gallium/drivers/virgl/virgl_tgsi.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/gallium/drivers/virgl/virgl_tgsi.c b/src/gallium/drivers/virgl/virgl_tgsi.c
index 4a2271f24f4..7ad1cbdb886 100644
--- a/src/gallium/drivers/virgl/virgl_tgsi.c
+++ b/src/gallium/drivers/virgl/virgl_tgsi.c
@@ -48,6 +48,15 @@ virgl_tgsi_transform_property(struct tgsi_transform_context *ctx,
}
}
+static void
+virgl_tgsi_transform_instruction(struct tgsi_transform_context *ctx,
+ struct tgsi_full_instruction *inst)
+{
+ if (inst->Instruction.Precise)
+ inst->Instruction.Precise = 0;
+ ctx->emit_instruction(ctx, inst);
+}
+
struct tgsi_token *virgl_tgsi_transform(const struct tgsi_token *tokens_in)
{
@@ -61,6 +70,7 @@ struct tgsi_token *virgl_tgsi_transform(const struct tgsi_token *tokens_in)
memset(&transform, 0, sizeof(transform));
transform.base.transform_property = virgl_tgsi_transform_property;
+ transform.base.transform_instruction = virgl_tgsi_transform_instruction;
tgsi_transform_shader(tokens_in, new_tokens, newLen, &transform.base);
return new_tokens;