1*a9643ea8Slogwang/* 2*a9643ea8Slogwang * Linker script for 64-bit vDSO. 3*a9643ea8Slogwang * Copied from Linux kernel arch/x86/vdso/vdso-layout.lds.S 4*a9643ea8Slogwang * 5*a9643ea8Slogwang * $FreeBSD$ 6*a9643ea8Slogwang */ 7*a9643ea8Slogwang 8*a9643ea8SlogwangSECTIONS 9*a9643ea8Slogwang{ 10*a9643ea8Slogwang . = . + SIZEOF_HEADERS; 11*a9643ea8Slogwang 12*a9643ea8Slogwang .hash : { *(.hash) } :text 13*a9643ea8Slogwang .gnu.hash : { *(.gnu.hash) } 14*a9643ea8Slogwang .dynsym : { *(.dynsym) } 15*a9643ea8Slogwang .dynstr : { *(.dynstr) } 16*a9643ea8Slogwang .gnu.version : { *(.gnu.version) } 17*a9643ea8Slogwang .gnu.version_d : { *(.gnu.version_d) } 18*a9643ea8Slogwang .gnu.version_r : { *(.gnu.version_r) } 19*a9643ea8Slogwang 20*a9643ea8Slogwang .note : { *(.note.*) } :text :note 21*a9643ea8Slogwang 22*a9643ea8Slogwang .eh_frame_hdr : { *(.eh_frame_hdr) } :text :eh_frame_hdr 23*a9643ea8Slogwang .eh_frame : { KEEP (*(.eh_frame)) } :text 24*a9643ea8Slogwang 25*a9643ea8Slogwang .dynamic : { *(.dynamic) } :text :dynamic 26*a9643ea8Slogwang 27*a9643ea8Slogwang .rodata : { *(.rodata*) } :text 28*a9643ea8Slogwang .data : { 29*a9643ea8Slogwang *(.data*) 30*a9643ea8Slogwang *(.sdata*) 31*a9643ea8Slogwang *(.got.plt) *(.got) 32*a9643ea8Slogwang *(.gnu.linkonce.d.*) 33*a9643ea8Slogwang *(.bss*) 34*a9643ea8Slogwang *(.dynbss*) 35*a9643ea8Slogwang *(.gnu.linkonce.b.*) 36*a9643ea8Slogwang } 37*a9643ea8Slogwang 38*a9643ea8Slogwang .altinstructions : { *(.altinstructions) } 39*a9643ea8Slogwang .altinstr_replacement : { *(.altinstr_replacement) } 40*a9643ea8Slogwang 41*a9643ea8Slogwang . = ALIGN(0x100); 42*a9643ea8Slogwang .text : { *(.test .text*) } :text =0x90909090 43*a9643ea8Slogwang} 44*a9643ea8Slogwang 45*a9643ea8SlogwangPHDRS 46*a9643ea8Slogwang{ 47*a9643ea8Slogwang text PT_LOAD FLAGS(5) FILEHDR PHDRS; /* PF_R|PF_X */ 48*a9643ea8Slogwang dynamic PT_DYNAMIC FLAGS(4); /* PF_R */ 49*a9643ea8Slogwang note PT_NOTE FLAGS(4); /* PF_R */ 50*a9643ea8Slogwang eh_frame_hdr PT_GNU_EH_FRAME; 51*a9643ea8Slogwang} 52*a9643ea8Slogwang 53*a9643ea8SlogwangVERSION 54*a9643ea8Slogwang{ 55*a9643ea8Slogwang LINUX_2.6 { 56*a9643ea8Slogwang global: 57*a9643ea8Slogwang time; 58*a9643ea8Slogwang __vdso_time; 59*a9643ea8Slogwang gettimeofday; 60*a9643ea8Slogwang __vdso_gettimeofday; 61*a9643ea8Slogwang getcpu; 62*a9643ea8Slogwang __vdso_getcpu; 63*a9643ea8Slogwang clock_gettime; 64*a9643ea8Slogwang __vdso_clock_gettime; 65*a9643ea8Slogwang linux_rt_sigcode; 66*a9643ea8Slogwang linux_platform; 67*a9643ea8Slogwang local: *; 68*a9643ea8Slogwang }; 69*a9643ea8Slogwang} 70