diff options
author | Michaël Zasso <targos@protonmail.com> | 2017-02-14 11:27:26 +0100 |
---|---|---|
committer | Michaël Zasso <targos@protonmail.com> | 2017-02-22 15:55:42 +0100 |
commit | 7a77daf24344db7942e34c962b0f1ee729ab7af5 (patch) | |
tree | e7cbe7bf4e2f4b802a8f5bc18336c546cd6a0d7f /deps/v8/src/compiler/instruction-selector.h | |
parent | 5f08871ee93ea739148cc49e0f7679e33c70295a (diff) | |
download | node-new-7a77daf24344db7942e34c962b0f1ee729ab7af5.tar.gz |
deps: update V8 to 5.6.326.55
PR-URL: https://github.com/nodejs/node/pull/10992
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Diffstat (limited to 'deps/v8/src/compiler/instruction-selector.h')
-rw-r--r-- | deps/v8/src/compiler/instruction-selector.h | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/deps/v8/src/compiler/instruction-selector.h b/deps/v8/src/compiler/instruction-selector.h index 2981f90a1c..65ba8f7c71 100644 --- a/deps/v8/src/compiler/instruction-selector.h +++ b/deps/v8/src/compiler/instruction-selector.h @@ -12,6 +12,7 @@ #include "src/compiler/instruction.h" #include "src/compiler/machine-operator.h" #include "src/compiler/node.h" +#include "src/globals.h" #include "src/zone/zone-containers.h" namespace v8 { @@ -42,7 +43,7 @@ class PushParameter { }; // Instruction selection generates an InstructionSequence for a given Schedule. -class InstructionSelector final { +class V8_EXPORT_PRIVATE InstructionSelector final { public: // Forward declarations. class Features; @@ -110,6 +111,9 @@ class InstructionSelector final { // =========================================================================== Instruction* EmitDeoptimize(InstructionCode opcode, InstructionOperand output, + InstructionOperand a, DeoptimizeReason reason, + Node* frame_state); + Instruction* EmitDeoptimize(InstructionCode opcode, InstructionOperand output, InstructionOperand a, InstructionOperand b, DeoptimizeReason reason, Node* frame_state); Instruction* EmitDeoptimize(InstructionCode opcode, size_t output_count, @@ -204,6 +208,8 @@ class InstructionSelector final { // to the roots register, i.e. if both a root register is available for this // compilation unit and the serializer is disabled. bool CanAddressRelativeToRootsRegister() const; + // Check if we can use the roots register to access GC roots. + bool CanUseRootsRegister() const; Isolate* isolate() const { return sequence()->isolate(); } @@ -344,6 +350,8 @@ class InstructionSelector final { } bool instruction_selection_failed() { return instruction_selection_failed_; } + void MarkPairProjectionsAsWord32(Node* node); + // =========================================================================== Zone* const zone_; |