From 63b89e4c9800b0b2fad25c4b5dbcfbb5bacf05ad Mon Sep 17 00:00:00 2001 From: Chord Date: Sun, 19 Mar 2017 18:44:05 -0400 Subject: [PATCH] Old script lying around for formating scala opcodes --- scripts/format-switch.py | 51 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 scripts/format-switch.py diff --git a/scripts/format-switch.py b/scripts/format-switch.py new file mode 100644 index 00000000..e47b57dd --- /dev/null +++ b/scripts/format-switch.py @@ -0,0 +1,51 @@ +import re + +def getmap(): + data = open("tmp").read() + lines = data.split("\n") + lines_stripped = [l.strip().rstrip() for l in lines] + + datalines = [] + for i in lines_stripped: + m = re.findall(r'^[A-Z0-9a-z_]+', i) + if len(m): + datalines.append(m[0]) + + return datalines + +def top(): + datalines = getmap() + + for i in range(0, len(datalines), 16): + print("// OPCODES 0x%02x-%02x" % (i, i+15)) + print("\n".join([d+"," for d in datalines[i:min(i+8, len(datalines))]])) + print("// 0x%02x" % (i+8)) + print("\n".join([d+"," for d in datalines[min(i+8,len(datalines)):min(i+16, len(datalines))]])) + print("") + +def bot(): + data = open("tmp2").read() + lines = data.split("\n") + lines_stripped = [l.strip().rstrip() for l in lines] + + datalinesMap = getmap() + datalines = [] + for i in lines_stripped: + m = re.findall(r'^case ([0-9]+)', i) + if len(m): + num = int(m[0]) + m = re.findall(r'=> (.*)', i)[0] + + if m.startswith("noDecoder"): + datalines.append((num, "noDecoder(%s)" % datalinesMap[num])) + else: + datalines.append((num, m)) + + for i in range(0, len(datalines), 16): + print("// OPCODES 0x%02x-%02x" % (i, i+15)) + print("\n".join(["case 0x%02x => %s" % (n,d) for n,d in datalines[i:min(i+8, len(datalines))]])) + print("// 0x%02x" % (i+8)) + print("\n".join(["case 0x%02x => %s" % (n,d) for n,d in datalines[i+8:min(i+16, len(datalines))]])) + print("") + +top()