KVM: selftests: Tell the compiler that code after TEST_FAIL() is unreachable
authorDavid Matlack <dmatlack@google.com>
Thu, 29 Sep 2022 18:12:05 +0000 (11:12 -0700)
committerPaolo Bonzini <pbonzini@redhat.com>
Fri, 30 Sep 2022 10:39:35 +0000 (06:39 -0400)
Add __builtin_unreachable() to TEST_FAIL() so that the compiler knows
that any code after a TEST_FAIL() is unreachable.

Signed-off-by: David Matlack <dmatlack@google.com>
Message-Id: <20220929181207.2281449-2-dmatlack@google.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
tools/testing/selftests/kvm/include/test_util.h

index 5c5a881..befc754 100644 (file)
@@ -63,8 +63,10 @@ void test_assert(bool exp, const char *exp_str,
                    #a, #b, #a, (unsigned long) __a, #b, (unsigned long) __b); \
 } while (0)
 
-#define TEST_FAIL(fmt, ...) \
-       TEST_ASSERT(false, fmt, ##__VA_ARGS__)
+#define TEST_FAIL(fmt, ...) do { \
+       TEST_ASSERT(false, fmt, ##__VA_ARGS__); \
+       __builtin_unreachable(); \
+} while (0)
 
 size_t parse_size(const char *size);