summaryrefslogtreecommitdiff
path: root/StandaloneMmPkg/Core/Scripts/StMM-PIE.lds
blob: a1d7012c4ca3b60681885d8aa509d2ec01890fa1 (plain)
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
/** @file

  Copyright (c) 2015, Linaro Ltd. All rights reserved.<BR>

  SPDX-License-Identifier: BSD-2-Clause-Patent

**/

SECTIONS
{
  PROVIDE(__reloc_base = .);

  . = PECOFF_HEADER_SIZE;
  .text : ALIGN(CONSTANT(COMMONPAGESIZE)) {
    *(.text.reloc*)
    . = ALIGN(0x1000);
    PROVIDE(__stmm_start = .);
    *(.text .text*)
    . = ALIGN(0x20);
    PROVIDE(__reloc_start = .);
    *(.rel .rel.*)
    *(.rela .rela.*)
    PROVIDE(__reloc_end = .);
  }
  PROVIDE(__ro_start = .);
  .got : ALIGN(CONSTANT(COMMONPAGESIZE)) {
    *(.got .got*)
  }
  .rodata : ALIGN(CONSTANT(COMMONPAGESIZE)) {
    *(.rodata .rodata*)
  }
  PROVIDE(__ro_end = .);
  .data : ALIGN(CONSTANT(COMMONPAGESIZE)) {
    *(.data .data*)
  }
  .bss : ALIGN(CONSTANT(COMMONPAGESIZE)) {
    *(.bss .bss*)
  }
  PROVIDE(__stmm_end = .);

  .note (INFO) : { *(.note.gnu.build-id) }

  /DISCARD/ : {
    *(.note.GNU-stack)
    *(.gnu.hash)
    *(.gnu_debuglink)
    *(.interp)
    *(.dynamic)
    *(.dynsym)
    *(.dynstr)
    *(.hash)
    *(.comment)
  }
}