new file mode 100644
@@ -0,0 +1,45 @@
+/*
+ * Copyright (C) 2016 Veertu Inc,
+ * Copyright (C) 2017 Google Inc,
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this program; if not, see <http://www.gnu.org/licenses/>.
+ */
+#ifndef HVF_PANIC_H
+#define HVF_PANIC_H
+
+#define VM_PANIC(x) {\
+ printf("%s\n", x); \
+ abort(); \
+}
+
+#define VM_PANIC_ON(x) {\
+ if (x) { \
+ printf("%s\n", #x); \
+ abort(); \
+ } \
+}
+
+#define VM_PANIC_EX(...) {\
+ printf(__VA_ARGS__); \
+ abort(); \
+}
+
+#define VM_PANIC_ON_EX(x, ...) {\
+ if (x) { \
+ printf(__VA_ARGS__); \
+ abort(); \
+ } \
+}
+
+#endif
@@ -19,8 +19,6 @@
#ifndef HVF_X86_H
#define HVF_X86_H 1
-#include "x86_gen.h"
-
typedef struct x86_register {
union {
struct {
@@ -19,10 +19,10 @@
#include "qemu/osdep.h"
#include "qemu-common.h"
+#include "panic.h"
#include "x86_decode.h"
#include "string.h"
#include "vmx.h"
-#include "x86_gen.h"
#include "x86_mmu.h"
#include "x86_descr.h"
@@ -36,7 +36,7 @@
/////////////////////////////////////////////////////////////////////////
#include "qemu/osdep.h"
-
+#include "panic.h"
#include "qemu-common.h"
#include "x86_decode.h"
#include "x86.h"
@@ -24,6 +24,7 @@
#include "qemu/osdep.h"
#include "qemu-common.h"
+#include "panic.h"
#include "cpu.h"
#include "x86_flags.h"
#include "x86.h"
@@ -23,7 +23,6 @@
#ifndef __X86_FLAGS_H__
#define __X86_FLAGS_H__
-#include "x86_gen.h"
#include "cpu.h"
void lflags_to_rflags(CPUX86State *env);
void rflags_to_lflags(CPUX86State *env);
@@ -16,6 +16,7 @@
* License along with this program; if not, see <http://www.gnu.org/licenses/>.
*/
#include "qemu/osdep.h"
+#include "panic.h"
#include "qemu-common.h"
#include "x86.h"
@@ -18,8 +18,6 @@
#ifndef __X86_MMU_H__
#define __X86_MMU_H__
-#include "x86_gen.h"
-
#define PT_PRESENT (1 << 0)
#define PT_WRITE (1 << 1)
#define PT_USER (1 << 2)
@@ -7,6 +7,7 @@
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
#include "qemu/osdep.h"
+#include "panic.h"
#include "qemu-common.h"
#include "qemu/error-report.h"
This only includes VM_PANIC now. No need to include it from headers. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> --- target/i386/hvf/panic.h | 45 ++++++++++++++++++++++++++++++++++++++++++++ target/i386/hvf/x86.h | 2 -- target/i386/hvf/x86_decode.c | 2 +- target/i386/hvf/x86_emu.c | 2 +- target/i386/hvf/x86_flags.c | 1 + target/i386/hvf/x86_flags.h | 1 - target/i386/hvf/x86_mmu.c | 1 + target/i386/hvf/x86_mmu.h | 2 -- target/i386/hvf/x86_task.c | 1 + 9 files changed, 50 insertions(+), 7 deletions(-) create mode 100644 target/i386/hvf/panic.h