This is the mail archive of the newlib@sourceware.org mailing list for the newlib project.
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
| Other format: | [Raw text] | |
Hi Guys,
I am checking in the attached patch to add support for two new features
to the MSP430 port of libgloss. The first is support for interrupt
handlers written in C, including the ability to specify a specific
interrupt vector for the handler. (Gcc generates a section name based
on the interrupt vector and the MSP430 linker scripts ensure that they
are then mapped to the correct address).
The other feature is a libcrt0.a which can replace crt0.o. The idea
here is that since libcrt0.a is a library, only the specific pieces of
code needed by the application will be linked into the executable.
So, for example, if the application has no data in the .bss section,
then the code to initialise .bss will be omitted from the executable.
This helps to reduce the size of the executable, which is quite
important for a small part like the MSP430.
Cheers
Nick
libgloss/ChangeLog
2013-09-18 Nick Clifton <nickc@redhat.com>
* msp430/Makefile.in (SCRIPTS): Add intr_vectors.ld.
(LIB_CRT): New.
(CRT_OBJS): New.
(all): Add dependency upon LIB_CRT.
(install): Likewise.
* msp430/msp430-sim.ld: Include intr_vectors.ld.
KEEP crt code, lowtext code and tm_clone_table.
Separate the noinit section from the .bss section.
Allow for extended .debug_line sections.
* msp430/msp430.ld: Likewise.
* msp430/msp430F5438A-l.ld: Likewise.
* msp430/msp430F5438A-s.ld: Likewise.
* msp430/msp430xl-sim.ld: Likewise
. * msp430/crt_movedata.S: New.
* msp430/crt_bss.S: New.
* msp430/intr_vectors.ld: New.
Attachment:
msp430.size.libgloss.patch.xz
Description: application/xz
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |