OLD | NEW |
1 // Copyright 2014 Google Inc. All Rights Reserved. | 1 // Copyright 2014 Google Inc. All Rights Reserved. |
2 // | 2 // |
3 // Licensed under the Apache License, Version 2.0 (the "License"); | 3 // Licensed under the Apache License, Version 2.0 (the "License"); |
4 // you may not use this file except in compliance with the License. | 4 // you may not use this file except in compliance with the License. |
5 // You may obtain a copy of the License at | 5 // You may obtain a copy of the License at |
6 // | 6 // |
7 // http://www.apache.org/licenses/LICENSE-2.0 | 7 // http://www.apache.org/licenses/LICENSE-2.0 |
8 // | 8 // |
9 // Unless required by applicable law or agreed to in writing, software | 9 // Unless required by applicable law or agreed to in writing, software |
10 // distributed under the License is distributed on an "AS IS" BASIS, | 10 // distributed under the License is distributed on an "AS IS" BASIS, |
(...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
130 // @} | 130 // @} |
131 | 131 |
132 // @name Double-word mov varieties. | 132 // @name Double-word mov varieties. |
133 // @{ | 133 // @{ |
134 void mov(const Register32& dst, const Register32& src); | 134 void mov(const Register32& dst, const Register32& src); |
135 void mov(const Register32& dst, const Operand& src); | 135 void mov(const Register32& dst, const Operand& src); |
136 void mov(const Operand& dst, const Register32& src); | 136 void mov(const Operand& dst, const Register32& src); |
137 void mov(const Register32& dst, const Immediate& src); | 137 void mov(const Register32& dst, const Immediate& src); |
138 void mov(const Operand& dst, const Immediate& src); | 138 void mov(const Operand& dst, const Immediate& src); |
139 void mov_fs(const Register32& dst, const Operand& src); | 139 void mov_fs(const Register32& dst, const Operand& src); |
| 140 void mov_fs(const Register32& dst, const Immediate& src); |
140 void mov_fs(const Operand& dst, const Register32& src); | 141 void mov_fs(const Operand& dst, const Register32& src); |
141 // @} | 142 // @} |
142 | 143 |
143 // @name Load effective address. | 144 // @name Load effective address. |
144 void lea(const Register32& dst, const Operand& src); | 145 void lea(const Register32& dst, const Operand& src); |
145 | 146 |
146 // @name Stack manipulation. | 147 // @name Stack manipulation. |
147 // @{ | 148 // @{ |
148 void push(const Register32& src); | 149 void push(const Register32& src); |
149 void push(const Immediate& src); | 150 void push(const Immediate& src); |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
185 | 186 |
186 void add(const Register8& dst, const Register8& src); | 187 void add(const Register8& dst, const Register8& src); |
187 void add(const Register8& dst, const Immediate& src); | 188 void add(const Register8& dst, const Immediate& src); |
188 | 189 |
189 void add(const Register32& dst, const Register32& src); | 190 void add(const Register32& dst, const Register32& src); |
190 void add(const Register32& dst, const Operand& src); | 191 void add(const Register32& dst, const Operand& src); |
191 void add(const Operand& dst, const Register32& src); | 192 void add(const Operand& dst, const Register32& src); |
192 void add(const Register32& dst, const Immediate& src); | 193 void add(const Register32& dst, const Immediate& src); |
193 void add(const Operand& dst, const Immediate& src); | 194 void add(const Operand& dst, const Immediate& src); |
194 | 195 |
| 196 void inc(const Operand& dst); |
| 197 |
195 void sub(const Register8& dst, const Register8& src); | 198 void sub(const Register8& dst, const Register8& src); |
196 void sub(const Register8& dst, const Immediate& src); | 199 void sub(const Register8& dst, const Immediate& src); |
197 | 200 |
198 void sub(const Register32& dst, const Register32& src); | 201 void sub(const Register32& dst, const Register32& src); |
199 void sub(const Register32& dst, const Operand& src); | 202 void sub(const Register32& dst, const Operand& src); |
200 void sub(const Operand& dst, const Register32& src); | 203 void sub(const Operand& dst, const Register32& src); |
201 void sub(const Register32& dst, const Immediate& src); | 204 void sub(const Register32& dst, const Immediate& src); |
202 void sub(const Operand& dst, const Immediate& src); | 205 void sub(const Operand& dst, const Immediate& src); |
203 | 206 |
204 void imul(const Register32& dst, const Register32& src); | 207 void imul(const Register32& dst, const Register32& src); |
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
294 | 297 |
295 // The delegate we push instructions at. | 298 // The delegate we push instructions at. |
296 InstructionSerializer* serializer_; | 299 InstructionSerializer* serializer_; |
297 }; | 300 }; |
298 | 301 |
299 } // namespace assm | 302 } // namespace assm |
300 | 303 |
301 #include "syzygy/assm/assembler_base_impl.h" | 304 #include "syzygy/assm/assembler_base_impl.h" |
302 | 305 |
303 #endif // SYZYGY_ASSM_ASSEMBLER_BASE_H_ | 306 #endif // SYZYGY_ASSM_ASSEMBLER_BASE_H_ |
OLD | NEW |