summaryrefslogtreecommitdiff
path: root/backend/src/backend/gen8_context.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'backend/src/backend/gen8_context.cpp')
-rw-r--r--backend/src/backend/gen8_context.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/backend/src/backend/gen8_context.cpp b/backend/src/backend/gen8_context.cpp
index fca4f05d..07f8c479 100644
--- a/backend/src/backend/gen8_context.cpp
+++ b/backend/src/backend/gen8_context.cpp
@@ -84,6 +84,16 @@ namespace gbe
/* Should never come to here, just use the common OPCODE. */
GBE_ASSERT(0);
break;
+ case SEL_OP_UPSAMPLE_LONG:
+ {
+ const GenRegister dst = ra->genReg(insn.dst(0));
+ const GenRegister src0 = ra->genReg(insn.src(0));
+ const GenRegister src1 = ra->genReg(insn.src(1));
+ p->MOV(dst, src0);
+ p->SHL(dst, dst, GenRegister::immud(32));
+ p->ADD(dst, dst, src1);
+ break;
+ }
default:
GenContext::emitBinaryInstruction(insn);
}