OLD | NEW |
1 // Copyright 2006-2008 the V8 project authors. All rights reserved. | 1 // Copyright 2006-2008 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 269 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
280 // expressions. We are not allowed to throw reference errors for | 280 // expressions. We are not allowed to throw reference errors for |
281 // non-existing properties of the global object, so we must make it | 281 // non-existing properties of the global object, so we must make it |
282 // look like an explicit property access, instead of an access | 282 // look like an explicit property access, instead of an access |
283 // through the context chain. | 283 // through the context chain. |
284 void LoadTypeofExpression(Expression* x); | 284 void LoadTypeofExpression(Expression* x); |
285 | 285 |
286 void ToBoolean(Label* true_target, Label* false_target); | 286 void ToBoolean(Label* true_target, Label* false_target); |
287 | 287 |
288 void GenericBinaryOperation(Token::Value op, | 288 void GenericBinaryOperation(Token::Value op, |
289 const OverwriteMode overwrite_mode = NO_OVERWRITE); | 289 const OverwriteMode overwrite_mode = NO_OVERWRITE); |
| 290 |
290 void Comparison(Condition cc, bool strict = false); | 291 void Comparison(Condition cc, bool strict = false); |
291 | 292 |
292 // Inline small integer literals. To prevent long attacker-controlled byte | 293 // Inline small integer literals. To prevent long attacker-controlled byte |
293 // sequences, we only inline small Smi:s. | 294 // sequences, we only inline small Smis. |
294 static const int kMaxSmiInlinedBits = 16; | 295 static const int kMaxSmiInlinedBits = 16; |
295 bool IsInlineSmi(Literal* literal); | 296 bool IsInlineSmi(Literal* literal); |
296 void SmiComparison(Condition cc, Handle<Object> value, bool strict = false); | 297 void SmiComparison(Condition cc, Handle<Object> value, bool strict = false); |
297 void SmiOperation(Token::Value op, | 298 void SmiOperation(Token::Value op, |
298 Handle<Object> value, | 299 Handle<Object> value, |
299 bool reversed, | 300 bool reversed, |
300 OverwriteMode overwrite_mode); | 301 OverwriteMode overwrite_mode); |
301 | 302 |
302 void CallWithArguments(ZoneList<Expression*>* arguments, int position); | 303 void CallWithArguments(ZoneList<Expression*>* arguments, int position); |
303 | 304 |
(...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
413 friend class VirtualFrame; | 414 friend class VirtualFrame; |
414 friend class Reference; | 415 friend class Reference; |
415 | 416 |
416 DISALLOW_COPY_AND_ASSIGN(CodeGenerator); | 417 DISALLOW_COPY_AND_ASSIGN(CodeGenerator); |
417 }; | 418 }; |
418 | 419 |
419 | 420 |
420 } } // namespace v8::internal | 421 } } // namespace v8::internal |
421 | 422 |
422 #endif // V8_CODEGEN_IA32_H_ | 423 #endif // V8_CODEGEN_IA32_H_ |
OLD | NEW |