[all-commits] [llvm/llvm-project] 984451: PostRAPseudos: Don't preserve kills on some implic...

Matt Arsenault via All-commits all-commits at lists.llvm.org
Tue Jan 18 10:52:20 PST 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 984451eafcedf80ce2db70b49757860992e723dc
      https://github.com/llvm/llvm-project/commit/984451eafcedf80ce2db70b49757860992e723dc
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2022-01-18 (Tue, 18 Jan 2022)

  Changed paths:
    M llvm/lib/CodeGen/ExpandPostRAPseudos.cpp
    A llvm/test/CodeGen/AMDGPU/copy-phys-reg-implicit-operand-kills-subregs.mir
    A llvm/test/CodeGen/AMDGPU/overlapping-tuple-copy-implicit-op-failure.ll
    M llvm/test/CodeGen/X86/pr28560.ll

  Log Message:
  -----------
  PostRAPseudos: Don't preserve kills on some implicit copy operands

This fixes a verifier error I ran into at -O0. A subregister copy had
an implicit kill of an overlapping superregister, which was partially
redefined by the copy. The preserved implicit operand killed
subregisters made live earlier in the sequence. AMDGPU already uses
similar logic for whether to preserve the kill of the superregister on
the final instruction if there's overlap.


  Commit: de1600a1d946d1bd9ca5f7b0711012a8f31a66e2
      https://github.com/llvm/llvm-project/commit/de1600a1d946d1bd9ca5f7b0711012a8f31a66e2
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2022-01-18 (Tue, 18 Jan 2022)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.workitem.id.ll
    M llvm/test/CodeGen/AMDGPU/call-reqd-group-size.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.workitem.id.ll

  Log Message:
  -----------
  AMDGPU: Avoid enabling kernel workitem IDs with reqd_work_group_size


Compare: https://github.com/llvm/llvm-project/compare/0d459444e510...de1600a1d946


More information about the All-commits mailing list