rmodule: align ld script with latest x86 ld script
The x86 linker script added a .textfirst section. In order to properly link ramstage as a relocatable module the .textfirst section needs to be included. Also, the support for code coverage was added by including the constructor section and symbols. Coverage has not been tested as I suspect it might not work in a relocatable environment without some tweaking. However, the section and symbols are there if needed. Change-Id: Ie1f6d987d6eb657ed4aa3a8918b2449dafaf9463 Signed-off-by: Aaron Durbin <adurbin@chromium.org> Reviewed-on: http://review.coreboot.org/2883 Tested-by: build bot (Jenkins) Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
This commit is contained in:
parent
2bd2e37536
commit
d23e292ef6
|
@ -37,11 +37,17 @@ SECTIONS
|
||||||
|
|
||||||
.text : AT (_payload_begin_offset) {
|
.text : AT (_payload_begin_offset) {
|
||||||
/* C code of the module. */
|
/* C code of the module. */
|
||||||
|
*(.textfirst);
|
||||||
*(.text);
|
*(.text);
|
||||||
*(.text.*);
|
*(.text.*);
|
||||||
/* C read-only data. */
|
/* C read-only data. */
|
||||||
. = ALIGN(16);
|
. = ALIGN(16);
|
||||||
|
|
||||||
|
__CTOR_LIST__ = .;
|
||||||
|
*(.ctors);
|
||||||
|
LONG(0);
|
||||||
|
__CTOR_END__ = .;
|
||||||
|
|
||||||
/* The driver sections are to allow linking coreboot's
|
/* The driver sections are to allow linking coreboot's
|
||||||
* ramstage with the rmodule linker. Any changes made in
|
* ramstage with the rmodule linker. Any changes made in
|
||||||
* coreboot_ram.ld should be made here as well. */
|
* coreboot_ram.ld should be made here as well. */
|
||||||
|
|
Loading…
Reference in New Issue