log: optimize log/panic with attribute cold
authorStephen Hemminger <shemminger@vyatta.com>
Thu, 30 May 2013 17:12:37 +0000 (17:12 +0000)
committerThomas Monjalon <thomas.monjalon@6wind.com>
Tue, 17 Sep 2013 12:09:21 +0000 (14:09 +0200)
Both logging and calls to panic are never in the critical path.
Use the GCC attribute cold to mark these functions as cold,
which generates more optimised code.

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Reviewed-by: Vincent Jardin <vincent.jardin@6wind.com>
lib/librte_eal/common/include/rte_debug.h
lib/librte_eal/common/include/rte_log.h

index e191a21..acb4a9f 100644 (file)
@@ -86,6 +86,7 @@ void rte_dump_registers(void);
  * documentation.
  */
 void __rte_panic(const char *funcname , const char *format, ...)
+       __attribute__((cold))
        __attribute__((noreturn))
        __attribute__((format(printf, 2, 3)));
 
index 3dbe010..5f568c8 100644 (file)
@@ -217,6 +217,7 @@ int rte_log_add_in_history(const char *buf, size_t size);
  *   - Negative on error.
  */
 int rte_log(uint32_t level, uint32_t logtype, const char *format, ...)
+       __attribute__((cold))
        __attribute__((format(printf, 3, 4)));
 
 /**