| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
PR 1345/Ada
* rtems.ads: RTEMS boolean type is now C99 bool which is not an
unsigned32.
|
|
|
|
|
| |
PR 1339/Ada
* rtems.adb, rtems.ads: Re-add IO Manager to Ada binding.
|
|
|
|
| |
* rtems.adb, rtems.ads: Fix prototype.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* rtems.adb, rtems.ads: Refactored rtems_clock_get into 5 methods
which are single purpose and more strongly typed. They are:
rtems_clock_get_tod - Get TOD in Classic API structure
rtems_clock_get_tod_timeval - Get TOD in struct timeval
rtems_clock_get_seconds_since_epoch - Get TOD as seconds since 1988
rtems_clock_get_ticks_since_boot - Get ticks since boot
rtems_clock_get_ticks_per_second - Get ticks per second
Also switch from using 'Unchecked_Access to 'Access.
Added pragma Convention C as required by gcc > 4.3.
Changed style of parenthese on subprogram calls to match GNAT.
|
|
|
|
| |
* rtems.adb, rtems.ads: Correct binding to Object_Get_Name. Now works.
|
|
|
|
|
| |
* rtems.adb, rtems.ads: Object_Get_Name now has a proper implementation
thanks to a binding tip from Laurent Guerby.
|
|
|
|
| |
* rtems.adb, rtems.ads: Add Ada binding for Object Services.
|
|
|
|
| |
* rtems.adb: Add missing semicolon.
|
|
|
|
| |
* rtems.adb, rtems.ads: Fixed errors in the barrier binding.
|
|
|
|
| |
* rtems.adb, rtems.ads: Added some more missing bindings.
|
|
|
|
| |
* rtems.adb, rtems.ads: Added a missing binding.
|
|
|
|
|
| |
* rtems.adb, rtems.ads: Cleaned up binding and removed bindings for
things that are not reasonable to do in Ada.
|
|
|
|
|
| |
* rtems.adb, rtems.ads: Most of single processor Ada tests now build.
Some run.
|
|
|
|
| |
* rtems.adb: Fix warnings.
|
|
|
|
| |
* rtems.adb, rtems.ads: Update.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
* rtems.adb, rtems.ads: Remove initialization directives as
rtems_initialize_executive is obsolete and the other initialization
services should not be called from Ada anyway.
|
|
|
|
| |
* rtems.adb: Fix variable name.
|
|
|
|
|
| |
PR rtems_misc/795
* rtems.ads: Fix parameter ordering.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR 746/rtems
Optimize realloc(). The problem is that realloc() can neither grow
nor shrink efficiently the current memory region without support
from underlying heap/region modules. The patch introduces one new
routine for each of heap and region modules, _Heap_Resize_block(),
and rtems_region_resize_segment(), respectively, and uses the
latter to optimize realloc().
The implementation of _Heap_Resize_block() lead to changing of the
heap allocation strategy: now the heap manager, when splits larger
free block into used and new free parts, makes the first part of
the block used, not the last one as it was before. Due to this new
strategy, _Heap_Resize_block() never needs to change the user
pointer.
Caveat: unlike previous heap implementation, first few bytes of
the contents of the memory allocated from the heap are now almost
never all zero. This can trigger bugs in client code that have not
been visible before this patch.
* libcsupport/src/malloc.c (realloc): try to resize segment in
place using new rtems_region_resize_segment() routine before
falling back to the malloc()/free() method.
* score/src/heap.c:
(_Heap_Initialize): change initial heap layout to reflect new
allocation strategy of using of the lower part of a previously
free block when splitting it for the purpose of allocation.
(_Heap_Block_allocate): when split, make the lower part used, and
leave the upper part free. Return type changed from Heap_Block* to
uint32_t.
* score/include/rtems/score/heap.h:
(Heap_Statistics): added 'resizes' field.
(Heap_Resize_status): new enum.
(_Heap_Resize_block): new routine.
(_Heap_Block_allocate): return type changed from Heap_Block* to
uint32_t.
* score/src/heapwalk.c: reflect new heap layout in checks.
* score/src/heapsizeofuserarea.c: more assertions added.
* score/src/heapresizeblock.c: new file.
(_Heap_Resize_block): new routine.
* score/src/heapfree.c: reverse the checks _Heap_Is_block_in() and
_Heap_Is_prev_used() on entry to be in this order.
* score/src/heapallocate.c, score/src/heapallocatealigned.c:
ignore return value of _Heap_Block_allocate().
* score/Makefile.am (HEAP_C_FILES): added src/heapresizeblock.c.
* rtems/include/rtems/rtems/region.h:
(rtems_region_resize_segment): new interface routine.
(_Region_Process_queue): new internal routine called from
rtems_region_resize_segment() and rtems_region_return_segment().
* rtems/src/regionreturnsegment.c: move queue management code into
the new internal routine _Region_Process_queue() and call it.
* rtems/src/regionresizesegment.c: new file.
(rtems_region_resize_segment): new interface routine.
* rtems/src/regionprocessqueue.c: new file.
(_Region_Process_queue): new internal routine containing queue
management code factored out from 'regionreturnsegment.c'.
* rtems/Makefile.am (REGION_C_FILES): Added
src/regionresizesegment.c, and src/regionprocessqueue.c.
* ada/rtems.adb, ada/rtems.ads: Added Region_Resize_Segment.
|
|
|
|
| |
* rtems.adb: Remove gcc 4.x warnings.
|
|
|
|
|
|
|
| |
PR 782/rtems
* rtems.ads: Remove stray ';'.
* rtems.adb: Stub Task_Variable_Add, Task_Variable_Get,
Task_Variable_Delete.
|
| |
|
| |
|
|
|
|
|
|
| |
* configure.ac: fix evaluating --enable-ada.
* ada/Makefile.am: Use preinstall.am
* ada/preinstall.am: New.
|
|
|
|
| |
* Makefile.am: Add PREINSTALL_DIRS.
|
|
|
|
|
| |
* Makefile.am: Move include_adadir into RTEMS_ADA condional block.
Add CLEANFILES. Add PREINSTALL_FILES to CLEANFILES.
|
|
|
|
| |
* Makefile.am: Use mkdir_p. Remove dirs from PRE/TMPINSTALL_FILES.
|
|
|
|
| |
* Makefile.am: Use include_ada_HEADERS.
|
|
|
|
|
| |
* Makefile.am: Preinstall adainclude_HEADERS.
Add $(dirstamp) to preinstallation rules.
|
|
|
|
|
| |
PR 528/rtems_misc
* rtems.ads: Add task variables to Ada binding.
|
|
|
|
|
| |
* rtems-multiprocessing.adb, rtems-multiprocessing.ads, rtems.adb,
rtems.ads: URL for license changed.
|
| |
|
|
|
|
|
| |
PR 418/ada
* rtems.adb: Add missing all keyword to derefence pointer.
|
|
|
|
|
|
| |
* configure.ac: Remove (Merged into ../configure.ac).
* Makefile.am: Reflect having merged configure.ac into
../configure.ac.
|
| |
|
|
|
|
| |
* configure.ac: AM_INIT_AUTOMAKE([1.7.2]).
|
|
|
|
| |
* configure.ac: AC_PREREQ(2.57).
|
|
|
|
|
|
| |
PR 338/filesystem
* rtems.adb, rtems.ads: Side-effect of fixing reentrancy problem with
rtems_io_lookup_name() (API change).
|
|
|
|
|
| |
* rtems.ads: Corrected Configuration_Table record definition to
match current RTEMS source. sp01 now runs.
|
|
|
|
| |
* configure.ac: Fix package name.
|
|
|
|
|
| |
* configure.ac: Remove AC_ENABLE_MULTILIB.
* Makefile.am: Add CVS-Id.
|
|
|
|
| |
* configure.ac: Add nostdinc to AM_INIT_AUTOMAKE.
|
|
|
|
|
|
| |
* .cvsignore: Reformat.
Add autom4te*cache.
Remove autom4te.cache.
|
|
|
|
| |
* rtems.adb (IO_Initialize): Make this match the C prototype.
|