summaryrefslogtreecommitdiff
path: root/backend/src/backend/gen_context.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'backend/src/backend/gen_context.hpp')
-rw-r--r--backend/src/backend/gen_context.hpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/backend/src/backend/gen_context.hpp b/backend/src/backend/gen_context.hpp
index 150e5ffb..9e7b384b 100644
--- a/backend/src/backend/gen_context.hpp
+++ b/backend/src/backend/gen_context.hpp
@@ -85,6 +85,7 @@ namespace gbe
void addWithCarry(GenRegister dest, GenRegister src0, GenRegister src1);
void subWithBorrow(GenRegister dest, GenRegister src0, GenRegister src1);
+ void I32FullMult(GenRegister high, GenRegister low, GenRegister src0, GenRegister src1);
/*! Final Gen ISA emission helper functions */
void emitLabelInstruction(const SelectionInstruction &insn);
@@ -115,8 +116,10 @@ namespace gbe
void emitSpillRegInstruction(const SelectionInstruction &insn);
void emitUnSpillRegInstruction(const SelectionInstruction &insn);
void emitGetImageInfoInstruction(const SelectionInstruction &insn);
+ void emitI64MULInstruction(const SelectionInstruction &insn);
void scratchWrite(const GenRegister header, uint32_t offset, uint32_t reg_num, uint32_t reg_type, uint32_t channel_mode);
void scratchRead(const GenRegister dst, const GenRegister header, uint32_t offset, uint32_t reg_num, uint32_t reg_type, uint32_t channel_mode);
+
/*! Implements base class */
virtual Kernel *allocateKernel(void);
/*! Store the position of each label instruction in the Gen ISA stream */