# RUN: llc -mtriple=s390x-linux-gnu -mcpu=z14 -run-pass greedy %s -o - \
# RUN:   | FileCheck %s
#
# Test that a reload can be folded into a compare instruction after swapping
# operands (when the LHS register is spilled).

--- |
  declare i64 @foo()
  define i64 @fun1(i64* %ptr0)  { ret i64 0 }
  define i64 @fun2(i64* %ptr0)  { ret i64 0 }

  declare i32 @foo32()
  define i32 @fun3(i32* %ptr0)  { ret i32 0 }
  define i32 @fun4(i32* %ptr0)  { ret i32 0 }
...


# Test CGR -> CG
# CHECK: name:            fun1
# CHECK: CG %10, %stack.0, 0, $noreg, implicit-def $cc :: (load 8 from %stack.0)
# CHECK-NEXT: %12:gr64bit = LOCGHI %12, 8, 14, 12, implicit $cc
---
name:            fun1
alignment:       16
tracksRegLiveness: true
registers:
  - { id: 0, class: addr64bit }
  - { id: 1, class: gr64bit }
  - { id: 2, class: gr64bit }
  - { id: 3, class: gr64bit }
  - { id: 4, class: gr64bit }
  - { id: 5, class: gr64bit }
  - { id: 6, class: gr64bit }
  - { id: 7, class: gr64bit }
  - { id: 8, class: gr64bit }
  - { id: 9, class: gr64bit }
  - { id: 10, class: gr64bit }
  - { id: 11, class: gr64bit }
  - { id: 12, class: gr64bit }
  - { id: 13, class: gr64bit }
  - { id: 14, class: gr64bit }
  - { id: 15, class: gr64bit }
  - { id: 16, class: gr64bit }
  - { id: 17, class: gr64bit }
  - { id: 18, class: gr64bit }
  - { id: 19, class: gr64bit }
liveins:
  - { reg: '$r2d', virtual-reg: '%0' }
frameInfo:
  maxAlignment:    1
  hasCalls:        true
machineFunctionInfo: {}
body:             |
  bb.0:
    liveins: $r2d
  
    %0:addr64bit = COPY $r2d
    %1:gr64bit = LG %0, 0, $noreg
    %2:gr64bit = LG %0, 16, $noreg
    %3:gr64bit = LG %0, 32, $noreg
    %4:gr64bit = LG %0, 48, $noreg
    %5:gr64bit = LG %0, 64, $noreg
    %6:gr64bit = LG %0, 80, $noreg
    %7:gr64bit = LG %0, 96, $noreg
    %8:gr64bit = LG %0, 112, $noreg
    %9:gr64bit = LG %0, 128, $noreg
    ADJCALLSTACKDOWN 0, 0
    CallBRASL @foo, csr_systemz, implicit-def dead $r14d, implicit-def dead $cc, implicit $fpc, implicit-def $r2d
    %10:gr64bit = COPY $r2d
    ADJCALLSTACKUP 0, 0
    CGR %10, %1, implicit-def $cc
    %12:gr64bit = COPY %10
    %12:gr64bit = LOCGHI %12, 0, 14, 10, implicit killed $cc
    CGR %10, %2, implicit-def $cc
    %12:gr64bit = LOCGHI %12, 1, 14, 10, implicit killed $cc
    CGR %10, %3, implicit-def $cc
    %12:gr64bit = LOCGHI %12, 2, 14, 10, implicit killed $cc
    CGR %10, %4, implicit-def $cc
    %12:gr64bit = LOCGHI %12, 3, 14, 10, implicit killed $cc
    CGR %10, %5, implicit-def $cc
    %12:gr64bit = LOCGHI %12, 4, 14, 10, implicit killed $cc
    CGR %10, %6, implicit-def $cc
    %12:gr64bit = LOCGHI %12, 5, 14, 10, implicit killed $cc
    CGR %10, %7, implicit-def $cc
    %12:gr64bit = LOCGHI %12, 6, 14, 10, implicit killed $cc
    CGR %10, %8, implicit-def $cc
    %12:gr64bit = LOCGHI %12, 7, 14, 10, implicit killed $cc
    CGR %9, %10, implicit-def $cc
    %12:gr64bit = LOCGHI %12, 8, 14, 10, implicit killed $cc
    $r2d = COPY %12
    Return implicit $r2d
