[Beignet] [PATCH] GBE: Correctly process constant for phi instruction
Zhigang Gong
zhigang.gong at linux.intel.com
Thu Jun 19 01:37:38 PDT 2014
LGTM, pushed, thanks.
On Wed, Jun 18, 2014 at 03:59:53PM +0800, Ruiling Song wrote:
> Simply use getRegister which deals with various ConstantExpr.
> Thanks to Abrahm Scully who report the bug.
>
> Signed-off-by: Ruiling Song <ruiling.song at intel.com>
> ---
> backend/src/llvm/llvm_gen_backend.cpp | 4 +---
> 1 file changed, 1 insertion(+), 3 deletions(-)
>
> diff --git a/backend/src/llvm/llvm_gen_backend.cpp b/backend/src/llvm/llvm_gen_backend.cpp
> index f3291f8..1bf59a1 100644
> --- a/backend/src/llvm/llvm_gen_backend.cpp
> +++ b/backend/src/llvm/llvm_gen_backend.cpp
> @@ -1083,9 +1083,7 @@ namespace gbe
> if (CPV && dyn_cast<ConstantVector>(CPV) &&
> isa<UndefValue>(extractConstantElem(CPV, 0)))
> continue;
> - const ir::ImmediateIndex immIndex = this->newImmediate(CP);
> - const ir::Immediate imm = ctx.getImmediate(immIndex);
> - ctx.LOADI(imm.type, dst, immIndex);
> + ctx.MOV(type, dst, getRegister(CP));
> } else if (regTranslator.valueExists(IV,0) || dyn_cast<Constant>(IV)) {
> const ir::Register src = this->getRegister(IV);
> ctx.MOV(type, dst, src);
> --
> 1.7.10.4
>
> _______________________________________________
> Beignet mailing list
> Beignet at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/beignet
More information about the Beignet
mailing list