aboutsummaryrefslogtreecommitdiff
path: root/ld/scripttempl/alphavms.sc
blob: 406a601e87277bd272a688974dc3454556cc21cd (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
# Linker script for Alpha VMS systems.
# Tristan Gingold <gingold@adacore.com>.

PAGESIZE=0x10000

cat <<EOF
OUTPUT_FORMAT("${OUTPUT_FORMAT}")
${LIB_SEARCH_DIRS}

SECTIONS
{
  ${RELOCATING+. = ${PAGESIZE};}

  /* RW initialized data.  */
  \$DATA\$ ALIGN (${PAGESIZE}) : {
    *(\$DATA\$)
  }
  /* RW data unmodified (zero-initialized).  */
  \$BSS\$ ALIGN (${PAGESIZE}) : {
    *(\$BSS\$)
  }
  /* RO, executable code.  */
  \$CODE\$ ALIGN (${PAGESIZE}) : {
    *(\$CODE\$)
  }
  /* RO initialized data.  */
  \$LITERAL\$ ALIGN (${PAGESIZE}) : {
    *(\$LINK\$)
    *(\$LITERAL\$)
    *(\$READONLY\$)
    *(\$READONLY_ADDR\$)
    *(eh_frame)
    *(jcr)
    *(ctors)
    *(dtors)
    *(gcc_except_table)

    /* LIB$INITIALIZE stuff.  */
    *(LIB\$INITIALIZDZ)	/* Start marker.  */
    *(LIB\$INITIALIZD_)	/* Hi priority.  */
    *(LIB\$INITIALIZE)	/* User.  */
    *(LIB\$INITIALIZE$)	/* End marker.  */
  }

  \$DST\$ 0 : {
    *(\$DST\$)
  }
}
EOF