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

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

Issue 330053002: ARM, ARM64: Optimize array copy (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 6 years, 6 months 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
« no previous file with comments | « src/hydrogen-instructions.h ('k') | src/ia32/lithium-ia32.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2012 the V8 project authors. All rights reserved. 1 // Copyright 2012 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "src/v8.h" 5 #include "src/v8.h"
6 6
7 #include "src/double.h" 7 #include "src/double.h"
8 #include "src/factory.h" 8 #include "src/factory.h"
9 #include "src/hydrogen-infer-representation.h" 9 #include "src/hydrogen-infer-representation.h"
10 #include "src/property-details-inl.h" 10 #include "src/property-details-inl.h"
(...skipping 794 matching lines...) Expand 10 before | Expand all | Expand 10 after
805 case HValue::kClassOfTestAndBranch: 805 case HValue::kClassOfTestAndBranch:
806 case HValue::kCompareGeneric: 806 case HValue::kCompareGeneric:
807 case HValue::kCompareHoleAndBranch: 807 case HValue::kCompareHoleAndBranch:
808 case HValue::kCompareMap: 808 case HValue::kCompareMap:
809 case HValue::kCompareMinusZeroAndBranch: 809 case HValue::kCompareMinusZeroAndBranch:
810 case HValue::kCompareNumericAndBranch: 810 case HValue::kCompareNumericAndBranch:
811 case HValue::kCompareObjectEqAndBranch: 811 case HValue::kCompareObjectEqAndBranch:
812 case HValue::kConstant: 812 case HValue::kConstant:
813 case HValue::kConstructDouble: 813 case HValue::kConstructDouble:
814 case HValue::kContext: 814 case HValue::kContext:
815 case HValue::kCopyElements:
815 case HValue::kDebugBreak: 816 case HValue::kDebugBreak:
816 case HValue::kDeclareGlobals: 817 case HValue::kDeclareGlobals:
817 case HValue::kDoubleBits: 818 case HValue::kDoubleBits:
818 case HValue::kDummyUse: 819 case HValue::kDummyUse:
819 case HValue::kEnterInlined: 820 case HValue::kEnterInlined:
820 case HValue::kEnvironmentMarker: 821 case HValue::kEnvironmentMarker:
822 case HValue::kFillElements:
821 case HValue::kForceRepresentation: 823 case HValue::kForceRepresentation:
822 case HValue::kGetCachedArrayIndex: 824 case HValue::kGetCachedArrayIndex:
823 case HValue::kGoto: 825 case HValue::kGoto:
824 case HValue::kHasCachedArrayIndexAndBranch: 826 case HValue::kHasCachedArrayIndexAndBranch:
825 case HValue::kHasInstanceTypeAndBranch: 827 case HValue::kHasInstanceTypeAndBranch:
826 case HValue::kInnerAllocatedObject: 828 case HValue::kInnerAllocatedObject:
827 case HValue::kInstanceOf: 829 case HValue::kInstanceOf:
828 case HValue::kInstanceOfKnownGlobal: 830 case HValue::kInstanceOfKnownGlobal:
829 case HValue::kIsConstructCallAndBranch: 831 case HValue::kIsConstructCallAndBranch:
830 case HValue::kIsObjectAndBranch: 832 case HValue::kIsObjectAndBranch:
(...skipping 2768 matching lines...) Expand 10 before | Expand all | Expand 10 after
3599 value()->PrintNameTo(stream); 3601 value()->PrintNameTo(stream);
3600 if (NeedsWriteBarrier()) { 3602 if (NeedsWriteBarrier()) {
3601 stream->Add(" (write-barrier)"); 3603 stream->Add(" (write-barrier)");
3602 } 3604 }
3603 if (has_transition()) { 3605 if (has_transition()) {
3604 stream->Add(" (transition map %p)", *transition_map()); 3606 stream->Add(" (transition map %p)", *transition_map());
3605 } 3607 }
3606 } 3608 }
3607 3609
3608 3610
3611 void HFillElements::PrintDataTo(StringStream* stream) {
3612 elements()->PrintNameTo(stream);
3613 stream->Add("[");
3614 from()->PrintNameTo(stream);
3615 stream->Add("-");
3616 to()->PrintNameTo(stream);
3617 stream->Add("] = ");
3618 value()->PrintNameTo(stream);
3619 }
3620
3621
3622 void HCopyElements::PrintDataTo(StringStream* stream) {
3623 dst()->PrintNameTo(stream);
3624 stream->Add("[0-");
3625 length()->PrintNameTo(stream);
3626 stream->Add("] = ");
3627 src()->PrintNameTo(stream);
3628 stream->Add("[0-");
3629 length()->PrintNameTo(stream);
3630 stream->Add("]");
3631 }
3632
3633
3609 void HStoreKeyed::PrintDataTo(StringStream* stream) { 3634 void HStoreKeyed::PrintDataTo(StringStream* stream) {
3610 if (!is_external()) { 3635 if (!is_external()) {
3611 elements()->PrintNameTo(stream); 3636 elements()->PrintNameTo(stream);
3612 } else { 3637 } else {
3613 elements()->PrintNameTo(stream); 3638 elements()->PrintNameTo(stream);
3614 stream->Add("."); 3639 stream->Add(".");
3615 stream->Add(ElementsKindToString(elements_kind())); 3640 stream->Add(ElementsKindToString(elements_kind()));
3616 ASSERT(elements_kind() >= FIRST_EXTERNAL_ARRAY_ELEMENTS_KIND && 3641 ASSERT(elements_kind() >= FIRST_EXTERNAL_ARRAY_ELEMENTS_KIND &&
3617 elements_kind() <= LAST_EXTERNAL_ARRAY_ELEMENTS_KIND); 3642 elements_kind() <= LAST_EXTERNAL_ARRAY_ELEMENTS_KIND);
3618 } 3643 }
(...skipping 1220 matching lines...) Expand 10 before | Expand all | Expand 10 after
4839 break; 4864 break;
4840 case kExternalMemory: 4865 case kExternalMemory:
4841 stream->Add("[external-memory]"); 4866 stream->Add("[external-memory]");
4842 break; 4867 break;
4843 } 4868 }
4844 4869
4845 stream->Add("@%d", offset()); 4870 stream->Add("@%d", offset());
4846 } 4871 }
4847 4872
4848 } } // namespace v8::internal 4873 } } // namespace v8::internal
OLDNEW
« no previous file with comments | « src/hydrogen-instructions.h ('k') | src/ia32/lithium-ia32.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698