[PATCH] D79498: [amdgpu] Fix check of VCC.

Michael Liao via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed May 6 11:21:20 PDT 2020


This revision was automatically updated to reflect the committed changes.
Closed by commit rG4ee5a04187aa: [amdgpu] Fix check of VCC. (authored by hliao).

Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D79498/new/

https://reviews.llvm.org/D79498

Files:
  llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
  llvm/test/CodeGen/AMDGPU/asm-printer-check-vcc.mir


Index: llvm/test/CodeGen/AMDGPU/asm-printer-check-vcc.mir
===================================================================
--- /dev/null
+++ llvm/test/CodeGen/AMDGPU/asm-printer-check-vcc.mir
@@ -0,0 +1,23 @@
+# RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx900 -start-after=livedebugvalues -verify-machineinstrs -o - %s | FileCheck -check-prefix=GCN %s
+
+# GCN-LABEL: foo:
+# GCN: s_getpc_b64 vcc
+# GCN: s_add_u32 vcc_lo, vcc_lo, bar at rel32@lo+4
+# GCN: s_addc_u32 vcc_hi, vcc_hi, bar at rel32@hi+4
+--- |
+  define amdgpu_kernel void @foo() {
+    ret void
+  }
+  @bar = external protected local_unnamed_addr addrspace(4) externally_initialized global i32, align 4
+---
+name: foo
+tracksRegLiveness: true
+frameInfo:
+  hasCalls: true
+body: |
+  bb.0:
+    BUNDLE implicit-def $vcc, implicit-def $vcc_lo, implicit-def $vcc_lo_lo16, implicit-def $vcc_lo_hi16, implicit-def $vcc_hi, implicit-def $vcc_hi_lo16, implicit-def $vcc_hi_hi16, implicit-def $scc {
+      $vcc = S_GETPC_B64
+      $vcc_lo = S_ADD_U32 internal $vcc_lo, target-flags(amdgpu-rel32-lo) @bar + 4, implicit-def $scc
+      $vcc_hi = S_ADDC_U32 internal $vcc_hi, target-flags(amdgpu-rel32-hi) @bar + 4, implicit-def $scc, implicit internal $scc
+    }
Index: llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
===================================================================
--- llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
+++ llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
@@ -727,6 +727,10 @@
         case AMDGPU::VCC:
         case AMDGPU::VCC_LO:
         case AMDGPU::VCC_HI:
+        case AMDGPU::VCC_LO_LO16:
+        case AMDGPU::VCC_LO_HI16:
+        case AMDGPU::VCC_HI_LO16:
+        case AMDGPU::VCC_HI_HI16:
           Info.UsesVCC = true;
           continue;
 


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D79498.262428.patch
Type: text/x-patch
Size: 1742 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200506/6e18672a/attachment.bin>


More information about the llvm-commits mailing list