summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/rtdef.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/include/rtdef.h b/include/rtdef.h
index 16f0163710..4c24cb0ae9 100644
--- a/include/rtdef.h
+++ b/include/rtdef.h
@@ -53,6 +53,7 @@
* 2023-10-10 Chushicheng change version number to v5.1.0
* 2023-10-11 zmshahaha move specific devices related and driver to components/drivers
* 2023-11-21 Meco Man add RT_USING_NANO macro
+ * 2023-12-18 xqyjlj add rt_always_inline
*/
#ifndef __RT_DEF_H__
@@ -198,6 +199,7 @@ typedef rt_base_t rt_off_t; /**< Type for offset */
#define rt_align(n) __attribute__((aligned(n)))
#define rt_weak __attribute__((weak))
#define rt_inline static __inline
+#define rt_always_inline rt_inline
/* module compiling */
#ifdef RT_USING_MODULE
#define RTT_API __declspec(dllimport)
@@ -211,6 +213,7 @@ typedef rt_base_t rt_off_t; /**< Type for offset */
#define rt_align(n) PRAGMA(data_alignment=n)
#define rt_weak __weak
#define rt_inline static inline
+#define rt_always_inline rt_inline
#define RTT_API
#elif defined (__GNUC__) /* GNU GCC Compiler */
#ifndef RT_USING_LIBC
@@ -229,6 +232,7 @@ typedef __gnuc_va_list va_list;
#define rt_weak __attribute__((weak))
#define rt_noreturn __attribute__ ((noreturn))
#define rt_inline static __inline
+#define rt_always_inline static inline __attribute__((always_inline))
#define RTT_API
#elif defined (__ADSPBLACKFIN__) /* for VisualDSP++ Compiler */
#define rt_section(x) __attribute__((section(x)))
@@ -236,6 +240,7 @@ typedef __gnuc_va_list va_list;
#define rt_align(n) __attribute__((aligned(n)))
#define rt_weak __attribute__((weak))
#define rt_inline static inline
+#define rt_always_inline rt_inline
#define RTT_API
#elif defined (_MSC_VER)
#define rt_section(x)
@@ -243,6 +248,7 @@ typedef __gnuc_va_list va_list;
#define rt_align(n) __declspec(align(n))
#define rt_weak
#define rt_inline static __inline
+#define rt_always_inline rt_inline
#define RTT_API
#elif defined (__TI_COMPILER_VERSION__)
/* The way that TI compiler set section is different from other(at least
@@ -262,6 +268,7 @@ typedef __gnuc_va_list va_list;
#define rt_weak
#endif
#define rt_inline static inline
+#define rt_always_inline rt_inline
#define RTT_API
#elif defined (__TASKING__)
#define rt_section(x) __attribute__((section(x)))
@@ -270,6 +277,7 @@ typedef __gnuc_va_list va_list;
#define rt_align(n) __attribute__((__align(n)))
#define rt_weak __attribute__((weak))
#define rt_inline static inline
+#define rt_always_inline rt_inline
#define RTT_API
#else
#error not supported tool chain