diff options
author | Andy Wingo <wingo@pobox.com> | 2025-04-11 14:10:41 +0200 |
---|---|---|
committer | Andy Wingo <wingo@pobox.com> | 2025-04-11 14:10:41 +0200 |
commit | db181e67ff482ab08cbdb0c1a88997b3a886f900 (patch) | |
tree | 6d16fbca515ae3cf506a9d16dbc89c472446e5d9 /libguile/whippet/src/assert.h | |
parent | af96820e072d18c49ac03e80c6f3466d568dc77d (diff) | |
parent | f909438596f63ecd44c5b9a28385260714857361 (diff) | |
download | guile-db181e67ff482ab08cbdb0c1a88997b3a886f900.tar.gz |
Merged Whippet into libguile/whippet
Diffstat (limited to 'libguile/whippet/src/assert.h')
-rw-r--r-- | libguile/whippet/src/assert.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/libguile/whippet/src/assert.h b/libguile/whippet/src/assert.h new file mode 100644 index 000000000..0c6db2f89 --- /dev/null +++ b/libguile/whippet/src/assert.h @@ -0,0 +1,16 @@ +#ifndef ASSERT_H +#define ASSERT_H + +#define STATIC_ASSERT_EQ(a, b) _Static_assert((a) == (b), "eq") + +#define UNLIKELY(e) __builtin_expect(e, 0) +#define LIKELY(e) __builtin_expect(e, 1) + +#ifndef NDEBUG +#define ASSERT(x) do { if (UNLIKELY(!(x))) __builtin_trap(); } while (0) +#else +#define ASSERT(x) do { } while (0) +#endif +#define ASSERT_EQ(a,b) ASSERT((a) == (b)) + +#endif // ASSERT_H |