diff options
Diffstat (limited to 'backend/src/backend/gen_insn_selection.cpp')
-rw-r--r-- | backend/src/backend/gen_insn_selection.cpp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/backend/src/backend/gen_insn_selection.cpp b/backend/src/backend/gen_insn_selection.cpp index 41ef7b85..1a883ead 100644 --- a/backend/src/backend/gen_insn_selection.cpp +++ b/backend/src/backend/gen_insn_selection.cpp @@ -2805,6 +2805,17 @@ extern bool OCL_DEBUGINFO; // first defined by calling BVAR in program.cpp opt_features = SIOF_LOGICAL_SRCMOD; } + SelectionGlk::SelectionGlk(GenContext &ctx) : Selection(ctx) { + this->opaque->setHas32X32Mul(true); + this->opaque->setHasLongType(true); + this->opaque->setLongRegRestrict(true); + this->opaque->setHasDoubleType(true); + this->opaque->setLdMsgOrder(LD_MSG_ORDER_SKL); + this->opaque->setSlowByteGather(false); + this->opaque->setHasHalfType(true); + opt_features = SIOF_LOGICAL_SRCMOD | SIOF_OP_MOV_LONG_REG_RESTRICT; + } + void Selection::Opaque::TYPED_WRITE(GenRegister *msgs, uint32_t msgNum, uint32_t bti, bool is3D) { uint32_t elemID = 0; |