[PATCH] D109295: [X86] Handle inverted inputs when matching VPTERNLOG from 2 binary ops.
LuoYuanke via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Sep 6 07:20:05 PDT 2021
LuoYuanke added a comment.
In D109295#2985347 <https://reviews.llvm.org/D109295#2985347>, @LuoYuanke wrote:
> In D109295#2985246 <https://reviews.llvm.org/D109295#2985246>, @pengfei wrote:
>
>> I found another example:
>>
>> define dso_local <4 x i64> @foo2(<4 x i64> %0, <4 x i64> %1, <4 x i64> %2) {
>> %4 = xor <4 x i64> %2, <i64 -1, i64 -1, i64 -1, i64 -1>
>> %5 = or <4 x i64> %4, %1
>> %6 = or <4 x i64> %0, %1
>> %7 = and <4 x i64> %5, %6
>> ret <4 x i64> %7
>> }
>>
>> Can we simply it to below in the approach?
>>
>> vpor %ymm1, %ymm0, %ymm0
>> vpternlogq $208, %ymm2, %ymm1, %ymm0
>> retq
How about gcc? Can gcc generate one vpternlogq instruction?
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D109295/new/
https://reviews.llvm.org/D109295
More information about the llvm-commits
mailing list