summaryrefslogtreecommitdiffstats
path: root/libgloss
Commit message (Collapse)AuthorAgeFilesLines
* or1k: Make heap end globally visibleJeff Johnston2015-08-072-1/+5
| | | | | | Boards may change the initial value from _end to another value. * or1k/sbrk.c: Make heap end globally visible
* This is part of a larger fix for RL78 complex relocs - they need an absolute ↵Nick Clifton2015-08-043-0/+9
| | | | | | | symbol at address 0 that is not part of the *ABS* section. * rl78/rl78-sim.ld: Provide a value for __rl78_abs__. * rl78/rl78.ld: Likewise.
* Change to nano.specs to add nano's include dircygwin-2_1_0-releaseAndre Simoes Dias Vieira2015-07-142-0/+9
| | | | Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
* or1k: Add missing initialization of impure ptrJeff Johnston2015-05-272-0/+7
| | | | * or1k/impure.c: Fix initialization of impure ptr
* or1k: set heap start for optimsoc-gzllJeff Johnston2015-05-272-0/+33
| | | | | | | | | | | | | | | | | | | - With the gzll kernel we have two different loading options: - If the image is loaded to the global memory, the bootstrapping loads the kernel to local memory. Applications are loaded on demand. The heap then starts right after bss. - If the image is pre-loaded to the local memory it includes the application binaries right after bss. The heap then starts after the application objects. - We can check if this is a gzll kernel as it has the string "gzll" at 0x2000. At 0x200c we then find the end of the application objects in the image. If there is no global memory we set _or1k_heap_start to this value. * or1k/boards/optimsoc.S: Heap for gzll kernel
* or1k: Make heap start configurableJeff Johnston2015-05-272-2/+7
| | | | | | | | | - Previously the heap started right after the bss section. This can now be configured by changing the _or1k_heap_start symbol that defaults to the old value (&end). In board_init_early, we can now set this to another value. * or1k/sbrk.c: Allow for different heap start
* or1k: UART also accept timeout interruptJeff Johnston2015-05-272-3/+9
| | | | | | | - The UART interrupt only handled receiver FIFO full interrupts, but we also want to handle timeout interrupts. * or1k/or1k_uart.c: Fix interrupts
* Bug fix in timer for or1kJeff Johnston2015-05-272-1/+5
| | | | | | - Properly set the interrupt pending flag in the timer mode register. * or1k/timer.c: Properly set interrupt flags
* Store entire context for or1kJeff Johnston2015-05-272-0/+14
| | | | | | | | - Store the exception program counter (from EPCR) and exception status register (from ESR) also during the exception. A runtime system may replace them thereby to implement a thread switch. * or1k/exception-asm.S: Store missing state
* Fix exception stack frame for or1kJeff Johnston2015-05-273-3/+8
| | | | | | | | | - We do not need a red zone here, as we do not operate on the current stack, but always use the clear exception stack. Also reserve two extra words for the context to store EPCR and ESR. * or1k/crt0.S: Fix exception stack frame * or1k/exception-asm.S: ditto
* Fix interrupt handling for or1k.Jeff Johnston2015-05-272-28/+28
| | | | | | | | | | | | - During interrupt handling the PICSR, table pointers and current interrupt line have been saved in incorrect registers and/or stored on the stack. - Save the pointer in r16/r18, PICSR in r20 and the current interrupt line in r22. Those are callee-saved registers, so that the register values will be preserved. * or1k/interruts-asm.S: Change registers to callee-saved.
* Add a check that the data area does not overrun the stack.Nick Clifton2015-05-277-3/+110
| | | | | | | | | | | * msp430/msp430-sim.ld (.stack): Add an assertion to make sure that the data area does not overrun the stack. PROVIDE a new symbol __stack_size to allow the user to set the limit. * msp430/msp430xl-sim.ld (.stack): Likewise. * rl78/rl78-sim.ld (.stack): Likewise. * rl78/rl78.ld (.stack): Likewise. * rx/rx-sim.ld (.stack): Likewise. * rx/rx.ld (.stack): Likewise.
* Adds support for placing MSP430 code and data into either low memory or high ↵Nick Clifton2015-05-2710-786/+455
| | | | | | | | | | | | | | | | | | | | | | | | | | | | memory. * msp430/msp430.ld: Delete. * msp430/msp430F5438A-l.ld: Delete. * msp430/msp430F5438A-s.ld: Delete. * msp430/crt_movedata.S: Delete. * msp430/Makefile.in (SCRIPTS): Remove msp430.ld. (CRT_OBJS): Add crt_move_highdata.o. * msp430/memmodel.h (START_CRT_FUNC): New macro. (END_CRT_FUNC): New macro. (WEAK_DEF): New macro. * msp430/crt0.S: Use new macros. (move_highdata): New code to initialise the .data section if it is held in high memory. * msp430/msp430-sim.ld (.data): Add .either.data. (.rodata2): Move some read-only data sections here. (.text): Add .either.text. (.rodata): Add .either.rodata. (.bss): Add .either.bss. * msp430/msp430xl-sim.ld (MEMORY): Add HIROM. (.rodata2): Move some read-only data sections here. (.upper.data): New section. Include notes about how to initialise it.
* libgloss: mcore: add custom syscall headerMike Frysinger2015-04-232-0/+47
| | | | | The mcore simulator has a unique set of syscall numbers. Add a header that matches reality since the common one doesn't.
* libgloss: arm: fix copy & paste in syscall.hMike Frysinger2015-04-232-3/+7
| | | | | | This header was clearly copied from the common syscall.h and customized, but the header comment is no longer accurate -- this isn't the general file anymore.
* For the RX port, avoid using string instructions when ↵Nick Clifton2015-04-232-0/+18
| | | | | | | | | | | | | | | | | | | __RX_DISALLOW_STRING_INSNS__ is defined. * rx/crt0.S (_start): If string instructions are not allowed, avoid using SMOVF. * libc/machine/rx/memchr.S: Add non-string insn using version. * libc/machine/rx/memcpy.S: Likewise. * libc/machine/rx/memmove.S: Likewise. * libc/machine/rx/mempcpy.S: Likewise. * libc/machine/rx/strcat.S: Likewise. * libc/machine/rx/strcmp.S: Likewise. * libc/machine/rx/strcpy.S: Likewise. * libc/machine/rx/strlen.S: Likewise. * libc/machine/rx/strncat.S: Likewise. * libc/machine/rx/strncmp.S: Likewise. * libc/machine/rx/strncpy.S: Likewise.
* Add .note and DWARF3 sections to RX linker scripts.Nick Clifton2015-04-233-0/+17
| | | | | * rx/rx.ld: Add .note and DWARF3 sections. * rx/rx-sim.ld: Likewise.
* Always include the .csstart section in RL78 executables.Nick Clifton2015-04-233-2/+7
| | | | | * rl78/rl78.ld (.csstart): Add a KEEP directive. * rl78/rl78-sim.ld (.csstart): Add a KEEP directive.
* * v850/sim.ld: Add a .note.renesas section.Nick Clifton2015-03-052-0/+7
|
* * arm/crt0.S: Initialise __heap_limit when ARM_RDI_MONITOR is defined.Corinna Vinschen2015-02-173-1/+17
| | | | | * arm/syscalls.c: define __heap_limit global symbol. * arm/syscalls.c (_sbrk): Honour __heap_limit.
* * or1k/or1k_uart.c: Write bugfix and cleanup/documentation.Corinna Vinschen2015-02-113-57/+105
| | | | * or1k/or1k_uart.h: Cleanup.
* * sparc/crt0.S: Declare use of system registers.Yaakov Selkowitz2015-01-225-1/+20
| | | | | | * sparc/cygmon-crt0.S: Ditto. * sparc/erc32-crt0.S: Ditto. * sparc/traps.S: Ditto.
* * COPYING.LIBGLOSS: Add Controls and Data Services copyright.Eric Botcazou2015-01-2118-0/+4858
| | | | | | | | | | | | | | | | * COPYING.NEWLIB: Likewise. libgloss/ * configure.in: Add Visium support. * configure: Regenerate. * visium/: New directory. newlib/ * configure.host: Add Visium support. * libc/machine/configure.in: Likewise. * libc/machine/configure: Regenerate. * libc/machine/visium/: New directory. * libc/include/machine/setjmp.h (_JBLEN): Define for Visium. * libc/include/machine/ieeefp.h (__IEEE_BIG_ENDIAN): Likewise. * libc/include/machine/time.h (_CLOCKS_PER_SEC_): Likewise.
* * rl78/crt0.S: Initialize .saddr. Avoid using SEL.DJ Delorie2015-01-202-0/+97
| | | | | | | | | | | | | * rl78/rl78-sim.ld: Add .saddr/.frodata section. * rl78/rl78.ld: Likewise. * rl78/rl78-sim.ld: Make room for virtual register banks. * rl78/rl78.ld: Likewise. * rl78/vregs.h: New. * rl78-sys.h: Use it. * rl78/swrite.S: New. * rl78/Makefile.in: Build it. * rl78/write.c: Use it.
* * rl78/crt0.S: Initialize .saddr. Avoid using SEL.DJ Delorie2015-01-167-61/+86
| | | | | | | | | | | | | * rl78/rl78-sim.ld: Add .saddr/.frodata section. * rl78/rl78.ld: Likewise. * rl78/rl78-sim.ld: Make room for virtual register banks. * rl78/rl78.ld: Likewise. * rl78/vregs.h: New. * rl78-sys.h: Use it. * rl78/swrite.S: New. * rl78/Makefile.in: Build it. * rl78/write.c: Use it.
* * or1k/include/or1k-sprs.h: New auto-generated header file.Corinna Vinschen2015-01-142-5/+2426
|
* 2015-01-05 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>Jeff Johnston2015-01-055-11/+19
| | | | | | | | * lm32/Makefile.in (install): Respect DESTDIR. (install-scripts): Ditto. * mep/Makefile.in (install): Ditto. * mt/Makefile.in (install): Ditto. * rl78/Makefile.in (install): Ditto.
* The moxie sub.l instruction is now just sub.Anthony Green2014-12-272-2/+6
|
* 2014-12-15 Stefan Wallentowitz <stefan.wallentowitz@tum.de>Jeff Johnston2014-12-1516-1/+808
| | | | | | | | | | | | | | | | | | * or1k/Makefile.in: Build and install board libraries * or1k/board.h: New file * or1k/boards/README: New file * or1k/boards/atlys.S: New file * or1k/boards/de0_nano.S: New file * or1k/boards/ml501.S: New file * or1k/boards/ml509.S: New file * or1k/boards/optimsoc.S: New file * or1k/boards/or1ksim-uart.S: New file * or1k/boards/or1ksim.S: New file * or1k/boards/ordb1a3pe1500.S: New file * or1k/boards/ordb2a.S: New file * or1k/boards/orpsocrefdesign.S: New file * or1k/boards/tmpl.S: New file * or1k/boards/tmpl.c: New file
* 2014-12-15 Stefan Wallentowitz <stefan.wallentowitz@tum.de>Jeff Johnston2014-12-1521-1/+2583
| | | | | | | | | | | | | | | | | | | | | | | * or1k/Makefile.in: Add libor1k * or1k/README: New file * or1k/caches-asm.S: New file * or1k/exceptions-asm.S: New file * or1k/exceptions.c: New file * or1k/impure.c: New file * or1k/include/or1k-nop.h: New file * or1k/include/or1k-support.h: New file * or1k/interrupts-asm.S: New file * or1k/interrupts.c: New file * or1k/mmu-asm.S: New file * or1k/or1k-internals.h: New file * or1k/or1k_uart.c: New file * or1k/or1k_uart.h: New file * or1k/outbyte.S: New file * or1k/sbrk.c: New file * or1k/sync-asm.S: New file * or1k/syscalls.c: New file * or1k/timer.c: New file * or1k/util.c: New file
* 2014-12-15 Stefan Wallentowitz <stefan.wallentowitz@tum.de>Jeff Johnston2014-12-1510-1/+5187
| | | | | | | | | | | | * README: Add details about or1k. * configure.in: Add or1k/or1knd * configure: Regenerated. * or1k/aclocal.m4: New file. * or1k/configure: Ditto. * or1k/Makefile.in: New file * or1k/configure.in: New file * or1k/crt0.S: New file * or1k/include/or1k-asm.h: New file
* * libgloss/nds32/_exit.S: Finish with an infinite loop in _exit.Corinna Vinschen2014-12-1513-81/+285
| | | | | | | | | | | | | | | | | * libgloss/nds32/_getpid.S: Don't issue _getpid system call, it is always successful. * libgloss/nds32/_gettimeofday.S: No error for _gettimeofday is defined in SYS_geterr handler. * libgloss/nds32/_isatty.S: No error for _isatty is defined in SYS_geterr handler. * libgloss/nds32/_kill.S: Alway fail. errno = EINVAL. * libgloss/nds32/_link.S: Alway fail. errno = EMLINK. * libgloss/nds32/_times.S: Alway fail. errno = EACCES. * libgloss/nds32/_unlink.S: fix copy and paste error. * libgloss/nds32/crt0.S: Add pre_c_init, post_c_init, arg_init. * libgloss/nds32/crt1.S: Add pre_c_init, post_c_init, arg_init. * libgloss/nds32/syscall_extra.h: Re-format. * libgloss/nds32/vh.h: Add more virtual hosting number.
* Rebuilt moxie/configureAnthony Green2014-12-112-0/+20
|
* * mips/crt0.S: Configure processor based on .MIPS.abiflags.Corinna Vinschen2014-11-288-28/+194
| | | | | | | | | | | Remove FPU availability check, just use the pre-processor flags to indicicate what the user wanted. * mips/abiflags.S: New file. * mips/regs.S (SR_MSA): Define macro. * mips/mti32.ld: Place .MIPS.abiflags and wrap in marker symbols. * mips/mti64.ld: Likewise. * mips/mti64_64.ld: Likewise. * mips/mti64_n32.ld: Likewise.
* 2014-11-26 Matthew Fortune <Matthew.Fortune@imgtec.com>Jeff Johnston2014-11-272-35/+24
| | | | | | * mips/crt0.S: Remove .set noreorder throughout. (zerobss): Open code the bltu macro instruction so that the zero-loop does not have a NOP in the branch delay slot.
* * msp430/Makefile.in (CRT_OBJS): Add crt_high_bss.o.Nick Clifton2014-11-135-51/+129
| | | | | | | | * msp430/crt0.S (high_bss): Add. * msp430/msp430-sim.ld: Add error message if .upper sections are detected. * msp430/msp430xl-sim.ld (MEMORY): Adjust to better mimic real life MCUs. Add support for upper and lower sections.
* 2014-10-22 Tim Harder <radhermit@gmail.com>DJ Delorie2014-10-232-2/+8
| | | | * msp430/Makefile.in: respect DESTDIR during install
* * configure.in: Remove config_libnosys=falseNick Clifton2014-09-226-9/+14
| | | | | | * configure: Regenerated. * msp430/nosyscalls.S: Rename to ciosyscalls.S * msp430/Makefile.in: Change LIBNOSYS to LIB_CIO.
* Add missing file from last patchCorinna Vinschen2014-08-151-0/+18
|
* * arm/elf-nano.specs: New file.Corinna Vinschen2014-08-144-12/+31
| | | | | | * arm/elf-rdimon.specs: Support nano.specs. * arm/Makefile.in: Support nano.specs. * libnosys/nosys.specs: Support nano.specs.
* Fix typo in previous commitAnthony Green2014-07-281-1/+1
|
* Add moxiebox support.Anthony Green2014-07-274-5/+265
|
* * arm/elf-aprofile-validation.specs (*link): Make text segmentCorinna Vinschen2014-07-163-2/+8
| | | | | 64k-aligned. * arm/elf-aprofile-ve.specs (*link): Likewise.
* * msp430/Makefile.in (NOSYS_OBJS): Add unlink.o.Nick Clifton2014-04-303-8/+37
| | | | | (SCRIPTS): Remove msp430F5438A-s.ld and msp430F5438A-s.ld. * unlink.c: New file.
* 2014-04-04 Ashish Kapania <akapania@ti.com>Jeff Johnston2014-04-043-2/+8
| | | | | | * arm/configure.in: (*-*-tirtos*) Accept TIRTOS target when setting objtype * arm/configure: Regenerated.
* 2014-03-21 Sabrini Ni <sabrinanitw@gmail.com>Jeff Johnston2014-03-212-0/+6
| | | | * nds32/_sbrk.S: Add .size and .type directive.
* 2014-03-21 Sabrini Ni <sabrinanitw@gmail.com>Jeff Johnston2014-03-213-38/+55
| | | | | * nds32/crt0.S: Tweak initialization sqeuence. * nds32/crt1.S: Ditto.
* 2014-03-21 Sabrini Ni <sabrinanitw@gmail.com>Jeff Johnston2014-03-2126-46/+329
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * nds32/_argv.S: Replace syscall with break. * nds32/_argvlen.S: Ditto. * nds32/_chdir.S: Ditto. * nds32/_chmod.S: Ditto. * nds32/_close.S: Ditto. * nds32/_exit.S: Ditto. * nds32/_fstat.S: Ditto. * nds32/_getpid.S: Ditto. * nds32/_gettimeofday.S: Ditto. * nds32/_isatty.S: Ditto. * nds32/_kill.S: Ditto. * nds32/_link.S: Ditto. * nds32/_lseek.S: Ditto. * nds32/_open.S: Ditto. * nds32/_read.S: Ditto. * nds32/_rename.S: Ditto. * nds32/_stat.S: Ditto. * nds32/_system.S: Ditto. * nds32/_time.S: Ditto. * nds32/_times.S: Ditto. * nds32/_unlink.S: Ditto. * nds32/_utime.S: Ditto. * nds32/_write.S: Ditto. * nds32/syscall_error_handler.S: Ditto. * nds32/vh.h: New.
* 2014-03-21 Sabrini Ni <sabrinanitw@gmail.com>Jeff Johnston2014-03-213-0/+27
| | | | | * nds32/crt0.S: Initialize ITB base. * nds32/crt1.S: Ditto.
* 2014-03-21 Sabrini Ni <sabrinanitw@gmail.com>Jeff Johnston2014-03-2126-30/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * nds32/Makefile.in: Alter filename. * nds32/syscall_argv.S: Rename to _argv.S * nds32/syscall_argvlen.S: Rename to _argvlen.S * nds32/syscall_chdir.S: Rename to _chdir.S * nds32/syscall_chmod.S: Rename to _chmod.S * nds32/syscall_close.S: Rename to _close.S * nds32/syscall_exit.S: Rename to _exit.S * nds32/syscall_fstat.S: Rename to _fstat.S * nds32/syscall_getpid.S: Rename to _getpid.S * nds32/syscall_gettimeofday.S: Rename to _gettimeofday.S * nds32/syscall_isatty.S: Rename to _isatty.S * nds32/syscall_kill.S: Rename to _kill.S * nds32/syscall_link.S: Rename to _link.S * nds32/syscall_lseek.S: Rename to _lseek.S * nds32/syscall_open.S: Rename to _open.S * nds32/syscall_read.S: Rename to _read.S * nds32/syscall_rename.S: Rename to _rename.S * nds32/syscall_sbrk.S: Rename to _sbrk.S * nds32/syscall_stat.S: Rename to _stat.S * nds32/syscall_system.S: Rename to _system.S * nds32/syscall_time.S: Rename to _time.S * nds32/syscall_times.S: Rename to _times.S * nds32/syscall_unlink.S: Rename to _unlink.S * nds32/syscall_utime.S: Rename to _utime.S * nds32/syscall_write.S: Rename to _write.S