-
Notifications
You must be signed in to change notification settings - Fork 23
/
Makefile
47 lines (36 loc) · 996 Bytes
/
Makefile
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
.PHONY: default
default: all
VERSION = v86A-2019-12
XMLDIR = v8.6
A64 = ${XMLDIR}/ISA_A64_xml_${VERSION}
A32 = ${XMLDIR}/ISA_AArch32_xml_${VERSION}
SYSREG = ${XMLDIR}/SysReg_xml_${VERSION}
FILTER =
# FILTER = --filter=usermode.json
arch/regs.asl: ${SYSREG}
mkdir -p arch
bin/reg2asl.py $< -o $@
arch/arch.asl arch/arch.tag arch/arch_instrs.asl arch/arch_decode.asl: ${A32} ${A64}
mkdir -p arch
bin/instrs2asl.py --altslicesyntax --demangle --verbose -oarch/arch $^ ${FILTER}
patch -Np0 < arch.patch
ASL += prelude.asl
ASL += regs.asl
ASL += arch.asl
ASL += support/aes.asl
ASL += support/barriers.asl
ASL += support/debug.asl
ASL += support/feature.asl
ASL += support/interrupts.asl
ASL += support/memory.asl
ASL += support/fetchdecode.asl
ASL += support/stubs.asl
ASL += support/usermode.asl
all :: arch/regs.asl
all :: arch/arch.asl
clean ::
$(RM) -r arch
# Assumes that patched/* contains a manually fixed version of arch/*
arch.patch ::
diff -Naur arch patched
# End