; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --version 2
; Test use of LOAD INDEXED ADDRESS byte instructions.
;
; RUN: llc < %s -mtriple=s390x-linux-gnu -mcpu=z17 | FileCheck %s

; DO NOT USE: LXAB with base and index.
define dso_local ptr @f0(ptr %ptr, i32 %idx) {
; CHECK-LABEL: f0:
; CHECK:       # %bb.0:
; CHECK-NEXT:    agfr %r2, %r3
; CHECK-NEXT:    br %r14
  %idxprom = sext i32 %idx to i64
  %arrayidx = getelementptr inbounds i8, ptr %ptr, i64 %idxprom
  ret ptr %arrayidx
}

; DO NOT USE: LXAB with base and index (implied extension).
define dso_local ptr @f1(ptr %ptr, i32 signext %idx) {
; CHECK-LABEL: f1:
; CHECK:       # %bb.0:
; CHECK-NEXT:    agr %r2, %r3
; CHECK-NEXT:    br %r14
  %idxprom = sext i32 %idx to i64
  %arrayidx = getelementptr inbounds i8, ptr %ptr, i64 %idxprom
  ret ptr %arrayidx
}

; LXAB with base and index and max displacement.
define dso_local ptr @f2(ptr %ptr, i32 %idx) {
; CHECK-LABEL: f2:
; CHECK:       # %bb.0:
; CHECK-NEXT:    lxab %r2, 524287(%r3,%r2)
; CHECK-NEXT:    br %r14
  %idxoff = add i32 %idx, 524287
  %idxprom = sext i32 %idxoff to i64
  %arrayidx = getelementptr inbounds i8, ptr %ptr, i64 %idxprom
  ret ptr %arrayidx
}

; LXAB with base and index and min displacement.
define dso_local ptr @f3(ptr %ptr, i32 %idx) {
; CHECK-LABEL: f3:
; CHECK:       # %bb.0:
; CHECK-NEXT:    lxab %r2, -524288(%r3,%r2)
; CHECK-NEXT:    br %r14
  %idxoff = add i32 %idx, -524288
  %idxprom = sext i32 %idxoff to i64
  %arrayidx = getelementptr inbounds i8, ptr %ptr, i64 %idxprom
  ret ptr %arrayidx
}

; DO NOT USE: LXAB with base and index and max displacement overflow.
define dso_local ptr @f4(ptr %ptr, i32 %idx) {
; CHECK-LABEL: f4:
; CHECK:       # %bb.0:
; CHECK-NEXT:    afi %r3, 524288
; CHECK-NEXT:    agfr %r2, %r3
; CHECK-NEXT:    br %r14
  %idxoff = add i32 %idx, 524288
  %idxprom = sext i32 %idxoff to i64
  %arrayidx = getelementptr inbounds i8, ptr %ptr, i64 %idxprom
  ret ptr %arrayidx
}

; DO NOT USE: LXAB with base and index and min displacement overflow.
define dso_local ptr @f5(ptr %ptr, i32 %idx) {
; CHECK-LABEL: f5:
; CHECK:       # %bb.0:
; CHECK-NEXT:    afi %r3, -524289
; CHECK-NEXT:    agfr %r2, %r3
; CHECK-NEXT:    br %r14
  %idxoff = add i32 %idx, -524289
  %idxprom = sext i32 %idxoff to i64
  %arrayidx = getelementptr inbounds i8, ptr %ptr, i64 %idxprom
  ret ptr %arrayidx
}

; DO NOT USE: LXAB with index.
define dso_local i64 @f6(i32 %idx) {
; CHECK-LABEL: f6:
; CHECK:       # %bb.0:
; CHECK-NEXT:    lgfr %r2, %r2
; CHECK-NEXT:    br %r14
  %idxprom = sext i32 %idx to i64
  ret i64 %idxprom
}

; LXAB with index and displacement.
define dso_local i64 @f7(i32 %idx) {
; CHECK-LABEL: f7:
; CHECK:       # %bb.0:
; CHECK-NEXT:    lxab %r2, 1(%r2,0)
; CHECK-NEXT:    br %r14
  %idxoff = add i32 %idx, 1
  %idxprom = sext i32 %idxoff to i64
  ret i64 %idxprom
}

