The LIT test cases were migrated with the script provided by Nikita Popov. No manual changes were made. Committed without review since no functional changes, after consultation with uweigand.
49 lines
939 B
LLVM
49 lines
939 B
LLVM
; Test constant addresses, unlikely as they are.
|
|
;
|
|
; RUN: llc < %s -mtriple=s390x-linux-gnu | FileCheck %s
|
|
|
|
define void @f1() {
|
|
; CHECK-LABEL: f1:
|
|
; CHECK: lb %r0, 0
|
|
; CHECK: br %r14
|
|
%ptr = inttoptr i64 0 to ptr
|
|
%val = load volatile i8, ptr %ptr
|
|
ret void
|
|
}
|
|
|
|
define void @f2() {
|
|
; CHECK-LABEL: f2:
|
|
; CHECK: lb %r0, -524288
|
|
; CHECK: br %r14
|
|
%ptr = inttoptr i64 -524288 to ptr
|
|
%val = load volatile i8, ptr %ptr
|
|
ret void
|
|
}
|
|
|
|
define void @f3() {
|
|
; CHECK-LABEL: f3:
|
|
; CHECK-NOT: lb %r0, -524289
|
|
; CHECK: br %r14
|
|
%ptr = inttoptr i64 -524289 to ptr
|
|
%val = load volatile i8, ptr %ptr
|
|
ret void
|
|
}
|
|
|
|
define void @f4() {
|
|
; CHECK-LABEL: f4:
|
|
; CHECK: lb %r0, 524287
|
|
; CHECK: br %r14
|
|
%ptr = inttoptr i64 524287 to ptr
|
|
%val = load volatile i8, ptr %ptr
|
|
ret void
|
|
}
|
|
|
|
define void @f5() {
|
|
; CHECK-LABEL: f5:
|
|
; CHECK-NOT: lb %r0, 524288
|
|
; CHECK: br %r14
|
|
%ptr = inttoptr i64 524288 to ptr
|
|
%val = load volatile i8, ptr %ptr
|
|
ret void
|
|
}
|