2020-11-29 22:24:40 +01:00
|
|
|
gen = [
|
2020-12-08 19:00:44 +01:00
|
|
|
decodetree.process('mips32r6.decode', extra_args: '--static-decode=decode_mips32r6'),
|
|
|
|
decodetree.process('mips64r6.decode', extra_args: '--static-decode=decode_mips64r6'),
|
2020-11-29 22:24:40 +01:00
|
|
|
decodetree.process('msa32.decode', extra_args: '--static-decode=decode_msa32'),
|
2020-12-08 18:59:36 +01:00
|
|
|
decodetree.process('msa64.decode', extra_args: '--static-decode=decode_msa64'),
|
2021-02-14 17:57:24 +01:00
|
|
|
decodetree.process('tx79.decode', extra_args: '--static-decode=decode_tx79'),
|
2020-11-29 22:24:40 +01:00
|
|
|
]
|
|
|
|
|
2021-04-18 15:16:06 +02:00
|
|
|
mips_user_ss = ss.source_set()
|
2021-04-13 10:31:44 +02:00
|
|
|
mips_softmmu_ss = ss.source_set()
|
2020-08-07 12:10:23 +02:00
|
|
|
mips_ss = ss.source_set()
|
|
|
|
mips_ss.add(files(
|
|
|
|
'cpu.c',
|
2021-01-16 13:55:03 +01:00
|
|
|
'fpu.c',
|
2020-12-06 23:45:09 +01:00
|
|
|
'gdbstub.c',
|
2021-01-16 16:32:06 +01:00
|
|
|
'msa.c',
|
2020-12-06 23:45:09 +01:00
|
|
|
))
|
2021-04-13 10:31:44 +02:00
|
|
|
|
|
|
|
if have_system
|
|
|
|
subdir('sysemu')
|
|
|
|
endif
|
|
|
|
|
2021-02-24 18:37:27 +01:00
|
|
|
mips_tcg_ss = ss.source_set()
|
|
|
|
mips_tcg_ss.add(gen)
|
|
|
|
mips_tcg_ss.add(files(
|
2020-08-07 12:10:23 +02:00
|
|
|
'dsp_helper.c',
|
|
|
|
'fpu_helper.c',
|
2021-04-13 10:50:03 +02:00
|
|
|
'ldst_helper.c',
|
2020-08-07 12:10:23 +02:00
|
|
|
'lmmi_helper.c',
|
|
|
|
'msa_helper.c',
|
2020-11-16 05:13:37 +01:00
|
|
|
'msa_translate.c',
|
2020-08-07 12:10:23 +02:00
|
|
|
'op_helper.c',
|
2020-12-08 19:00:44 +01:00
|
|
|
'rel6_translate.c',
|
2020-12-06 23:27:17 +01:00
|
|
|
'tlb_helper.c',
|
2020-08-07 12:10:23 +02:00
|
|
|
'translate.c',
|
2020-12-08 18:55:47 +01:00
|
|
|
'translate_addr_const.c',
|
2021-02-14 17:57:24 +01:00
|
|
|
'txx9_translate.c',
|
|
|
|
))
|
2021-04-13 21:20:53 +02:00
|
|
|
mips_tcg_ss.add(when: 'TARGET_MIPS64', if_true: files(
|
2021-02-14 17:57:24 +01:00
|
|
|
'tx79_translate.c',
|
2021-04-13 21:20:53 +02:00
|
|
|
), if_false: files(
|
2021-02-17 21:23:49 +01:00
|
|
|
'mxu_translate.c',
|
|
|
|
))
|
2021-04-18 15:16:06 +02:00
|
|
|
if 'CONFIG_TCG' in config_all
|
|
|
|
subdir('tcg')
|
|
|
|
endif
|
2021-02-17 21:23:49 +01:00
|
|
|
|
2020-08-07 12:10:23 +02:00
|
|
|
mips_ss.add(when: 'CONFIG_KVM', if_true: files('kvm.c'))
|
|
|
|
|
2020-12-06 23:45:09 +01:00
|
|
|
mips_softmmu_ss.add(when: 'CONFIG_TCG', if_true: files(
|
|
|
|
'cp0_helper.c',
|
2021-01-16 13:46:09 +01:00
|
|
|
'mips-semi.c',
|
2020-12-06 23:45:09 +01:00
|
|
|
))
|
2020-08-07 12:10:23 +02:00
|
|
|
|
2021-02-24 18:37:27 +01:00
|
|
|
mips_ss.add_all(when: 'CONFIG_TCG', if_true: [mips_tcg_ss])
|
|
|
|
|
2020-08-07 12:10:23 +02:00
|
|
|
target_arch += {'mips': mips_ss}
|
|
|
|
target_softmmu_arch += {'mips': mips_softmmu_ss}
|
2021-04-18 15:16:06 +02:00
|
|
|
target_user_arch += {'mips': mips_user_ss}
|