Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update amdgpu_gfx functions to use s0-s3 for inreg SGPR arguments on targets using scratch instructions for stack #78553

Closed
wants to merge 1 commit into from

Conversation

Rajveer100
Copy link
Contributor

Resolves Issue #78226

Update the argument list for *_Gfx calling conventions for AMDGPU calling convention and update the conditional check under enableFlatScratch which pre-allocates the registers.

@llvmbot
Copy link
Collaborator

llvmbot commented Jan 18, 2024

@llvm/pr-subscribers-backend-amdgpu

Author: Rajveer Singh Bharadwaj (Rajveer100)

Changes

Resolves Issue #78226

Update the argument list for *_Gfx calling conventions for AMDGPU calling convention and update the conditional check under enableFlatScratch which pre-allocates the registers.


Full diff: https://github.com/llvm/llvm-project/pull/78553.diff

2 Files Affected:

  • (modified) llvm/lib/Target/AMDGPU/AMDGPUCallingConv.td (+1)
  • (modified) llvm/lib/Target/AMDGPU/SIISelLowering.cpp (+1-1)
diff --git a/llvm/lib/Target/AMDGPU/AMDGPUCallingConv.td b/llvm/lib/Target/AMDGPU/AMDGPUCallingConv.td
index c5207228dc913fe..4c922a81c02efd5 100644
--- a/llvm/lib/Target/AMDGPU/AMDGPUCallingConv.td
+++ b/llvm/lib/Target/AMDGPU/AMDGPUCallingConv.td
@@ -23,6 +23,7 @@ def CC_SI_Gfx : CallingConv<[
   // 33 is reserved for the frame pointer
   // 34 is reserved for the base pointer
   CCIfInReg<CCIfType<[f32, i32, f16, i16, v2i16, v2f16, bf16, v2bf16] , CCAssignToReg<[
+    SGPR0, SGPR1, SGPR2, SGPR3,
     SGPR4, SGPR5, SGPR6, SGPR7,
     SGPR8, SGPR9, SGPR10, SGPR11, SGPR12, SGPR13, SGPR14, SGPR15,
     SGPR16, SGPR17, SGPR18, SGPR19, SGPR20, SGPR21, SGPR22, SGPR23,
diff --git a/llvm/lib/Target/AMDGPU/SIISelLowering.cpp b/llvm/lib/Target/AMDGPU/SIISelLowering.cpp
index 3852f93da98dc45..2a5cd441d6e215f 100644
--- a/llvm/lib/Target/AMDGPU/SIISelLowering.cpp
+++ b/llvm/lib/Target/AMDGPU/SIISelLowering.cpp
@@ -2786,7 +2786,7 @@ SDValue SITargetLowering::LowerFormalArguments(
 
   if (!IsKernel) {
     CCAssignFn *AssignFn = CCAssignFnForCall(CallConv, isVarArg);
-    if (!IsGraphics && !Subtarget->enableFlatScratch()) {
+    if (!Subtarget->enableFlatScratch()) {
       CCInfo.AllocateRegBlock(ArrayRef<MCPhysReg>{AMDGPU::SGPR0, AMDGPU::SGPR1,
                                                   AMDGPU::SGPR2, AMDGPU::SGPR3},
                               4);

@Rajveer100
Copy link
Contributor Author

Rajveer100 commented Jan 18, 2024

@arsenm
Let me know if these were the intended changes to be done.

PS: Will update the tests.

Test Details

Failed Tests (175):
--
  | LLVM :: CodeGen/AMDGPU/GlobalISel/irtranslator-call-non-fixed.ll
  | LLVM :: CodeGen/AMDGPU/GlobalISel/irtranslator-call.ll
  | LLVM :: CodeGen/AMDGPU/add.ll
  | LLVM :: CodeGen/AMDGPU/amdgcn-load-offset-from-reg.ll
  | LLVM :: CodeGen/AMDGPU/amdgpu-cs-chain-cc.ll
  | LLVM :: CodeGen/AMDGPU/amdgpu-cs-chain-preserve-cc.ll
  | LLVM :: CodeGen/AMDGPU/amdgpu-shader-calling-convention.ll
  | LLVM :: CodeGen/AMDGPU/atomic_optimizations_pixelshader.ll
  | LLVM :: CodeGen/AMDGPU/bf16.ll
  | LLVM :: CodeGen/AMDGPU/bfi_int.ll
  | LLVM :: CodeGen/AMDGPU/buffer-atomic-fadd.f32-no-rtn.ll
  | LLVM :: CodeGen/AMDGPU/buffer-atomic-fadd.f32-rtn.ll
  | LLVM :: CodeGen/AMDGPU/buffer-atomic-fadd.f64.ll
  | LLVM :: CodeGen/AMDGPU/buffer-atomic-fadd.v2f16-no-rtn.ll
  | LLVM :: CodeGen/AMDGPU/buffer-atomic-fadd.v2f16-rtn.ll
  | LLVM :: CodeGen/AMDGPU/buffer-intrinsics-mmo-offsets.ll
  | LLVM :: CodeGen/AMDGPU/calling-conventions.ll
  | LLVM :: CodeGen/AMDGPU/cc-sgpr-limit.ll
  | LLVM :: CodeGen/AMDGPU/cgp-addressing-modes-smem.ll
  | LLVM :: CodeGen/AMDGPU/cluster_stores.ll
  | LLVM :: CodeGen/AMDGPU/code-size-estimate.ll
  | LLVM :: CodeGen/AMDGPU/combine_andor_with_cmps.ll
  | LLVM :: CodeGen/AMDGPU/constant-address-space-32bit.ll
  | LLVM :: CodeGen/AMDGPU/constrained-shift.ll
  | LLVM :: CodeGen/AMDGPU/dagcombine-fma-fmad.ll
  | LLVM :: CodeGen/AMDGPU/ds_read2.ll
  | LLVM :: CodeGen/AMDGPU/fmul-to-ldexp.ll
  | LLVM :: CodeGen/AMDGPU/fneg-combines.f16.ll
  | LLVM :: CodeGen/AMDGPU/fneg-combines.new.ll
  | LLVM :: CodeGen/AMDGPU/fp-min-max-buffer-atomics.ll
  | LLVM :: CodeGen/AMDGPU/fp-min-max-buffer-ptr-atomics.ll
  | LLVM :: CodeGen/AMDGPU/fp-min-max-image-atomics.ll
  | LLVM :: CodeGen/AMDGPU/fp64-atomics-gfx90a.ll
  | LLVM :: CodeGen/AMDGPU/fp64-min-max-buffer-atomics.ll
  | LLVM :: CodeGen/AMDGPU/fp64-min-max-buffer-ptr-atomics.ll
  | LLVM :: CodeGen/AMDGPU/fpow.ll
  | LLVM :: CodeGen/AMDGPU/fsqrt.f32.ll
  | LLVM :: CodeGen/AMDGPU/fsqrt.f64.ll
  | LLVM :: CodeGen/AMDGPU/fsub-as-fneg-src-modifier.ll
  | LLVM :: CodeGen/AMDGPU/gfx-callable-argument-types.ll
  | LLVM :: CodeGen/AMDGPU/global-atomic-fadd.f32-no-rtn.ll
  | LLVM :: CodeGen/AMDGPU/global-atomic-fadd.f32-rtn.ll
  | LLVM :: CodeGen/AMDGPU/global-atomic-fadd.f64.ll
  | LLVM :: CodeGen/AMDGPU/global-atomic-fadd.v2f16-no-rtn.ll
  | LLVM :: CodeGen/AMDGPU/global-atomic-fadd.v2f16-rtn.ll
  | LLVM :: CodeGen/AMDGPU/i1-copy-from-loop.ll
  | LLVM :: CodeGen/AMDGPU/i1-copy-phi-uniform-branch.ll
  | LLVM :: CodeGen/AMDGPU/indirect-call.ll
  | LLVM :: CodeGen/AMDGPU/invariant-image-load.ll
  | LLVM :: CodeGen/AMDGPU/isel-amdgcn-cs-chain-intrinsic-w32.ll
  | LLVM :: CodeGen/AMDGPU/isel-amdgcn-cs-chain-intrinsic-w64.ll
  | LLVM :: CodeGen/AMDGPU/isel-amdgpu-cs-chain-cc.ll
  | LLVM :: CodeGen/AMDGPU/isel-amdgpu-cs-chain-preserve-cc.ll
  | LLVM :: CodeGen/AMDGPU/large-alloca-graphics.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.atomic.csub.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.atomic.fadd.gfx90a.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.atomic.fadd.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.ballot.i32.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.ballot.i64.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.buffer.atomic.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.buffer.load.dwordx3.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.buffer.load.format.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.buffer.load.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.buffer.store.dwordx3.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.buffer.store.format.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.buffer.store.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.ds.ordered.add.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.ds.ordered.swap.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.global.load.lds.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.image.a16.dim.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.image.a16.encode.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.image.atomic.dim.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.image.d16.dim.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.image.dim.gfx90a.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.image.dim.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.image.gather4.a16.dim.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.image.gather4.d16.dim.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.image.gather4.dim.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.image.gather4.o.dim.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.image.getlod.dim.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.image.load.a16.d16.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.image.load.a16.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.image.msaa.load.x.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.image.nsa.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.image.sample.a16.dim.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.image.sample.cd.a16.dim.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.image.sample.cd.dim.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.image.sample.cd.g16.encode.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.image.sample.cd.g16.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.image.sample.d16.dim.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.image.sample.dim.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.image.sample.g16.a16.dim.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.image.sample.g16.encode.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.image.sample.g16.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.image.sample.o.dim.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.image.store.a16.d16.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.image.store.a16.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.init.exec.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.init.exec.wave32.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.interp.f16.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.intersect_ray.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.make.buffer.rsrc.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.perm.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.raw.buffer.atomic.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.raw.buffer.load.format.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.raw.buffer.load.lds.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.raw.buffer.load.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.raw.buffer.store.format.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.raw.buffer.store.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.buffer.atomic.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.buffer.load.format.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.buffer.load.lds.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.buffer.load.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.buffer.store.format.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.buffer.store.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.tbuffer.load.d16.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.tbuffer.load.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.tbuffer.store.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.raw.tbuffer.load.d16.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.raw.tbuffer.load.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.raw.tbuffer.store.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.s.buffer.load.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.s.setreg.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.sendmsg.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.softwqm.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.struct.buffer.atomic.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.struct.buffer.load.format.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.struct.buffer.load.lds.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.struct.buffer.load.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.struct.buffer.store.format.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.struct.buffer.store.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.buffer.atomic.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.buffer.load.format.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.buffer.load.lds.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.buffer.load.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.buffer.store.format.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.buffer.store.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.tbuffer.load.d16.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.tbuffer.load.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.tbuffer.store.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.struct.tbuffer.load.d16.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.struct.tbuffer.load.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.struct.tbuffer.store.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.tbuffer.store.dwordx3.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.tbuffer.store.ll
  | LLVM :: CodeGen/AMDGPU/llvm.amdgcn.wqm.demote.ll
  | LLVM :: CodeGen/AMDGPU/load-local-redundant-copies.ll
  | LLVM :: CodeGen/AMDGPU/lower-work-group-id-intrinsics.ll
  | LLVM :: CodeGen/AMDGPU/mad.u16.ll
  | LLVM :: CodeGen/AMDGPU/mad_u64_u32.ll
  | LLVM :: CodeGen/AMDGPU/movreld-bug.ll
  | LLVM :: CodeGen/AMDGPU/multi-divergent-exit-region.ll
  | LLVM :: CodeGen/AMDGPU/pal-simple-indirect-call.ll
  | LLVM :: CodeGen/AMDGPU/reassoc-mul-add-1-to-mad.ll
  | LLVM :: CodeGen/AMDGPU/ret.ll
  | LLVM :: CodeGen/AMDGPU/roundeven.ll
  | LLVM :: CodeGen/AMDGPU/rsq.f64.ll
  | LLVM :: CodeGen/AMDGPU/schedule-addrspaces.ll
  | LLVM :: CodeGen/AMDGPU/scratch-pointer-sink.ll
  | LLVM :: CodeGen/AMDGPU/scratch-simple.ll
  | LLVM :: CodeGen/AMDGPU/set-inactive-wwm-overwrite.ll
  | LLVM :: CodeGen/AMDGPU/should-not-hoist-set-inactive.ll
  | LLVM :: CodeGen/AMDGPU/skip-if-dead.ll
  | LLVM :: CodeGen/AMDGPU/smrd-gfx10.ll
  | LLVM :: CodeGen/AMDGPU/smrd.ll
  | LLVM :: CodeGen/AMDGPU/splitkit-getsubrangeformask.ll
  | LLVM :: CodeGen/AMDGPU/sub.ll
  | LLVM :: CodeGen/AMDGPU/uaddo.ll
  | LLVM :: CodeGen/AMDGPU/uniform-phi-with-undef.ll
  | LLVM :: CodeGen/AMDGPU/vgpr-liverange-ir.ll
  | LLVM :: CodeGen/AMDGPU/vgpr-liverange.ll
  | LLVM :: CodeGen/AMDGPU/wave32.ll
  | LLVM :: CodeGen/AMDGPU/wqm.ll
  | LLVM :: CodeGen/AMDGPU/wwm-reserved.ll
  | LLVM :: CodeGen/AMDGPU/xor3-i1-const.ll
  |  
  |  
  | Testing Time: 102.41s
  |  
  | Total Discovered Tests: 57874
  | Skipped          :    15 (0.03%)
  | Unsupported      :   786 (1.36%)
  | Passed           : 56729 (98.02%)
  | Expectedly Failed:   169 (0.29%)
  | Failed           :   175 (0.30%)
  | FAILED: test/CMakeFiles/check-llvm /var/lib/buildkite-agent/builds/linux-56-59b8f5d88-h5ngp-1/llvm-project/github-pull-requests/build/test/CMakeFiles/check-llvm
  | cd /var/lib/buildkite-agent/builds/linux-56-59b8f5d88-h5ngp-1/llvm-project/github-pull-requests/build/test && /usr/bin/python3.10 /var/lib/buildkite-agent/builds/linux-56-59b8f5d88-h5ngp-1/llvm-project/github-pull-requests/build/./bin/llvm-lit -v --xunit-xml-output /var/lib/buildkite-agent/builds/linux-56-59b8f5d88-h5ngp-1/llvm-project/github-pull-requests/build/test-results.xml --timeout=1200 --time-tests /var/lib/buildkite-agent/builds/linux-56-59b8f5d88-h5ngp-1/llvm-project/github-pull-requests/build/test
  | ninja: build stopped: subcommand failed.
  | + show-stats
  | + mkdir -p artifacts
  | + ccache --print-stats
  | 🚨 Error: The command exited with status 1
  | user command error: exit status 1


@Rajveer100
Copy link
Contributor Author

Rajveer100 commented Jan 18, 2024

@philnik777 @ldionne
Is it normal to see 175+ tests failing here, and is there any flag to bless tests (like --bless) to produce the necessary changes.

@philnik777
Copy link
Contributor

How would I know? I'm working on libc++ and clang, not LLVM backends.

@arsenm
Copy link
Contributor

arsenm commented Jan 18, 2024

Code change looks right (though it's missing the mirror change for GlobalISel in AMDGPUCallLowering). This will need test updates though

Copy link
Contributor

@arsenm arsenm left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Removed the wrong IsGraphics and needs test updates

@Rajveer100
Copy link
Contributor Author

Rajveer100 commented Feb 7, 2024

How should the tests be added, I see too many of them failing at the moment?

@arsenm
Copy link
Contributor

arsenm commented Feb 8, 2024

How should the tests be added, I see too many of them failing at the moment?

This should be covered by existing tests (which just now need many updates)

…targets using scratch instructions for stack

Resolves Issue llvm#78226
@Rajveer100
Copy link
Contributor Author

Rajveer100 commented Feb 8, 2024

I don't think I have to manually fix each of the 175 tests individually, or do I? Also, could you describe about testing .ll files in particular that have FileCheck and assertions.

@arsenm
Copy link
Contributor

arsenm commented Feb 8, 2024

I don't think I have to manually fix each of the 175 tests individually, or do I? Also, could you describe about testing .ll files in particular that have FileCheck and assertions.

Everything that's failing. 175 sounds a bit high for this. Just about every test has FileCheck. update_llc_test_checks ----update-only will likely get most of them

@Rajveer100
Copy link
Contributor Author

Rajveer100 commented Feb 8, 2024

Do I have to include any additional builds (like openmp) in the llvm build to generate those tests, as they are currently only in the llvm/ directory and hence isn't invoked by update_llc_test_checks due to this?

> llvm/utils/update_llc_test_checks.py llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-call.ll -u

WARNING: Skipping test which wasn't autogenerated by utils/update_llc_test_checks.py: llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-call.ll

@arsenm
Copy link
Contributor

arsenm commented Feb 9, 2024

Do I have to include any additional builds (like openmp) in the llvm build to generate those tests, as they are currently only in the llvm/ directory and hence isn't invoked by update_llc_test_checks due to this?

No

> llvm/utils/update_llc_test_checks.py llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-call.ll -u

WARNING: Skipping test which wasn't autogenerated by utils/update_llc_test_checks.py: llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-call.ll

Some are updated by update_mir_test_checks, some update_test_checks, and some are hand written. Some have checks for multiple types of checks (which the update scripts don't gracefully handle). I'd expect update_llc_test_checks to handle the majority of them

@Rajveer100
Copy link
Contributor Author

Rajveer100 commented Feb 10, 2024

For clarity, I see this warning for all tests, i.e, I am unable to use any of those utility commands with the same issue as mentioned in the above comment.

@Rajveer100
Copy link
Contributor Author

For clarity, I see this warning for all tests, i.e, I am unable to use any of those utility commands with the same issue as mentioned in the above comment.

@arsenm
Can you let me know the cause for this?

@arsenm
Copy link
Contributor

arsenm commented Feb 29, 2024

For clarity, I see this warning for all tests, i.e, I am unable to use any of those utility commands with the same issue as mentioned in the above comment.

@arsenm Can you let me know the cause for this?

Some tests are not autogenerated and will need manually updating (or updating with update_mir_test_checks). The warning is expected. You should see it working on some of them

Your example llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-call.ll should use update_mir_test_checks

@arsenm
Copy link
Contributor

arsenm commented Feb 29, 2024

Duplicate #81394

@Rajveer100
Copy link
Contributor Author

@arsenm
It looks like @SahilPatidar is much closer to completion, closing this PR.

Will keep an eye on the same, to learn more!

@Rajveer100 Rajveer100 closed this Feb 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants