# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py
# RUN: llc -mtriple=aarch64 -run-pass=cfi-fixup %s -o - | FileCheck %s
--- |
  define i32 @f0(i32 %x) #0 {
  entry: br label %return
  if.end: br label %return
  if.then2: br label %return
  if.else: br label %return
  return:
    ret i32 0
  }

  define i32 @f1(i32 %x) #0 {
  entry: br label %return
  if.end: br label %return
  if.then2: br label %return
  if.else: br label %return
  return:
    ret i32 0
  }

  define i32 @f2(i32 %x) #0 {
  entry: br label %return
  if.end: br label %return
  if.then2: br label %return
  if.else: br label %return
  return:
    ret i32 0
  }

  declare i32 @g(i32)

  attributes #0 = { nounwind shadowcallstack uwtable "sign-return-address"="non-leaf" "target-features"="+reserve-x18" }

...
---
name:            f0
alignment:       4
exposesReturnsTwice: false
legalized:       false
regBankSelected: false
selected:        false
failedISel:      false
tracksRegLiveness: true
hasWinCFI:       false
failsVerification: false
registers:       []
liveins:
  - { reg: '$w0', virtual-reg: '' }
frameInfo:
  isFrameAddressTaken: false
  isReturnAddressTaken: false
  hasStackMap:     false
  hasPatchPoint:   false
  stackSize:       16
  offsetAdjustment: 0
  maxAlignment:    16
  adjustsStack:    true
  hasCalls:        true
  stackProtector:  ''
  maxCallFrameSize: 0
  cvBytesOfCalleeSavedRegisters: 0
  hasOpaqueSPAdjustment: false
  hasVAStart:      false
  hasMustTailInVarArgFunc: false
  hasTailCall:     false
  localFrameSize:  0
  savePoint:       ''
  restorePoint:    ''
fixedStack:      []
stack:
  - { id: 0, name: '', type: spill-slot, offset: -16, size: 8, alignment: 16,
      stack-id: default, callee-saved-register: '$lr', callee-saved-restored: true,
      debug-info-variable: '', debug-info-expression: '', debug-info-location: '' }
callSites:       []
debugValueSubstitutions: []
constants:       []
machineFunctionInfo:
  hasRedZone:      false
