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

Side by Side Diff: src/runtime/runtime.h

Issue 1328363002: [turbofan] Make %Arguments composable with inlining. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Fix compilation on GCC. Created 5 years, 3 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/compiler/linkage.cc ('k') | src/runtime/runtime-classes.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_RUNTIME_RUNTIME_H_ 5 #ifndef V8_RUNTIME_RUNTIME_H_
6 #define V8_RUNTIME_RUNTIME_H_ 6 #define V8_RUNTIME_RUNTIME_H_
7 7
8 #include "src/allocation.h" 8 #include "src/allocation.h"
9 #include "src/objects.h" 9 #include "src/objects.h"
10 #include "src/unicode.h" 10 #include "src/unicode.h"
(...skipping 1159 matching lines...) Expand 10 before | Expand all | Expand 10 after
1170 Handle<Object> value, LanguageMode language_mode); 1170 Handle<Object> value, LanguageMode language_mode);
1171 1171
1172 MUST_USE_RESULT static MaybeHandle<Object> GetObjectProperty( 1172 MUST_USE_RESULT static MaybeHandle<Object> GetObjectProperty(
1173 Isolate* isolate, Handle<Object> object, Handle<Object> key, 1173 Isolate* isolate, Handle<Object> object, Handle<Object> key,
1174 LanguageMode language_mode = SLOPPY); 1174 LanguageMode language_mode = SLOPPY);
1175 1175
1176 MUST_USE_RESULT static MaybeHandle<Object> KeyedGetObjectProperty( 1176 MUST_USE_RESULT static MaybeHandle<Object> KeyedGetObjectProperty(
1177 Isolate* isolate, Handle<Object> receiver_obj, Handle<Object> key_obj, 1177 Isolate* isolate, Handle<Object> receiver_obj, Handle<Object> key_obj,
1178 LanguageMode language_mode); 1178 LanguageMode language_mode);
1179 1179
1180 // TODO(mstarzinger): Remove this once %DefaultConstructorCallSuper is gone.
1180 MUST_USE_RESULT static MaybeHandle<Object> GetPrototype( 1181 MUST_USE_RESULT static MaybeHandle<Object> GetPrototype(
1181 Isolate* isolate, Handle<Object> object); 1182 Isolate* isolate, Handle<Object> object);
1182 1183
1183 enum TypedArrayId { 1184 enum TypedArrayId {
1184 // arrayIds below should be synchronized with typedarray.js natives. 1185 // arrayIds below should be synchronized with typedarray.js natives.
1185 ARRAY_ID_UINT8 = 1, 1186 ARRAY_ID_UINT8 = 1,
1186 ARRAY_ID_INT8 = 2, 1187 ARRAY_ID_INT8 = 2,
1187 ARRAY_ID_UINT16 = 3, 1188 ARRAY_ID_UINT16 = 3,
1188 ARRAY_ID_INT16 = 4, 1189 ARRAY_ID_INT16 = 4,
1189 ARRAY_ID_UINT32 = 5, 1190 ARRAY_ID_UINT32 = 5,
(...skipping 10 matching lines...) Expand all
1200 size_t* element_size); 1201 size_t* element_size);
1201 1202
1202 // Used in runtime.cc and hydrogen's VisitArrayLiteral. 1203 // Used in runtime.cc and hydrogen's VisitArrayLiteral.
1203 MUST_USE_RESULT static MaybeHandle<Object> CreateArrayLiteralBoilerplate( 1204 MUST_USE_RESULT static MaybeHandle<Object> CreateArrayLiteralBoilerplate(
1204 Isolate* isolate, Handle<FixedArray> literals, 1205 Isolate* isolate, Handle<FixedArray> literals,
1205 Handle<FixedArray> elements, bool is_strong); 1206 Handle<FixedArray> elements, bool is_strong);
1206 1207
1207 static MaybeHandle<JSArray> GetInternalProperties(Isolate* isolate, 1208 static MaybeHandle<JSArray> GetInternalProperties(Isolate* isolate,
1208 Handle<Object>); 1209 Handle<Object>);
1209 1210
1211 // Find the arguments of the JavaScript function invocation that called
1212 // into C++ code. Collect these in a newly allocated array of handles
1213 // (possibly prefixed by a number of empty handles).
1214 // TODO(mstarzinger): Temporary workaround until this is only used by the
1215 // %_Arguments and %_ArgumentsLength intrinsics. Make this function local to
1216 // runtime-scopes.cc then.
1217 static base::SmartArrayPointer<Handle<Object>> GetCallerArguments(
1218 Isolate* isolate, int prefix_argc, int* total_argc);
1219
1210 static bool AtomicIsLockFree(uint32_t size); 1220 static bool AtomicIsLockFree(uint32_t size);
1211 }; 1221 };
1212 1222
1213 1223
1214 std::ostream& operator<<(std::ostream&, Runtime::FunctionId); 1224 std::ostream& operator<<(std::ostream&, Runtime::FunctionId);
1215 1225
1216 //--------------------------------------------------------------------------- 1226 //---------------------------------------------------------------------------
1217 // Constants used by interface to runtime functions. 1227 // Constants used by interface to runtime functions.
1218 1228
1219 class AllocateDoubleAlignFlag : public BitField<bool, 0, 1> {}; 1229 class AllocateDoubleAlignFlag : public BitField<bool, 0, 1> {};
(...skipping 24 matching lines...) Expand all
1244 inline bool Runtime::AtomicIsLockFree(uint32_t size) { 1254 inline bool Runtime::AtomicIsLockFree(uint32_t size) {
1245 return size == 1 || size == 2 || size == 4; 1255 return size == 1 || size == 2 || size == 4;
1246 } 1256 }
1247 1257
1248 #endif 1258 #endif
1249 1259
1250 } // namespace internal 1260 } // namespace internal
1251 } // namespace v8 1261 } // namespace v8
1252 1262
1253 #endif // V8_RUNTIME_RUNTIME_H_ 1263 #endif // V8_RUNTIME_RUNTIME_H_
OLDNEW
« no previous file with comments | « src/compiler/linkage.cc ('k') | src/runtime/runtime-classes.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698