From 3350c34a74844e21ea69077e01efff3bae64bdcd Mon Sep 17 00:00:00 2001 From: Kartik Agaram Date: Tue, 23 Mar 2021 17:31:08 -0700 Subject: . --- html/linux/201register-names.subx.html | 223 +++++++++++++++++++++++++++++++++ 1 file changed, 223 insertions(+) create mode 100644 html/linux/201register-names.subx.html (limited to 'html/linux/201register-names.subx.html') diff --git a/html/linux/201register-names.subx.html b/html/linux/201register-names.subx.html new file mode 100644 index 00000000..1b96cc2f --- /dev/null +++ b/html/linux/201register-names.subx.html @@ -0,0 +1,223 @@ + + + + +Mu - linux/201register-names.subx + + + + + + + + + + +https://github.com/akkartik/mu/blob/main/linux/201register-names.subx +
+  1 == data
+  2 Registers:  # (addr stream {(handle array byte), int})
+  3   # a table is a stream
+  4   0x120/imm32/write
+  5   0/imm32/read
+  6   0x120/imm32/length
+  7   # data
+  8   # it is perfectly ok to use fake alloc-ids -- as long as you never try to reclaim them
+  9   0x11/imm32/alloc-id $Register-eax/imm32 0/imm32
+ 10   0x11/imm32/alloc-id $Register-ecx/imm32 1/imm32
+ 11   0x11/imm32/alloc-id $Register-edx/imm32 2/imm32
+ 12   0x11/imm32/alloc-id $Register-ebx/imm32 3/imm32
+ 13   0x11/imm32/alloc-id $Register-esp/imm32 4/imm32
+ 14   0x11/imm32/alloc-id $Register-ebp/imm32 5/imm32
+ 15   0x11/imm32/alloc-id $Register-esi/imm32 6/imm32
+ 16   0x11/imm32/alloc-id $Register-edi/imm32 7/imm32
+ 17   # for 8-byte registers
+ 18   # we don't actually check if these are used when they should be; be careful
+ 19   0x11/imm32/alloc-id $Register-al/imm32 0/imm32
+ 20   0x11/imm32/alloc-id $Register-cl/imm32 1/imm32
+ 21   0x11/imm32/alloc-id $Register-dl/imm32 2/imm32
+ 22   0x11/imm32/alloc-id $Register-bl/imm32 3/imm32
+ 23   0x11/imm32/alloc-id $Register-ah/imm32 4/imm32
+ 24   0x11/imm32/alloc-id $Register-ch/imm32 5/imm32
+ 25   0x11/imm32/alloc-id $Register-dh/imm32 6/imm32
+ 26   0x11/imm32/alloc-id $Register-bh/imm32 7/imm32
+ 27   # for floating-point registers
+ 28   # we don't actually check if these are used when they should be; be careful
+ 29   0x11/imm32/alloc-id $Register-xmm0/imm32 0/imm32
+ 30   0x11/imm32/alloc-id $Register-xmm1/imm32 1/imm32
+ 31   0x11/imm32/alloc-id $Register-xmm2/imm32 2/imm32
+ 32   0x11/imm32/alloc-id $Register-xmm3/imm32 3/imm32
+ 33   0x11/imm32/alloc-id $Register-xmm4/imm32 4/imm32
+ 34   0x11/imm32/alloc-id $Register-xmm5/imm32 5/imm32
+ 35   0x11/imm32/alloc-id $Register-xmm6/imm32 6/imm32
+ 36   0x11/imm32/alloc-id $Register-xmm7/imm32 7/imm32
+ 37 
+ 38 $Register-eax:
+ 39   0x11/imm32/alloc-id
+ 40   3/imm32/size
+ 41   0x65/e 0x61/a 0x78/x
+ 42 
+ 43 $Register-ecx:
+ 44   0x11/imm32/alloc-id
+ 45   3/imm32/size
+ 46   0x65/e 0x63/c 0x78/x
+ 47 
+ 48 $Register-edx:
+ 49   0x11/imm32/alloc-id
+ 50   3/imm32/size
+ 51   0x65/e 0x64/d 0x78/x
+ 52 
+ 53 $Register-ebx:
+ 54   0x11/imm32/alloc-id
+ 55   3/imm32/size
+ 56   0x65/e 0x62/b 0x78/x
+ 57 
+ 58 $Register-esp:
+ 59   0x11/imm32/alloc-id
+ 60   3/imm32/size
+ 61   0x65/e 0x73/s 0x70/p
+ 62 
+ 63 $Register-ebp:
+ 64   0x11/imm32/alloc-id
+ 65   3/imm32/size
+ 66   0x65/e 0x62/b 0x70/p
+ 67 
+ 68 $Register-esi:
+ 69   0x11/imm32/alloc-id
+ 70   3/imm32/size
+ 71   0x65/e 0x73/s 0x69/i
+ 72 
+ 73 $Register-edi:
+ 74   0x11/imm32/alloc-id
+ 75   3/imm32/size
+ 76   0x65/e 0x64/d 0x69/i
+ 77 
+ 78 $Register-al:
+ 79   0x11/imm32/alloc-id
+ 80   2/imm32/size
+ 81   0x61/a 0x6c/l
+ 82 
+ 83 $Register-cl:
+ 84   0x11/imm32/alloc-id
+ 85   2/imm32/size
+ 86   0x63/c 0x6c/l
+ 87 
+ 88 $Register-dl:
+ 89   0x11/imm32/alloc-id
+ 90   2/imm32/size
+ 91   0x64/d 0x6c/l
+ 92 
+ 93 $Register-bl:
+ 94   0x11/imm32/alloc-id
+ 95   2/imm32/size
+ 96   0x62/b 0x6c/l
+ 97 
+ 98 $Register-ah:
+ 99   0x11/imm32/alloc-id
+100   2/imm32/size
+101   0x61/a 0x68/h
+102 
+103 $Register-ch:
+104   0x11/imm32/alloc-id
+105   2/imm32/size
+106   0x63/c 0x68/h
+107 
+108 $Register-dh:
+109   0x11/imm32/alloc-id
+110   2/imm32/size
+111   0x64/d 0x68/h
+112 
+113 $Register-bh:
+114   0x11/imm32/alloc-id
+115   2/imm32/size
+116   0x62/b 0x68/h
+117 
+118 $Register-xmm0:
+119   0x11/imm32/alloc-id:fake:payload
+120   # "xmm0"
+121   0x4/imm32/size
+122   0x78/x 0x6d/m 0x6d/m 0x30/0
+123 
+124 $Register-xmm1:
+125   0x11/imm32/alloc-id:fake:payload
+126   # "xmm1"
+127   0x4/imm32/size
+128   0x78/x 0x6d/m 0x6d/m 0x31/1
+129 
+130 $Register-xmm2:
+131   0x11/imm32/alloc-id:fake:payload
+132   # "xmm2"
+133   0x4/imm32/size
+134   0x78/x 0x6d/m 0x6d/m 0x32/2
+135 
+136 $Register-xmm3:
+137   0x11/imm32/alloc-id:fake:payload
+138   # "xmm3"
+139   0x4/imm32/size
+140   0x78/x 0x6d/m 0x6d/m 0x33/3
+141 
+142 $Register-xmm4:
+143   0x11/imm32/alloc-id:fake:payload
+144   # "xmm4"
+145   0x4/imm32/size
+146   0x78/x 0x6d/m 0x6d/m 0x34/4
+147 
+148 $Register-xmm5:
+149   0x11/imm32/alloc-id:fake:payload
+150   # "xmm5"
+151   0x4/imm32/size
+152   0x78/x 0x6d/m 0x6d/m 0x35/5
+153 
+154 $Register-xmm6:
+155   0x11/imm32/alloc-id:fake:payload
+156   # "xmm6"
+157   0x4/imm32/size
+158   0x78/x 0x6d/m 0x6d/m 0x36/6
+159 
+160 $Register-xmm7:
+161   0x11/imm32/alloc-id:fake:payload
+162   # "xmm7"
+163   0x4/imm32/size
+164   0x78/x 0x6d/m 0x6d/m 0x37/7
+
+ + + -- cgit 1.4.1-2-gfad0