[rtems-tools commit] trace-linker: Add API and POSIX interfaces.

Chris Johns chrisj at rtems.org
Thu Mar 26 07:23:40 UTC 2015


Module:    rtems-tools
Branch:    master
Commit:    b69cd3fc07d0fc58f316c18e1c67ff4af9056f73
Changeset: http://git.rtems.org/rtems-tools/commit/?id=b69cd3fc07d0fc58f316c18e1c67ff4af9056f73

Author:    Chris Johns <chrisj at rtems.org>
Date:      Thu Mar 26 18:23:35 2015 +1100

trace-linker: Add API and POSIX interfaces.

---

 linkers/rtems-api.ini   | 46 ++++++++++++++++++++++++++++++++-
 linkers/rtems-posix.ini | 68 +++++++++++++++++++++++++++++++++++++++++++++++++
 linkers/rtems.ini       |  2 +-
 linkers/wscript         |  1 +
 4 files changed, 115 insertions(+), 2 deletions(-)

diff --git a/linkers/rtems-api.ini b/linkers/rtems-api.ini
index f2de480..321a77f 100644
--- a/linkers/rtems-api.ini
+++ b/linkers/rtems-api.ini
@@ -13,8 +13,52 @@ header = "#include <rtems.h>"
 ; Currently empty
 
 [rtems-api-task]
-trace = rtems_task_create
+trace = rtems_task_create, rtems_task_ident, rtems_task_self, rtems_task_start
+trace = rtems_task_restart, rtems_task_delete, rtems_task_suspend, rtems_task_resume
+trace = rtems_task_is_suspended, rtems_task_set_priority, rtems_task_wake_after
+trace = rtems_task_wake_when, rtems_iterate_over_all_threads,
+enable = rtems_task_create, rtems_task_ident, rtems_task_self, rtems_task_start
+enable = rtems_task_restart, rtems_task_delete, rtems_task_suspend, rtems_task_resume
+enable = rtems_task_is_suspended, rtems_task_set_priority, rtems_task_wake_after
+enable = rtems_task_wake_when, rtems_iterate_over_all_threads,
+
+[rtems-api-semaphore]
+trace = rtems_semaphore_create, rtems_semaphore_ident, rtems_semaphore_delete
+trace = rtems_semaphore_obtain, rtems_semaphore_release, rtems_semaphore_flush
+trace = rtems_semaphore_set_priority, rtems_task_mode
+enable = rtems_semaphore_create, rtems_semaphore_ident, rtems_semaphore_delete
+enable = rtems_semaphore_obtain, rtems_semaphore_release, rtems_semaphore_flush
+enable = rtems_semaphore_set_priority, rtems_task_mode
+
+[rtems-api-event]
+trace = rtems_event_send, rtems_event_receive
+enable = rtems_event_send, rtems_event_receive
 
 [rtems-api-signatures]
 rtems_task_create = rtems_status_code, rtems_name, rtems_task_priority, size_t, rtems_mode, rtems_attribute, rtems_id*
+rtems_task_ident = rtems_status_code, rtems_name, uint32_t, rtems_id*
+rtems_task_self = rtems_id, void
+rtems_task_start = rtems_status_code, rtems_id, rtems_task_entry, rtems_task_argument
+rtems_task_restart = rtems_status_code, rtems_id, rtems_task_argument
+rtems_task_delete = rtems_status_code, rtems_id
+rtems_task_suspend = rtems_status_code, rtems_id
+rtems_task_resume = rtems_status_code, rtems_id
+rtems_task_is_suspended = rtems_status_code, rtems_id
+rtems_task_set_priority = rtems_status_code, rtems_id, rtems_task_priority, rtems_task_priority*
+rtems_task_mode = rtems_status_code, rtems_mode, rtems_mode, rtems_mode*
+rtems_task_wake_after = rtems_status_code, rtems_interval
+rtems_task_wake_when = rtems_status_code, rtems_time_of_day*
+rtems_iterate_over_all_threads = void, rtems_per_thread_routine
+
+; Semaphore
+rtems_semaphore_create = rtems_status_code, rtems_name, uint32_t, rtems_attribute, rtems_task_priority , rtems_id*
+rtems_semaphore_ident = rtems_status_code, rtems_name, uint32_t, rtems_id*
+rtems_semaphore_delete = rtems_status_code, rtems_id
+rtems_semaphore_obtain = rtems_status_code, rtems_id, rtems_option, rtems_interval
+rtems_semaphore_release = rtems_status_code, rtems_id
+rtems_semaphore_flush = rtems_status_code, rtems_id
+rtems_semaphore_set_priority = rtems_status_code, rtems_id, rtems_id, rtems_task_priority, rtems_task_priority*
 
