mirror of
https://gitlab.rtems.org/rtems/rtos/rtems.git
synced 2026-09-26 16:44:49 +08:00
score: Add RTEMS_RETURN_ADDRESS()
This commit is contained in:
@@ -10,7 +10,7 @@
|
||||
* COPYRIGHT (c) 1989-2007.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* Copyright (c) 2010, 2018 embedded brains GmbH.
|
||||
* Copyright (C) 2010, 2019 embedded brains GmbH
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
* found in the file LICENSE in this distribution or at
|
||||
@@ -371,6 +371,17 @@
|
||||
#define RTEMS_PREDICT_FALSE( _exp ) ( _exp )
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief Returns the return address of the current function.
|
||||
*
|
||||
* @return The return address.
|
||||
*/
|
||||
#if defined(__GNUC__)
|
||||
#define RTEMS_RETURN_ADDRESS() __builtin_return_address( 0 )
|
||||
#else
|
||||
#define RTEMS_RETURN_ADDRESS() NULL
|
||||
#endif
|
||||
|
||||
#if __cplusplus >= 201103L
|
||||
#define RTEMS_STATIC_ASSERT(cond, msg) \
|
||||
static_assert(cond, # msg)
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2018 embedded brains GmbH. All rights reserved.
|
||||
* Copyright (C) 2018, 2019 embedded brains GmbH
|
||||
*
|
||||
* embedded brains GmbH
|
||||
* Dornierstr. 4
|
||||
@@ -192,6 +192,8 @@ static int concat(void)
|
||||
|
||||
static void Init(rtems_task_argument arg)
|
||||
{
|
||||
void *p;
|
||||
|
||||
TEST_BEGIN();
|
||||
rtems_test_assert(inline_func() == 7);
|
||||
RTEMS_COMPILER_MEMORY_BARRIER();
|
||||
@@ -260,6 +262,9 @@ static void Init(rtems_task_argument arg)
|
||||
rtems_test_assert(true);
|
||||
}
|
||||
|
||||
p = RTEMS_RETURN_ADDRESS();
|
||||
(void) p;
|
||||
|
||||
TEST_END();
|
||||
rtems_test_exit(0);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user