2 // RUN
: llvm-mc
-filetype
=obj
-triple
=aarch64
%s
-o
%t.o
3 // RUN
: llvm-mc
-filetype
=obj
-triple
=aarch64
%S
/Inputs
/abs255.s
-o
%t255.o
4 // RUN
: llvm-mc
-filetype
=obj
-triple
=aarch64
%S
/Inputs
/abs256.s
-o
%t256.o
5 // RUN
: llvm-mc
-filetype
=obj
-triple
=aarch64
%S
/Inputs
/abs257.s
-o
%t257.o
6 // RUN
: llvm-mc
-filetype
=obj
-triple
=aarch64_be
%s
-o
%t.be.o
7 // RUN
: llvm-mc
-filetype
=obj
-triple
=aarch64_be
%S
/Inputs
/abs256.s
-o
%t256.be.o
12 .hword foo - . + 0x212057
13 .hword foo - . + 0x1fa05a
15 // Note
: If this test fails
, it probably happens because of
16 // the change of the address of the
.data section.
17 // You may found the correct address in the aarch64_abs16.s test
,
18 // if it is already fixed. Then
, update addends accordingly.
19 // RUN
: ld.lld
-z max-page-size
=4096 %t.o
%t256.o
-o
%t
20 // RUN
: llvm-objdump
-s
--section
=.data %t | FileCheck %s --check-prefixes=CHECK,LE
21 // RUN
: ld.lld
-z max-page-size
=4096 %t.be.o
%t256.be.o
-o
%t.
be
22 // RUN
: llvm-objdump
-s
--section
=.data %t.be | FileCheck %s --check-prefixes=CHECK,BE
24 // CHECK
: Contents of section
.data:
25 // 202158: S
= 0x100, A = 0x212157, P
= 0x202158
27 // 212a5a
: S
= 0x100, A = 0x1fa05a, P
= 0x20215a
29 // LE-NEXT
: 202158 ffff0080
30 // BE-NEXT
: 202158 ffff8000
32 // RUN
: not ld.lld
-z max-page-size
=4096 %t.o
%t255.o
-o
/dev
/null
2>&1 | FileCheck
%s
--check-prefix
=OVERFLOW1
33 // OVERFLOW1
: relocation R_AARCH64_PREL16 out of range
: -32769 is
not in
[-32768, 65535]; references
'foo'
35 // RUN
: not ld.lld
-z max-page-size
=4096 %t.o
%t257.o
-o
/dev
/null
2>&1 | FileCheck
%s
--check-prefix
=OVERFLOW2
36 // OVERFLOW2
: relocation R_AARCH64_PREL16 out of range
: 65536 is
not in
[-32768, 65535]; references
'foo'