Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2024-01-20libgloss: merge or1k into top-level MakefileMike Frysinger
Avoid a recursive make to speed things up a bit. A or1k-elf build shows installed objects & libs produce same code.
2022-02-02libgloss: merge epiphany & libnosys & or1k configure scripts up a levelMike Frysinger
These subdirs have unique configure scripts to do some compiler tests. The checks should work for all targets, so hoist them up to the top libgloss dir. This should allow us to delete these subdir configure scripts. It means the top-level gains autoheader support, but that's fine. It wasn't exporting any defines previously (i.e. -D into CPPFLAGS), and all of the defines it now exports are only used by code in the libnosys subdir which was expecting to have a config.h.
2022-01-29libgloss: fix more missing dir with parallel installMike Frysinger
Depending on the processing order of rules when installing in parallel, these install rules might be processed before some other rule happens to create the respective dirs. Make sure each one creates the needed dirs before installing into them.
2022-01-29Finish this commit by prefixing HAVE_INITFINI_ARRAY and HAVE_INIT_FINI ↵Jeff Law
references in libgloss in the same way. Author: Mike Frysinger <vapier@gentoo.org> Date: Mon Jan 17 22:20:20 2022 -0500 newlib: internalize HAVE_INITFINI_ARRAY This define is only used by newlib internally, so stop exporting it as HAVE_INITFINI_ARRAY since this can conflict with defines packages use themselves. We don't really need to add _ to HAVE_INIT_FINI too since it isn't exported in newlib.h, but might as well be consistent here. We can't (easily) add this to newlib_cflags like HAVE_INIT_FINI is because this is based on a compile-time test in the top configure, not on plain shell code in configure.host. We'd have to replicate the test in every subdir in order to have it passed down.
2022-01-17libgloss: clean up redundant shared lib warningsMike Frysinger
Use standard AC_MSG_WARN macro in the top-level configure, and delete the message from all the subdirs. There's no need to issue this more than once per libgloss build.
2022-01-14require autoconf-2.69 exactlyMike Frysinger
The newlib & libgloss dirs are already generated using autoconf-2.69. To avoid merging new code and/or accidental regeneration using diff versions, leverage config/override.m4 to pin to 2.69 exactly. This matches what gcc/binutils/gdb are already doing. The README file already says to use autoconf-2.69. To accomplish this, it's just as simple as adding -I flags to the top-level config/ dir when running aclocal. This is because the override.m4 file overrides AC_INIT to first require the specific autoconf version before calling the real AC_INIT.
2022-01-11libgloss: hardcode AC_CONFIG_AUX_DIR pathMike Frysinger
In order to transition to automake, we have to use hardcoded paths in the AC_CONFIG_AUX_DIR macro call (since automake evaluates the path itself, and doesn't expand vars), so simplify all the calls here.
2021-11-06libgloss: regenerate aclocal.m4 & configure w/newer versionsMike Frysinger
Regenerate the files using automake-1.15 & autoconf-2.69 to match the binutils/gdb/gcc projects. Ran: libgloss $ find -name configure.ac -printf '%h\n' | while read d; do (cd $d; export WANT_AUTOCONF=2.69 WANT_AUTOMAKE=1.15; aclocal-1.15 -I.. && autoconf-2.69); done
2021-09-13libgloss/newlib: rename configure.in to configure.acMike Frysinger
The .in name has been deprecated for a long time in favor of .ac.
2021-07-06libgloss/or1k: Correct the IMMU SXE and UXE flagsStafford Horne
These have been defined incorrectly, as per specification and CPU implementations SXE is bit 6 and UXE is bit 7. This was noticed when tracking down our test suite mmu test failures. Test Suite: https://github.com/openrisc/or1k-tests/blob/master/native/or1k/or1k-mmu.c#L68-L72 Spec: https://raw.githubusercontent.com/openrisc/doc/master/openrisc-arch-1.3-rev1.pdf See section 8.4.8 Instruction Translation Lookaside Buffer Way y Translate Registers where these are defined. Signed-off-by: Stafford Horne <shorne@gmail.com>
2017-02-13libgloss: Remove duplicate definition of environStafford Horne
Environ is defined in libgloss and libc: - libgloss/or1k/syscalls.c - libc/stdlib/environ.c When linking we sometimes get errors: or1k-elf-g++ test.o -mnewlib -mboard=or1ksim -lm -o test /opt/shorne/software/or1k/lib/gcc/or1k-elf/5.3.0/../../../../or1k-elf/lib/libor1k.a(syscalls.o):(.data+0x0): multiple definition of `environ' /opt/shorne/software/or1k/lib/gcc/or1k-elf/5.3.0/../../../../or1k-elf/lib/libc.a(lib_a-environ.o):(.data+0x0): first defined here collect2: error: ld returned 1 exit status This doesnt happen after the fix. Basic things build fine too.
2017-02-13libgloss: or1k: If available call the init for init_arrayStafford Horne
There was an issue revealed in gdb testing where C++ virtual tables were not getting properly initialized. This seems to be due to the c++ global constructors moving from ctors to init_array. This fix makes sure we call the proper method for initializing the constructors in all places.
2017-02-13or1k: Make open reentrantOlof Kindgren
or1k uses reentrant calls by default, but there was no open_r defined which caused failure in C++/C code such as: int main() { std::cout << "test\n"; return 0; } or int main() {open(".", 0);}
2016-03-13or1k: properly restore timerStefan Roesch
Consider the function parameter for restoring the timer
2016-03-13or1k: Fix multicore stack calculationStefan Roesch
Change the type of the stack pointers to enable pointer calculations at byte granularity, which is needed for the calculation of _or1k_stack_core[c] and _or1k_exception_stack_core[c] with _or1k_stack_size and _or1k_exception_stack_size. (util.c:53-54)
2015-08-07or1k: Typo fixesJeff Johnston
Wrong paranthesis and an incorrect symbol name are fixed. * or1k/boards/optimsoc.S: Fix symbol name * or1k/crt0.S: Remove paranthesis
2015-08-07or1k: Allow exception nestingJeff Johnston
Allow exceptions to be nested, which is especially useful with urgent interrupts while processing an exception. The implementation counts up the nesting level with each call to an exception. In the outer exception (level 1), the exception stack is started. All nested exceptions just reserve the redzone (scratch memory that may be used by compiler) and exception context on the stack, but then process on the same scratch. Restriction: Impure pointers are shared among all exceptions. This may be solved by creating an impure data structure in the stack frame with each nested exception. * or1k/crt0.S: Add exception nesting * or1k/exceptions-asm.S: ditto * or1k/util.c: ditto
2015-08-07or1k: Make heap end globally visibleJeff Johnston
Boards may change the initial value from _end to another value. * or1k/sbrk.c: Make heap end globally visible
2015-05-27or1k: Add missing initialization of impure ptrJeff Johnston
* or1k/impure.c: Fix initialization of impure ptr
2015-05-27or1k: set heap start for optimsoc-gzllJeff Johnston
- 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
2015-05-27or1k: Make heap start configurableJeff Johnston
- 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
2015-05-27or1k: UART also accept timeout interruptJeff Johnston
- The UART interrupt only handled receiver FIFO full interrupts, but we also want to handle timeout interrupts. * or1k/or1k_uart.c: Fix interrupts
2015-05-27Bug fix in timer for or1kJeff Johnston
- Properly set the interrupt pending flag in the timer mode register. * or1k/timer.c: Properly set interrupt flags
2015-05-27Store entire context for or1kJeff Johnston
- 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
2015-05-27Fix exception stack frame for or1kJeff Johnston
- 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
2015-05-27Fix interrupt handling for or1k.Jeff Johnston
- 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.
2015-02-11 * or1k/or1k_uart.c: Write bugfix and cleanup/documentation.Corinna Vinschen
* or1k/or1k_uart.h: Cleanup.
2015-01-14 * or1k/include/or1k-sprs.h: New auto-generated header file.Corinna Vinschen
2014-12-152014-12-15 Stefan Wallentowitz <stefan.wallentowitz@tum.de>Jeff Johnston
* 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-152014-12-15 Stefan Wallentowitz <stefan.wallentowitz@tum.de>Jeff Johnston
* 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-152014-12-15 Stefan Wallentowitz <stefan.wallentowitz@tum.de>Jeff Johnston
* 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