1 ### GNU Mes --- Maxwell Equations of Software
2 ### Copyright © 2017 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
4 ### This file is part of GNU Mes.
6 ### Mes is free software# you can redistribute it and/or modify it
7 ### under the terms of the GNU General Public License as published by
8 ### the Free Software Foundation# either version 3 of the License, or (at
9 ### your option) any later version.
11 ### GNU Mes is distributed in the hope that it will be useful, but
12 ### WITHOUT ANY WARRANTY# without even the implied warranty of
13 ### MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 ### GNU General Public License for more details.
16 ### You should have received a copy of the GNU General Public License
17 ### along with GNU Mes. If not, see <http://www.gnu.org/licenses/>.
20 DEFINE add____$i32,%eax 05
21 DEFINE add____$i32,%ecx 81c1
22 DEFINE add____$i32,%edx 81c2
23 DEFINE add____$i32,(%eax) 8100
24 DEFINE add____$i32,0x32(%eax) 8180
25 DEFINE add____$i32,0x32(%ebp) 8185
26 DEFINE add____$i8,%eax 83c0
27 DEFINE add____$i8,%edx 83c2
28 DEFINE add____$i8,%esp 83c4
29 DEFINE add____$i8,(%eax) 8300
30 DEFINE add____$i8,0x32 8305
31 DEFINE add____$i8,0x32(%eax) 8380
32 DEFINE add____$i8,0x32(%eax) 8380
33 DEFINE add____$i8,0x32(%ebp) 8385
34 DEFINE add____$i8,0x8(%eax) 8340
35 DEFINE add____$i8,0x8(%ebp) 8345
36 DEFINE add____%eax,%eax 01c0
37 DEFINE add____%ebp,%eax 01e8
38 DEFINE add____%edx,%eax 01d0
39 DEFINE add____%edx,%eax 01d0
40 DEFINE and____$i32,%eax 25
41 DEFINE and____%edx,%eax 21d0
42 DEFINE and____(%edx),%eax 2302
44 DEFINE call___*%eax ffd0
45 DEFINE cmp____$0x32,%eax 3d
46 DEFINE cmp____$i32,%eax 3d
47 DEFINE cmp____$i32,0x32(%ebp) 81bd
48 DEFINE cmp____$i32,0x8(%ebp) 817d
49 DEFINE cmp____$i8,%eax 83f8
50 DEFINE cmp____$i8,0x32(%ebp) 83bd
51 DEFINE cmp____$i8,0x8(%ebp) 837d
52 DEFINE cmp____%al,%dl 38c2
53 DEFINE cmp____%edx,%eax 39d0
55 DEFINE idiv___%ebx f7fb
57 DEFINE int____$0x80 cd80
69 DEFINE jmp____*%ebx ffe3
72 DEFINE lea____0x32(%ebp),%eax 8d85
73 DEFINE lea____0x32(%ebp),%edx 8d95
74 DEFINE lea____0x8(%ebp),%eax 8d45
75 DEFINE lea____0x8(%ebp),%edx 8d55
77 DEFINE mov____$i32,%eax b8
78 DEFINE mov____$i32,%ebx bb
79 DEFINE mov____$i32,%ecx b9
80 DEFINE mov____$i32,%edx ba
81 DEFINE mov____$i32,(%eax) c700
82 DEFINE mov____$i32,0x32 c705
83 DEFINE mov____$i32,0x8(%eax) c740
84 DEFINE mov____$i32,0x8(%ebp) c745
85 DEFINE mov____%al,(%edx) 8802
86 DEFINE mov____%al,0x8(%edx) 8842
87 DEFINE mov____%ax,(%edx) 668902
88 DEFINE mov____%ax,0x32(%edx) 668982
89 DEFINE mov____%ax,0x8(%edx) 668942
90 DEFINE mov____%dl,(%eax) 8810
91 DEFINE mov____%dl,0x8(%eax) 8850
92 DEFINE mov____%eax,%ebx 89c3
93 DEFINE mov____%eax,%edx 89c2
94 DEFINE mov____%eax,(%ecx) 8901
95 DEFINE mov____%eax,(%edx) 8902
96 DEFINE mov____%eax,0x32 a3
97 DEFINE mov____%eax,0x32(%ebp) 8985
98 DEFINE mov____%eax,0x32(%edx) 8982
99 DEFINE mov____%eax,0x8(%ebp) 8945
100 DEFINE mov____%eax,0x8(%edx) 8942
101 DEFINE mov____%ebp,%eax 89e8
102 DEFINE mov____%ebp,%ecx 89e9
103 DEFINE mov____%ebp,%edx 89ea
104 DEFINE mov____%ebx,0x32 891d
105 DEFINE mov____%ebx,0x32(%ebp) 899d
106 DEFINE mov____%ebx,0x8(%ebp) 895d
107 DEFINE mov____%ebx,0x8(%edx) 895a
108 DEFINE mov____%ecx,(%eax) 8908
109 DEFINE mov____%ecx,(%edx) 890a
110 DEFINE mov____%ecx,0x32(%ebp) 898d
111 DEFINE mov____%ecx,0x8(%ebp) 894d
112 DEFINE mov____%edx,%eax 89d0
113 DEFINE mov____%edx,%ebx 89d3
114 DEFINE mov____%edx,%ecx 89d1
115 DEFINE mov____%edx,(%eax) 8910
116 DEFINE mov____%edx,0x32(%ebp) 8995
117 DEFINE mov____%edx,0x8(%ebp) 8955
118 DEFINE mov____%esp,%ebp 89e5
119 DEFINE mov____(%eax),%eax 8b00
120 DEFINE mov____(%eax),%ecx 8b08
121 DEFINE mov____(%edx),%eax 8b02
122 DEFINE mov____(%edx),%ecx 8b0a
123 DEFINE mov____(%edx),%edx 8b12
124 DEFINE mov____0x32(%eax),%eax 8b80
125 DEFINE mov____0x32(%eax),%ebx 8b98
126 DEFINE mov____0x32(%eax),%ecx 8b88
127 DEFINE mov____0x32(%ebp),%eax 8b85
128 DEFINE mov____0x32(%ebp),%eax 8b85
129 DEFINE mov____0x32(%ebp),%ebx 8b9d
130 DEFINE mov____0x32(%ebp),%ecx 8b8d
131 DEFINE mov____0x32(%ebp),%edx 8b95
132 DEFINE mov____0x32(%ebp),%edx 8b95
133 DEFINE mov____0x32,%eax a1
134 DEFINE mov____0x32,%edx 8b15
135 DEFINE mov____0x8(%eax),%eax 8b40
136 DEFINE mov____0x8(%eax),%ebx 8b58
137 DEFINE mov____0x8(%eax),%ecx 8b48
138 DEFINE mov____0x8(%ebp),%eax 8b45
139 DEFINE mov____0x8(%ebp),%ebp 8b6d
140 DEFINE mov____0x8(%ebp),%ebx 8b5d
141 DEFINE mov____0x8(%ebp),%ecx 8b4d
142 DEFINE mov____0x8(%ebp),%edx 8b55
143 DEFINE mov____0x8(%ebp),%esp 8b65
144 DEFINE movsbl_%al,%eax 0fbec0
145 DEFINE movswl_%ax,%eax 0fbfc0
146 DEFINE movzbl_%al,%eax 0fb6c0
147 DEFINE movzbl_%al,%eax 0fb6c0
148 DEFINE movzbl_%dl,%edx 0fb6d2
149 DEFINE movzbl_(%eax),%eax 0fb600
150 DEFINE movzbl_(%eax),%edx 0fb610
151 DEFINE movzbl_(%edx),%edx 0fb612
152 DEFINE movzbl_0x32(%eax),%eax 0fb680
153 DEFINE movzbl_0x8(%eax),%eax 0fb640
154 DEFINE movzbl_0x8(%ebp),%eax 0fb645
155 DEFINE movzwl_%ax,%eax 0fb7c0
156 DEFINE movzwl_(%eax),%eax 0fb700
157 DEFINE movzwl_0x32(%eax),%eax 0fb780
158 DEFINE movzwl_0x32(%ebp),%eax 0fb785
159 DEFINE movzwl_0x8(%eax),%eax 0fb740
160 DEFINE mul____%edx f7e2
162 DEFINE not____%eax f7d0
163 DEFINE or_____%edx,%eax 09d0
164 DEFINE or_____(%edx),%eax 0b02
165 DEFINE pop____%eax 58
166 DEFINE pop____%edx 5a
167 DEFINE push___$i32 68
168 DEFINE push___%eax 50
169 DEFINE push___%ebp 55
170 DEFINE push___%edx 52
171 DEFINE push___(%eax) ff30
172 DEFINE push___0x32(%ebp) ffb5
173 DEFINE push___0x8(%ebp) ff75
176 DEFINE seta___%al 0f97c0
177 DEFINE setae__%al 0f93c0
178 DEFINE setb___%al 0f92c0
179 DEFINE setbe__%al 0f96c0
180 DEFINE sete___%al 0f94c0
181 DEFINE setg___%al 0f9fc0
182 DEFINE setge__%al 0f9dc0
183 DEFINE setl___%al 0f9cc0
184 DEFINE setle__%al 0f9ec0
185 DEFINE setne__%al 0f95c0
186 DEFINE shl____$i8,%eax c1e0
187 DEFINE shl____%cl,%eax d3e0
188 DEFINE shr____%cl,%eax d3e8
189 DEFINE sub____%al,%dl 28d0
190 DEFINE sub____%dl,%al 28c2
191 DEFINE sub____%eax,%edx 29c2
192 DEFINE sub____%edx,%eax 29d0
193 DEFINE sub____%edx,%eax 29d0
194 DEFINE sub____%esp,$i32 81ec
195 DEFINE sub____%esp,$i8 83ec
196 DEFINE test___%al,%al 84c0
197 DEFINE test___%eax,%eax 85c0
198 DEFINE xchg___%eax,(%esp) 870424
199 DEFINE xor____$i32,%eax 35
200 DEFINE xor____$i8,%ah 80f4
201 DEFINE xor____%eax,%eax 31c0
202 DEFINE xor____%ebx,%ebx 31db
203 DEFINE xor____%ecx,%ecx 31c9
204 DEFINE xor____%edx,%eax 31d0
205 DEFINE xor____%edx,%edx 31d2
207 # Deprecated. Remove after 0.14 release.
208 DEFINE mov____%al,0x32(%ebp) 8885
209 DEFINE mov____%al,0x8(%ebp) 8845
210 DEFINE mov____%ax,0x32(%ebp) 668985
211 DEFINE mov____%ax,0x8(%ebp) 668945
212 DEFINE movzbl_0x32(%ebp),%eax 0fb685
213 DEFINE movzbl_0x8(%ebp),%edx 0fb655
214 DEFINE movzwl_0x8(%ebp),%eax 0fb745
215 DEFINE movzwl_0x8(%ebp),%eax 0fb745
217 DEFINE SYS_exit 01000000
218 DEFINE SYS_fork 02000000
219 DEFINE SYS_read 03000000
220 DEFINE SYS_rmdir 28000000
221 DEFINE SYS_write 04000000
222 DEFINE SYS_open 05000000
223 DEFINE SYS_close 06000000
224 DEFINE SYS_waitpid 07000000
225 DEFINE SYS_unlink 0a000000
226 DEFINE SYS_execve 0b000000
227 DEFINE SYS_chmod 0f000000
228 DEFINE SYS_lseek 13000000
229 DEFINE SYS_access 21000000
230 DEFINE SYS_brk 2d000000
231 DEFINE SYS_ioctl 36000000
232 DEFINE SYS_stat 6a000000
233 DEFINE SYS_fsync 76000000
234 DEFINE SYS_getcwd b7000000