[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 02/10] qemu/compiler: Split out qemu_build_not_reached_always
From: |
Richard Henderson |
Subject: |
[PULL 02/10] qemu/compiler: Split out qemu_build_not_reached_always |
Date: |
Sat, 23 Jan 2021 08:50:12 -1000 |
Provide a symbol that can always be used to signal an error,
regardless of optimization. Usage of this should be protected
by e.g. __builtin_constant_p, which guards for optimization.
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
---
include/qemu/compiler.h | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/include/qemu/compiler.h b/include/qemu/compiler.h
index d620a841e4..cf28bb2bcd 100644
--- a/include/qemu/compiler.h
+++ b/include/qemu/compiler.h
@@ -215,9 +215,10 @@
* supports QEMU_ERROR, this will be reported at compile time; otherwise
* this will be reported at link time due to the missing symbol.
*/
-#if defined(__OPTIMIZE__) && !defined(__NO_INLINE__)
extern void QEMU_NORETURN QEMU_ERROR("code path is reachable")
- qemu_build_not_reached(void);
+ qemu_build_not_reached_always(void);
+#if defined(__OPTIMIZE__) && !defined(__NO_INLINE__)
+#define qemu_build_not_reached() qemu_build_not_reached_always()
#else
#define qemu_build_not_reached() g_assert_not_reached()
#endif
--
2.25.1
- [PULL 00/10] tcg patch queue, Richard Henderson, 2021/01/23
- [PULL 01/10] tcg: update the cpu running flag in cpu_exec_step_atomic, Richard Henderson, 2021/01/23
- [PULL 03/10] tcg: Optimize inline dup_const for MO_64, Richard Henderson, 2021/01/23
- [PULL 05/10] accel/tcg: Make cpu_gen_init() static, Richard Henderson, 2021/01/23
- [PULL 04/10] tcg: Increase the static number of temporaries, Richard Henderson, 2021/01/23
- [PULL 02/10] qemu/compiler: Split out qemu_build_not_reached_always,
Richard Henderson <=
- [PULL 07/10] accel/tcg: Restrict tb_gen_code() from other accelerators, Richard Henderson, 2021/01/23
- [PULL 06/10] accel/tcg: Move tb_flush_jmp_cache() to cputlb.c, Richard Henderson, 2021/01/23
- [PULL 08/10] accel/tcg: Declare missing cpu_loop_exit*() stubs, Richard Henderson, 2021/01/23
- [PULL 09/10] accel/tcg: Restrict cpu_io_recompile() from other accelerators, Richard Henderson, 2021/01/23
- [PULL 10/10] tcg: Toggle page execution for Apple Silicon, Richard Henderson, 2021/01/23
- Re: [PULL 00/10] tcg patch queue, Richard Henderson, 2021/01/23