aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/instructions/group.cpp
diff options
context:
space:
mode:
authorReinUsesLisp <[email protected]>2019-11-02 19:39:41 -0300
committerReinUsesLisp <[email protected]>2019-11-02 19:39:41 -0300
commit9b897c35411353a7578a2102fde53ae6ba0878e5 (patch)
tree33fbc6ba9d3568c859f980f79f424dec939e3c9e /src/instructions/group.cpp
parent3067893923fa74411ae41c15f5c819c95cc8c295 (diff)
downloadsirit-9b897c35411353a7578a2102fde53ae6ba0878e5.tar.gz
sirit-9b897c35411353a7578a2102fde53ae6ba0878e5.zip
Add OpGroupNonUniformShuffleXor
Diffstat (limited to 'src/instructions/group.cpp')
-rw-r--r--src/instructions/group.cpp20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/instructions/group.cpp b/src/instructions/group.cpp
new file mode 100644
index 0000000..4025553
--- /dev/null
+++ b/src/instructions/group.cpp
@@ -0,0 +1,20 @@
+/* This file is part of the sirit project.
+ * Copyright (c) 2019 sirit
+ * This software may be used and distributed according to the terms of the
+ * 3-Clause BSD License
+ */
+
+#include "op.h"
+#include "sirit/sirit.h"
+
+namespace Sirit {
+
+Id Module::OpGroupNonUniformShuffleXor(Id result_type, spv::Scope scope, Id value, Id mask) {
+ auto op = std::make_unique<Op>(spv::Op::OpGroupNonUniformShuffleXor, bound++, result_type);
+ op->Add(static_cast<u32>(scope));
+ op->Add(value);
+ op->Add(mask);
+ return AddCode(std::move(op));
+}
+
+} // namespace Sirit