Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(429)

Side by Side Diff: src/serialize.cc

Issue 5640004: Allow the optimizing code generator to call Math.pow with untagged doubles. (Closed) Base URL: http://v8.googlecode.com/svn/branches/bleeding_edge/
Patch Set: '' Created 10 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« src/ia32/lithium-ia32.cc ('K') | « src/runtime.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 405 matching lines...) Expand 10 before | Expand all | Expand 10 after
416 19, 416 19,
417 "mul_two_doubles"); 417 "mul_two_doubles");
418 Add(ExternalReference::double_fp_operation(Token::DIV).address(), 418 Add(ExternalReference::double_fp_operation(Token::DIV).address(),
419 UNCLASSIFIED, 419 UNCLASSIFIED,
420 20, 420 20,
421 "div_two_doubles"); 421 "div_two_doubles");
422 Add(ExternalReference::double_fp_operation(Token::MOD).address(), 422 Add(ExternalReference::double_fp_operation(Token::MOD).address(),
423 UNCLASSIFIED, 423 UNCLASSIFIED,
424 21, 424 21,
425 "mod_two_doubles"); 425 "mod_two_doubles");
426 Add(ExternalReference::double_fp_operation(Token::BIT_XOR).address(),
Florian Schneider 2010/12/08 14:09:27 This can go away now.
427 UNCLASSIFIED,
428 36,
429 "power_two_doubles");
426 Add(ExternalReference::compare_doubles().address(), 430 Add(ExternalReference::compare_doubles().address(),
427 UNCLASSIFIED, 431 UNCLASSIFIED,
428 22, 432 22,
429 "compare_doubles"); 433 "compare_doubles");
430 #ifndef V8_INTERPRETED_REGEXP 434 #ifndef V8_INTERPRETED_REGEXP
431 Add(ExternalReference::re_case_insensitive_compare_uc16().address(), 435 Add(ExternalReference::re_case_insensitive_compare_uc16().address(),
432 UNCLASSIFIED, 436 UNCLASSIFIED,
433 23, 437 23,
434 "NativeRegExpMacroAssembler::CaseInsensitiveCompareUC16()"); 438 "NativeRegExpMacroAssembler::CaseInsensitiveCompareUC16()");
435 Add(ExternalReference::re_check_stack_guard_state().address(), 439 Add(ExternalReference::re_check_stack_guard_state().address(),
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
479 34, 483 34,
480 "Deoptimizer::ComputeOutputFrames()"); 484 "Deoptimizer::ComputeOutputFrames()");
481 Add(ExternalReference::address_of_min_int().address(), 485 Add(ExternalReference::address_of_min_int().address(),
482 UNCLASSIFIED, 486 UNCLASSIFIED,
483 35, 487 35,
484 "LDoubleConstant::min_int"); 488 "LDoubleConstant::min_int");
485 Add(ExternalReference::address_of_one_half().address(), 489 Add(ExternalReference::address_of_one_half().address(),
486 UNCLASSIFIED, 490 UNCLASSIFIED,
487 36, 491 36,
488 "LDoubleConstant::one_half"); 492 "LDoubleConstant::one_half");
493 Add(ExternalReference::address_of_negative_infinity().address(),
494 UNCLASSIFIED,
495 37,
496 "LDoubleConstant::negative_infinity");
497 Add(ExternalReference::power_double_double_function().address(),
498 UNCLASSIFIED,
499 38,
500 "power_double_double_function");
501 Add(ExternalReference::power_double_int_function().address(),
502 UNCLASSIFIED,
503 39,
504 "power_double_int_function");
505
489 } 506 }
490 507
491 508
492 ExternalReferenceEncoder::ExternalReferenceEncoder() 509 ExternalReferenceEncoder::ExternalReferenceEncoder()
493 : encodings_(Match) { 510 : encodings_(Match) {
494 ExternalReferenceTable* external_references = 511 ExternalReferenceTable* external_references =
495 ExternalReferenceTable::instance(); 512 ExternalReferenceTable::instance();
496 for (int i = 0; i < external_references->size(); ++i) { 513 for (int i = 0; i < external_references->size(); ++i) {
497 Put(external_references->address(i), i); 514 Put(external_references->address(i), i);
498 } 515 }
(...skipping 1007 matching lines...) Expand 10 before | Expand all | Expand 10 after
1506 fullness_[space] = RoundUp(fullness_[space], Page::kPageSize); 1523 fullness_[space] = RoundUp(fullness_[space], Page::kPageSize);
1507 } 1524 }
1508 } 1525 }
1509 int allocation_address = fullness_[space]; 1526 int allocation_address = fullness_[space];
1510 fullness_[space] = allocation_address + size; 1527 fullness_[space] = allocation_address + size;
1511 return allocation_address; 1528 return allocation_address;
1512 } 1529 }
1513 1530
1514 1531
1515 } } // namespace v8::internal 1532 } } // namespace v8::internal
OLDNEW
« src/ia32/lithium-ia32.cc ('K') | « src/runtime.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698