[PATCH] D157103: AMDGPU: Fix counting source modifiers as literal constants
Joe Nash via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Aug 11 08:35:23 PDT 2023
Joe_Nash added a comment.
In D157103#4579608 <https://reviews.llvm.org/D157103#4579608>, @foad wrote:
>> 4b1702e87a2687569b197aea4721353f8b788182 <https://reviews.llvm.org/rG4b1702e87a2687569b197aea4721353f8b788182>
>
> This is causing:
>
> $ cat r.ll
> define amdgpu_ps <2 x half> @f(half %arg) {
> bb:
> %i = fmul contract half %arg, 0xH3A66
> %i1 = fadd contract half %i, 0xH2E66
> %i2 = fmul contract half %arg, 0xH0000
> %i3 = fsub contract half 0xH3A66, %i2
> %i4 = insertelement <2 x half> poison, half %i1, i32 0
> %i5 = insertelement <2 x half> %i4, half %i3, i32 1
> ret <2 x half> %i5
> }
> $ llc -march=amdgcn -mcpu=gfx1010 -o /dev/null r.ll
> error: Illegal instruction detected: VOP2/VOP3 instruction uses more than one literal
> renamable $vgpr1 = contract nofpexcept V_FMAAK_F16 14950, $vgpr0, 11878, implicit $mode, implicit $exec
>
> Can you please fix or revert?
I think https://reviews.llvm.org/D157624 will fix it.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D157103/new/
https://reviews.llvm.org/D157103
More information about the llvm-commits
mailing list