1 ; RUN: llc < %s | FileCheck %s 2 ; RUN: llc -relocation-model=pic < %s | FileCheck %s 3 4 target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" 5 target triple = "x86_64-unknown-linux-gnu" 6 7 @cmp8 = external hidden global i8, !absolute_symbol !0 8 @cmp32 = external hidden global i8, !absolute_symbol !1 9 10 declare void @f() 11 12 define void @foo8(i64 %val) { 13 ; CHECK: cmpq $cmp8@ABS8, %rdi 14 %cmp = icmp ule i64 %val, ptrtoint (i8* @cmp8 to i64) 15 br i1 %cmp, label %t, label %f 16 17 t: 18 call void @f() 19 ret void 20 21 f: 22 ret void 23 } 24 25 define void @foo32(i64 %val) { 26 ; CHECK: cmpq $cmp32, %rdi 27 %cmp = icmp ule i64 %val, ptrtoint (i8* @cmp32 to i64) 28 br i1 %cmp, label %t, label %f 29 30 t: 31 call void @f() 32 ret void 33 34 f: 35 ret void 36 } 37 38 !0 = !{i64 0, i64 128} 39 !1 = !{i64 0, i64 2147483648} 40