summaryrefslogtreecommitdiff
path: root/deps/v8/src/interpreter/bytecode-array-builder.h
diff options
context:
space:
mode:
authorMichaël Zasso <targos@protonmail.com>2017-10-18 15:03:02 -0700
committerMichaël Zasso <targos@protonmail.com>2017-10-18 17:01:41 -0700
commit3d1b3df9486c0e7708065257f7311902f6b7b366 (patch)
treecb051bdeaead11e06dcd97725783e0f113afb1bf /deps/v8/src/interpreter/bytecode-array-builder.h
parente2cddbb8ccdb7b3c4a40c8acc630f68703bc77b5 (diff)
downloadnode-new-3d1b3df9486c0e7708065257f7311902f6b7b366.tar.gz
deps: update V8 to 6.2.414.32
PR-URL: https://github.com/nodejs/node/pull/15362 Reviewed-By: Myles Borins <myles.borins@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Diffstat (limited to 'deps/v8/src/interpreter/bytecode-array-builder.h')
-rw-r--r--deps/v8/src/interpreter/bytecode-array-builder.h23
1 files changed, 10 insertions, 13 deletions
diff --git a/deps/v8/src/interpreter/bytecode-array-builder.h b/deps/v8/src/interpreter/bytecode-array-builder.h
index b82d0e28a3..664599b907 100644
--- a/deps/v8/src/interpreter/bytecode-array-builder.h
+++ b/deps/v8/src/interpreter/bytecode-array-builder.h
@@ -79,6 +79,7 @@ class V8_EXPORT_PRIVATE BytecodeArrayBuilder final
BytecodeArrayBuilder& LoadTheHole();
BytecodeArrayBuilder& LoadTrue();
BytecodeArrayBuilder& LoadFalse();
+ BytecodeArrayBuilder& LoadBoolean(bool value);
// Global loads to the accumulator and stores from the accumulator.
BytecodeArrayBuilder& LoadGlobal(const AstRawString* name, int feedback_slot,
@@ -220,9 +221,11 @@ class V8_EXPORT_PRIVATE BytecodeArrayBuilder final
int literal_index, int flags);
BytecodeArrayBuilder& CreateArrayLiteral(size_t constant_elements_entry,
int literal_index, int flags);
+ BytecodeArrayBuilder& CreateEmptyArrayLiteral(int literal_index);
BytecodeArrayBuilder& CreateObjectLiteral(size_t constant_properties_entry,
int literal_index, int flags,
Register output);
+ BytecodeArrayBuilder& CreateEmptyObjectLiteral();
// Push the context in accumulator as the new context, and store in register
// |context|.
@@ -264,7 +267,8 @@ class V8_EXPORT_PRIVATE BytecodeArrayBuilder final
// Call a JS function. The JSFunction or Callable to be called should be in
// |callable|, the receiver in |args[0]| and the arguments in |args[1]|
// onwards. The final argument must be a spread.
- BytecodeArrayBuilder& CallWithSpread(Register callable, RegisterList args);
+ BytecodeArrayBuilder& CallWithSpread(Register callable, RegisterList args,
+ int feedback_slot);
// Call the Construct operator. The accumulator holds the |new_target|.
// The |constructor| is in a register and arguments are in |args|.
@@ -275,7 +279,8 @@ class V8_EXPORT_PRIVATE BytecodeArrayBuilder final
// the |new_target|. The |constructor| is in a register and arguments are in
// |args|. The final argument must be a spread.
BytecodeArrayBuilder& ConstructWithSpread(Register constructor,
- RegisterList args);
+ RegisterList args,
+ int feedback_slot);
// Call the runtime function with |function_id| and arguments |args|.
BytecodeArrayBuilder& CallRuntime(Runtime::FunctionId function_id,
@@ -348,13 +353,6 @@ class V8_EXPORT_PRIVATE BytecodeArrayBuilder final
BytecodeArrayBuilder& ToName(Register out);
BytecodeArrayBuilder& ToNumber(Register out, int feedback_slot);
- // Converts accumulator to a primitive and then to a string, and stores result
- // in register |out|.
- BytecodeArrayBuilder& ToPrimitiveToString(Register out, int feedback_slot);
- // Concatenate all the string values in |operand_registers| into a string
- // and store result in the accumulator.
- BytecodeArrayBuilder& StringConcat(RegisterList operand_registers);
-
// Flow Control.
BytecodeArrayBuilder& Bind(BytecodeLabel* label);
BytecodeArrayBuilder& Bind(const BytecodeLabel& target, BytecodeLabel* label);
@@ -408,7 +406,8 @@ class V8_EXPORT_PRIVATE BytecodeArrayBuilder final
// Generators.
BytecodeArrayBuilder& SuspendGenerator(Register generator,
- RegisterList registers);
+ RegisterList registers,
+ int suspend_id);
BytecodeArrayBuilder& RestoreGeneratorState(Register generator);
BytecodeArrayBuilder& RestoreGeneratorRegisters(Register generator,
RegisterList registers);
@@ -533,7 +532,7 @@ class V8_EXPORT_PRIVATE BytecodeArrayBuilder final
void WriteSwitch(BytecodeNode* node, BytecodeJumpTable* label);
// Not implemented as the illegal bytecode is used inside internally
- // to indicate a bytecode field is not valid or an error has occured
+ // to indicate a bytecode field is not valid or an error has occurred
// during bytecode generation.
BytecodeArrayBuilder& Illegal();
@@ -569,8 +568,6 @@ class V8_EXPORT_PRIVATE BytecodeArrayBuilder final
BytecodeSourceInfo latest_source_info_;
BytecodeSourceInfo deferred_source_info_;
- static int const kNoFeedbackSlot = 0;
-
DISALLOW_COPY_AND_ASSIGN(BytecodeArrayBuilder);
};