Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
Move the static objects into the rld-process file and change the
clean up to a call.
Add support to write to tempfiles.
|
|
|
|
|
|
Extend the configuration support to provide the needed configuration
required to generate the C stub support.
|
|
The RTEMS Trace Linker or rtems-rld creates an RTEMS executable with
trace support built in without any changes the existing code.
This commit is an initial starting point with function signatures
being read from INI files.
|
|
Remove some warnings.
|
|
std::list should be sorted first, then unique can remove duplicated
objects. Otherwise there will be many duplicated objects.
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
|
|
rtems-ra supports converting an elf archive file into a rap archive file.
It also support add, replace and delete rap files from the rap archive
file.
|
|
Signed-off-by: Peng Fan <van.freenix@gmail.com>
|
|
1. Automatically place object files in archive files into a ra file,
using new option --runtime-lib
2. Add a new option --one-file to decide whether the collected
object files should be merged into the rap file or not.
Signed-off-by: Peng Fan <van.freenix@gmail.com>
|
|
1. align to even address
2. Fix the use of GElf_Ehdr and Elf32_Ehdr
3. Fix the header related
|
|
|
|
Add elf section size to the section details, because gdb will use the size of
a section.
|
|
This change added the object file details to the RAP format so aid debugging
support. The information can be optionally stripped for production images
not needed this information if space is an issue,with '--rap-strip' assigned
to rtems-ld.
|
|
|
|
|
|
Signed-off-by: Peng Fan <van.freenix@gmail.com>
|
|
If one object file contains .rodata and .rodata.str1.4 sections,
.rodata contains rela reloc entries, but .rodata.str1.4 do not
contain reloc entris.'.rodata' and '.rodata.str1.4' will be both
included in '.const'.Then using this patch to fix the rela problem
Signed-off-by: Peng Fan <van.freenix@gmail.com>
|
|
Fixed when only one elf object file is passed to rtems-ld.And fixed the error when
one object file has rela relocation records, but the other does not contain relocation
records.
Signed-off-by: Peng Fan <van.freenix@gmail.com>
|
|
|
|
Fixed the RELA handling in the merging of the object sections into the
RAP sections. A method in the rap::image class was not being used any
more and that code transferred the RELA setting from the object sections
to the image section. This change adds also transfers the rela field.
|
|
Support and ignore the '-Wl,options' command line option to allow
build system that use this flag to call the RTEMS linker.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
The offsets of sections in objects have to be computed in load order
so the offsets work. For example an object could have a sections with
an alignment of 4 and 16 so the 4 may align with the current load
offset and the 16 is padded to align it. This is the way the image is
loaded and so the layout needs to follow these rules.
The strtab search needs to be better. An STL string find was finding
patrial strings and causing errors on the target.
|
|
|
|
Weak symbols where not being managed correctly. The symbols table
is now a class with externals and weaks as separate symtabs so
the externals can be searched first then the weaks and if not
found an unresolved error is raised. This was found creating
a libbsdport RAP file where the drivers in the all driver table
resolved to the weak symbols and so linking in nothing.
Fixing the weak symbols as found in the libbsdport library
triggered a new resolver bug. The object files now contain the
resolver state and this is used to determine if an object file
has been resolved or is currently being resolved avoiding
rescursive loops with dependent object files.
The resolver trace output is a little easier to read.
|
|
|
|
|
|
Moved the section trace output to after the offsets have been
computed and add this to the output. This allows a simple way
to track the offset in an ELF section to the offset in the RAP
section.
|
|
|
|
An overlay shows the hex dump of the section data with the relocation
records so you can see the relationship between the relocations and
the section data.
|
|
|
|
|
|
|
|
Set the compressed file length in the RAP header. Move
the string from the outputter to the RAP file.
Make the sections public by moving to the RAP header.
|
|
Make reading compressed files more robust returning the amount
of data that can be read. Also add >> operartors to get the
data. Add exceptions when a read fails.
|
|
|
|
|
|
The compressor can now decompress LZ77 files.
|
|
Numerous fixes to load the the libbsdport RAP file on the i386.
|
|
Add a method to return a section given the ELF section index.
Add more trace output for debugging.
|