aboutsummaryrefslogtreecommitdiff
path: root/sim/v850/v850.dc
diff options
context:
space:
mode:
Diffstat (limited to 'sim/v850/v850.dc')
-rw-r--r--sim/v850/v850.dc72
1 files changed, 72 insertions, 0 deletions
diff --git a/sim/v850/v850.dc b/sim/v850/v850.dc
new file mode 100644
index 0000000..9189833
--- /dev/null
+++ b/sim/v850/v850.dc
@@ -0,0 +1,72 @@
+# most instructions
+# ------ options ------ : Fst : Lst : ff : fl : fe : word : --- fmt --- : model ...
+# { : mask : value : word }
+
+# Top level - create a very big switch statement.
+
+ padded-switch,combine : 15 : 5 : : : : 0 : :
+
+
+# for opcode 60,124
+
+ switch,combine : 4 : 0 : : : : 1 : V,VII :
+ switch,combine : 4 : 0 : : : : 1 : V,XIII : v850e
+ switch,combine : 4 : 0 : : : : 1 : V,XIII : v850e1
+ switch,combine : 4 : 0 : : : : 1 : V,XIII : v850e2
+ switch,combine : 4 : 0 : : : : 1 : V,XIII : v850e2v3
+ switch,combine : 10 : 5 : : : : 0 : F_I : v850e2v3
+
+# for opcode 63, 127, 1087 et.al.
+
+ switch,combine : 9 : 5 : : : : 1 : :
+ switch,combine : 4 : 0 : : : : 1 : :
+
+
+# for opcode 40 et.al.
+
+ switch,combine : 4 : 0 : : : : 0 : III,IV :
+
+# for opcode 66 - divh/break
+
+ switch,combine : 4 : 0 : : : : 0 : I :
+
+# for ilgop, macu
+ switch,combine : 10 : 9 : : : : 1 : X,XI : v850e2
+ switch,combine : 10 : 9 : : : : 1 : X,XI : v850e2v3
+ switch,combine : 10 : 9 : : : : 1 : X,XI : v850e3v5
+
+#for cmovf.s, setf
+ switch,combine : 10 : 10 : : : : 1 :F_I,IX : v850e2v3
+ switch,combine : 10 : 10 : : : : 1 :F_I,IX : v850e3v5
+
+# for cmovf.s trfsr
+ switch,combine : 15 : 11 : : : : 1 :F_I : v850e2v3
+ switch,combine : 15 : 11 : : : : 1 :F_I : v850e3v5
+
+# for trncf.sw, cvtf.sw
+ switch,combine : 0 : 0 : : : : 0 :F_I : v850e2v3
+ switch,combine : 0 : 0 : : : : 0 :F_I : v850e3v5
+ switch,combine : 4 : 0 : : : : 0 :F_I : v850e2v3
+ switch,combine : 4 : 0 : : : : 0 :F_I : v850e3v5
+
+# for rsqrtf.s, sqrtf.s
+ switch,combine : 1 : 1 : : : : 0 :F_I : v850e2v3
+ switch,combine : 1 : 1 : : : : 0 :F_I : v850e3v5
+
+# for maddf.s, trap
+ switch,combine : 8 : 8 : : : : 1 :F_I,X : v850e2v3
+ switch,combine : 10 : 10 : : : : 1 :F_I,X : v850e2v3
+ switch,combine : 8 : 8 : : : : 1 :F_I,X : v850e3v5
+ switch,combine : 10 : 10 : : : : 1 :F_I,X : v850e3v5
+
+# for jr32 jarl32
+ switch,combine : 4 : 0 : : : : 0 :VI : v850e2
+ switch,combine : 4 : 0 : : : : 0 :VI : v850e2v3
+ switch,combine : 4 : 0 : : : : 0 :VI : v850e3v5
+ switch,combine : 10 : 0 : : : : 1 :F_I,XI : v850e3v5
+
+# for sasf, vadd.h
+ switch,combine : 10 : 0 : : : : 1 :C,IX : v850e3v5
+ switch,combine : 10 : 0 : : : : 1 :C,XII : v850e3v5
+ switch,combine : 15 : 0 : : : : 0 :C : v850e3v5
+ switch,combine : 10 : 0 : : : : 1 :C,XI : v850e3v5