1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py 2; RUN: llc -mtriple=x86_64-linux-gnu -global-isel -verify-machineinstrs < %s -o - | FileCheck %s --check-prefix=CHECK 3 4define i1 @ptrtoint_s1_p0(i64* %p) { 5; CHECK-LABEL: ptrtoint_s1_p0: 6; CHECK: # %bb.0: # %entry 7; CHECK-NEXT: movl %edi, %eax 8; CHECK-NEXT: retq 9entry: 10 %0 = ptrtoint i64* %p to i1 11 ret i1 %0 12} 13 14define i8 @ptrtoint_s8_p0(i64* %p) { 15; CHECK-LABEL: ptrtoint_s8_p0: 16; CHECK: # %bb.0: # %entry 17; CHECK-NEXT: movl %edi, %eax 18; CHECK-NEXT: retq 19entry: 20 %0 = ptrtoint i64* %p to i8 21 ret i8 %0 22} 23 24define i16 @ptrtoint_s16_p0(i64* %p) { 25; CHECK-LABEL: ptrtoint_s16_p0: 26; CHECK: # %bb.0: # %entry 27; CHECK-NEXT: movl %edi, %eax 28; CHECK-NEXT: retq 29entry: 30 %0 = ptrtoint i64* %p to i16 31 ret i16 %0 32} 33 34define i32 @ptrtoint_s32_p0(i64* %p) { 35; CHECK-LABEL: ptrtoint_s32_p0: 36; CHECK: # %bb.0: # %entry 37; CHECK-NEXT: movl %edi, %eax 38; CHECK-NEXT: retq 39entry: 40 %0 = ptrtoint i64* %p to i32 41 ret i32 %0 42} 43 44define i64 @ptrtoint_s64_p0(i64* %p) { 45; CHECK-LABEL: ptrtoint_s64_p0: 46; CHECK: # %bb.0: # %entry 47; CHECK-NEXT: movq %rdi, %rax 48; CHECK-NEXT: retq 49entry: 50 %0 = ptrtoint i64* %p to i64 51 ret i64 %0 52} 53