aboutsummaryrefslogtreecommitdiff
path: root/libgloss/mips/array.ld
AgeCommit message (Collapse)AuthorFilesLines
2019-07-30Align _end symbol to at least 4 in all MIPS scriptsFaraz Shahbazker1-0/+1
Left-over part of commit 84b2a020daa17d8ee5c9ec979c3d56f95e69573b The _end marker must be aligned to 4-bytes to ensure that the last element written does not reach beyond the address of _end. This is also necessary as the termination condition is an equality test instead of an ordered test so (_end - _fbss) must be a multiple of 4-bytes. The alignment is already correct for mti*.ld files, fix it for all remaining MIPS scripts that don't already align to at least 4.
2019-05-15Make .data section placement coincide with _fdata symbolFaraz Shahbazker1-0/+1
The _fdata symbol in MIPS linker scripts is aligned to a 16-byte boundary. The ALIGN function does not implicitly update current location counter. If sections positioned after the assignment do not have the same natural alignment as the ALIGN function then the start of the section group will not coincide with the value of the symbol. Given the linker command sequence: symbol = ALIGN (NN); (.section*) where the idiom implies a desire to mark the beginning of .section with symbol, there must be an assignment to the location counter between the assignment to symbol and the .section pattern. libgloss/ * mips/array.ld: Update the location counter to match _fdata. * mips/cfe.ld: Likewise. * mips/ddb-kseg0.ld: Likewise. * mips/ddb.ld: Likewise. * mips/dve.ld: Likewise. * mips/idt.ld: Likewise. * mips/idt32.ld: Likewise. * mips/idt64.ld: Likewise. * mips/idtecoff.ld: Likewise. * mips/jmr3904app-java.ld: Likewise. * mips/jmr3904app.ld: Likewise. * mips/jmr3904dram-java.ld: Likewise. * mips/jmr3904dram.ld: Likewise. * mips/lsi.ld: Likewise. * mips/mti32.ld: Likewise. * mips/mti64.ld: Likewise. * mips/mti64_64.ld: Likewise. * mips/mti64_n32.ld: Likewise. * mips/nullmon.ld: Likewise. * mips/pmon.ld: Likewise. * mips/sde32.ld: Likewise. * mips/sde64.ld: Likewise.
2019-04-29Fix order of eh_frame sections in linker scriptsFaraz Shahbazker1-1/+6
The compiler driver positions the linker script at the end of the linker command-line, after crtend.o. As a result, any INPUT objects and archive GROUPs introduced by the linker script are placed after crtend.o and the end-of-frame marker provided by crtend.o ends up in between .eh_frames instead of being at the end. This has always been a problem, but a binutils update to clean-up redundant NULL markers in .eh_frame exposes it as a execution failure in exception-handling tests. This patch re-orders .eh_frames in all MIPS linker scripts so that the one from crtend.o is always placed last. libgloss/ * mips/array.ld: Re-order to place .eh_frame from crtend.o after all other .eh_frame sections. * mips/cfe.ld: Likewise. * mips/ddb-kseg0.ld: Likewise. * mips/ddb.ld: Likewise. * mips/dve.ld: Likewise. * mips/idt.ld: Likewise. * mips/idt32.ld: Likewise. * mips/idt64.ld: Likewise. * mips/jmr3904app.ld: Likewise. * mips/lsi.ld: Likewise. * mips/mti32.ld: Likewise. * mips/mti64.ld: Likewise. * mips/mti64_64.ld: Likewise. * mips/mti64_n32.ld: Likewise. * mips/nullmon.ld: Likewise. * mips/pmon.ld: Likewise. * mips/sde32.ld: Likewise. * mips/sde64.ld: Likewise.
2005-10-032005-10-03 James E Wilson <wilson@specifix.com>Jeff Johnston1-0/+1
* mips/array.ld, mips/cfe.ld, mips/ddb-kseg0.ld, mips/ddb.ld, mips/dve.ld, mips/idt.ld, mips/idt32.ld, mips/idt64.ld, mips/idtecoff.ld, mips/jmr3904app-java.ld, mips/jmr3904app.ld, jmr3904dram-java.ld, mips/jmr3904dram.ld, mips/lsi.ld, mips/nullmon.ld, mips/pmon.ld: Add support for .bss.* sections.
2005-09-232005-09-23 James E Wilson <wilson@specifix.com>Jeff Johnston1-3/+4
* mips/array.ld, mips/cfe.ld, mips/ddb-kseg0.ld, mips/ddb.ld, mips/dve.ld, mips/idt.ld, mips/idt32.ld, mips/idt64.ld, mips/idtecoff.ld, mips/jmr3904app-java.ld, mips/jmr3904app.ld, jmr3904dram-java.ld, mips/jmr3904dram.ld, mips/lsi.ld, mips/nullmon.ld, mips/pmon.ld: Change x* to x.* in existing linkonce lines. Add support for .gnu.linkonce.b.*.
2005-07-182005-07-18 Richard Sandiford <richard@codesourcery.com>Jeff Johnston1-1/+3
* mips/array.ld (.sdata): Include .gnu.linkonce.s.*, not .gnu.linkonce.s*. (.sbss): Include .sbss.* and .gnu.linkonce.sb.*. * mips/cfe.ld, mips/ddb-kseg0.ld, mips/ddb.ld, mips/dve.ld, * mips/idt32.ld, mips/idt64.ld, mips/idtecoff.ld, mips/idt.ld, * mips/jmr3904app-java.ld, mips/jmr3904app.ld, * mips/jmr3904dram-java.ld, mips/jmr3904dram.ld, * mips/lsi.ld, mips/nullmon.ld, mips/pmon.ld: As for mips/array.ld.
2005-04-12 * mips/array.ld, mips/cfe.ld, mips/dve.ld, mips/idt32.ld,Richard Sandiford1-2/+2
* mips/idt64.ld, mips/idtecoff.ld, mips/idt.ld, * mips/jmr3904app-java.ld, mips/jmr3904app.ld, * mips/jmr3904dram-java.ld, mips/jmr3904dram.ld, mips/lsi.ld, * mips/nullmon.ld, mips/pmon.ld: Keep .init and .fini.
2004-05-05 * mips/array.ld, mips/cfe.ld, mips/ddb-kseg0.ld, mips/ddb.ld,Richard Sandiford1-0/+4
* mips/dve.ld, mips/idt32.ld, mips/idt64.ld, mips/idt.ld * mips/jmr3904app.ld, mips/lsi.ld, mips/nullmon.ld, mips/pmon.ld (.eh_frame_hdr, .eh_frame, .gcc_except_table, .jcr): New sections.
2002-07-122002-07-12 Chris Demetriou <cgd@broadcom.com>Jeff Johnston1-0/+2
* mips/array.ld (hardware_exit_hook, hardware_hazard_hook): New symbols for optionally-provided functions. * mips/ddb-kseg0.ld: Likewise. * mips/ddb.ld: Likewise. * mips/dve.ld: Likewise. * mips/idt.ld: Likewise. * mips/idt32.ld: Likewise. * mips/idt64.ld: Likewise. * mips/idtecoff.ld: Likewise. * mips/jmr3904app-java.ld: Likewise. * mips/jmr3904app.ld: Likewise. * mips/jmr3904dram-java.ld: Likewise. * mips/jmr3904dram.ld: Likewise. * mips/lsi.ld: Likewise. * mips/nullmon.ld: Likewise. * mips/pmon.ld: Likewise. * mips/crt0.S: Invoke hardware_exit_hook and hardware_hazard_hook functions if they are provided. (_exit): Handle __embedded_pic properly.
2000-03-1720000317 sourceware importRanjith Kumaran1-0/+171