mirror of
https://github.com/openvswitch/ovs
synced 2025-08-22 01:51:26 +00:00
compiler.h: Don't use asm and typeof with non-GNU compilers.
'asm' is a GNU extension. Compilers without GNU extensions do not understand it: dpif-netdev-perf.h:225:5: error: use of undeclared identifier 'asm' asm volatile("rdtsc" : "=a" (l), "=d" (h)); Redefining asm as __asm__ for non-C++ compilers that do not have it defined. While at it, also add typeof definition. It doesn't need a check for C++, because it's not a keyword in C++. Acked-by: Eelco Chaudron <echaudro@redhat.com> Signed-off-by: Ilya Maximets <i.maximets@ovn.org>
This commit is contained in:
parent
e3d5616706
commit
be2cd24b12
@ -37,6 +37,16 @@
|
||||
#define OVS_NO_RETURN
|
||||
#endif
|
||||
|
||||
#ifndef typeof
|
||||
#define typeof __typeof__
|
||||
#endif
|
||||
|
||||
#ifndef __cplusplus
|
||||
#ifndef asm
|
||||
#define asm __asm__
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if __GNUC__ && !__CHECKER__
|
||||
#define OVS_UNUSED __attribute__((__unused__))
|
||||
#define OVS_PRINTF_FORMAT(FMT, ARG1) __attribute__((__format__(printf, FMT, ARG1)))
|
||||
|
Loading…
x
Reference in New Issue
Block a user