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] |