diff options
Diffstat (limited to 'deps/v8/src/compiler/js-create-lowering.h')
-rw-r--r-- | deps/v8/src/compiler/js-create-lowering.h | 28 |
1 files changed, 17 insertions, 11 deletions
diff --git a/deps/v8/src/compiler/js-create-lowering.h b/deps/v8/src/compiler/js-create-lowering.h index 667298c2388..151be1b35cb 100644 --- a/deps/v8/src/compiler/js-create-lowering.h +++ b/deps/v8/src/compiler/js-create-lowering.h @@ -26,14 +26,14 @@ class JSGraph; class JSOperatorBuilder; class MachineOperatorBuilder; class SimplifiedOperatorBuilder; - +class SlackTrackingPrediction; // Lowers JSCreate-level operators to fast (inline) allocations. class V8_EXPORT_PRIVATE JSCreateLowering final : public NON_EXPORTED_BASE(AdvancedReducer) { public: JSCreateLowering(Editor* editor, CompilationDependencies* dependencies, - JSGraph* jsgraph, const JSHeapBroker* js_heap_broker, + JSGraph* jsgraph, JSHeapBroker* js_heap_broker, Handle<Context> native_context, Zone* zone) : AdvancedReducer(editor), dependencies_(dependencies), @@ -68,12 +68,17 @@ class V8_EXPORT_PRIVATE JSCreateLowering final Reduction ReduceJSCreateCatchContext(Node* node); Reduction ReduceJSCreateBlockContext(Node* node); Reduction ReduceJSCreateGeneratorObject(Node* node); - Reduction ReduceNewArray(Node* node, Node* length, Handle<Map> initial_map, - PretenureFlag pretenure); - Reduction ReduceNewArray(Node* node, Node* length, int capacity, - Handle<Map> initial_map, PretenureFlag pretenure); - Reduction ReduceNewArray(Node* node, std::vector<Node*> values, - Handle<Map> initial_map, PretenureFlag pretenure); + Reduction ReduceNewArray( + Node* node, Node* length, MapRef initial_map, PretenureFlag pretenure, + const SlackTrackingPrediction& slack_tracking_prediction); + Reduction ReduceNewArray( + Node* node, Node* length, int capacity, MapRef initial_map, + PretenureFlag pretenure, + const SlackTrackingPrediction& slack_tracking_prediction); + Reduction ReduceNewArray( + Node* node, std::vector<Node*> values, MapRef initial_map, + PretenureFlag pretenure, + const SlackTrackingPrediction& slack_tracking_prediction); Reduction ReduceJSCreateObject(Node* node); Node* AllocateArguments(Node* effect, Node* control, Node* frame_state); @@ -104,7 +109,8 @@ class V8_EXPORT_PRIVATE JSCreateLowering final Node* AllocateLiteralRegExp(Node* effect, Node* control, JSRegExpRef boilerplate); - Reduction ReduceNewArrayToStubCall(Node* node, Handle<AllocationSite> site); + Reduction ReduceNewArrayToStubCall(Node* node, + base::Optional<AllocationSiteRef> site); Factory* factory() const; Graph* graph() const; @@ -115,12 +121,12 @@ class V8_EXPORT_PRIVATE JSCreateLowering final CommonOperatorBuilder* common() const; SimplifiedOperatorBuilder* simplified() const; CompilationDependencies* dependencies() const { return dependencies_; } - const JSHeapBroker* js_heap_broker() const { return js_heap_broker_; } + JSHeapBroker* js_heap_broker() const { return js_heap_broker_; } Zone* zone() const { return zone_; } CompilationDependencies* const dependencies_; JSGraph* const jsgraph_; - const JSHeapBroker* const js_heap_broker_; + JSHeapBroker* const js_heap_broker_; Handle<Context> const native_context_; Zone* const zone_; }; |