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

Side by Side Diff: src/hydrogen-instructions.cc

Issue 11293061: Emit VMLA for multiply-add on ARM (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Clean up and support other targets Created 8 years, 1 month 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
OLDNEW
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 1518 matching lines...) Expand 10 before | Expand all | Expand 10 after
1529 1529
1530 void HBinaryOperation::PrintDataTo(StringStream* stream) { 1530 void HBinaryOperation::PrintDataTo(StringStream* stream) {
1531 left()->PrintNameTo(stream); 1531 left()->PrintNameTo(stream);
1532 stream->Add(" "); 1532 stream->Add(" ");
1533 right()->PrintNameTo(stream); 1533 right()->PrintNameTo(stream);
1534 if (CheckFlag(kCanOverflow)) stream->Add(" !"); 1534 if (CheckFlag(kCanOverflow)) stream->Add(" !");
1535 if (CheckFlag(kBailoutOnMinusZero)) stream->Add(" -0?"); 1535 if (CheckFlag(kBailoutOnMinusZero)) stream->Add(" -0?");
1536 } 1536 }
1537 1537
1538 1538
1539 void HMultiplyAddD::PrintDataTo(StringStream* stream) {
1540 a()->PrintNameTo(stream);
1541 stream->Add(" ");
1542 b()->PrintNameTo(stream);
1543 stream->Add(" ");
1544 c()->PrintNameTo(stream);
1545 }
1546
1547
1539 Range* HBitwise::InferRange(Zone* zone) { 1548 Range* HBitwise::InferRange(Zone* zone) {
1540 if (op() == Token::BIT_XOR) return HValue::InferRange(zone); 1549 if (op() == Token::BIT_XOR) return HValue::InferRange(zone);
1541 const int32_t kDefaultMask = static_cast<int32_t>(0xffffffff); 1550 const int32_t kDefaultMask = static_cast<int32_t>(0xffffffff);
1542 int32_t left_mask = (left()->range() != NULL) 1551 int32_t left_mask = (left()->range() != NULL)
1543 ? left()->range()->Mask() 1552 ? left()->range()->Mask()
1544 : kDefaultMask; 1553 : kDefaultMask;
1545 int32_t right_mask = (right()->range() != NULL) 1554 int32_t right_mask = (right()->range() != NULL)
1546 ? right()->range()->Mask() 1555 ? right()->range()->Mask()
1547 : kDefaultMask; 1556 : kDefaultMask;
1548 int32_t result_mask = (op() == Token::BIT_AND) 1557 int32_t result_mask = (op() == Token::BIT_AND)
(...skipping 976 matching lines...) Expand 10 before | Expand all | Expand 10 after
2525 2534
2526 2535
2527 void HCheckFunction::Verify() { 2536 void HCheckFunction::Verify() {
2528 HInstruction::Verify(); 2537 HInstruction::Verify();
2529 ASSERT(HasNoUses()); 2538 ASSERT(HasNoUses());
2530 } 2539 }
2531 2540
2532 #endif 2541 #endif
2533 2542
2534 } } // namespace v8::internal 2543 } } // namespace v8::internal
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698