30 Commits

Author SHA1 Message Date
Ryan Long
0acb4d08ed rtems-tld.cpp: Remove logically dead code
CID 1399595: Logically dead code in generate_traces().

Closes #4525
2021-10-12 09:40:22 -05:00
Chris Johns
3d2db56f7d Fix warnings on Windows. 2018-11-29 05:45:21 +11:00
Chris Johns
efc4f099b4 Add release versioning support.
Support a top level VERSION file that defines an RTEMS release.

Fix the install of the python modules including thertems-test.

Update the git python module to the RSB version. Fix the options to
not call clean and to call dirty.

Update the version python module.

Fix the rtld C++ support to the VERSION file and the top level waf
script.
2015-12-09 20:08:19 +11:00
Chris Johns
2f11c3631d Always provide the argument size defines. 2015-10-15 21:06:05 +11:00
Chris Johns
e3df129557 Add a lock model to support different lock models when tracing.
Logging to a file requires a 'trace' lock model be used. The 'trace'
lock model holds the lock for the entire trace time, for example
the entry or exit tracing.
2015-09-29 20:26:38 +10:00
Chris Johns
b24951645d rtemstoolkit: Add support to return the system path split as paths.
Seacch the path for the program name if not found and set it as
an absolute path. This allow the prefix to be found.
2015-03-29 18:06:00 +11:00
Chris Johns
5032d71ab6 trace-linker: Update comments. 2015-03-29 16:37:22 +11:00
Chris Johns
d499e6df89 trace-linker: Add the trace function signatures to the wrapper code.
This gives the tools the ability to extract all needed data from the
executable.
2015-03-27 20:21:33 +11:00
Chris Johns
b988768f83 trace-linker: Add Trace Buffering support.
Trace buffering traces into a static buffer complete with timestamp
and the executing context.

A shell command provides access to the data.
2015-03-26 17:08:18 +11:00
Chris Johns
1703041074 rtems-tld: Add lock and buffer allocator support to generators.
Generators can control a lock and buffer allocation so a single
alloc can happen and a lock released.
2015-03-24 14:37:35 +11:00
Chris Johns
29ad92c524 trace-linker: Add options, names, enables, and triggers.
Move the options to a section so an option can be a single line. This
gives the user the ability to localise specific configurations in a
top level configuration file.

Provide support for names, enables and triggers. Names is an array of
names of the trace functions. The table is sorted and you can use an
index to reference the trace function. There is a @FUNC_INDEX@ macro
that is replaced with the trace function's index. Enables is a bitmap
of default trace enabled states for all trace functions. Triggers is
a bitmap of default triggers bit states for each trace function.
Generators can use these bitmaps to control functionality.

Currently the bitmaps are const but a generator option can be added
to disable the const and allow the capture engine access to update
the bitmaps.
2015-03-23 17:19:01 +11:00
Chris Johns
5025439f9d rtems-tld: Add config options, fix void args, and SCore traces. 2014-09-21 14:24:37 +10:00
Chris Johns
149a8a6361 rtems-tld: Remove forced trace message. 2014-09-21 08:50:56 +10:00
Chris Johns
5afb2b8d5b rtems-tld: Fix warnings in the generated code. 2014-09-10 13:10:20 +10:00
Chris Johns
b7ad4a2431 linkers: If no RTEMS path is provied see if the prefix can be used. 2014-09-09 08:40:13 +10:00
Chris Johns
6fb1409215 rtems-tld: Add entry and exit trace support. 2014-09-09 08:20:41 +10:00
Chris Johns
2126ea7ff0 rtems-tld: Generate arg and ret code in the wrapper. 2014-09-08 19:29:41 +10:00
Chris Johns
6506aa14aa RTEMS trace linker builds trace applications.
The trace linker builds the both_hello example in examples-v2.

Move the various string support functions into a C++ file and stop being
inlined. Make them return const std::string.

Add ld support to rld-cc.

Add search path support to rld-config so installed common files can be used.

Fix the path bugs.

Add an absolute path function to rld-path.
2014-09-08 16:06:48 +10:00
Chris Johns
b28e8b3115 Refactor the rld-rtems support to remove the globals. 2014-09-07 14:31:18 +10:00
Chris Johns
32cd4fcc17 rtems-tld: Add --wrapper option to aid testing.
The --wrapper option lets a user control the wrapper file name and
location to aid testing.

Add keep support to tempfiles so specific tempfile can be set
to be kept.

Add unlink to the rld::path namespace.
2014-09-07 10:47:00 +10:00
Chris Johns
c4c8218373 Fix rtems-ld to keep tmep files around while building. 2014-09-06 21:59:25 +10:00
Chris Johns
8807135964 Refactor the CC flags. Fix the various linkers. The trace linker is compiling. 2014-09-06 20:19:45 +10:00
Chris Johns
31bf37564b Remove march/mcpu and add RTEMS BSP and cflags support. 2014-09-05 18:18:11 +10:00
Chris Johns
40fd7a088a rld: Split the file into a path module for path specific functions.
This allows resued for other parts of the system not dependent on
objcet files or archives.
2014-09-01 13:26:47 +10:00
Chris Johns
097f1fdf56 rtms-tld: Refactor the code to match a better configuration format. 2014-08-07 18:15:06 +10:00
Chris Johns
4fd758e4f6 rtems-tld: Add wrapper support and start the generator coding. 2014-08-05 23:02:35 +10:00
Chris Johns
058d5024e9 rtems-tld: Add generator loading support. 2014-08-04 15:09:39 +10:00
Chris Johns
0a2102442e rtems-tld: Add recursive parsing of headers and defines. 2014-08-04 09:50:56 +10:00
Chris Johns
b6d7f5ff2e rtems-tld: Add trace configuration support.
Extend the configuration support to provide the needed configuration
required to generate the C stub support.
2014-08-04 09:19:55 +10:00
Chris Johns
ea299027e8 Add initial support for the RTEM Trace Linker.
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.
2014-08-01 16:48:09 +10:00