From: Ben Skeggs Date: Sat, 6 Jun 2020 23:51:49 +0000 (+1000) Subject: nvir: introduce OP_WARPSYNC X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=ddedfcdf2116396f7630a4604667f946be64c588;p=mesa.git nvir: introduce OP_WARPSYNC Will be required to support SM70. Signed-off-by: Ben Skeggs Reviewed-by: Karol Herbst Part-of: --- diff --git a/src/gallium/drivers/nouveau/codegen/nv50_ir.h b/src/gallium/drivers/nouveau/codegen/nv50_ir.h index a4ade030b00..5b8595c961e 100644 --- a/src/gallium/drivers/nouveau/codegen/nv50_ir.h +++ b/src/gallium/drivers/nouveau/codegen/nv50_ir.h @@ -168,6 +168,7 @@ enum operation OP_SHFL, // warp shuffle OP_VOTE, OP_BUFQ, // buffer query + OP_WARPSYNC, OP_LAST }; diff --git a/src/gallium/drivers/nouveau/codegen/nv50_ir_print.cpp b/src/gallium/drivers/nouveau/codegen/nv50_ir_print.cpp index 74738221080..b85ace15b87 100644 --- a/src/gallium/drivers/nouveau/codegen/nv50_ir_print.cpp +++ b/src/gallium/drivers/nouveau/codegen/nv50_ir_print.cpp @@ -194,6 +194,7 @@ const char *operationStr[OP_LAST + 1] = "shfl", "vote", "bufq", + "warpsync", "(invalid)" }; diff --git a/src/gallium/drivers/nouveau/codegen/nv50_ir_target.cpp b/src/gallium/drivers/nouveau/codegen/nv50_ir_target.cpp index 92ac7101cfc..e801722ec09 100644 --- a/src/gallium/drivers/nouveau/codegen/nv50_ir_target.cpp +++ b/src/gallium/drivers/nouveau/codegen/nv50_ir_target.cpp @@ -58,6 +58,7 @@ const uint8_t Target::operationSrcNr[] = 3, // SHFL 1, // VOTE 1, // BUFQ + 1, // WARPSYNC 0 }; @@ -136,6 +137,8 @@ const OpClass Target::operationClass[] = OPCLASS_OTHER, // BUFQ OPCLASS_OTHER, + // WARPSYNC + OPCLASS_OTHER, OPCLASS_PSEUDO // LAST };