[super speed] Ship --super-ic
Bug: v8:9237 Change-Id: I60b016617d468e6a04ef48998e59c80f58d16863 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2642245 Reviewed-by: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Commit-Queue: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#72246}
This commit is contained in:
parent
3f1177c5a0
commit
2ac866d9e1
@ -1386,7 +1386,7 @@ DEFINE_INT(max_valid_polymorphic_map_count, 4,
|
||||
DEFINE_BOOL(native_code_counters, DEBUG_BOOL,
|
||||
"generate extra code for manipulating stats counters")
|
||||
|
||||
DEFINE_BOOL(super_ic, false, "use an IC for super property loads")
|
||||
DEFINE_BOOL(super_ic, true, "use an IC for super property loads")
|
||||
|
||||
// objects.cc
|
||||
DEFINE_BOOL(thin_strings, true, "Enable ThinString support")
|
||||
|
@ -20,18 +20,14 @@ snippet: "
|
||||
test();
|
||||
})();
|
||||
"
|
||||
frame size: 5
|
||||
frame size: 1
|
||||
parameter count: 1
|
||||
bytecode array length: 27
|
||||
bytecode array length: 17
|
||||
bytecodes: [
|
||||
/* 104 S> */ B(LdaImmutableCurrentContextSlot), U8(2),
|
||||
B(Star), R(3),
|
||||
B(LdaConstant), U8(0),
|
||||
B(Star), R(4),
|
||||
B(Mov), R(this), R(2),
|
||||
/* 117 E> */ B(CallRuntime), U16(Runtime::kLoadFromSuper), R(2), U8(3),
|
||||
/* 117 E> */ B(LdaNamedPropertyFromSuper), R(this), U8(0), U8(1),
|
||||
B(Star), R(0),
|
||||
/* 117 E> */ B(CallAnyReceiver), R(0), R(this), U8(1), U8(1),
|
||||
/* 117 E> */ B(CallAnyReceiver), R(0), R(this), U8(1), U8(3),
|
||||
/* 126 E> */ B(AddSmi), I8(1), U8(0),
|
||||
/* 130 S> */ B(Return),
|
||||
]
|
||||
@ -58,7 +54,7 @@ snippet: "
|
||||
"
|
||||
frame size: 4
|
||||
parameter count: 1
|
||||
bytecode array length: 37
|
||||
bytecode array length: 27
|
||||
bytecodes: [
|
||||
/* 130 S> */ B(LdaImmutableCurrentContextSlot), U8(2),
|
||||
B(Star), R(1),
|
||||
@ -69,11 +65,7 @@ bytecodes: [
|
||||
B(Mov), R(this), R(0),
|
||||
/* 138 E> */ B(CallRuntime), U16(Runtime::kStoreToSuper), R(0), U8(4),
|
||||
/* 143 S> */ B(LdaImmutableCurrentContextSlot), U8(2),
|
||||
B(Star), R(1),
|
||||
B(LdaConstant), U8(0),
|
||||
B(Star), R(2),
|
||||
B(Mov), R(this), R(0),
|
||||
/* 156 E> */ B(CallRuntime), U16(Runtime::kLoadFromSuper), R(0), U8(3),
|
||||
/* 156 E> */ B(LdaNamedPropertyFromSuper), R(this), U8(0), U8(0),
|
||||
/* 158 S> */ B(Return),
|
||||
]
|
||||
constant pool: [
|
||||
|
@ -2592,10 +2592,6 @@ TEST(ClassDeclarations) {
|
||||
}
|
||||
|
||||
TEST(ClassAndSuperClass) {
|
||||
// Different bytecodes are generated with and without --future temporarily,
|
||||
// see crbug.com/v8/9237 . TODO(marja): remove this hack once --super-ic is on
|
||||
// by default.
|
||||
FLAG_super_ic = false;
|
||||
InitializedIgnitionHandleScope scope;
|
||||
BytecodeExpectationsPrinter printer(CcTest::isolate());
|
||||
printer.set_wrap(false);
|
||||
|
Loading…
Reference in New Issue
Block a user