summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjan.nijtmans <nijtmans@users.sourceforge.net>2016-06-26 09:03:08 (GMT)
committerjan.nijtmans <nijtmans@users.sourceforge.net>2016-06-26 09:03:08 (GMT)
commit179f28ba4605cb66cd358eb8d6d57b42e7bf5bb9 (patch)
treee38ad8004dbc01ee89130b6c0d44f9dc5e3d083e
parent94c255833358445b9edae73af1ffbe1cc2c8ab42 (diff)
downloadtcl-179f28ba4605cb66cd358eb8d6d57b42e7bf5bb9.zip
tcl-179f28ba4605cb66cd358eb8d6d57b42e7bf5bb9.tar.gz
tcl-179f28ba4605cb66cd358eb8d6d57b42e7bf5bb9.tar.bz2
Add TCL_NOINLINE macro, useful for micro-optimizations
-rw-r--r--generic/tcl.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/generic/tcl.h b/generic/tcl.h
index 3cd90a9..be40368 100644
--- a/generic/tcl.h
+++ b/generic/tcl.h
@@ -144,6 +144,7 @@ extern "C" {
#if defined(__GNUC__) && (__GNUC__ > 2)
# define TCL_FORMAT_PRINTF(a,b) __attribute__ ((__format__ (__printf__, a, b)))
# define TCL_NORETURN __attribute__ ((noreturn))
+# define TCL_NOINLINE __attribute__ ((noinline))
# if defined(BUILD_tcl) || defined(BUILD_tk)
# define TCL_NORETURN1 __attribute__ ((noreturn))
# else
@@ -153,8 +154,10 @@ extern "C" {
# define TCL_FORMAT_PRINTF(a,b)
# if defined(_MSC_VER) && (_MSC_VER >= 1310)
# define TCL_NORETURN _declspec(noreturn)
+# define TCL_NOINLINE __declspec(noinline)
# else
# define TCL_NORETURN /* nothing */
+# define TCL_NOINLINE /* nothing */
# endif
# define TCL_NORETURN1 /* nothing */
#endif