...


# Test CLGR -> CLG
# CHECK: name:            fun2
# CHECK: CLG %10, %stack.0, 0, $noreg, implicit-def $cc :: (load 8 from %stack.0)
# CHECK-NEXT: %12:gr64bit = LOCGHI %12, 8, 14, 12, implicit $cc
---
name:            fun2
alignment:       16
tracksRegLiveness: true
registers:
  - { id: 0, class: addr64bit }
  - { id: 1, class: gr64bit }
  - { id: 2, class: gr64bit }
  - { id: 3, class: gr64bit }
  - { id: 4, class: gr64bit }
  - { id: 5, class: gr64bit }
  - { id: 6, class: gr64bit }
  - { id: 7, class: gr64bit }
  - { id: 8, class: gr64bit }
  - { id: 9, class: gr64bit }
  - { id: 10, class: gr64bit }
  - { id: 11, class: gr64bit }
  - { id: 12, class: gr64bit }
  - { id: 13, class: gr64bit }
  - { id: 14, class: gr64bit }
  - { id: 15, class: gr64bit }
  - { id: 16, class: gr64bit }
  - { id: 17, class: gr64bit }
  - { id: 18, class: gr64bit }
  - { id: 19, class: gr64bit }
liveins:
  - { reg: '$r2d', virtual-reg: '%0' }
frameInfo:
  maxAlignment:    1
  hasCalls:        true
machineFunctionInfo: {}
body:             |
  bb.0:
    liveins: $r2d
  
    %0:addr64bit = COPY $r2d
    %1:gr64bit = LG %0, 0, $noreg
    %2:gr64bit = LG %0, 16, $noreg
    %3:gr64bit = LG %0, 32, $noreg
    %4:gr64bit = LG %0, 48, $noreg
    %5:gr64bit = LG %0, 64, $noreg
    %6:gr64bit = LG %0, 80, $noreg
    %7:gr64bit = LG %0, 96, $noreg
    %8:gr64bit = LG %0, 112, $noreg
    %9:gr64bit = LG %0, 128, $noreg
    ADJCALLSTACKDOWN 0, 0
    CallBRASL @foo, csr_systemz, implicit-def dead $r14d, implicit-def dead $cc, implicit $fpc, implicit-def $r2d
    %10:gr64bit = COPY $r2d
    ADJCALLSTACKUP 0, 0
    CGR %10, %1, implicit-def $cc
    %12:gr64bit = COPY %10
    %12:gr64bit = LOCGHI %12, 0, 14, 10, implicit killed $cc
    CGR %10, %2, implicit-def $cc
    %12:gr64bit = LOCGHI %12, 1, 14, 10, implicit killed $cc
    CGR %10, %3, implicit-def $cc
    %12:gr64bit = LOCGHI %12, 2, 14, 10, implicit killed $cc
    CGR %10, %4, implicit-def $cc
    %12:gr64bit = LOCGHI %12, 3, 14, 10, implicit killed $cc
    CGR %10, %5, implicit-def $cc
    %12:gr64bit = LOCGHI %12, 4, 14, 10, implicit killed $cc
    CGR %10, %6, implicit-def $cc
    %12:gr64bit = LOCGHI %12, 5, 14, 10, implicit killed $cc
    CGR %10, %7, implicit-def $cc
    %12:gr64bit = LOCGHI %12, 6, 14, 10, implicit killed $cc
    CGR %10, %8, implicit-def $cc
    %12:gr64bit = LOCGHI %12, 7, 14, 10, implicit killed $cc
    CLGR %9, %10, implicit-def $cc
    %12:gr64bit = LOCGHI %12, 8, 14, 10, implicit killed $cc
    $r2d = COPY %12
    Return implicit $r2d
