* libmisc/shell/shell.c, libmisc/shell/shell.h: Much cleanup but much
of the focus was on the beginning stages of making the login checker
pluggable just like the shell.
* sapi/src/exinit.c, score/Makefile.am,
score/include/rtems/score/apimutex.h: API Mutex calls should never
have been inlined. Inlining them lead to many inlined copies of core
mutex lock. This lead to over 2K savings in the SPARC/ERC32
minimum.exe.
* score/src/apimutex.c, score/src/apimutexallocate.c,
score/src/apimutexlock.c, score/src/apimutexunlock.c: New files.
* score/inline/rtems/score/object.inl: During test coverage analysis,
we identified this sanity check which should have been conditional on
RTEMS_DEBUG since it can NOT be tripped during normal RTEMS
operations. With all APIs enabled, this saved 352 bytes from the
minimum executable on the SPARC/ERC32.
* score/include/rtems/system.h, score/include/rtems/score/interr.h: Add
compiler conditional attribute for methods that do not return. This
avoids gcc generating unreachable code following calls to
_Internal_error_Occurred.
* cpu.c, cpu_asm.S, score/cpu.h : add support for ARM<->THUMB veneer
thumb new dir to controll CPSR/SPRS in thumb mode
2007-05-09 Ray Xu <rayx.cn@gmail.com>
* cpu.c: move do_data_abort() to libbsp/arm/shared/abort/
implement a compact do_data_abort() in simple_abort.c
* ep1a/irq/irq.c, gen5200/irq/irq.c, mbx8xx/irq/irq.c,
mpc8260ads/irq/irq.c, mvme5500/irq/irq.c, psim/irq/irq.c,
score603e/irq/irq.c, shared/irq/irq.c:
test for non-NULL-ness before calling 'on'/'off'
methods so that users don't have to provide
no-ops if they don't want this feature.
* mpc5xx/irq/irq.c, mpc5xx/exceptions/raw_exception.c,
new-exceptions/raw_exception.c: test for non-NULL-ness before calling
'on'/'off' methods so that users don't have to provide
no-ops if they don't want this feature.
* shared/irq/irq.c: test for non-NULL-ness before calling
'on'/'off' methods so that users don't have to provide
no-ops if they don't want this feature.
Miscellaneous changes made after a review against the POSIX spec.
* posix/src/pbarrierinit.c, posix/src/prwlockinit.c: If the caller
passes a NULL in the attributes parameter, default attributes are used.
* posix/src/prwlockdestroy.c: If there is at least one thread
waiting, do not allow deletion.
* posix/src/prwlockwrlock.c: Corrected parameter passed to the core
operation used to obtain a RWLock for writing.
* posix/src/pspinlocktranslatereturncode.c,
score/include/rtems/score/corespinlock.h,
score/src/corespinlockrelease.c: If the current thread is not the
holder of the lock, do not allow an unlock and return EPERM.
* score/src/corerwlockobtainwrite.c: Corrected to use the operation
for queueing with a timeout handler.