[PATCH] D49837: [SelectionDAG] Handle unary SelectPatternFlavor for ABS case in SelectionDAGBuilder::visitSelect.
Jan Vesely via llvm-commits
llvm-commits at lists.llvm.org
Tue Mar 19 23:39:40 PDT 2019
This patch also breaks the builtin-long-abs-1.0 piglit test on
AMDGPU/R600 (Turks).
The test fails with a similar error:
ScalarizeVectorResult #0: t72: v1i64 = abs t70
LLVM ERROR: Do not know how to scalarize the result of this operator!
See attached LLVM IR.
Jan
On Tue, Mar 19, 2019 at 8:19 PM Thomas Lively via Phabricator via
llvm-commits <llvm-commits at lists.llvm.org> wrote:
>
> tlively added a comment.
>
> This commit breaks the following IR:
>
> target datalayout = "e-m:e-p:32:32-i64:64-n32:64-S128"
> target triple = "wasm32-unknown-unknown"
>
> define void @foo() local_unnamed_addr {
> entry:
> %x0 = load <4 x i8>, <4 x i8>* undef, align 1
> %0 = load <4 x i8>, <4 x i8>* null, align 1
> %t6 = srem <4 x i8> %0, %x0
> %1 = ashr <4 x i8> %t6, <i8 7, i8 7, i8 7, i8 7>
> %2 = icmp slt <4 x i8> %x0, zeroinitializer
> %3 = sub <4 x i8> zeroinitializer, %x0
> %4 = select <4 x i1> %2, <4 x i8> %3, <4 x i8> %x0
> %5 = and <4 x i8> %1, %4
> %6 = add <4 x i8> %5, %t6
> store <4 x i8> %6, <4 x i8>* undef, align 1
> ret void
> }
>
> Running llc on that IR gives the following error:
>
> ScalarizeVectorResult #0: t28: v1i8 = abs t26
>
> LLVM ERROR: Do not know how to scalarize the result of this operator!
>
> This was reported at https://bugs.llvm.org/show_bug.cgi?id=41149.
>
>
> Repository:
> rL LLVM
>
> CHANGES SINCE LAST ACTION
> https://reviews.llvm.org/D49837/new/
>
> https://reviews.llvm.org/D49837
>
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at lists.llvm.org
> https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
-------------- next part --------------
A non-text attachment was scrubbed...
Name: abs64.ll
Type: application/octet-stream
Size: 11278 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190320/f52abc2b/attachment.obj>
More information about the llvm-commits
mailing list