root/arch/nds32/kernel/vdso/vdso.lds.S

/* [<][>][^][v][top][bottom][index][help] */
   1 /*
   2  * SPDX-License-Identifier: GPL-2.0
   3  * Copyright (C) 2005-2017 Andes Technology Corporation
   4  */
   5 
   6 
   7 #include <linux/const.h>
   8 #include <asm/page.h>
   9 #include <asm/vdso.h>
  10 
  11 OUTPUT_ARCH(nds32)
  12 
  13 SECTIONS
  14 {
  15         . = SIZEOF_HEADERS;
  16 
  17         .hash           : { *(.hash) }                  :text
  18         .gnu.hash       : { *(.gnu.hash) }
  19         .dynsym         : { *(.dynsym) }
  20         .dynstr         : { *(.dynstr) }
  21         .gnu.version    : { *(.gnu.version) }
  22         .gnu.version_d  : { *(.gnu.version_d) }
  23         .gnu.version_r  : { *(.gnu.version_r) }
  24 
  25         .note           : { *(.note.*) }                :text   :note
  26 
  27 
  28         .text           : { *(.text*) }                 :text
  29 
  30         .eh_frame_hdr   : { *(.eh_frame_hdr) }          :text   :eh_frame_hdr
  31         .eh_frame       : { KEEP (*(.eh_frame)) }       :text
  32 
  33         .dynamic        : { *(.dynamic) }               :text   :dynamic
  34 
  35         .rodata         : { *(.rodata*) }               :text
  36 
  37 
  38         /DISCARD/       : {
  39                 *(.note.GNU-stack)
  40                 *(.data .data.* .gnu.linkonce.d.* .sdata*)
  41                 *(.bss .sbss .dynbss .dynsbss)
  42         }
  43 }
  44 
  45 /*
  46  * We must supply the ELF program headers explicitly to get just one
  47  * PT_LOAD segment, and set the flags explicitly to make segments read-only.
  48  */
  49 PHDRS
  50 {
  51         text            PT_LOAD         FLAGS(5) FILEHDR PHDRS; /* PF_R|PF_X */
  52         dynamic         PT_DYNAMIC      FLAGS(4);               /* PF_R */
  53         note            PT_NOTE         FLAGS(4);               /* PF_R */
  54         eh_frame_hdr    PT_GNU_EH_FRAME;
  55 }
  56 
  57 /*
  58  * This controls what symbols we export from the DSO.
  59  */
  60 VERSION
  61 {
  62         LINUX_4 {
  63         global:
  64                 __kernel_rt_sigreturn;
  65                 __vdso_gettimeofday;
  66                 __vdso_clock_getres;
  67                 __vdso_clock_gettime;
  68         local: *;
  69         };
  70 }
  71 
  72 /*
  73  * Make the rt_sigreturn code visible to the kernel.
  74  */
  75 VDSO_rt_sigtramp        = __kernel_rt_sigreturn;

/* [<][>][^][v][top][bottom][index][help] */