OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 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 319 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
330 Register temp, | 330 Register temp, |
331 X87Register res_reg, | 331 X87Register res_reg, |
332 bool allow_undefined_as_nan, | 332 bool allow_undefined_as_nan, |
333 bool deoptimize_on_minus_zero, | 333 bool deoptimize_on_minus_zero, |
334 LEnvironment* env, | 334 LEnvironment* env, |
335 NumberUntagDMode mode = NUMBER_CANDIDATE_IS_ANY_TAGGED); | 335 NumberUntagDMode mode = NUMBER_CANDIDATE_IS_ANY_TAGGED); |
336 | 336 |
337 // Emits optimized code for typeof x == "y". Modifies input register. | 337 // Emits optimized code for typeof x == "y". Modifies input register. |
338 // Returns the condition on which a final split to | 338 // Returns the condition on which a final split to |
339 // true and false label should be made, to optimize fallthrough. | 339 // true and false label should be made, to optimize fallthrough. |
340 Condition EmitTypeofIs(Label* true_label, | 340 Condition EmitTypeofIs(LTypeofIsAndBranch* instr, Register input); |
341 Label* false_label, | |
342 Register input, | |
343 Handle<String> type_name); | |
344 | 341 |
345 // Emits optimized code for %_IsObject(x). Preserves input register. | 342 // Emits optimized code for %_IsObject(x). Preserves input register. |
346 // Returns the condition on which a final split to | 343 // Returns the condition on which a final split to |
347 // true and false label should be made, to optimize fallthrough. | 344 // true and false label should be made, to optimize fallthrough. |
348 Condition EmitIsObject(Register input, | 345 Condition EmitIsObject(Register input, |
349 Register temp1, | 346 Register temp1, |
350 Label* is_not_object, | 347 Label* is_not_object, |
351 Label* is_object); | 348 Label* is_object); |
352 | 349 |
353 // Emits optimized code for %_IsString(x). Preserves input register. | 350 // Emits optimized code for %_IsString(x). Preserves input register. |
(...skipping 174 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
528 Label exit_; | 525 Label exit_; |
529 Label* external_exit_; | 526 Label* external_exit_; |
530 Label done_; | 527 Label done_; |
531 int instruction_index_; | 528 int instruction_index_; |
532 LCodeGen::X87Stack x87_stack_; | 529 LCodeGen::X87Stack x87_stack_; |
533 }; | 530 }; |
534 | 531 |
535 } } // namespace v8::internal | 532 } } // namespace v8::internal |
536 | 533 |
537 #endif // V8_IA32_LITHIUM_CODEGEN_IA32_H_ | 534 #endif // V8_IA32_LITHIUM_CODEGEN_IA32_H_ |
OLD | NEW |