aboutsummaryrefslogtreecommitdiff
path: root/target/ppc
diff options
context:
space:
mode:
Diffstat (limited to 'target/ppc')
-rw-r--r--target/ppc/Makefile.objs20
-rw-r--r--target/ppc/int_helper.c2
-rw-r--r--target/ppc/meson.build37
-rw-r--r--target/ppc/mfrom_table.c.inc (renamed from target/ppc/mfrom_table.inc.c)0
-rw-r--r--target/ppc/trace.h1
-rw-r--r--target/ppc/translate.c22
-rw-r--r--target/ppc/translate/dfp-impl.c.inc (renamed from target/ppc/translate/dfp-impl.inc.c)0
-rw-r--r--target/ppc/translate/dfp-ops.c.inc (renamed from target/ppc/translate/dfp-ops.inc.c)0
-rw-r--r--target/ppc/translate/fp-impl.c.inc (renamed from target/ppc/translate/fp-impl.inc.c)0
-rw-r--r--target/ppc/translate/fp-ops.c.inc (renamed from target/ppc/translate/fp-ops.inc.c)0
-rw-r--r--target/ppc/translate/spe-impl.c.inc (renamed from target/ppc/translate/spe-impl.inc.c)0
-rw-r--r--target/ppc/translate/spe-ops.c.inc (renamed from target/ppc/translate/spe-ops.inc.c)0
-rw-r--r--target/ppc/translate/vmx-impl.c.inc (renamed from target/ppc/translate/vmx-impl.inc.c)0
-rw-r--r--target/ppc/translate/vmx-ops.c.inc (renamed from target/ppc/translate/vmx-ops.inc.c)0
-rw-r--r--target/ppc/translate/vsx-impl.c.inc (renamed from target/ppc/translate/vsx-impl.inc.c)0
-rw-r--r--target/ppc/translate/vsx-ops.c.inc (renamed from target/ppc/translate/vsx-ops.inc.c)0
-rw-r--r--target/ppc/translate_init.c.inc (renamed from target/ppc/translate_init.inc.c)0
17 files changed, 50 insertions, 32 deletions
diff --git a/target/ppc/Makefile.objs b/target/ppc/Makefile.objs
deleted file mode 100644
index e8fa18ce13..0000000000
--- a/target/ppc/Makefile.objs
+++ /dev/null
@@ -1,20 +0,0 @@
-obj-y += cpu-models.o
-obj-y += cpu.o
-obj-y += translate.o
-ifeq ($(CONFIG_SOFTMMU),y)
-obj-y += machine.o mmu_helper.o mmu-hash32.o monitor.o arch_dump.o
-obj-$(TARGET_PPC64) += mmu-hash64.o mmu-book3s-v3.o compat.o
-obj-$(TARGET_PPC64) += mmu-radix64.o
-endif
-obj-$(CONFIG_KVM) += kvm.o
-obj-$(call lnot,$(CONFIG_KVM)) += kvm-stub.o
-obj-y += dfp_helper.o
-obj-y += excp_helper.o
-obj-y += fpu_helper.o
-obj-y += int_helper.o
-obj-y += timebase_helper.o
-obj-y += misc_helper.o
-obj-y += mem_helper.o
-obj-y += ../../libdecnumber/
-obj-$(CONFIG_USER_ONLY) += user_only_helper.o
-obj-y += gdbstub.o
diff --git a/target/ppc/int_helper.c b/target/ppc/int_helper.c
index 57cda75ed1..b45626f44c 100644
--- a/target/ppc/int_helper.c
+++ b/target/ppc/int_helper.c
@@ -398,7 +398,7 @@ target_ulong helper_divso(CPUPPCState *env, target_ulong arg1,
target_ulong helper_602_mfrom(target_ulong arg)
{
if (likely(arg < 602)) {
-#include "mfrom_table.inc.c"
+#include "mfrom_table.c.inc"
return mfrom_ROM_table[arg];
} else {
return 0;
diff --git a/target/ppc/meson.build b/target/ppc/meson.build
new file mode 100644
index 0000000000..bbfef90e08
--- /dev/null
+++ b/target/ppc/meson.build
@@ -0,0 +1,37 @@
+ppc_ss = ss.source_set()
+ppc_ss.add(files(
+ 'cpu-models.c',
+ 'cpu.c',
+ 'dfp_helper.c',
+ 'excp_helper.c',
+ 'fpu_helper.c',
+ 'gdbstub.c',
+ 'int_helper.c',
+ 'mem_helper.c',
+ 'misc_helper.c',
+ 'timebase_helper.c',
+ 'translate.c',
+))
+
+ppc_ss.add(libdecnumber)
+
+ppc_ss.add(when: 'CONFIG_KVM', if_true: files('kvm.c'), if_false: files('kvm-stub.c'))
+ppc_ss.add(when: 'CONFIG_USER_ONLY', if_true: files('user_only_helper.c'))
+
+ppc_softmmu_ss = ss.source_set()
+ppc_softmmu_ss.add(files(
+ 'arch_dump.c',
+ 'machine.c',
+ 'mmu-hash32.c',
+ 'mmu_helper.c',
+ 'monitor.c',
+))
+ppc_softmmu_ss.add(when: 'TARGET_PPC64', if_true: files(
+ 'compat.c',
+ 'mmu-book3s-v3.c',
+ 'mmu-hash64.c',
+ 'mmu-radix64.c',
+))
+
+target_arch += {'ppc': ppc_ss}
+target_softmmu_arch += {'ppc': ppc_softmmu_ss}
diff --git a/target/ppc/mfrom_table.inc.c b/target/ppc/mfrom_table.c.inc
index 1653b974a4..1653b974a4 100644
--- a/target/ppc/mfrom_table.inc.c
+++ b/target/ppc/mfrom_table.c.inc
diff --git a/target/ppc/trace.h b/target/ppc/trace.h
new file mode 100644
index 0000000000..a9e8962828
--- /dev/null
+++ b/target/ppc/trace.h
@@ -0,0 +1 @@
+#include "trace/trace-target_ppc.h"
diff --git a/target/ppc/translate.c b/target/ppc/translate.c
index 590c3e3bc7..fedb9b2271 100644
--- a/target/ppc/translate.c
+++ b/target/ppc/translate.c
@@ -6900,15 +6900,15 @@ static inline void set_avr64(int regno, TCGv_i64 src, bool high)
tcg_gen_st_i64(src, cpu_env, avr64_offset(regno, high));
}
-#include "translate/fp-impl.inc.c"
+#include "translate/fp-impl.c.inc"
-#include "translate/vmx-impl.inc.c"
+#include "translate/vmx-impl.c.inc"
-#include "translate/vsx-impl.inc.c"
+#include "translate/vsx-impl.c.inc"
-#include "translate/dfp-impl.inc.c"
+#include "translate/dfp-impl.c.inc"
-#include "translate/spe-impl.inc.c"
+#include "translate/spe-impl.c.inc"
/* Handles lfdp, lxsd, lxssp */
static void gen_dform39(DisasContext *ctx)
@@ -7627,19 +7627,19 @@ GEN_HANDLER2_E(treclaim, "treclaim", 0x1F, 0x0E, 0x1D, 0x03E0F800, \
GEN_HANDLER2_E(trechkpt, "trechkpt", 0x1F, 0x0E, 0x1F, 0x03FFF800, \
PPC_NONE, PPC2_TM),
-#include "translate/fp-ops.inc.c"
+#include "translate/fp-ops.c.inc"
-#include "translate/vmx-ops.inc.c"
+#include "translate/vmx-ops.c.inc"
-#include "translate/vsx-ops.inc.c"
+#include "translate/vsx-ops.c.inc"
-#include "translate/dfp-ops.inc.c"
+#include "translate/dfp-ops.c.inc"
-#include "translate/spe-ops.inc.c"
+#include "translate/spe-ops.c.inc"
};
#include "helper_regs.h"
-#include "translate_init.inc.c"
+#include "translate_init.c.inc"
/*****************************************************************************/
/* Misc PowerPC helpers */
diff --git a/target/ppc/translate/dfp-impl.inc.c b/target/ppc/translate/dfp-impl.c.inc
index 6c556dc2e1..6c556dc2e1 100644
--- a/target/ppc/translate/dfp-impl.inc.c
+++ b/target/ppc/translate/dfp-impl.c.inc
diff --git a/target/ppc/translate/dfp-ops.inc.c b/target/ppc/translate/dfp-ops.c.inc
index 6ef38e5712..6ef38e5712 100644
--- a/target/ppc/translate/dfp-ops.inc.c
+++ b/target/ppc/translate/dfp-ops.c.inc
diff --git a/target/ppc/translate/fp-impl.inc.c b/target/ppc/translate/fp-impl.c.inc
index 9f7868ee28..9f7868ee28 100644
--- a/target/ppc/translate/fp-impl.inc.c
+++ b/target/ppc/translate/fp-impl.c.inc
diff --git a/target/ppc/translate/fp-ops.inc.c b/target/ppc/translate/fp-ops.c.inc
index 88fab65628..88fab65628 100644
--- a/target/ppc/translate/fp-ops.inc.c
+++ b/target/ppc/translate/fp-ops.c.inc
diff --git a/target/ppc/translate/spe-impl.inc.c b/target/ppc/translate/spe-impl.c.inc
index 2e6e799a25..2e6e799a25 100644
--- a/target/ppc/translate/spe-impl.inc.c
+++ b/target/ppc/translate/spe-impl.c.inc
diff --git a/target/ppc/translate/spe-ops.inc.c b/target/ppc/translate/spe-ops.c.inc
index 7efe8b8746..7efe8b8746 100644
--- a/target/ppc/translate/spe-ops.inc.c
+++ b/target/ppc/translate/spe-ops.c.inc
diff --git a/target/ppc/translate/vmx-impl.inc.c b/target/ppc/translate/vmx-impl.c.inc
index 92b9527aff..92b9527aff 100644
--- a/target/ppc/translate/vmx-impl.inc.c
+++ b/target/ppc/translate/vmx-impl.c.inc
diff --git a/target/ppc/translate/vmx-ops.inc.c b/target/ppc/translate/vmx-ops.c.inc
index f3f4855111..f3f4855111 100644
--- a/target/ppc/translate/vmx-ops.inc.c
+++ b/target/ppc/translate/vmx-ops.c.inc
diff --git a/target/ppc/translate/vsx-impl.inc.c b/target/ppc/translate/vsx-impl.c.inc
index b518de46db..b518de46db 100644
--- a/target/ppc/translate/vsx-impl.inc.c
+++ b/target/ppc/translate/vsx-impl.c.inc
diff --git a/target/ppc/translate/vsx-ops.inc.c b/target/ppc/translate/vsx-ops.c.inc
index 7fd3942b84..7fd3942b84 100644
--- a/target/ppc/translate/vsx-ops.inc.c
+++ b/target/ppc/translate/vsx-ops.c.inc
diff --git a/target/ppc/translate_init.inc.c b/target/ppc/translate_init.c.inc
index 230a062d29..230a062d29 100644
--- a/target/ppc/translate_init.inc.c
+++ b/target/ppc/translate_init.c.inc