about summary refs log tree commit diff stats
path: root/201register-names.subx
diff options
context:
space:
mode:
authorKartik Agaram <vc@akkartik.com>2020-09-29 03:43:19 -0700
committerKartik Agaram <vc@akkartik.com>2020-09-29 03:51:19 -0700
commit8b1da9bbb23bf9049a2f764a1b8bbc42a17f045f (patch)
treef40ebd62eed64c4c5e8274004c87d40afe8950b2 /201register-names.subx
parentf334aa73e94f2d3787f431a444b347c33afc0bde (diff)
downloadmu-8b1da9bbb23bf9049a2f764a1b8bbc42a17f045f.tar.gz
6898 - names for floating-point xmm* registers
Diffstat (limited to '201register-names.subx')
-rw-r--r--201register-names.subx62
1 files changed, 60 insertions, 2 deletions
diff --git a/201register-names.subx b/201register-names.subx
index 21c151a9..026393a3 100644
--- a/201register-names.subx
+++ b/201register-names.subx
@@ -1,9 +1,9 @@
 == data
 Registers:  # (addr stream {(handle array byte), int})
   # a table is a stream
-  0xc0/imm32/write
+  0x120/imm32/write
   0/imm32/read
-  0xc0/imm32/length
+  0x120/imm32/length
   # data
   # it is perfectly ok to use fake alloc-ids -- as long as you never try to reclaim them
   0x11/imm32/alloc-id $Register-eax/imm32 0/imm32
@@ -24,6 +24,16 @@ Registers:  # (addr stream {(handle array byte), int})
   0x11/imm32/alloc-id $Register-ch/imm32 5/imm32
   0x11/imm32/alloc-id $Register-dh/imm32 6/imm32
   0x11/imm32/alloc-id $Register-bh/imm32 7/imm32
+  # for floating-point registers
+  # we don't actually check if these are used when they should be; be careful
+  0x11/imm32/alloc-id $Register-Xmm0/imm32 0/imm32
+  0x11/imm32/alloc-id $Register-Xmm1/imm32 1/imm32
+  0x11/imm32/alloc-id $Register-Xmm2/imm32 2/imm32
+  0x11/imm32/alloc-id $Register-Xmm3/imm32 3/imm32
+  0x11/imm32/alloc-id $Register-Xmm4/imm32 4/imm32
+  0x11/imm32/alloc-id $Register-Xmm5/imm32 5/imm32
+  0x11/imm32/alloc-id $Register-Xmm6/imm32 6/imm32
+  0x11/imm32/alloc-id $Register-Xmm7/imm32 7/imm32
 
 $Register-eax:
   0x11/imm32/alloc-id
@@ -104,3 +114,51 @@ $Register-bh:
   0x11/imm32/alloc-id
   2/imm32/size
   0x62/b 0x68/h
+
+$Register-Xmm0:
+  0x11/imm32/alloc-id:fake:payload
+  # "Xmm0"
+  0x4/imm32/size
+  0x58/X 0x6d/m 0x6d/m 0x30/0
+
+$Register-Xmm1:
+  0x11/imm32/alloc-id:fake:payload
+  # "Xmm1"
+  0x4/imm32/size
+  0x58/X 0x6d/m 0x6d/m 0x31/1
+
+$Register-Xmm2:
+  0x11/imm32/alloc-id:fake:payload
+  # "Xmm2"
+  0x4/imm32/size
+  0x58/X 0x6d/m 0x6d/m 0x32/2
+
+$Register-Xmm3:
+  0x11/imm32/alloc-id:fake:payload
+  # "Xmm3"
+  0x4/imm32/size
+  0x58/X 0x6d/m 0x6d/m 0x33/3
+
+$Register-Xmm4:
+  0x11/imm32/alloc-id:fake:payload
+  # "Xmm4"
+  0x4/imm32/size
+  0x58/X 0x6d/m 0x6d/m 0x34/4
+
+$Register-Xmm5:
+  0x11/imm32/alloc-id:fake:payload
+  # "Xmm5"
+  0x4/imm32/size
+  0x58/X 0x6d/m 0x6d/m 0x35/5
+
+$Register-Xmm6:
+  0x11/imm32/alloc-id:fake:payload
+  # "Xmm6"
+  0x4/imm32/size
+  0x58/X 0x6d/m 0x6d/m 0x36/6
+
+$Register-Xmm7:
+  0x11/imm32/alloc-id:fake:payload
+  # "Xmm7"
+  0x4/imm32/size
+  0x58/X 0x6d/m 0x6d/m 0x37/7