[llvm] [SystemZ] Add proper mcount handling (PR #135767)

LLVM Continuous Integration via llvm-commits llvm-commits at lists.llvm.org
Fri May 2 05:39:05 PDT 2025


llvm-ci wrote:

LLVM Buildbot has detected a new failure on builder `llvm-clang-x86_64-expensive-checks-debian` running on `gribozavr4` while building `llvm` at step 6 "test-build-unified-tree-check-all".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/16/builds/18287

<details>
<summary>Here is the relevant piece of the build log for the reference</summary>

```
Step 6 (test-build-unified-tree-check-all) failure: test (failure)
******************** TEST 'LLVM :: CodeGen/SystemZ/mcount.ll' FAILED ********************
Exit Code: 2

Command Output (stderr):
--
/b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/llc < /b/1/llvm-clang-x86_64-expensive-checks-debian/llvm-project/llvm/test/CodeGen/SystemZ/mcount.ll -mtriple=s390x-linux-gnu -o - | /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/FileCheck /b/1/llvm-clang-x86_64-expensive-checks-debian/llvm-project/llvm/test/CodeGen/SystemZ/mcount.ll # RUN: at line 3
+ /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/llc -mtriple=s390x-linux-gnu -o -
+ /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/FileCheck /b/1/llvm-clang-x86_64-expensive-checks-debian/llvm-project/llvm/test/CodeGen/SystemZ/mcount.ll

# After Prologue/Epilogue Insertion & Frame Finalization
# Machine code for function fib: NoPHIs, TracksLiveness, NoVRegs, TiedOpsRewritten, TracksDebugUserValues
Frame Objects:
  fi#-4: size=8, align=8, fixed, at location [SP-160]
  fi#-3: size=8, align=8, fixed, at location [SP-40]
  fi#-2: size=8, align=8, fixed, at location [SP-48]
  fi#-1: size=8, align=8, fixed, at location [SP-56]
  fi#0: size=4, align=4, at location [SP-164]
Function Live Ins: $r2d

bb.0.entry:
  successors: %bb.2(0x40000000), %bb.1(0x40000000); %bb.2(50.00%), %bb.1(50.00%)
  liveins: $r2d, $r13d, $r15d, $r14d
  STG $r14d, $r15d, 8, $noreg
  CallBRASL @mcount, <regmask $f0d $f1d $f2d $f3d $f4d $f5d $f6d $f7d $f8d $f9d $f10d $f11d $f12d $f13d $f14d $f15d $f0h $f1h $f2h $f3h $f4h $f5h $f6h $f7h $f8h $f9h $f10h $f11h $f12h $f13h $f14h $f15h $f0q and 72 more...>, implicit-def $r14d, implicit-def $cc, implicit $fpc
  LG $r14d, $r15d, 8, $noreg
  STMG killed $r13d, killed $r15d, $r15d, 104, implicit killed $r14d
  CFI_INSTRUCTION offset $r13d, -56
  CFI_INSTRUCTION offset $r14d, -48
  CFI_INSTRUCTION offset $r15d, -40
  $r15d = AGHI $r15d(tied-def 0), -168, implicit-def dead $cc
  CFI_INSTRUCTION def_cfa_offset 328
  ST renamable $r2l, $r15d, 164, $noreg :: (store (s32) into %ir.n.addr)
  CHI renamable $r2l, 2, implicit-def $cc, implicit killed $r2d
  renamable $r2l = LHI 1, implicit-def $r2d
  BRC 14, 4, %bb.2, implicit killed $cc
  J %bb.1

bb.1.cond.false:
; predecessors: %bb.0
  successors: %bb.2(0x80000000); %bb.2(100.00%)

  renamable $r0l = LHI -1
  renamable $r0l = A killed renamable $r0l(tied-def 0), $r15d, 164, $noreg, implicit-def dead $cc :: (dereferenceable load (s32) from %ir.n.addr)
  renamable $r2d = LGFR killed renamable $r0l
  CallBRASL @fib, $r2d, <regmask $f8d $f9d $f10d $f11d $f12d $f13d $f14d $f15d $f8h $f9h $f10h $f11h $f12h $f13h $f14h $f15h $f8q $f9q $f12q $f13q $f8s $f9s $f10s $f11s $f12s $f13s $f14s $f15s $r6d $r7d $r8d $r9d $r10d and 30 more...>, implicit-def dead $r14d, implicit-def dead $cc, implicit $fpc, implicit-def $r2d
  renamable $r0l = LHI -2
  renamable $r0l = A killed renamable $r0l(tied-def 0), $r15d, 164, $noreg, implicit-def dead $cc :: (dereferenceable load (s32) from %ir.n.addr)
  renamable $r0d = LGFR killed renamable $r0l
  renamable $r13d = COPY $r2d
  $r2d = COPY killed renamable $r0d
...

```

</details>

https://github.com/llvm/llvm-project/pull/135767


More information about the llvm-commits mailing list