[NFC][RemoveDIs] Prefer iterators over inst-pointers in InstCombine
[llvm-project.git] / llvm / test / CodeGen / AArch64 / GlobalISel / legalize-global-pic.mir
blob706bab2d0092fd342e5bd815e6591f52f54e2b50
1 # NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py
2 # RUN: llc -O0 -run-pass=legalizer --relocation-model=pic %s -o - | FileCheck %s --check-prefix=PIC
4 --- |
5   target datalayout = "e-m:o-i64:64-i128:128-n32:64-S128"
6   target triple = "aarch64--"
7   @var = external global i8
8   define i8* @test_global() { ret i8* undef }
9   define i8* @test_global_with_offset() { ret i8* undef }
10 ...
11 ---
12 name:            test_global
13 registers:
14   - { id: 0, class: _ }
15 body: |
16   bb.0:
18     ; We don't want to lower to G_ADD_LOW when we need a GOT access, or when the code
19     ; model isn't 'Small'.
21     ; PIC-LABEL: name: test_global
22     ; PIC: [[GV:%[0-9]+]]:_(p0) = G_GLOBAL_VALUE @var
23     ; PIC: [[PTRTOINT:%[0-9]+]]:_(s64) = G_PTRTOINT [[GV]](p0)
24     ; PIC: $x0 = COPY [[PTRTOINT]](s64)
25     %0(p0) = G_GLOBAL_VALUE @var
26     %1:_(s64) = G_PTRTOINT %0
27     $x0 = COPY %1
28 ...
29 ---
30 name:            test_global_with_offset
31 registers:
32   - { id: 0, class: _ }
33 body: |
34   bb.0:
35     ; PIC-LABEL: name: test_global_with_offset
36     ; PIC: [[GV:%[0-9]+]]:_(p0) = G_GLOBAL_VALUE @var + 1
37     ; PIC: [[PTRTOINT:%[0-9]+]]:_(s64) = G_PTRTOINT [[GV]](p0)
38     ; PIC: $x0 = COPY [[PTRTOINT]](s64)
39     %0(p0) = G_GLOBAL_VALUE @var + 1
40     %1:_(s64) = G_PTRTOINT %0
41     $x0 = COPY %1
42 ...