1 /*
2 * Linker script for 64-bit vDSO.
3 * Copied from Linux kernel arch/arm64/kernel/vdso/vdso.lds.S
4 *
5 * $FreeBSD$
6 */
7
8 SECTIONS
9 {
10 . = . + SIZEOF_HEADERS;
11
12 .hash : { *(.hash) } :text
13 .gnu.hash : { *(.gnu.hash) }
14 .dynsym : { *(.dynsym) }
15 .dynstr : { *(.dynstr) }
16 .gnu.version : { *(.gnu.version) }
17 .gnu.version_d : { *(.gnu.version_d) }
18 .gnu.version_r : { *(.gnu.version_r) }
19
20 /DISCARD/ : {
21 *(.note.GNU-stack .note.gnu.property)
22 }
23
24 .note : { *(.note.*) } :text :note
25
26 . = ALIGN(0x100);
27
28 .text : { *(.text*) } :text =0x90909090
29 PROVIDE (__etext = .);
30 PROVIDE (_etext = .);
31 PROVIDE (etext = .);
32
33 .dynamic : { *(.dynamic) } :text :dynamic
34
35 .rodata : { *(.rodata*) } :text
36 .data : {
37 *(.data*)
38 }
39
40 _end = .;
41 PROVIDE(end = .);
42
43 /DISCARD/ : {
44 *(.eh_frame .eh_frame_hdr)
45 }
46 }
47
48 PHDRS
49 {
50 text PT_LOAD FLAGS(5) FILEHDR PHDRS; /* PF_R|PF_X */
51 dynamic PT_DYNAMIC FLAGS(4); /* PF_R */
52 note PT_NOTE FLAGS(4); /* PF_R */
53 }
54
55 /*
56 * This controls what symbols we export from the DSO.
57 */
58 VERSION
59 {
60 LINUX_2.6.39 {
61 global:
62 __kernel_rt_sigreturn;
63 __kernel_gettimeofday;
64 __kernel_clock_gettime;
65 __kernel_clock_getres;
66 local: *;
67 };
68
69 LINUX_0.0 {
70 global:
71 linux_platform;
72 kern_timekeep_base;
73 linux_vdso_sigcode;
74 local: *;
75 };
76 }
Cache object: 1754ee6d0b9343354d0b9e77a16a7b5b
|