OLD | NEW |
1 // Copyright (c) 1994-2006 Sun Microsystems Inc. | 1 // Copyright (c) 1994-2006 Sun Microsystems Inc. |
2 // All Rights Reserved. | 2 // All Rights Reserved. |
3 // | 3 // |
4 // Redistribution and use in source and binary forms, with or without | 4 // Redistribution and use in source and binary forms, with or without |
5 // modification, are permitted provided that the following conditions are | 5 // modification, are permitted provided that the following conditions are |
6 // met: | 6 // met: |
7 // | 7 // |
8 // - Redistributions of source code must retain the above copyright notice, | 8 // - Redistributions of source code must retain the above copyright notice, |
9 // this list of conditions and the following disclaimer. | 9 // this list of conditions and the following disclaimer. |
10 // | 10 // |
(...skipping 159 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
170 return cc; | 170 return cc; |
171 }; | 171 }; |
172 } | 172 } |
173 | 173 |
174 enum Hint { | 174 enum Hint { |
175 no_hint = 0, | 175 no_hint = 0, |
176 not_taken = 0x2e, | 176 not_taken = 0x2e, |
177 taken = 0x3e | 177 taken = 0x3e |
178 }; | 178 }; |
179 | 179 |
180 | |
181 // The result of negating a hint is as if the corresponding condition | 180 // The result of negating a hint is as if the corresponding condition |
182 // were negated by NegateCondition. That is, no_hint is mapped to | 181 // were negated by NegateCondition. That is, no_hint is mapped to |
183 // itself and not_taken and taken are mapped to each other. | 182 // itself and not_taken and taken are mapped to each other. |
184 inline Hint NegateHint(Hint hint) { | 183 inline Hint NegateHint(Hint hint) { |
185 return (hint == no_hint) | 184 return (hint == no_hint) |
186 ? no_hint | 185 ? no_hint |
187 : ((hint == not_taken) ? taken : not_taken); | 186 : ((hint == not_taken) ? taken : not_taken); |
188 } | 187 } |
189 | 188 |
| 189 |
190 // ----------------------------------------------------------------------------- | 190 // ----------------------------------------------------------------------------- |
191 // Machine instruction Immediates | 191 // Machine instruction Immediates |
192 | 192 |
193 class Immediate BASE_EMBEDDED { | 193 class Immediate BASE_EMBEDDED { |
194 public: | 194 public: |
195 inline explicit Immediate(int x); | 195 inline explicit Immediate(int x); |
196 inline explicit Immediate(const char* s); | 196 inline explicit Immediate(const char* s); |
197 inline explicit Immediate(const ExternalReference& ext); | 197 inline explicit Immediate(const ExternalReference& ext); |
198 inline explicit Immediate(Handle<Object> handle); | 198 inline explicit Immediate(Handle<Object> handle); |
199 inline explicit Immediate(Smi* value); | 199 inline explicit Immediate(Smi* value); |
(...skipping 654 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
854 private: | 854 private: |
855 Assembler* assembler_; | 855 Assembler* assembler_; |
856 #ifdef DEBUG | 856 #ifdef DEBUG |
857 int space_before_; | 857 int space_before_; |
858 #endif | 858 #endif |
859 }; | 859 }; |
860 | 860 |
861 } } // namespace v8::internal | 861 } } // namespace v8::internal |
862 | 862 |
863 #endif // V8_ASSEMBLER_IA32_H_ | 863 #endif // V8_ASSEMBLER_IA32_H_ |
OLD | NEW |