+; Event
+rtems_event_send = rtems_status_code, rtems_id, rtems_event_set
+rtems_event_receive = rtems_status_code, rtems_event_set, rtems_option, rtems_interval, rtems_event_set*
diff --git a/linkers/rtems-posix.ini b/linkers/rtems-posix.ini
new file mode 100644
index 0000000..b460626
--- /dev/null
+++ b/linkers/rtems-posix.ini
@@ -0,0 +1,68 @@
+;
+; RTEMS POSIX Trace Configurations
+;
+[rtems-posix]
+headers = rtems-posix-headers
+defines = rtems-posix-defines
+signatures = rtems-posix-signatures
+
+[rtems-posix-headers]
+header = "#include <pthread.h>"
+
+[rtems-posix-defines]
+; Currently empty
+
+[rtems-posix-thread]
+trace = pthread_create, pthread_cancel, pthread_detach, pthread_equal, pthread_exit
+trace = pthread_join, pthread_kill, pthread_once, pthread_self, pthread_setcancelstate
+trace = pthread_setcanceltype, pthread_testcancel, pthread_yield
+enable = pthread_create, pthread_cancel, pthread_detach, pthread_equal, pthread_exit
+enable = pthread_join, pthread_kill, pthread_once, pthread_self, pthread_setcancelstate
+enable = pthread_setcanceltype, pthread_testcancel, pthread_yield
+
+[rtems-posix-mutex]
+trace = pthread_mutexattr_destroy, pthread_mutexattr_getprioceiling, pthread_mutexattr_getprotocol
+trace = pthread_mutexattr_gettype, pthread_mutexattr_init, pthread_mutexattr_setprioceiling
+trace = pthread_mutexattr_setprotocol, pthread_mutexattr_settype, pthread_mutex_destroy
+trace = pthread_mutex_init, pthread_mutex_lock, pthread_mutex_timedlock
+trace = pthread_mutex_trylock, pthread_mutex_unlock
+enable = pthread_mutexattr_destroy, pthread_mutexattr_getprioceiling, pthread_mutexattr_getprotocol
+enable = pthread_mutexattr_gettype, pthread_mutexattr_init, pthread_mutexattr_setprioceiling
+enable = pthread_mutexattr_setprotocol, pthread_mutexattr_settype, pthread_mutex_destroy
+enable = pthread_mutex_init, pthread_mutex_lock, pthread_mutex_timedlock
+enable = pthread_mutex_trylock, pthread_mutex_unlock
+
+[rtems-posix-signatures]
+;
+; Thread
+;
+pthread_create = int, pthread_t*, const pthread_attr_t*, void*(*)(void *), void*
+pthread_cancel = int, pthread_t
+pthread_detach = int, pthread_t
+pthread_equal = int, pthread_t, pthread_t
+pthread_exit = void, void*
+pthread_join = int, pthread_t, void**
+pthread_kill = int, pthread_t, int
+pthread_once = int, pthread_once_t*, void (*)(void)
+pthread_self = pthread_t, void
+pthread_setcancelstate = int, int, int*
+pthread_setcanceltype = int, int, int*
+pthread_testcancel = void, void
+pthread_yield = void, void
+;
+; Mutex
+;
+pthread_mutexattr_destroy = int, pthread_mutexattr_t*
+pthread_mutexattr_getprioceiling = int, const pthread_mutexattr_t*, int*
+pthread_mutexattr_getprotocol = int, const pthread_mutexattr_t*, int*
+pthread_mutexattr_gettype = int, const pthread_mutexattr_t*, int*
+pthread_mutexattr_init = int, pthread_mutexattr_t*
+pthread_mutexattr_setprioceiling = int, pthread_mutexattr_t*, int
+pthread_mutexattr_setprotocol = int, pthread_mutexattr_t*, int
+pthread_mutexattr_settype = int, pthread_mutexattr_t*, int
+pthread_mutex_destroy = int, pthread_mutex_t*
+pthread_mutex_init = int, pthread_mutex_t*, const pthread_mutexattr_t*
+pthread_mutex_lock = int, pthread_mutex_t*
+pthread_mutex_timedlock = int, pthread_mutex_t*, const struct timespec*
+pthread_mutex_trylock = int, pthread_mutex_t*
+pthread_mutex_unlock = int, pthread_mutex_t*
diff --git a/linkers/rtems.ini b/linkers/rtems.ini
index f19bcfc..da3d8db 100644
--- a/linkers/rtems.ini
+++ b/linkers/rtems.ini
@@ -3,5 +3,5 @@
 ;
 [includes]
 include = rtems-api.ini
+include = rtems-posix.ini
 include = rtems-score.ini
-
diff --git a/linkers/wscript b/linkers/wscript
index 5927b75..e49358a 100644
--- a/linkers/wscript
+++ b/linkers/wscript
@@ -94,6 +94,7 @@ def build(bld):
                        'libc-heap.ini',
                        'rtems.ini',
                        'rtems-api.ini',
+                       'rtems-posix.ini',
                        'rtems-score.ini',
                        'rtems-score-object.ini',
                        'rtems-score-thread.ini',



More information about the vc mailing list