xref: /netbsd-src/external/gpl3/binutils.old/dist/ld/emulparams/arc-nps.sh (revision 867d70fc718005c0918b8b8b2f9d7f2d52d0a0db)
1if test -n "${RELOCATING}"; then
2OTHER_SECTIONS="
3  /* Start of symbols and sections required to support CMEM instructions
4     on NPS targets.  */
5
6  PROVIDE (_cmem_start               = ADDR (.cmem)                                            );
7  PROVIDE (_cmem_alter_start         = ADDR (.cmem_alter)                                      );
8  PROVIDE (_cmem_shared_start        = ADDR (.cmem_shared)                                     );
9  PROVIDE (_cmem_shared_alter_start  = ADDR (.cmem_shared_alter)                               );
10  PROVIDE (_fmt_slot0_start          = ADDR (.fmt_slot0)                                       );
11  PROVIDE (_fmt_slot1_start          = ADDR (.fmt_slot1)                                       );
12  PROVIDE (_fmt_slot2_start          = ADDR (.fmt_slot2)                                       );
13  PROVIDE (_fmt_slot3_start          = ADDR (.fmt_slot3)                                       );
14  PROVIDE (_fmt_slot4_start          = ADDR (.fmt_slot4)                                       );
15  PROVIDE (_fmt_slot5_start          = ADDR (.fmt_slot5)                                       );
16  PROVIDE (_fmt_slot6_start          = ADDR (.fmt_slot6)                                       );
17  PROVIDE (_fmt_slot7_start          = ADDR (.fmt_slot7)                                       );
18  PROVIDE (_fmt_slot8_start          = ADDR (.fmt_slot8)                                       );
19  PROVIDE (_fmt_slot9_start          = ADDR (.fmt_slot9)                                       );
20  PROVIDE (_fmt_slot10_start         = ADDR (.fmt_slot10)                                      );
21  PROVIDE (_fmt_slot11_start         = ADDR (.fmt_slot11)                                      );
22  PROVIDE (_fmt_slot12_start         = ADDR (.fmt_slot12)                                      );
23  PROVIDE (_fmt_slot13_start         = ADDR (.fmt_slot13)                                      );
24  PROVIDE (_fmt_slot14_start         = ADDR (.fmt_slot14)                                      );
25  PROVIDE (_fmt_slot15_start         = ADDR (.fmt_slot15)                                      );
26
27  PROVIDE (_cmem_end                 = ADDR (.cmem)              + SIZEOF (.cmem)              );
28  PROVIDE (_cmem_alter_end           = ADDR (.cmem_alter)        + SIZEOF (.cmem_alter)        );
29  PROVIDE (_cmem_shared_end          = ADDR (.cmem_shared)       + SIZEOF (.cmem_shared)       );
30  PROVIDE (_cmem_shared_alter_end    = ADDR (.cmem_shared_alter) + SIZEOF (.cmem_shared_alter) );
31  PROVIDE (_fmt_slot0_end            = ADDR (.fmt_slot0)         + SIZEOF (.fmt_slot0)         );
32  PROVIDE (_fmt_slot1_end            = ADDR (.fmt_slot1)         + SIZEOF (.fmt_slot1)         );
33  PROVIDE (_fmt_slot2_end            = ADDR (.fmt_slot2)         + SIZEOF (.fmt_slot2)         );
34  PROVIDE (_fmt_slot3_end            = ADDR (.fmt_slot3)         + SIZEOF (.fmt_slot3)         );
35  PROVIDE (_fmt_slot4_end            = ADDR (.fmt_slot4)         + SIZEOF (.fmt_slot4)         );
36  PROVIDE (_fmt_slot5_end            = ADDR (.fmt_slot5)         + SIZEOF (.fmt_slot5)         );
37  PROVIDE (_fmt_slot6_end            = ADDR (.fmt_slot6)         + SIZEOF (.fmt_slot6)         );
38  PROVIDE (_fmt_slot7_end            = ADDR (.fmt_slot7)         + SIZEOF (.fmt_slot7)         );
39  PROVIDE (_fmt_slot8_end            = ADDR (.fmt_slot8)         + SIZEOF (.fmt_slot8)         );
40  PROVIDE (_fmt_slot9_end            = ADDR (.fmt_slot9)         + SIZEOF (.fmt_slot9)         );
41  PROVIDE (_fmt_slot10_end           = ADDR (.fmt_slot10)        + SIZEOF (.fmt_slot10)        );
42  PROVIDE (_fmt_slot11_end           = ADDR (.fmt_slot11)        + SIZEOF (.fmt_slot11)        );
43  PROVIDE (_fmt_slot12_end           = ADDR (.fmt_slot12)        + SIZEOF (.fmt_slot12)        );
44  PROVIDE (_fmt_slot13_end           = ADDR (.fmt_slot13)        + SIZEOF (.fmt_slot13)        );
45  PROVIDE (_fmt_slot14_end           = ADDR (.fmt_slot14)        + SIZEOF (.fmt_slot14)        );
46  PROVIDE (_fmt_slot15_end           = ADDR (.fmt_slot15)        + SIZEOF (.fmt_slot15)        );
47
48  OVERLAY 0x57f00000 :
49    {
50      .cmem       { *(.cmem)       }
51      .cmem_alter { *(.cmem_alter) }
52    }
53
54  OVERLAY 0x57f08000 :
55    {
56      .cmem_shared       { *(.cmem_shared)       }
57      .cmem_shared_alter { *(.cmem_shared_alter) }
58    }
59
60  .fmt_slot0  0x58000000 : { *(.fmt_slot0)  }
61  .fmt_slot1  0x58800000 : { *(.fmt_slot1)  }
62  .fmt_slot2  0x59000000 : { *(.fmt_slot2)  }
63  .fmt_slot3  0x59800000 : { *(.fmt_slot3)  }
64  .fmt_slot4  0x5a000000 : { *(.fmt_slot4)  }
65  .fmt_slot5  0x5a800000 : { *(.fmt_slot5)  }
66  .fmt_slot6  0x5b000000 : { *(.fmt_slot6)  }
67  .fmt_slot7  0x5b800000 : { *(.fmt_slot7)  }
68  .fmt_slot8  0x5c000000 : { *(.fmt_slot8)  }
69  .fmt_slot9  0x5c800000 : { *(.fmt_slot9)  }
70  .fmt_slot10 0x5d000000 : { *(.fmt_slot10) }
71  .fmt_slot11 0x5d800000 : { *(.fmt_slot11) }
72  .fmt_slot12 0x5e000000 : { *(.fmt_slot12) }
73  .fmt_slot13 0x5e800000 : { *(.fmt_slot13) }
74  .fmt_slot14 0x5f000000 : { *(.fmt_slot14) }
75  .fmt_slot15 0x5f800000 : { *(.fmt_slot15) }
76
77  /* End of nps specific sections and symbols.  */
78
79  ${OTHER_SECTIONS}"
80fi
81