body:             |
  ; CHECK-LABEL: name: f0
  ; CHECK: bb.0.entry:
  ; CHECK-NEXT:   successors: %bb.4(0x30000000), %bb.1(0x50000000)
  ; CHECK-NEXT:   liveins: $w0, $lr, $x18
  ; CHECK-NEXT: {{  $}}
  ; CHECK-NEXT:   CBZW renamable $w0, %bb.4
  ; CHECK-NEXT: {{  $}}
  ; CHECK-NEXT: bb.1.if.end:
  ; CHECK-NEXT:   successors: %bb.3(0x30000000), %bb.2(0x50000000)
  ; CHECK-NEXT:   liveins: $w0, $lr, $x18
  ; CHECK-NEXT: {{  $}}
  ; CHECK-NEXT:   early-clobber $x18 = frame-setup STRXpost $lr, $x18, 8
  ; CHECK-NEXT:   frame-setup CFI_INSTRUCTION escape 0x16, 0x12, 0x02, 0x82, 0x78
  ; CHECK-NEXT:   frame-setup PACIASP implicit-def $lr, implicit killed $lr, implicit $sp
  ; CHECK-NEXT:   frame-setup CFI_INSTRUCTION negate_ra_sign_state
  ; CHECK-NEXT:   early-clobber $sp = frame-setup STRXpre killed $lr, $sp, -16 :: (store (s64) into %stack.0)
  ; CHECK-NEXT:   frame-setup CFI_INSTRUCTION def_cfa_offset 16
  ; CHECK-NEXT:   frame-setup CFI_INSTRUCTION offset $w30, -16
  ; CHECK-NEXT:   CFI_INSTRUCTION remember_state
  ; CHECK-NEXT:   TBNZW renamable $w0, 31, %bb.3
  ; CHECK-NEXT: {{  $}}
  ; CHECK-NEXT: bb.2.if.else:
  ; CHECK-NEXT:   successors: %bb.5(0x80000000)
  ; CHECK-NEXT:   liveins: $w0
  ; CHECK-NEXT: {{  $}}
  ; CHECK-NEXT:   renamable $w0 = nuw nsw ADDWri killed renamable $w0, 1, 0
  ; CHECK-NEXT:   BL @g, csr_aarch64_aapcs_scs, implicit-def dead $lr, implicit $sp, implicit killed $w0, implicit-def $sp, implicit-def $w0
  ; CHECK-NEXT:   renamable $w8 = MOVZWi 1, 0
  ; CHECK-NEXT:   $w0 = SUBWrs killed renamable $w8, killed renamable $w0, 0
  ; CHECK-NEXT:   B %bb.5
  ; CHECK-NEXT: {{  $}}
  ; CHECK-NEXT: bb.3.if.then2:
  ; CHECK-NEXT:   successors: %bb.5(0x80000000)
  ; CHECK-NEXT:   liveins: $w0
  ; CHECK-NEXT: {{  $}}
  ; CHECK-NEXT:   renamable $w0 = nsw SUBWri killed renamable $w0, 1, 0
  ; CHECK-NEXT:   BL @g, csr_aarch64_aapcs_scs, implicit-def dead $lr, implicit $sp, implicit killed $w0, implicit-def $sp, implicit-def $w0
  ; CHECK-NEXT:   renamable $w0 = nsw ADDWri killed renamable $w0, 1, 0
  ; CHECK-NEXT:   B %bb.5
  ; CHECK-NEXT: {{  $}}
  ; CHECK-NEXT: bb.4.return:
  ; CHECK-NEXT:   liveins: $w0
  ; CHECK-NEXT: {{  $}}
  ; CHECK-NEXT:   CFI_INSTRUCTION def_cfa $wsp, 0
  ; CHECK-NEXT:   CFI_INSTRUCTION negate_ra_sign_state
  ; CHECK-NEXT:   CFI_INSTRUCTION same_value $w18
  ; CHECK-NEXT:   CFI_INSTRUCTION same_value $w30
  ; CHECK-NEXT:   RET undef $lr, implicit killed $w0
  ; CHECK-NEXT: {{  $}}
  ; CHECK-NEXT: bb.5.return:
  ; CHECK-NEXT:   successors: %bb.7(0x80000000)
  ; CHECK-NEXT:   liveins: $w0
  ; CHECK-NEXT: {{  $}}
  ; CHECK-NEXT:   CFI_INSTRUCTION restore_state
  ; CHECK-NEXT:   CFI_INSTRUCTION remember_state
  ; CHECK-NEXT:   B %bb.7
  ; CHECK-NEXT: {{  $}}
  ; CHECK-NEXT: bb.6.return:
  ; CHECK-NEXT:   liveins: $w0
  ; CHECK-NEXT: {{  $}}
  ; CHECK-NEXT:   early-clobber $sp, $lr = frame-destroy LDRXpost $sp, 16 :: (load (s64) from %stack.0)
  ; CHECK-NEXT:   frame-destroy CFI_INSTRUCTION def_cfa_offset 0
  ; CHECK-NEXT:   frame-destroy AUTIASP implicit-def $lr, implicit killed $lr, implicit $sp
  ; CHECK-NEXT:   frame-destroy CFI_INSTRUCTION negate_ra_sign_state
  ; CHECK-NEXT:   early-clobber $x18, $lr = frame-destroy LDRXpre $x18, -8
  ; CHECK-NEXT:   frame-destroy CFI_INSTRUCTION restore $w18
  ; CHECK-NEXT:   frame-destroy CFI_INSTRUCTION restore $w30
  ; CHECK-NEXT:   RET undef $lr, implicit killed $w0
  ; CHECK-NEXT: {{  $}}
  ; CHECK-NEXT: bb.7.return:
  ; CHECK-NEXT:   successors: %bb.6(0x80000000)
  ; CHECK-NEXT:   liveins: $w0
  ; CHECK-NEXT: {{  $}}
  ; CHECK-NEXT:   CFI_INSTRUCTION restore_state
  ; CHECK-NEXT:   B %bb.6
  bb.0.entry:
    successors: %bb.4(0x30000000), %bb.1(0x50000000)
    liveins: $w0, $lr, $x18

    CBZW renamable $w0, %bb.4

  bb.1.if.end:
    successors: %bb.3(0x30000000), %bb.2(0x50000000)
    liveins: $w0, $lr, $x18

    early-clobber $x18 = frame-setup STRXpost $lr, $x18, 8
    frame-setup CFI_INSTRUCTION escape 0x16, 0x12, 0x02, 0x82, 0x78
    frame-setup PACIASP implicit-def $lr, implicit killed $lr, implicit $sp
    frame-setup CFI_INSTRUCTION negate_ra_sign_state
    early-clobber $sp = frame-setup STRXpre killed $lr, $sp, -16 :: (store (s64) into %stack.0)
    frame-setup CFI_INSTRUCTION def_cfa_offset 16
    frame-setup CFI_INSTRUCTION offset $w30, -16
    TBNZW renamable $w0, 31, %bb.3

  bb.2.if.else:
    successors: %bb.5(0x80000000)
    liveins: $w0

    renamable $w0 = nuw nsw ADDWri killed renamable $w0, 1, 0
    BL @g, csr_aarch64_aapcs_scs, implicit-def dead $lr, implicit $sp, implicit killed $w0, implicit-def $sp, implicit-def $w0
    renamable $w8 = MOVZWi 1, 0
    $w0 = SUBWrs killed renamable $w8, killed renamable $w0, 0
    B %bb.5

  bb.3.if.then2:
    successors: %bb.5(0x80000000)
    liveins: $w0

    renamable $w0 = nsw SUBWri killed renamable $w0, 1, 0
    BL @g, csr_aarch64_aapcs_scs, implicit-def dead $lr, implicit $sp, implicit killed $w0, implicit-def $sp, implicit-def $w0
    renamable $w0 = nsw ADDWri killed renamable $w0, 1, 0
    B %bb.5

  bb.4.return:
    liveins: $w0
    RET undef $lr, implicit killed $w0

  bb.5.return:
    liveins: $w0
    B %bb.6

  bb.7.return:
    liveins: $w0
    early-clobber $sp, $lr = frame-destroy LDRXpost $sp, 16 :: (load (s64) from %stack.0)
    frame-destroy CFI_INSTRUCTION def_cfa_offset 0
    frame-destroy AUTIASP implicit-def $lr, implicit killed $lr, implicit $sp
    frame-destroy CFI_INSTRUCTION negate_ra_sign_state
    early-clobber $x18, $lr = frame-destroy LDRXpre $x18, -8
    frame-destroy CFI_INSTRUCTION restore $w18
    frame-destroy CFI_INSTRUCTION restore $w30
    RET undef $lr, implicit killed $w0

  bb.6.return:
    liveins: $w0
    B %bb.7


