File: arm64-ilp32.s

package info (click to toggle)
llvm-toolchain-15 1%3A15.0.6-4
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 1,554,644 kB
  • sloc: cpp: 5,922,452; ansic: 1,012,136; asm: 674,362; python: 191,568; objc: 73,855; f90: 42,327; lisp: 31,913; pascal: 11,973; javascript: 10,144; sh: 9,421; perl: 7,447; ml: 5,527; awk: 3,523; makefile: 2,520; xml: 885; cs: 573; fortran: 567
file content (37 lines) | stat: -rw-r--r-- 1,230 bytes parent folder | download | duplicates (20)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
// RUN: llvm-mc -triple aarch64-non-linux-gnu_ilp32 -filetype=obj \
// RUN:  %s | llvm-objdump -r - | FileCheck --check-prefix=CHECK-ILP32 %s
// RUN: llvm-mc -triple aarch64-non-linux-gnu -filetype=obj \
// RUN:  %s | llvm-objdump -r - | FileCheck --check-prefix=CHECK-LP64 %s
	.text
	.file	"../projects/clang/test/Driver/arm64-ilp32.c"
	.globl	foo
	.align	2
	.type	foo,@function
foo:                                    // @foo
// %bb.0:                               // %entry
	sub	sp, sp, #16             // =16
// CHECK-ILP32: 00000004 R_AARCH64_P32_ADR_PREL_PG_HI21 sizes
// CHECK-ILP32: 00000008 R_AARCH64_P32_ADD_ABS_LO12_NC sizes
// CHECK-LP64:  0000000000000004 R_AARCH64_ADR_PREL_PG_HI21 sizes
// CHECK-LP64:  0000000000000008 R_AARCH64_ADD_ABS_LO12_NC sizes
	adrp	x8, sizes
	add	x8, x8, :lo12:sizes
	str	w0, [sp, #12]
	str	w1, [sp, #8]
	ldr		w0, [x8]
	add	sp, sp, #16             // =16
	ret
.Lfunc_end0:
	.size	foo, .Lfunc_end0-foo

	.type	sizes,@object           // @sizes
	.data
	.globl	sizes
	.align	2
sizes:
	.word	1                       // 0x1
	.word	2                       // 0x2
	.word	4                       // 0x4
	.word	4                       // 0x4
	.word	4                       // 0x4
	.size	sizes, 20