summaryrefslogtreecommitdiffstats
path: root/cpukit/score/macros (follow)
Commit message (Collapse)AuthorAgeFilesLines
* 2002-11-14 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2002-11-141-1/+1
| | | | * macros/rtems/score/object.inl: Keep consistent with inline version.
* 2002-08-14 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2002-08-141-0/+2
| | | | | * macros/rtems/score/coremsg.inl: Add <string.h> to remove warning. * src/threadidlebody.c: Add return 0 to avoid warning.
* 2002-07-16 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2002-07-161-3/+3
| | | | | * macros/rtems/score/object.inl: Corrected typos in _Objects_Open, _Objects_Close, and _Objects_Namespace_remove.
* 2002-07-05 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2002-07-051-8/+12
| | | | | | * macros/rtems/score/object.inl: Corrected implementation of _Objects_Open, _Objects_Close, and _Objects_Namespace_remove to be consistent with the inline implementation.
* 2002-07-01 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2002-07-011-7/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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-06-17 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Ralf Corsepius2002-06-171-1/+1
| | | | * Include $(top_srcdir)/automake/*.am.
* 2001-05-17 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2002-05-171-0/+16
| | | | | * macros/rtems/score/thread..inl: Implemented missing routines for new libc reentrancy support.
* 2001-04-11 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2002-04-111-75/+37
| | | | | | | * 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-091-0/+2
| | | | | | * 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.
* 2001-04-08 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2002-04-081-3/+3
| | | | * macros/rtems/score/object.inl: Corrected arguments.
* 2001-04-08 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2002-04-081-18/+53
| | | | | | * 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-03-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Joel Sherrill2002-03-281-1/+0
| | | | | | | | | * cpu/Makefile.am: Remove AUTOMAKE_OPTIONS. * src/Makefile.am: Remove AUTOMAKE_OPTIONS. * Makefile.am: Remove AUTOMAKE_OPTIONS. * include/Makefile.am: Remove AUTOMAKE_OPTIONS. * inline/Makefile.am: Remove AUTOMAKE_OPTIONS. * macros/Makefile.am: Remove AUTOMAKE_OPTIONS.
* 2001-12-19 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Joel Sherrill2001-12-201-3/+3
| | | | | | * inline/rtems/score/object.inl, macros/rtems/score/object.inl: Add add casts to Objects_Id in _Objects_Build_ids to avoid implicit typecasts from enum to int16 on bit16 targets (here: h8300).
* 2001-11-28 Joel Sherrill <joel@OARcorp.com>,Joel Sherrill2001-11-281-9/+0
| | | | | | | | | This was tracked as PR91. * include/rtems/score/isr.h, inline/rtems/score/isr.inl, macros/rtems/score/isr.inl: Modified to allow any port to provide its own implementation of the macro _ISR_Is_in_progress. If the port overrides this macro, it must provide a non-inlined function implementation.
* 2001-10-16 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Joel Sherrill2001-10-161-4/+36
| | | | | | | | | | | | | * include/rtems/Makefile.am: Remove. * include/rtems/Makefile.am: Remove. * include/Makefile.am: Handle subdirs, require automake-1.5. * macros/rtems/Makefile.am: Remove. * macros/rtems/score/Makefile.am: Remove. * macros/Makefile.am: Handle subdirs, require automake-1.5. * inline/rtems/Makefile.am: Remove. * inline/rtems/score/Makefile.am: Remove. * inline/Makefile.am: Handle subdirs, require automake-1.5. * Makefile.am: require automake-1.5
* 2000-05-25 Sergei Organov <osv@javad.ru>Joel Sherrill2001-05-251-1/+0
| | | | | | * macros/rtems/score/coresem.inl, inline/rtems/score/coresem.inl: Cut and paste problem incorrectly enabled interrupts twice with the first time being too early.
* 2000-12-01 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2000-12-012-15/+13
| | | | | | | | * macros/rtems/score/coresem.inl: Removed comments since convention calls for comments to be in inline versin. * macros/rtems/score/object.inl (Objects_Get_local_object): Fixed style to use _ prefix on variable names and use parentheses. * macros/rtems/score/object.inl (_Objects_Namespace_remove): Added.
* 2000-11-30 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2000-11-304-4/+63
| | | | | | | | | | | | | | | | | | * General effort to make things compile with macros not inlines * inline/rtems/score/coremutex.inl: Added comment indicating for macros there is another copy of _CORE_mutex_Seize_interrupt_trylock() in src/coremutexseize.c. * src/coremutexseize.c: Added body of _CORE_mutex_Seize_interrupt_trylock() for macro case. * macros/rtems/score/coremutex.inl: Added prototype for _CORE_mutex_Seize_interrupt_trylock() since there is a real body when macros are enabled. * macros/rtems/score/coresem.inl: Added macro implementation of _CORE_semaphore_Seize_isr_disable. * macros/score/Makefile.am: Fixed typos. * rtems/score/address.inl: Correct macro implementation of _Addresses_Is_aligned() so it would compile. * macros/rtems/score/coremsg.inl: Added closing parentheses.
* Port of RTEMS to the Texas Instruments C3x/C4x DSP families includingJoel Sherrill2000-07-262-0/+17
| | | | | | | | | | | a BSP (c4xsim) supporting the simulator included with gdb. This port was done by Joel Sherrill and Jennifer Averett of OAR Corporation. Also included with this port is a space/time optimization to eliminate FP context switch management on CPUs without hardware or software FP. An issue with this port was that sizeof(unsigned32) = sizeof(unsigned8) on this CPU. This required addressing alignment checks and assumptions as well as fixing code that assumed sizeof(unsigned32) == 4.
* Merged from 4.5.0-beta3aJoel Sherrill2000-06-121-1/+1
|
* Patch rtems-rc-4.5.0-13-cvs.diff from Ralf Corsepius <corsepiu@faw.uni-ulm.de>.Joel Sherrill2000-04-133-0/+6
| | | | adds .cvsignore.
* POSIX message queues now include complete functionality includingJoel Sherrill2000-01-131-4/+6
| | | | | | | | | | | | | | | | blocking sends when the queue is full. The SuperCore was enhanced to support blocking on send. The existing POSIX API was debugged and numerous test cases were added to psxmsgq01 by Jennifer Averett. SuperCore enhancements and resulting modifications to other APIs were done by Joel. There is one significant point of interpretation for the POSIX API. What happens to threads already blocked on a message queue when the mode of that same message queue is changed from blocking to non-blocking? We decided to unblock all waiting tasks with an EAGAIN error just as if a non-blocking version of the same operation had returned unsatisfied. This case is not discussed in the POSIX standard and other implementations may have chosen differently.
* Added support for simple binary semaphores in addition to the highJoel Sherrill2000-01-051-9/+0
| | | | | | | | | | | | power binary/mutex style semaphores already supported by RTEMS. This was done at the request of Eric Norum <eric@cls.usask.ca> in support of his effort to port EPICS to RTEMS. This change consisted of changing the nesting_allowed boolean into a lock_nesting_behavior enumerated value as well as allowing the core mutex object to optionally support ensuring that the holder of a binary semaphore released it. Finally, a more subtle enhancement was to allow the non-holder to release a priority inheritance/ceiling mutex and still allow the holding task to return to its original priority.
* Updated copyright notice.Joel Sherrill1999-11-1721-42/+21
|
* Committed modifications from ITRON Task and Task Dependendent SynchronizationJoel Sherrill1999-11-101-9/+0
| | | | Working Group. Included are tests.
* Patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de> to make fix bugJoel Sherrill1999-10-041-3/+3
| | | | where wrapup left pieces out of the librtemsall.a.
* Applied patch rtems-rc-19990820-6.diff.gz fromJoel Sherrill1999-09-071-0/+12
| | | | | Ralf Corsepius <corsepiu@faw.uni-ulm.de> which converted many Makefile.in's to Makefile.am's. This added a lot of files.
* Unlimited objects patch from Chris Johns <ccj@acm.org>. Email follows:Joel Sherrill1999-03-172-10/+36
| | | | | | | | | | | | | | | | | | | | | | | | | First, the unlimited patch. I have compiled the unlmited patch for the Linux posix BSP only and it seems to work cleanly. I would like a really major application run on this change before commiting as the changes are very core and significant. I am currently building all the tests to run. I have no targets suitable to test on at the moment. I have tested the patch for inline functions and macros. Turning macros on has found some core bugs. I have fixed these but have not run all the tests. Please review the patch for these changes. They are: 1) The conditional compilation for MP support broke the core messages code. You cannot embed a conditional macro in another macro. The Send and Urgent Send calls are macros. 2) User extensions handler initialisation now has two parameters. I have updated the macros to support the extra parameter. The patch also contains the gcc-target-default.cfg fix required to build the kernel. More of a by product than a fix for you.
* Modified _Objects_Is_class_valid() to correctly report that 0 wasJoel Sherrill1998-06-181-1/+1
| | | | | not a valid object class. This was discovered while looking for a bug reported by Jennifer.
* updated copyright to 1998Joel Sherrill1998-02-1721-21/+21
|
* Removed warning per Chris Johns' suggestion.Joel Sherrill1998-01-201-1/+1
|
* Fixed typo in the pointer to the license terms.Joel Sherrill1997-10-0821-42/+42
|
* headers updated to reflect new style copyright notice as partJoel Sherrill1997-04-2221-105/+105
| | | | of switching to the modified GNU GPL.
* modified _Chain_Insert_unprotected to have the form required to be usedJoel Sherrill1997-03-111-2/+2
| | | | as the sole statement in an if or else statement
* changed _TOD_Is_set from a function to a boolean variableJoel Sherrill1996-09-061-9/+0
|
* removed Thread_queue_Get_number_waitingMark Johannes1996-08-131-9/+0
|
* renamed _TOD_Ticks_since_boot as _Watchdog_Ticks_since_boot so the WatchdogJoel Sherrill1996-05-311-1/+1
| | | | | Handler could timestamp the starting and stopping of timers. Since TOD is built on top of Watchdog, this avoided a circular dependency.
* made initialization routine a regular subroutineJoel Sherrill1996-04-221-41/+0
|
* Removed prototyes for static inline routines and moved the comments intoJoel Sherrill1996-03-061-2/+2
| | | | | | | | | | | | | | | the inline implementation. The impetus for this was twofold. First, it is incorrect to have static inline prototypes when using the macro implementation. Second, this reduced the number of lines in the include files seen by rtems.h by about 2000 lines. Next we restricted visibility for the inline routines to inside the executive itself EXCEPT for a handful of objects. This reduced the number of include files included by rtems.h by 40 files and reduced the lines in the include files seen by rtems.h by about 6000 lines. In total, these reduced the compile time of the entire RTEMS tree by 20%. This results in about 8 minutes savings on the SparcStation 10 morgana.
* Removed the internal thread objects and dispersed its contents toJoel Sherrill1996-02-211-0/+16
| | | | | | | | | | the thread handler (IDLE), MPCI object (SYSI now MP Receive) and initialize_executive_early (IO initialization). The SYSI task no longer exists in a single processor configuration. This reduces single processor Workspace requirements by a TCB and a stack which is often larger than the minimum stack size. Moving the IO initialization plus accompanying BSP hooks eliminated an initialization ordering problem in which a global task could be created before the MPCI was initialized.
* changed post task extension from user set to api set and added flagJoel Sherrill1996-02-131-9/+0
| | | | in each thread which must be set when the post switch extension is to be run.
* new isr synchronization algorithm using a single enumerated set of states.Joel Sherrill1996-02-091-1/+0
|
* alignment on workspace changed from CPU_ALIGNMENT to CPU_HEAP_ALIGNMENTJoel Sherrill1996-02-081-1/+1
|
* changes remerged after lost in disk crash -- recovered from snapshot, ↵Joel Sherrill1995-12-203-15/+23
| | | | partially recovered working tree, etc
* SPARC port passes all testsJoel Sherrill1995-10-302-6/+28
|
* all targets compile .. tony's patches in placeJoel Sherrill1995-09-291-2/+2
|
* Fixed typoJoel Sherrill1995-09-271-2/+2
|
* posix support initially addedJoel Sherrill1995-09-265-3/+34
|
* Modifications from Tony Bennett accepted to return aligned block.Joel Sherrill1995-09-191-0/+12
|
* Minor bug fixes to get all targets compilable and running. TheJoel Sherrill1995-09-191-0/+121
| | | | | | single biggest changes were the expansion of the workspace size macro to include other types of objects and the increase in the minimum stack size for most CPUs.