| # NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py | |
| # RUN: llc -mtriple=i386-linux-gnu -run-pass=instruction-select -verify-machineinstrs %s -o - | FileCheck %s | |
| --- | | |
| define i32* @inttoptr_p0_s32(i32 %val) { | |
| entry: | |
| %0 = inttoptr i32 %val to i32* | |
| ret i32* %0 | |
| } | |
| ... | |
| --- | |
| name: inttoptr_p0_s32 | |
| alignment: 4 | |
| legalized: true | |
| regBankSelected: true | |
| tracksRegLiveness: true | |
| registers: | |
| - { id: 0, class: gpr } | |
| - { id: 1, class: gpr } | |
| - { id: 2, class: gpr } | |
| frameInfo: | |
| maxAlignment: 4 | |
| fixedStack: | |
| - { id: 0, size: 4, alignment: 16, stack-id: 0, isImmutable: true } | |
| body: | | |
| bb.1.entry: | |
| ; CHECK-LABEL: name: inttoptr_p0_s32 | |
| ; CHECK: [[MOV32rm:%[0-9]+]]:gr32 = MOV32rm %fixed-stack.0, 1, $noreg, 0, $noreg :: (invariant load 4 from %fixed-stack.0, align 0) | |
| ; CHECK: $eax = COPY [[MOV32rm]] | |
| ; CHECK: RET 0, implicit $eax | |
| %1:gpr(p0) = G_FRAME_INDEX %fixed-stack.0 | |
| %0:gpr(s32) = G_LOAD %1(p0) :: (invariant load 4 from %fixed-stack.0, align 0) | |
| %2:gpr(p0) = G_INTTOPTR %0(s32) | |
| $eax = COPY %2(p0) | |
| RET 0, implicit $eax | |
| ... |