...
---
name:            f1
alignment:       4
exposesReturnsTwice: false
legalized:       false
regBankSelected: false
selected:        false
failedISel:      false
tracksRegLiveness: true
hasWinCFI:       false
failsVerification: false
registers:       []
liveins:
  - { reg: '$w0', virtual-reg: '' }
frameInfo:
  isFrameAddressTaken: false
  isReturnAddressTaken: false
  hasStackMap:     false
  hasPatchPoint:   false
  stackSize:       16
  offsetAdjustment: 0
  maxAlignment:    16
  adjustsStack:    true
  hasCalls:        true
  stackProtector:  ''
  maxCallFrameSize: 0
  cvBytesOfCalleeSavedRegisters: 0
  hasOpaqueSPAdjustment: false
  hasVAStart:      false
  hasMustTailInVarArgFunc: false
  hasTailCall:     false
  localFrameSize:  0
  savePoint:       ''
  restorePoint:    ''
fixedStack:      []
stack:
  - { id: 0, name: '', type: spill-slot, offset: -16, size: 8, alignment: 16,
      stack-id: default, callee-saved-register: '$lr', callee-saved-restored: true,
      debug-info-variable: '', debug-info-expression: '', debug-info-location: '' }
callSites:       []
debugValueSubstitutions: []
constants:       []
machineFunctionInfo:
  hasRedZone:      false
