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

Side by Side Diff: src/code-stubs.h

Issue 683913008: Turn ToNumberStub into a PlatformCodeStub again. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Use branches on ARM as well (better prediction). Created 6 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
« no previous file with comments | « src/arm64/code-stubs-arm64.cc ('k') | src/code-stubs.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 #ifndef V8_CODE_STUBS_H_ 5 #ifndef V8_CODE_STUBS_H_
6 #define V8_CODE_STUBS_H_ 6 #define V8_CODE_STUBS_H_
7 7
8 #include "src/allocation.h" 8 #include "src/allocation.h"
9 #include "src/assembler.h" 9 #include "src/assembler.h"
10 #include "src/codegen.h" 10 #include "src/codegen.h"
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
43 V(MathPow) \ 43 V(MathPow) \
44 V(ProfileEntryHook) \ 44 V(ProfileEntryHook) \
45 V(RecordWrite) \ 45 V(RecordWrite) \
46 V(RegExpExec) \ 46 V(RegExpExec) \
47 V(StoreArrayLiteralElement) \ 47 V(StoreArrayLiteralElement) \
48 V(StoreBufferOverflow) \ 48 V(StoreBufferOverflow) \
49 V(StoreElement) \ 49 V(StoreElement) \
50 V(StringCompare) \ 50 V(StringCompare) \
51 V(StubFailureTrampoline) \ 51 V(StubFailureTrampoline) \
52 V(SubString) \ 52 V(SubString) \
53 V(ToNumber) \
53 /* HydrogenCodeStubs */ \ 54 /* HydrogenCodeStubs */ \
54 V(AllocateHeapNumber) \ 55 V(AllocateHeapNumber) \
55 V(ArrayNArgumentsConstructor) \ 56 V(ArrayNArgumentsConstructor) \
56 V(ArrayNoArgumentConstructor) \ 57 V(ArrayNoArgumentConstructor) \
57 V(ArraySingleArgumentConstructor) \ 58 V(ArraySingleArgumentConstructor) \
58 V(BinaryOpIC) \ 59 V(BinaryOpIC) \
59 V(BinaryOpWithAllocationSite) \ 60 V(BinaryOpWithAllocationSite) \
60 V(CompareNilIC) \ 61 V(CompareNilIC) \
61 V(CreateAllocationSite) \ 62 V(CreateAllocationSite) \
62 V(ElementsTransitionAndStore) \ 63 V(ElementsTransitionAndStore) \
63 V(FastCloneShallowArray) \ 64 V(FastCloneShallowArray) \
64 V(FastCloneShallowObject) \ 65 V(FastCloneShallowObject) \
65 V(FastNewClosure) \ 66 V(FastNewClosure) \
66 V(FastNewContext) \ 67 V(FastNewContext) \
67 V(InternalArrayNArgumentsConstructor) \ 68 V(InternalArrayNArgumentsConstructor) \
68 V(InternalArrayNoArgumentConstructor) \ 69 V(InternalArrayNoArgumentConstructor) \
69 V(InternalArraySingleArgumentConstructor) \ 70 V(InternalArraySingleArgumentConstructor) \
70 V(KeyedLoadGeneric) \ 71 V(KeyedLoadGeneric) \
71 V(LoadDictionaryElement) \ 72 V(LoadDictionaryElement) \
72 V(LoadFastElement) \ 73 V(LoadFastElement) \
73 V(MegamorphicLoad) \ 74 V(MegamorphicLoad) \
74 V(NameDictionaryLookup) \ 75 V(NameDictionaryLookup) \
75 V(NumberToString) \ 76 V(NumberToString) \
76 V(RegExpConstructResult) \ 77 V(RegExpConstructResult) \
77 V(StoreFastElement) \ 78 V(StoreFastElement) \
78 V(StringAdd) \ 79 V(StringAdd) \
79 V(ToBoolean) \ 80 V(ToBoolean) \
80 V(ToNumber) \
81 V(TransitionElementsKind) \ 81 V(TransitionElementsKind) \
82 V(VectorKeyedLoad) \ 82 V(VectorKeyedLoad) \
83 V(VectorLoad) \ 83 V(VectorLoad) \
84 /* IC Handler stubs */ \ 84 /* IC Handler stubs */ \
85 V(LoadConstant) \ 85 V(LoadConstant) \
86 V(LoadField) \ 86 V(LoadField) \
87 V(KeyedLoadSloppyArguments) \ 87 V(KeyedLoadSloppyArguments) \
88 V(StoreField) \ 88 V(StoreField) \
89 V(StoreGlobal) \ 89 V(StoreGlobal) \
90 V(StoreTransition) \ 90 V(StoreTransition) \
(...skipping 447 matching lines...) Expand 10 before | Expand all | Expand 10 after
538 class NopRuntimeCallHelper : public RuntimeCallHelper { 538 class NopRuntimeCallHelper : public RuntimeCallHelper {
539 public: 539 public:
540 NopRuntimeCallHelper() {} 540 NopRuntimeCallHelper() {}
541 541
542 virtual void BeforeCall(MacroAssembler* masm) const {} 542 virtual void BeforeCall(MacroAssembler* masm) const {}
543 543
544 virtual void AfterCall(MacroAssembler* masm) const {} 544 virtual void AfterCall(MacroAssembler* masm) const {}
545 }; 545 };
546 546
547 547
548 class ToNumberStub: public HydrogenCodeStub {
549 public:
550 explicit ToNumberStub(Isolate* isolate) : HydrogenCodeStub(isolate) { }
551
552 DEFINE_CALL_INTERFACE_DESCRIPTOR(ToNumber);
553 DEFINE_HYDROGEN_CODE_STUB(ToNumber, HydrogenCodeStub);
554 };
555
556
557 class NumberToStringStub FINAL : public HydrogenCodeStub { 548 class NumberToStringStub FINAL : public HydrogenCodeStub {
558 public: 549 public:
559 explicit NumberToStringStub(Isolate* isolate) : HydrogenCodeStub(isolate) {} 550 explicit NumberToStringStub(Isolate* isolate) : HydrogenCodeStub(isolate) {}
560 551
561 // Parameters accessed via CodeStubGraphBuilder::GetParameter() 552 // Parameters accessed via CodeStubGraphBuilder::GetParameter()
562 static const int kNumber = 0; 553 static const int kNumber = 0;
563 554
564 DEFINE_CALL_INTERFACE_DESCRIPTOR(NumberToString); 555 DEFINE_CALL_INTERFACE_DESCRIPTOR(NumberToString);
565 DEFINE_HYDROGEN_CODE_STUB(NumberToString, HydrogenCodeStub); 556 DEFINE_HYDROGEN_CODE_STUB(NumberToString, HydrogenCodeStub);
566 }; 557 };
(...skipping 1963 matching lines...) Expand 10 before | Expand all | Expand 10 after
2530 2521
2531 class SubStringStub : public PlatformCodeStub { 2522 class SubStringStub : public PlatformCodeStub {
2532 public: 2523 public:
2533 explicit SubStringStub(Isolate* isolate) : PlatformCodeStub(isolate) {} 2524 explicit SubStringStub(Isolate* isolate) : PlatformCodeStub(isolate) {}
2534 2525
2535 DEFINE_CALL_INTERFACE_DESCRIPTOR(ContextOnly); 2526 DEFINE_CALL_INTERFACE_DESCRIPTOR(ContextOnly);
2536 DEFINE_PLATFORM_CODE_STUB(SubString, PlatformCodeStub); 2527 DEFINE_PLATFORM_CODE_STUB(SubString, PlatformCodeStub);
2537 }; 2528 };
2538 2529
2539 2530
2531 class ToNumberStub FINAL : public PlatformCodeStub {
2532 public:
2533 explicit ToNumberStub(Isolate* isolate) : PlatformCodeStub(isolate) {}
2534
2535 DEFINE_CALL_INTERFACE_DESCRIPTOR(ToNumber);
2536 DEFINE_PLATFORM_CODE_STUB(ToNumber, PlatformCodeStub);
2537 };
2538
2539
2540 class StringCompareStub : public PlatformCodeStub { 2540 class StringCompareStub : public PlatformCodeStub {
2541 public: 2541 public:
2542 explicit StringCompareStub(Isolate* isolate) : PlatformCodeStub(isolate) {} 2542 explicit StringCompareStub(Isolate* isolate) : PlatformCodeStub(isolate) {}
2543 2543
2544 DEFINE_CALL_INTERFACE_DESCRIPTOR(ContextOnly); 2544 DEFINE_CALL_INTERFACE_DESCRIPTOR(ContextOnly);
2545 DEFINE_PLATFORM_CODE_STUB(StringCompare, PlatformCodeStub); 2545 DEFINE_PLATFORM_CODE_STUB(StringCompare, PlatformCodeStub);
2546 }; 2546 };
2547 2547
2548 2548
2549 #undef DEFINE_CALL_INTERFACE_DESCRIPTOR 2549 #undef DEFINE_CALL_INTERFACE_DESCRIPTOR
2550 #undef DEFINE_PLATFORM_CODE_STUB 2550 #undef DEFINE_PLATFORM_CODE_STUB
2551 #undef DEFINE_HANDLER_CODE_STUB 2551 #undef DEFINE_HANDLER_CODE_STUB
2552 #undef DEFINE_HYDROGEN_CODE_STUB 2552 #undef DEFINE_HYDROGEN_CODE_STUB
2553 #undef DEFINE_CODE_STUB 2553 #undef DEFINE_CODE_STUB
2554 #undef DEFINE_CODE_STUB_BASE 2554 #undef DEFINE_CODE_STUB_BASE
2555 } } // namespace v8::internal 2555 } } // namespace v8::internal
2556 2556
2557 #endif // V8_CODE_STUBS_H_ 2557 #endif // V8_CODE_STUBS_H_
OLDNEW
« no previous file with comments | « src/arm64/code-stubs-arm64.cc ('k') | src/code-stubs.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698