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

Side by Side Diff: test/cctest/interpreter/test-bytecode-generator.cc

Issue 1690913002: [interpreter] Deprecate DeleteLookupSlot bytecode. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 4 years, 10 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
OLDNEW
1 // Copyright 2015 the V8 project authors. All rights reserved. 1 // Copyright 2015 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 #include "src/v8.h" 5 #include "src/v8.h"
6 6
7 #include "src/compiler.h" 7 #include "src/compiler.h"
8 #include "src/interpreter/bytecode-array-iterator.h" 8 #include "src/interpreter/bytecode-array-iterator.h"
9 #include "src/interpreter/bytecode-generator.h" 9 #include "src/interpreter/bytecode-generator.h"
10 #include "src/interpreter/interpreter.h" 10 #include "src/interpreter/interpreter.h"
(...skipping 8010 matching lines...) Expand 10 before | Expand all | Expand 10 after
8021 "function f1() {" 8021 "function f1() {"
8022 " var y;" 8022 " var y;"
8023 " eval(\"function t() {"; 8023 " eval(\"function t() {";
8024 const char* function_epilogue = " }; f = t; f();\");" 8024 const char* function_epilogue = " }; f = t; f();\");"
8025 "}" 8025 "}"
8026 "f1();"; 8026 "f1();";
8027 8027
8028 // clang-format off 8028 // clang-format off
8029 ExpectedSnippet<const char*> snippets[] = { 8029 ExpectedSnippet<const char*> snippets[] = {
8030 {"delete x;", 8030 {"delete x;",
8031 0 * kPointerSize, 8031 1 * kPointerSize,
8032 1, 8032 1,
8033 6, 8033 12,
8034 { 8034 {
8035 B(StackCheck), // 8035 B(StackCheck), //
8036 B(LdaConstant), U8(0), // 8036 B(LdaConstant), U8(0), //
8037 B(DeleteLookupSlot), // 8037 B(Star), R(0), //
8038 B(LdaUndefined), // 8038 B(CallRuntime), U16(Runtime::kDeleteLookupSlot), R(0), U8(1), //
8039 B(Return) // 8039 B(LdaUndefined), //
8040 B(Return) //
8040 }, 8041 },
8041 1, 8042 1,
8042 {"x"}}, 8043 {"x"}},
8043 {"return delete y;", 8044 {"return delete y;",
8044 0 * kPointerSize, 8045 0 * kPointerSize,
8045 1, 8046 1,
8046 3, 8047 3,
8047 { 8048 {
8048 B(StackCheck), // 8049 B(StackCheck), //
8049 B(LdaFalse), // 8050 B(LdaFalse), //
8050 B(Return) // 8051 B(Return) //
8051 }, 8052 },
8052 0}, 8053 0},
8053 {"return delete z;", 8054 {"return delete z;",
8054 0 * kPointerSize, 8055 1 * kPointerSize,
8055 1, 8056 1,
8056 5, 8057 11,
8057 { 8058 {
8058 B(StackCheck), // 8059 B(StackCheck), //
8059 B(LdaConstant), U8(0), // 8060 B(LdaConstant), U8(0), //
8060 B(DeleteLookupSlot), // 8061 B(Star), R(0), //
8061 B(Return) // 8062 B(CallRuntime), U16(Runtime::kDeleteLookupSlot), R(0), U8(1), //
8063 B(Return) //
8062 }, 8064 },
8063 1, 8065 1,
8064 {"z"}}, 8066 {"z"}},
8065 }; 8067 };
8066 // clang-format on 8068 // clang-format on
8067 8069
8068 for (size_t i = 0; i < arraysize(snippets); i++) { 8070 for (size_t i = 0; i < arraysize(snippets); i++) {
8069 std::string script = std::string(function_prologue) + 8071 std::string script = std::string(function_prologue) +
8070 std::string(snippets[i].code_snippet) + 8072 std::string(snippets[i].code_snippet) +
8071 std::string(function_epilogue); 8073 std::string(function_epilogue);
(...skipping 1154 matching lines...) Expand 10 before | Expand all | Expand 10 after
9226 for (size_t i = 0; i < arraysize(snippets); i++) { 9228 for (size_t i = 0; i < arraysize(snippets); i++) {
9227 Handle<BytecodeArray> bytecode_array = 9229 Handle<BytecodeArray> bytecode_array =
9228 helper.MakeBytecodeForFunctionBody(snippets[i].code_snippet); 9230 helper.MakeBytecodeForFunctionBody(snippets[i].code_snippet);
9229 CheckBytecodeArrayEqual(snippets[i], bytecode_array); 9231 CheckBytecodeArrayEqual(snippets[i], bytecode_array);
9230 } 9232 }
9231 } 9233 }
9232 9234
9233 } // namespace interpreter 9235 } // namespace interpreter
9234 } // namespace internal 9236 } // namespace internal
9235 } // namespace v8 9237 } // namespace v8
OLDNEW
« no previous file with comments | « src/interpreter/interpreter.cc ('k') | test/unittests/interpreter/bytecode-array-builder-unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698