body:             |
  ; CHECK-LABEL: name: f1
  ; CHECK: bb.0.entry:
  ; CHECK-NEXT:   successors: %bb.5(0x30000000), %bb.1(0x50000000)
  ; CHECK-NEXT:   liveins: $w0, $lr, $x18
  ; CHECK-NEXT: {{  $}}
  ; CHECK-NEXT:   CBZW renamable $w0, %bb.5
  ; CHECK-NEXT: {{  $}}
  ; CHECK-NEXT: bb.1.if.end:
  ; CHECK-NEXT:   successors: %bb.3(0x30000000), %bb.2(0x50000000)
  ; CHECK-NEXT:   liveins: $w0, $lr, $x18
  ; CHECK-NEXT: {{  $}}
  ; CHECK-NEXT:   early-clobber $x18 = frame-setup STRXpost $lr, $x18, 8
  ; CHECK-NEXT:   frame-setup CFI_INSTRUCTION escape 0x16, 0x12, 0x02, 0x82, 0x78
  ; CHECK-NEXT:   frame-setup PACIASP implicit-def $lr, implicit killed $lr, implicit $sp
  ; CHECK-NEXT:   frame-setup CFI_INSTRUCTION negate_ra_sign_state
  ; CHECK-NEXT:   early-clobber $sp = frame-setup STRXpre killed $lr, $sp, -16 :: (store (s64) into %stack.0)
  ; CHECK-NEXT:   frame-setup CFI_INSTRUCTION def_cfa_offset 16
  ; CHECK-NEXT:   frame-setup CFI_INSTRUCTION offset $w30, -16
  ; CHECK-NEXT:   TBNZW renamable $w0, 31, %bb.3
  ; CHECK-NEXT: {{  $}}
  ; CHECK-NEXT: bb.2.if.else:
  ; CHECK-NEXT:   successors: %bb.4(0x80000000)
  ; CHECK-NEXT:   liveins: $w0
  ; CHECK-NEXT: {{  $}}
  ; CHECK-NEXT:   renamable $w0 = nuw nsw ADDWri killed renamable $w0, 1, 0
  ; CHECK-NEXT:   BL @g, csr_aarch64_aapcs_scs, implicit-def dead $lr, implicit $sp, implicit killed $w0, implicit-def $sp, implicit-def $w0
  ; CHECK-NEXT:   renamable $w8 = MOVZWi 1, 0
  ; CHECK-NEXT:   $w0 = SUBWrs killed renamable $w8, killed renamable $w0, 0
  ; CHECK-NEXT:   B %bb.4
  ; CHECK-NEXT: {{  $}}
  ; CHECK-NEXT: bb.3.if.then2:
  ; CHECK-NEXT:   successors: %bb.4(0x80000000)
  ; CHECK-NEXT:   liveins: $w0
  ; CHECK-NEXT: {{  $}}
  ; CHECK-NEXT:   renamable $w0 = nsw SUBWri killed renamable $w0, 1, 0
  ; CHECK-NEXT:   BL @g, csr_aarch64_aapcs_scs, implicit-def dead $lr, implicit $sp, implicit killed $w0, implicit-def $sp, implicit-def $w0
  ; CHECK-NEXT:   renamable $w0 = nsw ADDWri killed renamable $w0, 1, 0
  ; CHECK-NEXT:   B %bb.4
  ; CHECK-NEXT: {{  $}}
  ; CHECK-NEXT: bb.4.return:
  ; CHECK-NEXT:   liveins: $w0
  ; CHECK-NEXT: {{  $}}
  ; CHECK-NEXT:   early-clobber $sp, $lr = frame-destroy LDRXpost $sp, 16 :: (load (s64) from %stack.0)
  ; CHECK-NEXT:   frame-destroy CFI_INSTRUCTION def_cfa_offset 0
  ; CHECK-NEXT:   frame-destroy AUTIASP implicit-def $lr, implicit killed $lr, implicit $sp
  ; CHECK-NEXT:   frame-destroy CFI_INSTRUCTION negate_ra_sign_state
  ; CHECK-NEXT:   early-clobber $x18, $lr = frame-destroy LDRXpre $x18, -8
  ; CHECK-NEXT:   frame-destroy CFI_INSTRUCTION restore $w18
  ; CHECK-NEXT:   frame-destroy CFI_INSTRUCTION restore $w30
  ; CHECK-NEXT:   RET undef $lr, implicit killed $w0
  ; CHECK-NEXT: {{  $}}
  ; CHECK-NEXT: bb.5.return:
  ; CHECK-NEXT:   liveins: $w0
  ; CHECK-NEXT: {{  $}}
  ; CHECK-NEXT:   RET undef $lr, implicit killed $w0
  bb.0.entry:
    successors: %bb.5(0x30000000), %bb.1(0x50000000)
    liveins: $w0, $lr, $x18

    CBZW renamable $w0, %bb.5

  bb.1.if.end:
    successors: %bb.3(0x30000000), %bb.2(0x50000000)
    liveins: $w0, $lr, $x18

    early-clobber $x18 = frame-setup STRXpost $lr, $x18, 8
    frame-setup CFI_INSTRUCTION escape 0x16, 0x12, 0x02, 0x82, 0x78
    frame-setup PACIASP implicit-def $lr, implicit killed $lr, implicit $sp
    frame-setup CFI_INSTRUCTION negate_ra_sign_state
    early-clobber $sp = frame-setup STRXpre killed $lr, $sp, -16 :: (store (s64) into %stack.0)
    frame-setup CFI_INSTRUCTION def_cfa_offset 16
    frame-setup CFI_INSTRUCTION offset $w30, -16
    TBNZW renamable $w0, 31, %bb.3

  bb.2.if.else:
    successors: %bb.4(0x80000000)
    liveins: $w0

    renamable $w0 = nuw nsw ADDWri killed renamable $w0, 1, 0
    BL @g, csr_aarch64_aapcs_scs, implicit-def dead $lr, implicit $sp, implicit killed $w0, implicit-def $sp, implicit-def $w0
    renamable $w8 = MOVZWi 1, 0
    $w0 = SUBWrs killed renamable $w8, killed renamable $w0, 0
    B %bb.4

  bb.3.if.then2:
    successors: %bb.4(0x80000000)
    liveins: $w0

    renamable $w0 = nsw SUBWri killed renamable $w0, 1, 0
    BL @g, csr_aarch64_aapcs_scs, implicit-def dead $lr, implicit $sp, implicit killed $w0, implicit-def $sp, implicit-def $w0
    renamable $w0 = nsw ADDWri killed renamable $w0, 1, 0
    B %bb.4

  bb.4.return:
    liveins: $w0

    early-clobber $sp, $lr = frame-destroy LDRXpost $sp, 16 :: (load (s64) from %stack.0)
    frame-destroy CFI_INSTRUCTION def_cfa_offset 0
    frame-destroy AUTIASP implicit-def $lr, implicit killed $lr, implicit $sp
    frame-destroy CFI_INSTRUCTION negate_ra_sign_state
    early-clobber $x18, $lr = frame-destroy LDRXpre $x18, -8
    frame-destroy CFI_INSTRUCTION restore $w18
    frame-destroy CFI_INSTRUCTION restore $w30
    RET undef $lr, implicit killed $w0

  bb.5.return:
    liveins: $w0
    RET undef $lr, implicit killed $w0

