summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOri Bernstein <ori@markovcorp.com>2016-12-20 11:06:44 -0800
committerOri Bernstein <ori@markovcorp.com>2016-12-20 11:06:44 -0800
commit9ee26ff98bb21a49d0b644cfa4ce6e999ade885c (patch)
tree6464a57052fbb0a75d20295237f4c0e69e647d2c
parent0b779653fa6d233b344fb07a3ff2bfe393b8d9aa (diff)
download6as-9ee26ff98bb21a49d0b644cfa4ce6e999ade885c.tar.gz
Fix up the awk stuff a bit more.
-rw-r--r--gen.awk1
-rw-r--r--types.myr26
2 files changed, 27 insertions, 0 deletions
diff --git a/gen.awk b/gen.awk
index 0e4cf13..eb0a735 100644
--- a/gen.awk
+++ b/gen.awk
@@ -28,6 +28,7 @@ $4 == "ignore" {next}
gsub(/\|[ \t]*far/, " | Argflagfar", a[i])
gsub(/\|[ \t]*to/, " | Argflagto", a[i])
gsub(/\|[ \t]*short/, " | Argflagshort", a[i])
+ gsub(/\*/, "", a[i])
gsub(/^mem_offs$/, "memoff", a[i])
args = "Arg" a[i] ","
diff --git a/types.myr b/types.myr
index aac3190..60e5f29 100644
--- a/types.myr
+++ b/types.myr
@@ -46,6 +46,7 @@ pkg assem =
const Bits64 : uint32 = 1 << 2
/* Argument types. Registers are in regs-gen */
+ const Argunity : uint32 = 0
const Argimm : uint32 = 1
const Argimm8 : uint32 = 2
const Argimm16 : uint32 = 3
@@ -56,7 +57,14 @@ pkg assem =
const Argrm16 : uint32 = 12
const Argrm32 : uint32 = 13
const Argrm64 : uint32 = 14
+
const Argmmxrm : uint32 = 14
+ const Argmmxrm64 : uint32 = 14
+
+ const Argxmm0 : uint32 = 15 /* FIXME: bogus, should be from regs.def */
+ const Argxmmrm : uint32 = 14
+ const Argxmmrm16 : uint32 = 14
+ const Argxmmrm32 : uint32 = 14
const Argxmmrm64 : uint32 = 14
const Argxmmrm128 : uint32 = 14
const Argymmrm256 : uint32 = 14
@@ -80,6 +88,24 @@ pkg assem =
const Argsbyteword64 : uint32 = 35
const Argsbytedword64 : uint32 = 36
+ const Arguword : uint32 = 29
+ const Argudword : uint32 = 30
+ const Arguword16 : uint32 = 31
+ const Argudword16 : uint32 = 32
+ const Arguword32 : uint32 = 33
+ const Argudword32 : uint32 = 34
+ const Arguword64 : uint32 = 35
+ const Argudword64 : uint32 = 36
+
+ const Argsword : uint32 = 29
+ const Argsdword : uint32 = 30
+ const Argsword16 : uint32 = 31
+ const Argsdword16 : uint32 = 32
+ const Argsword32 : uint32 = 33
+ const Argsdword32 : uint32 = 34
+ const Argsword64 : uint32 = 35
+ const Argsdword64 : uint32 = 36
+
const Argreg32na : uint32 = 29
const Argreg64na : uint32 = 29