There are 3 notification can be used by wait, so we should be able to choose which one we'd like to use. Also the 3 reg is n0.0 n0.1 and n0.2 so also change the function name.
Signed-off-by: Pan Xiuli <xiuli....@intel.com> --- backend/src/backend/gen_encoder.cpp | 4 ++-- backend/src/backend/gen_encoder.hpp | 2 +- backend/src/backend/gen_register.hpp | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/backend/src/backend/gen_encoder.cpp b/backend/src/backend/gen_encoder.cpp index b153a2c..1ad4f01 100644 --- a/backend/src/backend/gen_encoder.cpp +++ b/backend/src/backend/gen_encoder.cpp @@ -994,9 +994,9 @@ namespace gbe this->setSrc1(insn, src1); } - void GenEncoder::WAIT(void) { + void GenEncoder::WAIT(uint32_t n) { GenNativeInstruction *insn = this->next(GEN_OPCODE_WAIT); - GenRegister src = GenRegister::notification1(); + GenRegister src = GenRegister::notification0(n); this->setDst(insn, GenRegister::null()); this->setSrc0(insn, src); this->setSrc1(insn, GenRegister::null()); diff --git a/backend/src/backend/gen_encoder.hpp b/backend/src/backend/gen_encoder.hpp index e9945e8..e4f5ff4 100644 --- a/backend/src/backend/gen_encoder.hpp +++ b/backend/src/backend/gen_encoder.hpp @@ -162,7 +162,7 @@ namespace gbe /*! No-op */ void NOP(void); /*! Wait instruction (used for the barrier) */ - void WAIT(void); + void WAIT(uint32_t n = 0); /*! Atomic instructions */ virtual void ATOMIC(GenRegister dst, uint32_t function, GenRegister src, GenRegister bti, uint32_t srcNum); /*! Untyped read (upto 4 channels) */ diff --git a/backend/src/backend/gen_register.hpp b/backend/src/backend/gen_register.hpp index bafff29..4a094a0 100644 --- a/backend/src/backend/gen_register.hpp +++ b/backend/src/backend/gen_register.hpp @@ -809,10 +809,10 @@ namespace gbe GEN_HORIZONTAL_STRIDE_0); } - static INLINE GenRegister notification1(void) { + static INLINE GenRegister notification0(uint32_t subnr) { return GenRegister(GEN_ARCHITECTURE_REGISTER_FILE, GEN_ARF_NOTIFICATION_COUNT, - 0, + subnr, GEN_TYPE_UD, GEN_VERTICAL_STRIDE_0, GEN_WIDTH_1, -- 2.1.4 _______________________________________________ Beignet mailing list Beignet@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/beignet