[all-commits] [llvm/llvm-project] 4a331b: [AMDGPU] Fix vccz after v_readlane/v_readfirstlane...

jayfoad via All-commits all-commits at lists.llvm.org
Tue Jan 28 02:52:43 PST 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 4a331beadc3aaeb24a88853d2703f4ac7d513df1
      https://github.com/llvm/llvm-project/commit/4a331beadc3aaeb24a88853d2703f4ac7d513df1
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2020-01-28 (Tue, 28 Jan 2020)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
    M llvm/test/CodeGen/AMDGPU/vccz-corrupt-bug-workaround.mir

  Log Message:
  -----------
  [AMDGPU] Fix vccz after v_readlane/v_readfirstlane to vcc_lo/hi

Summary:
Up to gfx9, writes to vcc_lo and vcc_hi by instructions like
v_readlane and v_readfirstlane do not update vccz to reflect the new
value of vcc. Fix it by reusing part of the existing vccz bug handling
code, which inserts an "s_mov_b64 vcc, vcc" instruction to restore vccz
just before an instruction that needs the correct value.

Subscribers: arsenm, kzhuravl, jvesely, wdng, nhaehnle, yaxunl, dstuttard, tpr, t-tye, hiraditya, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D69661




More information about the All-commits mailing list