Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nodejs/node.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'deps/v8/src/compiler/js-create-lowering.h')
-rw-r--r--deps/v8/src/compiler/js-create-lowering.h28
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_;
};