...
---
name:            f2
alignment:       4
exposesReturnsTwice: false
legalized:       false
regBankSelected: false
selected:        false
failedISel:      false
tracksRegLiveness: true
hasWinCFI:       false
failsVerification: false
registers:       []
liveins:
  - { reg: '$w0', virtual-reg: '' }
frameInfo:
  isFrameAddressTaken: false
  isReturnAddressTaken: false
  hasStackMap:     false
  hasPatchPoint:   false
  stackSize:       16
  offsetAdjustment: 0
  maxAlignment:    16
  adjustsStack:    true
  hasCalls:        true
  stackProtector:  ''
  maxCallFrameSize: 0
  cvBytesOfCalleeSavedRegisters: 0
  hasOpaqueSPAdjustment: false
  hasVAStart:      false
  hasMustTailInVarArgFunc: false
  hasTailCall:     false
  localFrameSize:  0
  savePoint:       ''
  restorePoint:    ''
fixedStack:      []
stack:
  - { id: 0, name: '', type: spill-slot, offset: -16, size: 8, alignment: 16,
      stack-id: default, callee-saved-register: '$lr', callee-saved-restored: true,
      debug-info-variable: '', debug-info-expression: '', debug-info-location: '' }
callSites:       []
debugValueSubstitutions: []
constants:       []
machineFunctionInfo:
  hasRedZone:      false
