142 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc -mtriple=i686-linux-gnu -run-pass=legalizer -verify-machineinstrs %s -o - | FileCheck %s3 4--- |5 6 define i1 @ptrtoint_s1_p0(ptr %p) {7 entry:8 %0 = ptrtoint ptr %p to i19 ret i1 %010 }11 12 define i8 @ptrtoint_s8_p0(ptr %p) {13 entry:14 %0 = ptrtoint ptr %p to i815 ret i8 %016 }17 18 define i16 @ptrtoint_s16_p0(ptr %p) {19 entry:20 %0 = ptrtoint ptr %p to i1621 ret i16 %022 }23 24 define i32 @ptrtoint_s32_p0(ptr %p) {25 entry:26 %0 = ptrtoint ptr %p to i3227 ret i32 %028 }29 30...31---32name: ptrtoint_s1_p033alignment: 1634tracksRegLiveness: true35registers:36 - { id: 0, class: _ }37 - { id: 1, class: _ }38 - { id: 2, class: _ }39 - { id: 3, class: _ }40frameInfo:41 maxAlignment: 442fixedStack:43 - { id: 0, size: 4, alignment: 16, stack-id: default, isImmutable: true }44body: |45 bb.1.entry:46 ; CHECK-LABEL: name: ptrtoint_s1_p047 ; CHECK: [[FRAME_INDEX:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.048 ; CHECK: [[LOAD:%[0-9]+]]:_(p0) = G_LOAD [[FRAME_INDEX]](p0) :: (invariant load (p0) from %fixed-stack.0, align 16)49 ; CHECK: [[PTRTOINT:%[0-9]+]]:_(s1) = G_PTRTOINT [[LOAD]](p0)50 ; CHECK: [[ANYEXT:%[0-9]+]]:_(s8) = G_ANYEXT [[PTRTOINT]](s1)51 ; CHECK: $al = COPY [[ANYEXT]](s8)52 ; CHECK: RET 0, implicit $al53 %1:_(p0) = G_FRAME_INDEX %fixed-stack.054 %0:_(p0) = G_LOAD %1(p0) :: (invariant load (p0) from %fixed-stack.0, align 16)55 %2:_(s1) = G_PTRTOINT %0(p0)56 %3:_(s8) = G_ANYEXT %2(s1)57 $al = COPY %3(s8)58 RET 0, implicit $al59 60...61---62name: ptrtoint_s8_p063alignment: 1664tracksRegLiveness: true65registers:66 - { id: 0, class: _ }67 - { id: 1, class: _ }68 - { id: 2, class: _ }69frameInfo:70 maxAlignment: 471fixedStack:72 - { id: 0, size: 4, alignment: 16, stack-id: default, isImmutable: true }73body: |74 bb.1.entry:75 ; CHECK-LABEL: name: ptrtoint_s8_p076 ; CHECK: [[FRAME_INDEX:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.077 ; CHECK: [[LOAD:%[0-9]+]]:_(p0) = G_LOAD [[FRAME_INDEX]](p0) :: (invariant load (p0) from %fixed-stack.0, align 16)78 ; CHECK: [[PTRTOINT:%[0-9]+]]:_(s8) = G_PTRTOINT [[LOAD]](p0)79 ; CHECK: $al = COPY [[PTRTOINT]](s8)80 ; CHECK: RET 0, implicit $al81 %1:_(p0) = G_FRAME_INDEX %fixed-stack.082 %0:_(p0) = G_LOAD %1(p0) :: (invariant load (p0) from %fixed-stack.0, align 16)83 %2:_(s8) = G_PTRTOINT %0(p0)84 $al = COPY %2(s8)85 RET 0, implicit $al86 87...88---89name: ptrtoint_s16_p090alignment: 1691tracksRegLiveness: true92registers:93 - { id: 0, class: _ }94 - { id: 1, class: _ }95 - { id: 2, class: _ }96frameInfo:97 maxAlignment: 498fixedStack:99 - { id: 0, size: 4, alignment: 16, stack-id: default, isImmutable: true }100body: |101 bb.1.entry:102 ; CHECK-LABEL: name: ptrtoint_s16_p0103 ; CHECK: [[FRAME_INDEX:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.0104 ; CHECK: [[LOAD:%[0-9]+]]:_(p0) = G_LOAD [[FRAME_INDEX]](p0) :: (invariant load (p0) from %fixed-stack.0, align 16)105 ; CHECK: [[PTRTOINT:%[0-9]+]]:_(s16) = G_PTRTOINT [[LOAD]](p0)106 ; CHECK: $ax = COPY [[PTRTOINT]](s16)107 ; CHECK: RET 0, implicit $ax108 %1:_(p0) = G_FRAME_INDEX %fixed-stack.0109 %0:_(p0) = G_LOAD %1(p0) :: (invariant load (p0) from %fixed-stack.0, align 16)110 %2:_(s16) = G_PTRTOINT %0(p0)111 $ax = COPY %2(s16)112 RET 0, implicit $ax113 114...115---116name: ptrtoint_s32_p0117alignment: 16118tracksRegLiveness: true119registers:120 - { id: 0, class: _ }121 - { id: 1, class: _ }122 - { id: 2, class: _ }123frameInfo:124 maxAlignment: 4125fixedStack:126 - { id: 0, size: 4, alignment: 16, stack-id: default, isImmutable: true }127body: |128 bb.1.entry:129 ; CHECK-LABEL: name: ptrtoint_s32_p0130 ; CHECK: [[FRAME_INDEX:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.0131 ; CHECK: [[LOAD:%[0-9]+]]:_(p0) = G_LOAD [[FRAME_INDEX]](p0) :: (invariant load (p0) from %fixed-stack.0, align 16)132 ; CHECK: [[PTRTOINT:%[0-9]+]]:_(s32) = G_PTRTOINT [[LOAD]](p0)133 ; CHECK: $eax = COPY [[PTRTOINT]](s32)134 ; CHECK: RET 0, implicit $eax135 %1:_(p0) = G_FRAME_INDEX %fixed-stack.0136 %0:_(p0) = G_LOAD %1(p0) :: (invariant load (p0) from %fixed-stack.0, align 16)137 %2:_(s32) = G_PTRTOINT %0(p0)138 $eax = COPY %2(s32)139 RET 0, implicit $eax140 141...142