Page MenuHomePhabricator

[AMDGPU][MC][GFX11] Disable non-VGPR src operands for v_fmac_f16_e64_dpp and v_fmac_f32_e64_dpp instructions
ClosedPublic

Authored by dp on Nov 25 2022, 6:30 AM.

Diff Detail

Unit TestsFailed

TimeTest
60,130 msx64 debian > Clang.Driver::crash-report.cpp
Script: -- : 'RUN: at line 1'; rm -rf /var/lib/buildkite-agent/builds/llvm-project/build/tools/clang/test/Driver/Output/crash-report.cpp.tmp
60,080 msx64 debian > Clang.Driver::emit-reproducer.c
Script: -- : 'RUN: at line 1'; rm -rf /var/lib/buildkite-agent/builds/llvm-project/build/tools/clang/test/Driver/Output/emit-reproducer.c.tmp && mkdir /var/lib/buildkite-agent/builds/llvm-project/build/tools/clang/test/Driver/Output/emit-reproducer.c.tmp
60,500 msx64 debian > Clang.Driver::fsanitize.c
Script: -- : 'RUN: at line 1'; /var/lib/buildkite-agent/builds/llvm-project/build/bin/clang --target=x86_64-linux-gnu -fsanitize=undefined -fsanitize-trap=undefined /var/lib/buildkite-agent/builds/llvm-project/clang/test/Driver/fsanitize.c -### 2>&1 | /var/lib/buildkite-agent/builds/llvm-project/build/bin/FileCheck /var/lib/buildkite-agent/builds/llvm-project/clang/test/Driver/fsanitize.c --check-prefix=CHECK-UNDEFINED-TRAP
60,410 msx64 debian > Clang.OpenMP::target_update_codegen.cpp
Script: -- : 'RUN: at line 6'; /var/lib/buildkite-agent/builds/llvm-project/build/bin/clang -cc1 -internal-isystem /var/lib/buildkite-agent/builds/llvm-project/build/lib/clang/16/include -nostdsysteminc -no-opaque-pointers -DCK1 -verify -fopenmp -fopenmp-targets=powerpc64le-ibm-linux-gnu -x c++ -triple powerpc64le-unknown-unknown -emit-llvm /var/lib/buildkite-agent/builds/llvm-project/clang/test/OpenMP/target_update_codegen.cpp -o - | /var/lib/buildkite-agent/builds/llvm-project/build/bin/FileCheck --allow-unused-prefixes /var/lib/buildkite-agent/builds/llvm-project/clang/test/OpenMP/target_update_codegen.cpp --check-prefix CK1 --check-prefix CK1-64

Event Timeline

dp created this revision.Nov 25 2022, 6:30 AM
Herald added a project: Restricted Project. · View Herald TranscriptNov 25 2022, 6:30 AM
dp requested review of this revision.Nov 25 2022, 6:30 AM
Herald added a project: Restricted Project. · View Herald TranscriptNov 25 2022, 6:30 AM

Its not just SGPRs we want to disable, right? Its inline and literal operands too. So the commit title is slightly misleading.

llvm/lib/Target/AMDGPU/VOP2Instructions.td
429

I think it can be the following, which is more generic.

let InsVOP3Base  = getIns64<Src0VOP3DPP, Src1VOP3DPP, RegisterOperand<VGPR_32>, 3,
                       0, HasModifiers, HasModifiers, HasOMod,
                       Src0ModVOP3DPP, Src1ModVOP3DPP, Src2Mod>.ret;
dp updated this revision to Diff 478621.Nov 29 2022, 9:04 AM
dp retitled this revision from [AMDGPU][MC][GFX11] Disable SGPRs as src operands of v_fmac_f16_e64_dpp and v_fmac_f32_e64_dpp instructions to [AMDGPU][MC][GFX11] Disable non-VGPR src operands for v_fmac_f16_e64_dpp and v_fmac_f32_e64_dpp instructions.

Retitle and correct as suggested by Joe.

llvm/lib/Target/AMDGPU/VOP2Instructions.td
429

Thanks! It works and looks more logical.

Joe_Nash accepted this revision.Nov 29 2022, 9:07 AM

Thanks, LGTM

This revision is now accepted and ready to land.Nov 29 2022, 9:07 AM
This revision was landed with ongoing or failed builds.Nov 30 2022, 3:55 AM
This revision was automatically updated to reflect the committed changes.