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

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

Issue 1974093003: WIP: Boom (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Rebased Created 4 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
« no previous file with comments | « src/code-stub-assembler.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/code-stub-assembler.h" 10 #include "src/code-stub-assembler.h"
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after
96 V(AllocateUint32x4) \ 96 V(AllocateUint32x4) \
97 V(AllocateBool32x4) \ 97 V(AllocateBool32x4) \
98 V(AllocateInt16x8) \ 98 V(AllocateInt16x8) \
99 V(AllocateUint16x8) \ 99 V(AllocateUint16x8) \
100 V(AllocateBool16x8) \ 100 V(AllocateBool16x8) \
101 V(AllocateInt8x16) \ 101 V(AllocateInt8x16) \
102 V(AllocateUint8x16) \ 102 V(AllocateUint8x16) \
103 V(AllocateBool8x16) \ 103 V(AllocateBool8x16) \
104 V(ArrayNoArgumentConstructor) \ 104 V(ArrayNoArgumentConstructor) \
105 V(ArraySingleArgumentConstructor) \ 105 V(ArraySingleArgumentConstructor) \
106 V(Boom) \
106 V(StringLength) \ 107 V(StringLength) \
107 V(Add) \ 108 V(Add) \
108 V(Subtract) \ 109 V(Subtract) \
109 V(Multiply) \ 110 V(Multiply) \
110 V(Divide) \ 111 V(Divide) \
111 V(Modulus) \ 112 V(Modulus) \
112 V(ShiftRight) \ 113 V(ShiftRight) \
113 V(ShiftRightLogical) \ 114 V(ShiftRightLogical) \
114 V(ShiftLeft) \ 115 V(ShiftLeft) \
115 V(BitwiseAnd) \ 116 V(BitwiseAnd) \
(...skipping 857 matching lines...) Expand 10 before | Expand all | Expand 10 after
973 : TurboFanCodeStub(isolate) {} 974 : TurboFanCodeStub(isolate) {}
974 975
975 Code::Kind GetCodeKind() const override { return Code::HANDLER; } 976 Code::Kind GetCodeKind() const override { return Code::HANDLER; }
976 ExtraICState GetExtraICState() const override { return Code::KEYED_LOAD_IC; } 977 ExtraICState GetExtraICState() const override { return Code::KEYED_LOAD_IC; }
977 InlineCacheState GetICState() const override { return MONOMORPHIC; } 978 InlineCacheState GetICState() const override { return MONOMORPHIC; }
978 979
979 DEFINE_CALL_INTERFACE_DESCRIPTOR(LoadWithVector); 980 DEFINE_CALL_INTERFACE_DESCRIPTOR(LoadWithVector);
980 DEFINE_TURBOFAN_CODE_STUB(LoadIndexedInterceptor, TurboFanCodeStub); 981 DEFINE_TURBOFAN_CODE_STUB(LoadIndexedInterceptor, TurboFanCodeStub);
981 }; 982 };
982 983
984 class BoomStub : public TurboFanCodeStub {
985 public:
986 explicit BoomStub(Isolate* isolate) : TurboFanCodeStub(isolate) {}
987
988 static void GenerateAheadOfTime(Isolate* isolate);
989
990 DEFINE_CALL_INTERFACE_DESCRIPTOR(Void);
991 DEFINE_TURBOFAN_CODE_STUB(Boom, TurboFanCodeStub);
992 };
993
983 // ES6 section 12.10.3 "in" operator evaluation. 994 // ES6 section 12.10.3 "in" operator evaluation.
984 class HasPropertyStub : public TurboFanCodeStub { 995 class HasPropertyStub : public TurboFanCodeStub {
985 public: 996 public:
986 explicit HasPropertyStub(Isolate* isolate) : TurboFanCodeStub(isolate) {} 997 explicit HasPropertyStub(Isolate* isolate) : TurboFanCodeStub(isolate) {}
987 998
988 DEFINE_CALL_INTERFACE_DESCRIPTOR(HasProperty); 999 DEFINE_CALL_INTERFACE_DESCRIPTOR(HasProperty);
989 DEFINE_TURBOFAN_BINARY_OP_CODE_STUB(HasProperty, TurboFanCodeStub); 1000 DEFINE_TURBOFAN_BINARY_OP_CODE_STUB(HasProperty, TurboFanCodeStub);
990 }; 1001 };
991 1002
992 enum StringAddFlags { 1003 enum StringAddFlags {
(...skipping 2253 matching lines...) Expand 10 before | Expand all | Expand 10 after
3246 #undef DEFINE_HYDROGEN_CODE_STUB 3257 #undef DEFINE_HYDROGEN_CODE_STUB
3247 #undef DEFINE_CODE_STUB 3258 #undef DEFINE_CODE_STUB
3248 #undef DEFINE_CODE_STUB_BASE 3259 #undef DEFINE_CODE_STUB_BASE
3249 3260
3250 extern Representation RepresentationFromType(Type* type); 3261 extern Representation RepresentationFromType(Type* type);
3251 3262
3252 } // namespace internal 3263 } // namespace internal
3253 } // namespace v8 3264 } // namespace v8
3254 3265
3255 #endif // V8_CODE_STUBS_H_ 3266 #endif // V8_CODE_STUBS_H_
OLDNEW
« no previous file with comments | « src/code-stub-assembler.cc ('k') | src/code-stubs.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698