[Beignet] [PATCH] GBE: don't try to erase a llvm:Constant.

2016-03-06 Thread Ruiling Song
If it is a llvm::Constant, don't add it to erase candidate. The reason I make this change is it cannot cast to llvm::Instruction. I think we still need to make clear whether or not we should delete a constant and how. Signed-off-by: Ruiling Song --- backend/src/llvm/ExpandLargeIntegers.cpp | 4 +

[Beignet] [PATCH] GBE: Fix bug when unspill a long type value from scratch.

2016-03-06 Thread Ruiling Song
the register maybe a stride two register with type UD. So, retype it to long when do unspill. Signed-off-by: Ruiling Song --- backend/src/backend/gen_context.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/backend/src/backend/gen_context.cpp b/backend/src/backend/gen

[Beignet] [PATCH V2] GBE: Fix SEL.bool issue.

2016-03-06 Thread Ruiling Song
the flag register is used by the condition source, we have to store the dst register in GRF. when using this dst, will update from the allocated GRF to flag register. v2: should use ir::FAMILY_BOOL instead of ir::TYPE_BOOL. Signed-off-by: Ruiling Song --- backend/src/backend/gen_reg_allocatio