summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRuiling Song <ruiling.song@intel.com>2016-04-01 14:53:22 +0800
committerYang Rong <rong.r.yang@intel.com>2016-04-08 15:10:13 +0800
commit402a4d3735aa3b0ffab052a45646b89fdbd6ffbb (patch)
tree47b10d8e11022ded7835bb946821b105dd276b35
parent4cb7764c43914f1505fbebcc61566fb5aa734f1c (diff)
downloadbeignet-402a4d3735aa3b0ffab052a45646b89fdbd6ffbb.tar.gz
GBE: Fix type mismatch bug.
the move instruction should have same type src & dst. Signed-off-by: Ruiling Song <ruiling.song@intel.com> Reviewed-by: Pan Xiuli <xiuli.pan@intel.com>
-rw-r--r--backend/src/llvm/llvm_gen_backend.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/backend/src/llvm/llvm_gen_backend.cpp b/backend/src/llvm/llvm_gen_backend.cpp
index 06d67602..a746d808 100644
--- a/backend/src/llvm/llvm_gen_backend.cpp
+++ b/backend/src/llvm/llvm_gen_backend.cpp
@@ -4309,7 +4309,8 @@ namespace gbe
const ir::Register dst = this->getRegister(&I);
uint32_t stackSize = ctx.getFunction().getStackSize();
if (stackSize == 0) {
- ctx.MOV(ir::TYPE_BOOL, dst, ir::ocl::zero);
+ ir::ImmediateIndex imm = ctx.newImmediate((bool)0);
+ ctx.LOADI(ir::TYPE_BOOL, dst, imm);
} else {
ir::Register cmp0 = ctx.reg(ir::FAMILY_BOOL);
ir::Register cmp1 = ctx.reg(ir::FAMILY_BOOL);