[PATCH] D64856: [MIPS GlobalISel] ClampScalar and select pointer G_ICMP
Petar Avramovic via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Jul 19 13:56:19 PDT 2019
Petar.Avramovic added a comment.
Hello @brzycki, I will take a closer look on Monday.
Quick guess is that swapping lines 310,311 in AArch64LegalizerInfo.cpp (rules for G_ICMP) could fix the problem:
i.e. to change
.clampScalar(0, s32, s32)
.clampScalar(1, s32, s64)
into this:
.clampScalar(1, s32, s64)
.clampScalar(0, s32, s32)
I assumed that G_ICMP gets narrowScalared in default form with s1 as a result, but it looks like that is not always the case.
I will try to fix this in narrow scalar so that there is no need for specific ordering of legalization rules for some generic opcodes.
Repository:
rL LLVM
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D64856/new/
https://reviews.llvm.org/D64856
More information about the llvm-commits
mailing list