body:             |
  ; CHECK-LABEL: name: f2
  ; CHECK: bb.0.entry:
  ; CHECK-NEXT:   successors: %bb.5(0x30000000), %bb.1(0x50000000)
  ; CHECK-NEXT:   liveins: $w0, $lr, $x18
  ; CHECK-NEXT: {{  $}}
  ; CHECK-NEXT:   CBZW renamable $w0, %bb.5
  ; CHECK-NEXT: {{  $}}
  ; CHECK-NEXT: bb.1.if.end:
  ; CHECK-NEXT:   successors: %bb.3(0x30000000), %bb.2(0x50000000)
  ; CHECK-NEXT:   liveins: $w0, $lr, $x18
  ; CHECK-NEXT: {{  $}}
  ; CHECK-NEXT:   early-clobber $x18 = frame-setup STRXpost $lr, $x18, 8
  ; CHECK-NEXT:   frame-setup CFI_INSTRUCTION escape 0x16, 0x12, 0x02, 0x82, 0x78
  ; CHECK-NEXT:   frame-setup PACIASP implicit-def $lr, implicit killed $lr, implicit $sp
  ; CHECK-NEXT:   frame-setup CFI_INSTRUCTION negate_ra_sign_state
  ; CHECK-NEXT:   early-clobber $sp = frame-setup STRXpre killed $lr, $sp, -16 :: (store (s64) into %stack.0)
  ; CHECK-NEXT:   frame-setup CFI_INSTRUCTION def_cfa_offset 16
  ; CHECK-NEXT:   frame-setup CFI_INSTRUCTION offset $w30, -16
  ; CHECK-NEXT:   TBNZW renamable $w0, 31, %bb.3
  ; CHECK-NEXT: {{  $}}
  ; CHECK-NEXT: bb.2.if.else:
  ; CHECK-NEXT:   successors: %bb.4(0x80000000)
  ; CHECK-NEXT:   liveins: $w0
  ; CHECK-NEXT: {{  $}}
  ; CHECK-NEXT:   renamable $w0 = nuw nsw ADDWri killed renamable $w0, 1, 0
  ; CHECK-NEXT:   BL @g, csr_aarch64_aapcs_scs, implicit-def dead $lr, implicit $sp, implicit killed $w0, implicit-def $sp, implicit-def $w0
  ; CHECK-NEXT:   renamable $w8 = MOVZWi 1, 0
  ; CHECK-NEXT:   $w0 = SUBWrs killed renamable $w8, killed renamable $w0, 0
  ; CHECK-NEXT:   B %bb.4
  ; CHECK-NEXT: {{  $}}
  ; CHECK-NEXT: bb.3.if.then2:
  ; CHECK-NEXT:   successors: %bb.4(0x80000000)
  ; CHECK-NEXT:   liveins: $w0
  ; CHECK-NEXT: {{  $}}
  ; CHECK-NEXT:   renamable $w0 = nsw SUBWri killed renamable $w0, 1, 0
  ; CHECK-NEXT:   BL @g, csr_aarch64_aapcs_scs, implicit-def dead $lr, implicit $sp, implicit killed $w0, implicit-def $sp, implicit-def $w0
  ; CHECK-NEXT:   renamable $w0 = nsw ADDWri killed renamable $w0, 1, 0
  ; CHECK-NEXT:   B %bb.4
  ; CHECK-NEXT: {{  $}}
  ; CHECK-NEXT: bb.4.return:
  ; CHECK-NEXT:   liveins: $w0
  ; CHECK-NEXT: {{  $}}
  ; CHECK-NEXT:   early-clobber $sp, $lr = frame-destroy LDRXpost $sp, 16 :: (load (s64) from %stack.0)
  ; CHECK-NEXT:   frame-destroy AUTIASP implicit-def $lr, implicit killed $lr, implicit $sp
  ; CHECK-NEXT:   early-clobber $x18, $lr = frame-destroy LDRXpre $x18, -8
  ; CHECK-NEXT:   RET undef $lr, implicit killed $w0
  ; CHECK-NEXT: {{  $}}
  ; CHECK-NEXT: bb.5.return:
  ; CHECK-NEXT:   liveins: $w0
  ; CHECK-NEXT: {{  $}}
  ; CHECK-NEXT:   CFI_INSTRUCTION def_cfa $wsp, 0
  ; CHECK-NEXT:   CFI_INSTRUCTION negate_ra_sign_state
  ; CHECK-NEXT:   CFI_INSTRUCTION same_value $w18
  ; CHECK-NEXT:   CFI_INSTRUCTION same_value $w30
  ; CHECK-NEXT:   RET undef $lr, implicit killed $w0
  bb.0.entry:
    successors: %bb.5(0x30000000), %bb.1(0x50000000)
    liveins: $w0, $lr, $x18

    CBZW renamable $w0, %bb.5

  bb.1.if.end:
    successors: %bb.3(0x30000000), %bb.2(0x50000000)
    liveins: $w0, $lr, $x18

    early-clobber $x18 = frame-setup STRXpost $lr, $x18, 8
    frame-setup CFI_INSTRUCTION escape 0x16, 0x12, 0x02, 0x82, 0x78
    frame-setup PACIASP implicit-def $lr, implicit killed $lr, implicit $sp
    frame-setup CFI_INSTRUCTION negate_ra_sign_state
    early-clobber $sp = frame-setup STRXpre killed $lr, $sp, -16 :: (store (s64) into %stack.0)
    frame-setup CFI_INSTRUCTION def_cfa_offset 16
    frame-setup CFI_INSTRUCTION offset $w30, -16
    TBNZW renamable $w0, 31, %bb.3

  bb.2.if.else:
    successors: %bb.4(0x80000000)
    liveins: $w0

    renamable $w0 = nuw nsw ADDWri killed renamable $w0, 1, 0
    BL @g, csr_aarch64_aapcs_scs, implicit-def dead $lr, implicit $sp, implicit killed $w0, implicit-def $sp, implicit-def $w0
    renamable $w8 = MOVZWi 1, 0
    $w0 = SUBWrs killed renamable $w8, killed renamable $w0, 0
    B %bb.4

  bb.3.if.then2:
    successors: %bb.4(0x80000000)
    liveins: $w0

    renamable $w0 = nsw SUBWri killed renamable $w0, 1, 0
    BL @g, csr_aarch64_aapcs_scs, implicit-def dead $lr, implicit $sp, implicit killed $w0, implicit-def $sp, implicit-def $w0
    renamable $w0 = nsw ADDWri killed renamable $w0, 1, 0
    B %bb.4

  bb.4.return:
    liveins: $w0

    early-clobber $sp, $lr = frame-destroy LDRXpost $sp, 16 :: (load (s64) from %stack.0)
    frame-destroy AUTIASP implicit-def $lr, implicit killed $lr, implicit $sp
    early-clobber $x18, $lr = frame-destroy LDRXpre $x18, -8
    RET undef $lr, implicit killed $w0

  bb.5.return:
    liveins: $w0
    RET undef $lr, implicit killed $w0

...
