aboutsummaryrefslogtreecommitdiff
path: root/target/mips/meson.build
blob: 4a951e522d4e278bc85982c3d245814c8e47817c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
gen = [
  decodetree.process('mips32r6.decode', extra_args: '--static-decode=decode_mips32r6'),
  decodetree.process('mips64r6.decode', extra_args: '--static-decode=decode_mips64r6'),
  decodetree.process('msa32.decode', extra_args: '--static-decode=decode_msa32'),
  decodetree.process('msa64.decode', extra_args: '--static-decode=decode_msa64'),
]

mips_ss = ss.source_set()
mips_ss.add(files(
  'cpu.c',
  'gdbstub.c',
))
mips_tcg_ss = ss.source_set()
mips_tcg_ss.add(gen)
mips_tcg_ss.add(files(
  'dsp_helper.c',
  'fpu_helper.c',
  'lmmi_helper.c',
  'msa_helper.c',
  'msa_translate.c',
  'op_helper.c',
  'rel6_translate.c',
  'tlb_helper.c',
  'translate.c',
  'translate_addr_const.c',
))
mips_tcg_ss.add(when: 'TARGET_MIPS64', if_false: files(
  'mxu_translate.c',
))

mips_ss.add(when: 'CONFIG_KVM', if_true: files('kvm.c'))

mips_softmmu_ss = ss.source_set()
mips_softmmu_ss.add(files(
  'addr.c',
  'cp0_timer.c',
  'machine.c',
))
mips_softmmu_ss.add(when: 'CONFIG_TCG', if_true: files(
  'cp0_helper.c',
  'mips-semi.c',
))

mips_ss.add_all(when: 'CONFIG_TCG', if_true: [mips_tcg_ss])

target_arch += {'mips': mips_ss}
target_softmmu_arch += {'mips': mips_softmmu_ss}