| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
- The archive command lists archives, symbols and any duplicate
symbols.
- Change the RTL shell commands to the rtems_printer to allow
the output to be captured.
|
|
|
|
| |
Updates #3687
|
|
|
|
|
|
| |
Coverity 1399717
Updates #3686
|
|
|
|
|
|
| |
Coverty 1442636
Updates #3686
|
|
|
|
|
|
|
|
| |
space.
Coverity issue 1442540
Updates #3686
|
|
|
|
|
|
| |
Coverity issue 1442641
Updates #3686
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Allow an allocator to lock the allocations. This is needed to
lock the heap allocator so the text and trampoline table are
as close together as possible to allow for the largest possible
object file size.
- Update the default heap allocator to lock the heap allocator.
- Update ELF loading to lock the allocator.
Updates #3685
|
|
|
|
| |
Updates #3687
|
|
|
|
| |
Close #3692
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Add support for architecure sections that can be handled by the
architecture back end.
- Add trampoline/fixup support for PowerPC. This means the PowerPC
now supports large memory loading of applications.
- Add a bit allocator to manage small block based regions of memory.
- Add small data (sdata/sbss) support for the PowerPC. The support
makes the linker allocated small data region of memory a global
resource available to libdl loaded object files.
Updates #3687
Updates #3685
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Add trampolines to support relocs that are out of range on
support architectures.
- Support not loading separate text/data sections in an object
file if the symbol provided in the section is a duplicate.
A base image may have pulled in part of an object and another
part needs to be dynamically loaded.
- Refactor the unresolved handling to scale to hundreds of
unresolved symbols when loading large number of files.
Updates #3685
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Trampolines or fixups for veneers provide long jump support
for instruciton sets that implement short relative address
branches. The linker provides trampolines when creating a
static image. This patch adds trampoline support to libdl
and the ARM architecture.
- The dl09 test requires enough memory so modules are outside
the relative branch instruction ranges for the architecture.
Updates #3685
|
|
|
|
|
|
|
| |
- Fix the handling of pending objects.
- Add a constructor flags in objects to track then being called.
Closes #2921
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Load archive symbol tables to support searching of archives
for symbols.
- Search archive symbols and load the object file that contains
the symbol.
- Search the global and archives until all remaining unresolved symbols
are not found. Group the loaded object files in the pending queue.
- Run the object file and loaded dependents as a group before adding to the
main object list.
- Remove orphaned object files after references are removed.
Updates #3686
|
|
|
|
| |
Closes #3298
|
| |
|
|
|
|
| |
Username: deuteriumoxide Email: jacobshin313@gmail.com
|
|
|
|
|
|
|
|
|
|
| |
Tracking references lets us manage when an object file can be
unloaded. If an object file has references to it, it cannot be
unloaded.
Modules that depend on each other cannot be unloaded.
Updates #3605
|
|
|
|
| |
Updates #3194
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The use of separate text and data results in uninitialised variables
being placed in the common section. There is no section in ELF for
the common variables so the loader needs to create the section and
allocate the variables in that section. This patch does that.
The patch adds a second pass over the symbols.
The issue can also be seen as a section 65522 error.
Updates #3604
|
| |
|
|
|
|
| |
Update #3375.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
- Do not error if a RAP section is not found.
- Free a symbol table via the RTL allocator interface.
- Add the symbols to the global symbol table.
Update #2769
|
|
|
|
| |
Update #2843.
|
|
|
|
| |
Update #2843.
|
|
|
|
| |
Update #2843.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
A speciality of the RTEMS build system was the make preinstall step. It
copied header files from arbitrary locations into the build tree. The
header files were included via the -Bsome/build/tree/path GCC command
line option.
This has at least seven problems:
* The make preinstall step itself needs time and disk space.
* Errors in header files show up in the build tree copy. This makes it
hard for editors to open the right file to fix the error.
* There is no clear relationship between source and build tree header
files. This makes an audit of the build process difficult.
* The visibility of all header files in the build tree makes it
difficult to enforce API barriers. For example it is discouraged to
use BSP-specifics in the cpukit.
* An introduction of a new build system is difficult.
* Include paths specified by the -B option are system headers. This
may suppress warnings.
* The parallel build had sporadic failures on some hosts.
This patch removes the make preinstall step. All installed header
files are moved to dedicated include directories in the source tree.
Let @RTEMS_CPU@ be the target architecture, e.g. arm, powerpc, sparc,
etc. Let @RTEMS_BSP_FAMILIY@ be a BSP family base directory, e.g.
erc32, imx, qoriq, etc.
The new cpukit include directories are:
* cpukit/include
* cpukit/score/cpu/@RTEMS_CPU@/include
* cpukit/libnetworking
The new BSP include directories are:
* bsps/include
* bsps/@RTEMS_CPU@/include
* bsps/@RTEMS_CPU@/@RTEMS_BSP_FAMILIY@/include
There are build tree include directories for generated files.
The include directory order favours the most general header file, e.g.
it is not possible to override general header files via the include path
order.
The "bootstrap -p" option was removed. The new "bootstrap -H" option
should be used to regenerate the "headers.am" files.
Update #3254.
|
|
|
|
|
|
| |
Prepare for header file move to common include directory.
Update #3254.
|
|
|
|
| |
Update #3155.
|
|
|
|
| |
Update #3155.
|
|
|
|
| |
Update #2133.
|
| |
|
|
|
|
| |
some architectures
|
|
|
|
|
|
|
|
| |
Provide extentions to <inttpes.h> PRIxxx constants for more POSIX types.
Start with existing definitions found in RTEMS Project owned code
in cpukit/.
updates #2983.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The ARM C++ exception ABI uses an address ordered index table to
locate the correct frame data and this requires the EXIDX sections are
loaded in the order the order the matching text is loaded.
The EXIDX sections set the SHF_LINK_ORDER flag and link field. This patch
adds support to load those flagged sections in the linked-to section
order.
Updates #2955.
Closes #2959
|
| |
|
|
|
|
|
|
| |
This has been tested on SPARC, i386, PowerPC and ARM.
Closes #2767.
|
|
|
|
| |
updates #2802.
|
|
|
|
|
|
|
| |
Use of rtems_cache_get_maximal_line_size() is more descriptive
choice. The min/max data/instruction cache line size is not critical
there, value is used for optimization only to use single operation
for directly following sections.
|
|
|
|
| |
Closes #2767
|
|
|
|
|
|
|
|
|
| |
This patch fixes a number of bugs in the cache when requests are
made to read close to the end of the file and the data is copied
from the top of the cache buffer to the bottom of the buffer. This
was compounded by attempting to read past the end of the file.
Closes #2754.
|
| |
|
|
|
|
|
|
|
|
| |
Memory content changes caused by relocation has to be
propagated to memory/cache level which is used/snooped
during instruction cache fill.
Closes #2438
|
|
|
|
|
|
|
|
|
|
|
|
| |
Synchronize each cluster of sections of the same type separately
to support even cases where text and data are allocated from different
areas (for example due allocation from different MPU protection regions).
rtems_cache_instruction_sync_after_code_change is called even to data
sections. Propagation of data only changes should not require cache
maintenance operation on sane SMP mutithread capable systems if barrier
instruction is added but be on safe side even for case where self
modifying code uses data sections initial values etc.
|
|
|
|
|
|
| |
The RTEMS print user need to know nothing about a particular printer
implementation. In particular get rid of the <stdio.h> include which
would be visible via <rtems.h>.
|
|
|
|
| |
updates #2446.
|
| |
|
| |
|