OR1K: Don't save parameter registers

The parameter registers are not preserved across function calls

newlib/Changelog:
      * libc/machine/or1k/setjmp.S: Remove save/restore of r3-r8
OR1K: Optional delay slot support

The machine or1knd are OpenRISC implementations without delay slot

newlib/Changelog:
    * configure.host: or1knd support, OpenRISC without delay slot
    * libc/include/machine/setjmp.h: Add or1knd
    * libc/machine/or1k/setjmp.S: Optional delay slot
OR1K: (auto-generated) bulk header

As this file is really large it is split out and added first.

libgloss/Changelog:
       * or1k: Add OpenRISC architecture
       * or1k/include/or1k-sprs.h: New file
OR1K: C runtime

This requires the initialization functions and board functions as
provided by upcoming commits.

libgloss/Changelog:
	* configure.in: Add or1k/or1knd
	* or1k/Makefile.in: New file
	* or1k/configure.in: New file
	* or1k/crt0.S: New file
	* or1k/include/or1k-asm.h: New file
OR1K: libgloss implementation

This is the libgloss implementation for or1k/or1knd. It contains:

 * All necessary initialization functions as called from crt0

 * The generic exception and interrupt handler implementations

 * The syscalls required by newlib (i.e., write)

 * The or1k-support functions as described in the header. Those are
   low level functions to access the CPU state and to register
   exception/interrupt handler hooks

libgloss/Changelog:
	* 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
OR1K: Boards

Some pre-defined boards define their memory size, uart base address
and provide init/exit hooks.

libgloss/Changelog:
	* 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
OR1K: Baremetal system support

This adds the OpenRISC baremetal as a system (or1k-elf), that depends
on libgloss (mainly reentrancy) and thereby keeps other toolchains
like or1k-rtems intact.

newlib/Changelog:
	* configure.host: Add extra system for OpenRISC baremetal
	* libc/include/sys/config.h: Dynamic reentrancy for or1k sys targets
	* libc/sys/or1k/: New system for or1k baremetal
	* libc/sys/or1k/Makefile.am: New file
	* libc/sys/or1k/configure.in: New file
	* libc/sys/or1k/getreent.S: New file
	* libc/sys/or1k/mlock.S: New file
	* libc/sys/or1k/or1k-asm.S: New file