...


# Test CR -> C
# CHECK: name:            fun3
# CHECK: C %10, %stack.0, 0, $noreg, implicit-def $cc :: (load 4 from %stack.0)
# CHECK: %12:gr32bit = LOCHIMux %12, 8, 14, 12, implicit $cc
---
name:            fun3
alignment:       16
tracksRegLiveness: true
registers:
  - { id: 0, class: addr64bit }
  - { id: 1, class: gr32bit }
  - { id: 2, class: gr32bit }
  - { id: 3, class: gr32bit }
  - { id: 4, class: gr32bit }
  - { id: 5, class: gr32bit }
  - { id: 6, class: gr32bit }
  - { id: 7, class: gr32bit }
  - { id: 8, class: gr32bit }
  - { id: 9, class: gr32bit }
  - { id: 10, class: gr32bit }
  - { id: 11, class: gr32bit }
  - { id: 12, class: gr32bit }
  - { id: 13, class: gr32bit }
  - { id: 14, class: gr32bit }
  - { id: 15, class: gr32bit }
  - { id: 16, class: gr32bit }
  - { id: 17, class: gr32bit }
  - { id: 18, class: gr32bit }
  - { id: 19, class: gr32bit }
liveins:
  - { reg: '$r2d', virtual-reg: '%0' }
frameInfo:
  maxAlignment:    1
  hasCalls:        true
machineFunctionInfo: {}
body:             |
  bb.0:
    liveins: $r2d
  
    %0:addr64bit = COPY $r2d
    %1:gr32bit = LMux %0, 0, $noreg
    %2:gr32bit = LMux %0, 8, $noreg
    %3:gr32bit = LMux %0, 16, $noreg
    %4:gr32bit = LMux %0, 24, $noreg
    %5:gr32bit = LMux %0, 32, $noreg
    %6:gr32bit = LMux %0, 40, $noreg
    %7:gr32bit = LMux %0, 48, $noreg
    %8:gr32bit = LMux %0, 56, $noreg
    %9:gr32bit = LMux %0, 64, $noreg
    ADJCALLSTACKDOWN 0, 0
    CallBRASL @foo, csr_systemz, implicit-def dead $r14d, implicit-def dead $cc, implicit $fpc, implicit-def $r2l
    %10:gr32bit = COPY $r2l
    ADJCALLSTACKUP 0, 0
    CR %10, %1, implicit-def $cc
    %12:gr32bit = COPY %10
    %12:gr32bit = LOCHIMux %12, 0, 14, 10, implicit killed $cc
    CR %10, %2, implicit-def $cc
    %12:gr32bit = LOCHIMux %12, 1, 14, 10, implicit killed $cc
    CR %10, %3, implicit-def $cc
    %12:gr32bit = LOCHIMux %12, 2, 14, 10, implicit killed $cc
    CR %10, %4, implicit-def $cc
    %12:gr32bit = LOCHIMux %12, 3, 14, 10, implicit killed $cc
    CR %10, %5, implicit-def $cc
    %12:gr32bit = LOCHIMux %12, 4, 14, 10, implicit killed $cc
    CR %10, %6, implicit-def $cc
    %12:gr32bit = LOCHIMux %12, 5, 14, 10, implicit killed $cc
    CR %10, %7, implicit-def $cc
    %12:gr32bit = LOCHIMux %12, 6, 14, 10, implicit killed $cc
    CR %10, %8, implicit-def $cc
    %12:gr32bit = LOCHIMux %12, 7, 14, 10, implicit killed $cc
    CR %9, %10, implicit-def $cc
    %12:gr32bit = LOCHIMux %12, 8, 14, 10, implicit killed $cc
    $r2l = COPY %12
    Return implicit $r2l
