brintos

brintos / llvm-project-archived public Read only

0
0
Text · 939 B · 3720568 Raw
49 lines · plain
1; Test constant addresses, unlikely as they are.2;3; RUN: llc < %s -mtriple=s390x-linux-gnu | FileCheck %s4 5define void @f1() {6; CHECK-LABEL: f1:7; CHECK: lb %r0, 08; CHECK: br %r149  %ptr = inttoptr i64 0 to ptr10  %val = load volatile i8, ptr %ptr11  ret void12}13 14define void @f2() {15; CHECK-LABEL: f2:16; CHECK: lb %r0, -52428817; CHECK: br %r1418  %ptr = inttoptr i64 -524288 to ptr19  %val = load volatile i8, ptr %ptr20  ret void21}22 23define void @f3() {24; CHECK-LABEL: f3:25; CHECK-NOT: lb %r0, -52428926; CHECK: br %r1427  %ptr = inttoptr i64 -524289 to ptr28  %val = load volatile i8, ptr %ptr29  ret void30}31 32define void @f4() {33; CHECK-LABEL: f4:34; CHECK: lb %r0, 52428735; CHECK: br %r1436  %ptr = inttoptr i64 524287 to ptr37  %val = load volatile i8, ptr %ptr38  ret void39}40 41define void @f5() {42; CHECK-LABEL: f5:43; CHECK-NOT: lb %r0, 52428844; CHECK: br %r1445  %ptr = inttoptr i64 524288 to ptr46  %val = load volatile i8, ptr %ptr47  ret void48}49