summaryrefslogtreecommitdiffstats
path: root/c/src/exec/score (follow)
Commit message (Collapse)AuthorAgeFilesLines
* 2002-07-01 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2002-07-0126-166/+529
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Mega patch merge to change the format of the object IDs to loosen the dependency between the SCORE and the various APIs. There was considerable work to simplify the object name management and it appears that the name_table field is no longer needed. This patch also includes the addition of the internal mutex which is currently only used to protect some types of allocation and deallocation. This significantly can reduce context switch latency under certain circumstances. In particular, some heap/region operations were O(n) and had dispatching disabled. This should help enormously. With this merge, the patch is not as clean as it should be. In particular, the documentation has not been modified to reflect the new object ID layout, the IDs in the test screens are not updated, and _Objects_Get_information needs to be a real routine not inlined. As part of this patch a lot of MP code for thread/proxy blocking was made conditional and cleaned up. * include/Makefile.am, include/rtems/score/coremsg.h, include/rtems/score/coremutex.h, include/rtems/score/coresem.h, include/rtems/score/object.h, include/rtems/score/threadq.h, inline/rtems/score/object.inl, inline/rtems/score/thread.inl, macros/rtems/score/object.inl, src/Makefile.am, src/coremsg.c, src/coremutex.c, src/coresem.c, src/mpci.c, src/objectcomparenameraw.c, src/objectextendinformation.c, src/objectinitializeinformation.c, src/objectnametoid.c, src/thread.c, src/threadclose.c, src/threadget.c, src/threadq.c, src/threadqextractwithproxy.c: Modified as part of above. * include/rtems/score/apimutex.h, src/objectgetnoprotection.c: New files.
* 2002-07-01 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2002-07-012-2/+8
| | | | | | * rtems/score/cpu.h: Fixed comments and renamed CPU_SYSTEM_INITIALIZATION_THREAD_EXTRA_STACK to CPU_MPCI_RECEIVE_SERVER_EXTRA_STACK to be consistent with other code.
* 2002-07-01 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Ralf Corsepius2002-07-0134-34/+68
| | | | * configure.ac: Remove RTEMS_PROJECT_ROOT.
* 2002-06-27 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2002-06-275-6/+66
| | | | | | * Makefile.am, cpu.c, cpu_asm.S, rtems.S: Modified to make this all compile again. It has been a while since we have had a semi-working hppa1.1-rtems cross compiler. :)
* 2002-06-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Ralf Corsepius2002-06-2732-0/+80
| | | | * configure.ac: Add RTEMS_PROG_CCAS
* 2002-06-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Ralf Corsepius2002-06-2734-17/+119
| | | | | * configure.ac: Use AC_CONFIG_AUX_DIR(../../../..). Add AC_PROG_RANLIB.
* 2002-06-26 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Ralf Corsepius2002-06-262-1/+5
| | | | * configure.ac: Remove references to RTEMS_BSP.
* 2002-06-17 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Ralf Corsepius2002-06-176-11/+11
| | | | * Include $(top_srcdir)/automake/*.am.
* 2002-06-17 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Ralf Corsepius2002-06-1734-85/+175
| | | | | * Makefile.am: Include $(top_srcdir)/../../../automake/*.am. Use ../../../aclocal.
* 2002-05-28 Chris Johns <ccj@acm.org>Joel Sherrill2002-05-282-1/+6
| | | | | * rtems/score/m68k.h: Per PR227, mc68060 does not require FPSP since it is now multilib'ed.
* 2001-05-17 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2002-05-172-0/+21
| | | | | * macros/rtems/score/thread..inl: Implemented missing routines for new libc reentrancy support.
* 2002-05-15 Chris Johns <ccj@acm.org>Joel Sherrill2002-05-155-0/+63
| | | | | | | | | * include/rtems/score/thread.h, inline/rtems/score/thread.inl, src/threaddispatch.c, src/threadinitialize.c: Move the C library re-enterrant support directly into the thread dispatch code. RTEMS needs libc and so requiring libc to use a user extension with its overhead is not the best solution. This patch lowers the overhead to 2 pointer moves.
* 2002-05-01 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Joel Sherrill2002-05-142-46/+4
| | | | * rtems/score/ppc.h: Remove PPC_DEBUG_MODEL.
* 2002-05-03 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Joel Sherrill2002-05-142-1/+6
| | | | | * include/Makefile.am: Work-around to autoconf-2.53 adding PACKAGE_* to autoheaders - sed out *PACKAGE* from cpuopts-tmp.h.
* 2001-05-14 Till Straumann <strauman@slac.stanford.edu>Joel Sherrill2002-05-141-1/+8
| | | | | | | | | | | | | | | | | | | | | * rtems/new-exceptions/cpu.h: Per PR211 fix saving/restoring floating point context. The fpsave and fprestore routines are only used in a executing context which _is_ fp and hence has the FPU enabled. The current behavior required the FPU always to be on which is very dangerous if lazy context switching is used. [Joel Note: Some ports explicitly enabled the FPU in the FP save and restore routines to avoid this.] The patch also makes sure (on powerpc only) that the FPU is disabled for integer tasks. Note that this is crucial if deferred fp context switching is used. Otherwise, fp context corruption may go undetected! Also note that even tasks which merely push/pop FP registers to/from the stack without modifying them still MUST be FP tasks - otherwise (if lazy FP context switching is used), FP register corruption (of other, FP, tasks may occur)! Furthermore, (on PPC) by default, lazy FP context save/restore is _disabled_.
* 2001-05-14 Till Straumann <strauman@slac.stanford.edu>Joel Sherrill2002-05-143-9/+45
| | | | | | | | | | | | | | | | | | | | | * src/threaddispatch.c, src/threadhandler.c: Per PR211 fix saving/restoring floating point context. The fpsave and fprestore routines are only used in a executing context which _is_ fp and hence has the FPU enabled. The current behavior required the FPU always to be on which is very dangerous if lazy context switching is used. [Joel Note: Some ports explicitly enabled the FPU in the FP save and restore routines to avoid this.] The patch also makes sure (on powerpc only) that the FPU is disabled for integer tasks. Note that this is crucial if deferred fp context switching is used. Otherwise, fp context corruption may go undetected! Also note that even tasks which merely push/pop FP registers to/from the stack without modifying them still MUST be FP tasks - otherwise (if lazy FP context switching is used), FP register corruption (of other, FP, tasks may occur)! Furthermore, (on PPC) by default, lazy FP context save/restore is _disabled_.
* 2001-05-14 Till Straumann <strauman@slac.stanford.edu>Joel Sherrill2002-05-143-0/+14
| | | | | | * rtems/powerpc/registers.h, rtems/score/ppc.h: Per PR213, add support for the MPC74000 (AKA G4); there is no AltiVec support yet, however.
* 2002-04-30 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Joel Sherrill2002-05-013-42/+19
| | | | | | | * rtems/score/ppc.h: Remove rtems_multilib. Add mpc555 (Based on comments from Sergei Organov <osv@javad.ru>). * rtems/old-exceptions/cpu.h: Remove _CPU_Data_Cache_Block_Flush. Remove _CPU_Data_Cache_Block_Invalidate.
* 2001-04-26 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2002-04-272-1/+7
| | | | * src/objectcomparenamestring.c: Fix typos.
* 2001-04-26 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2002-04-264-29/+42
| | | | | | | | | | * include/rtems/score/object.h, inline/rtems/score/object.inl, src/objectcomparenamestring.c: Address PR81 that reworked POSIX message queues to add a descriptor separate from the underlying message queue. This allows non-blocking to follow the "open" not the underlying queue. As part of debugging this it became clear that _Objects_Compare_name_string was broken and a simple version using strncmp() was substituted.
* 2002-04-18 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Joel Sherrill2002-04-194-6/+10
| | | | * asm.h: Use cpuopts.h instead of targopts.h.
* 2002-04-18 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Joel Sherrill2002-04-192-4/+4
| | | | * rtems/score/hppa.h: Remove rtems/score/targopts.h.
* 2002-04-18 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Joel Sherrill2002-04-187-17/+382
| | | | | | | | | | | | * asm.h: Include cpuopts.h instead of targopts.h. * rtems/new-exceptions/cpu.h: Relocated from libbsp/powerpc/support/new_exception_processing/rtems/score/cpu.h * rtems/old-exceptions/cpu.h: Relocated from c/src/lib/libbsp/powerpc/support/old_exception_processing/rtems/score/cpu.h * rtems/powerpc/registers.h: Relocated and renamed from libcpu/powerpc/shared/include/cpu.h. * rtems/score/cpu.h: New. * Makefile.am: Reflect changes above.
* 2002-04-18 Jay Monkman <jtm@smoothsmoothie.com>Joel Sherrill2002-04-182-6/+14
| | | | | | * rtems/score/cpu.h (CPU_ISR_Disable and CPU_ISR_Enable): Correct them where they correctly inform the compiler about the register they are modifying.
* 2002-04-18 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Joel Sherrill2002-04-182-15/+5
| | | | * include/rtems/system.h: Remove targopts.h.
* 2002-04-17 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Joel Sherrill2002-04-172-1/+6
| | | | | * include/rtems/system.h: Add the sparc to the target supporting multlibs.
* 2002-04-16 Chris Johns <ccj@acm.org>Joel Sherrill2002-04-162-0/+21
| | | | | | | * src/threadinitialize.c: Per PR181, clear the array of user extension pointers. This lets user extensions that have hooked the switch handler know if a task has been processed by the user extension before. If a user extension is created after a task is started it may not know it.
* 2002-04-12 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Joel Sherrill2002-04-122-1/+5
| | | | * include/rtems/system.h: Add i386 to multilib-able targets.
* 2002-03-29 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Joel Sherrill2002-04-127-4/+346
| | | | | | | | | | | | | | * rtems/score/idtr.h: New file, extracted from libcpu/cpu.h. * rtems/score/interrupts.h: New file, extracted from libcpu/cpu.h. * rtems/score/registers.h: New file, moved from libcpu. * Makefile.am: Reflect changes above. * cpu.c: Don't include cpuModel.h, #include <rtems.h>, #include <rtems/score/i386types.h>, #include <rtems/score/idtr.h>. * rtems/score/cpu.h: Don't include libcpu/cpu.h. #include <rtems/score/interrupts.h>, #include <rtems/score/registers.h>.
* 2001-04-11 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2002-04-113-75/+48
| | | | | | | * macros/rtems/score/userext.inl: Now works after merging patch for functionality requested in PR174. * inline/rtems/score/userext.inl: Added a comment explaining the order in which routines appear since it is not the obvious order.
* 2002-04-08 Chris Johns <ccj@acm.org>Joel Sherrill2002-04-093-1/+10
| | | | | | * Per PR141 and PR174, make task switch extension its own list and fix all odd problems introduced by providing macro version. * inline/rtems/score/userext.inl: Fix.
* 2002-04-06 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Joel Sherrill2002-04-082-5/+9
| | | | * rtems.c: Adaptation to gcc-3.0.x.
* 2001-04-08 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2002-04-082-3/+7
| | | | * macros/rtems/score/object.inl: Corrected arguments.
* 2001-04-08 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2002-04-083-19/+70
| | | | | | * macros/rtems/score/userext.inl: Updated to reflect modifications to inline version from PR142. * inline/rtems/score/userext.inl: Cleanup as side-effect of above.
* 2002-04-08 Chris Johns <ccj@acm.org>Joel Sherrill2002-04-081-0/+8
| | | | | | | | * Per PR142, make task switch extension its own list. * include/rtems/score/userext.h: Reflect above by adding User_extensions_Switch_control and adding it to User_extenions_Control. * inline/rtems/score/userext.inl: Allocate all memory in one chunk to minimize overhead. Address processing dedicated switch chain.
* 2002-04-08 Chris Johns <ccj@acm.org>Joel Sherrill2002-04-081-2/+22
| | | | | | | | * Per PR142, make task switch extension its own list. * include/rtems/score/userext.h: Reflect above by adding User_extensions_Switch_control and adding it to User_extenions_Control. * inline/rtems/score/userext.inl: Allocate all memory in one chunk to minimize overhead. Address processing dedicated switch chain.
* 2002-04-08 Chris Johns <ccj@acm.org>Joel Sherrill2002-04-082-33/+65
| | | | | | | | * Per PR142, make task switch extension its own list. * include/rtems/score/userext.h: Reflect above by adding User_extensions_Switch_control and adding it to User_extenions_Control. * inline/rtems/score/userext.inl: Allocate all memory in one chunk to minimize overhead. Address processing dedicated switch chain.
* 2002-04-01 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Joel Sherrill2002-04-033-24/+6
| | | | | * cpu.c: Remove call to sparc_init_tbr/NO_TABLE_MOVE. * rtems/score/cpu.h: Remove NO_TABLE_MOVE conditional code.
* 2001-04-03 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2002-04-035-60/+9
| | | | | | * Per PR94, all rtems/score/CPUtypes.h are named rtems/score/types.h. * include/rtems/score/ispsh7750.h, score/ispsh7750.c: Account for name change.
* 2001-04-03 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2002-04-032-2/+2
| | | | | * Per PR94, all rtems/score/CPUtypes.h are named rtems/score/types.h. * rtems/score/cpu.h: Account for name change.
* 2001-04-03 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2002-04-034-73/+9
| | | | | | | * Per PR94, all rtems/score/CPUtypes.h are named rtems/score/types.h. * rtems/score/unixtypes.h: Removed. * rtems/score/types.h: New file via CVS magic. * Makefile.am, rtems/score/cpu.h: Account for name change.
* 2001-04-03 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2002-04-034-58/+9
| | | | | | | * Per PR94, all rtems/score/CPUtypes.h are named rtems/score/types.h. * rtems/score/sparctypes.h: Removed. * rtems/score/types.h: New file via CVS magic. * Makefile.am, rtems/score/cpu.h: Account for name change.
* 2001-04-03 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2002-04-034-68/+9
| | | | | | | * Per PR94, all rtems/score/CPUtypes.h are named rtems/score/types.h. * rtems/score/shtypes.h: Removed. * rtems/score/types.h: New file via CVS magic. * Makefile.am, rtems/score/cpu.h: Account for name change.
* 2001-04-03 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2002-04-035-75/+10
| | | | | | | * Per PR94, all rtems/score/CPUtypes.h are named rtems/score/types.h. * rtems/score/ppctypes.h: Removed. * rtems/score/types.h: New file via CVS magic. * Makefile.am, rtems/score/cpu.h: Account for name change.
* 2001-04-03 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2002-04-034-58/+9
| | | | | | | * Per PR94, all rtems/score/CPUtypes.h are named rtems/score/types.h. * rtems/score/or32types.h: Removed. * rtems/score/types.h: New file via CVS magic. * Makefile.am, rtems/score/cpu.h: Account for name change.
* 2001-04-03 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2002-04-034-58/+9
| | | | | | | * Per PR94, all rtems/score/CPUtypes.h are named rtems/score/types.h. * rtems/score/or16types.h: Removed. * rtems/score/types.h: New file via CVS magic. * Makefile.am, rtems/score/cpu.h: Account for name change.
* 2001-04-03 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2002-04-034-58/+9
| | | | | | | * Per PR94, all rtems/score/CPUtypes.h are named rtems/score/types.h. * rtems/score/no_cputypes.h: Removed. * rtems/score/types.h: New file via CVS magic. * Makefile.am, rtems/score/cpu.h: Account for name change.
* 2001-04-03 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2002-04-038-133/+18
| | | | | | | * Per PR94, all rtems/score/CPUtypes.h are named rtems/score/types.h. * rtems/score/mipstypes.h: Removed. * rtems/score/types.h: New file via CVS magic. * Makefile.am, rtems/score/cpu.h: Account for name change.
* 2001-04-03 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2002-04-031-0/+7
| | | | | | | * Per PR94, all rtems/score/CPUtypes.h are named rtems/score/types.h. * rtems/score/m68ktypes.h: Removed. * rtems/score/types.h: New file via CVS magic. * Makefile.am, rtems/score/cpu.h: Account for name change.
* 2001-04-03 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2002-04-034-59/+9
| | | | | | | * Per PR94, all rtems/score/CPUtypes.h are named rtems/score/types.h. * rtems/score/i960types.h: Removed. * rtems/score/types.h: New file via CVS magic. * Makefile.am, rtems/score/cpu.h: Account for name change.