...


# Test CLR -> CL
# CHECK: name:            fun4
# CHECK: CL %10, %stack.0, 0, $noreg, implicit-def $cc :: (load 4 from %stack.0)
# CHECK: %12:gr32bit = LOCHIMux %12, 8, 14, 12, implicit $cc
---
name:            fun4
alignment:       16
tracksRegLiveness: true
registers:
  - { id: 0, class: addr64bit }
  - { id: 1, class: gr32bit }
  - { id: 2, class: gr32bit }
  - { id: 3, class: gr32bit }
  - { id: 4, class: gr32bit }
  - { id: 5, class: gr32bit }
  - { id: 6, class: gr32bit }
  - { id: 7, class: gr32bit }
  - { id: 8, class: gr32bit }
  - { id: 9, class: gr32bit }
  - { id: 10, class: gr32bit }
  - { id: 11, class: gr32bit }
  - { id: 12, class: gr32bit }
  - { id: 13, class: gr32bit }
  - { id: 14, class: gr32bit }
  - { id: 15, class: gr32bit }
  - { id: 16, class: gr32bit }
  - { id: 17, class: gr32bit }
  - { id: 18, class: gr32bit }
  - { id: 19, class: gr32bit }
liveins:
  - { reg: '$r2d', virtual-reg: '%0' }
frameInfo:
  maxAlignment:    1
  hasCalls:        true
machineFunctionInfo: {}
body:             |
  bb.0:
    liveins: $r2d
  
    %0:addr64bit = COPY $r2d
    %1:gr32bit = LMux %0, 0, $noreg
    %2:gr32bit = LMux %0, 8, $noreg
    %3:gr32bit = LMux %0, 16, $noreg
    %4:gr32bit = LMux %0, 24, $noreg
    %5:gr32bit = LMux %0, 32, $noreg
    %6:gr32bit = LMux %0, 40, $noreg
    %7:gr32bit = LMux %0, 48, $noreg
    %8:gr32bit = LMux %0, 56, $noreg
    %9:gr32bit = LMux %0, 64, $noreg
    ADJCALLSTACKDOWN 0, 0
    CallBRASL @foo, csr_systemz, implicit-def dead $r14d, implicit-def dead $cc, implicit $fpc, implicit-def $r2l
    %10:gr32bit = COPY $r2l
    ADJCALLSTACKUP 0, 0
    CR %10, %1, implicit-def $cc
    %12:gr32bit = COPY %10
    %12:gr32bit = LOCHIMux %12, 0, 14, 10, implicit killed $cc
    CR %10, %2, implicit-def $cc
    %12:gr32bit = LOCHIMux %12, 1, 14, 10, implicit killed $cc
    CR %10, %3, implicit-def $cc
    %12:gr32bit = LOCHIMux %12, 2, 14, 10, implicit killed $cc
    CR %10, %4, implicit-def $cc
    %12:gr32bit = LOCHIMux %12, 3, 14, 10, implicit killed $cc
    CR %10, %5, implicit-def $cc
    %12:gr32bit = LOCHIMux %12, 4, 14, 10, implicit killed $cc
    CR %10, %6, implicit-def $cc
    %12:gr32bit = LOCHIMux %12, 5, 14, 10, implicit killed $cc
    CR %10, %7, implicit-def $cc
    %12:gr32bit = LOCHIMux %12, 6, 14, 10, implicit killed $cc
    CR %10, %8, implicit-def $cc
    %12:gr32bit = LOCHIMux %12, 7, 14, 10, implicit killed $cc
    CLR %9, %10, implicit-def $cc
    %12:gr32bit = LOCHIMux %12, 8, 14, 10, implicit killed $cc
    $r2l = COPY %12
    Return implicit $r2l
...
