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

Unified Diff: test/cctest/interpreter/IfConditions.golden

Issue 1717293002: [Interpreter] Refactor bytecode generator test suite. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: std::vector instead of initializer_list, golden path as constant. 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 side-by-side diff with in-line comments
Download patch
Index: test/cctest/interpreter/IfConditions.golden
diff --git a/test/cctest/interpreter/IfConditions.golden b/test/cctest/interpreter/IfConditions.golden
new file mode 100644
index 0000000000000000000000000000000000000000..195c8bfecdaa2f9e47b31f75058aa14175e45837
--- /dev/null
+++ b/test/cctest/interpreter/IfConditions.golden
@@ -0,0 +1,705 @@
+#
+# Autogenerated by generate-bytecode-expectations
+#
+
+---
+pool type: number
+execute: yes
+wrap: no
+test function name: f
+
+---
+snippet: "
+ function f() { if (0) { return 1; } else { return -1; } } f()
+"
+frame size: 0
+parameter count: 1
+bytecodes: [
+ B(StackCheck),
+ B(LdaSmi8), U8(-1),
+ B(Return),
+]
+constant pool: [
+]
+handlers: [
+]
+
+---
+snippet: "
+ function f() { if ('lucky') { return 1; } else { return -1; } } f();
+"
+frame size: 0
+parameter count: 1
+bytecodes: [
+ B(StackCheck),
+ B(LdaSmi8), U8(1),
+ B(Return),
+]
+constant pool: [
+]
+handlers: [
+]
+
+---
+snippet: "
+ function f() { if (false) { return 1; } else { return -1; } } f();
+"
+frame size: 0
+parameter count: 1
+bytecodes: [
+ B(StackCheck),
+ B(LdaSmi8), U8(-1),
+ B(Return),
+]
+constant pool: [
+]
+handlers: [
+]
+
+---
+snippet: "
+ function f() { if (false) { return 1; } } f();
+"
+frame size: 0
+parameter count: 1
+bytecodes: [
+ B(StackCheck),
+ B(LdaUndefined),
+ B(Return),
+]
+constant pool: [
+]
+handlers: [
+]
+
+---
+snippet: "
+ function f() { var a = 1; if (a) { a += 1; } else { return 2; } } f();
+"
+frame size: 2 # in multiples of sizeof(void*)
+parameter count: 1
+bytecodes: [
+ B(StackCheck),
+ B(LdaSmi8), U8(1),
+ B(Star), R(0),
+ B(JumpIfToBooleanFalse), U8(14),
+ B(Ldar), R(0),
+ B(Star), R(1),
+ B(LdaSmi8), U8(1),
+ B(Add), R(1),
+ B(Star), R(0),
+ B(Jump), U8(5),
+ B(LdaSmi8), U8(2),
+ B(Return),
+ B(LdaUndefined),
+ B(Return),
+]
+constant pool: [
+]
+handlers: [
+]
+
+---
+snippet: "
+ function f(a) { if (a <= 0) { return 200; } else { return -200; } }f(99);
+"
+frame size: 1 # in multiples of sizeof(void*)
+parameter count: 2
+bytecodes: [
+ B(StackCheck),
+ B(Ldar), R(arg0),
+ B(Star), R(0),
+ B(LdaZero),
+ B(TestLessThanOrEqual), R(0),
+ B(JumpIfFalse), U8(5),
+ B(LdaConstant), U8(0),
+ B(Return),
+ B(LdaConstant), U8(1),
+ B(Return),
+ B(LdaUndefined),
+ B(Return),
+]
+constant pool: [
+ 200,
+ -200,
+]
+handlers: [
+]
+
+---
+snippet: "
+ function f(a, b) { if (a in b) { return 200; } }f('prop', { prop: 'yes'});
+"
+frame size: 1 # in multiples of sizeof(void*)
+parameter count: 3
+bytecodes: [
+ B(StackCheck),
+ B(Ldar), R(arg0),
+ B(Star), R(0),
+ B(Ldar), R(arg1),
+ B(TestIn), R(0),
+ B(JumpIfFalse), U8(5),
+ B(LdaConstant), U8(0),
+ B(Return),
+ B(LdaUndefined),
+ B(Return),
+]
+constant pool: [
+ 200,
+]
+handlers: [
+]
+
+---
+snippet: "
+ function f(z) { var a = 0; var b = 0; if (a === 0.01) { b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ return 200; } else { return -200; } } f(0.001)
+"
+frame size: 3 # in multiples of sizeof(void*)
+parameter count: 2
+bytecodes: [
+ B(StackCheck),
+ B(LdaZero),
+ B(Star), R(0),
+ B(LdaZero),
+ B(Star), R(1),
+ B(Ldar), R(0),
+ B(Star), R(2),
+ B(LdaConstant), U8(0),
+ B(TestEqualStrict), R(2),
+ B(JumpIfFalseConstant), U8(2),
+ B(Ldar), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(LdaConstant), U8(1),
+ B(Return),
+ B(LdaConstant), U8(3),
+ B(Return),
+ B(LdaUndefined),
+ B(Return),
+]
+constant pool: [
+ 0.01,
+ 200,
+ 263,
+ -200,
+]
+handlers: [
+]
+
+---
+snippet: "
+ function f() { var a = 0; var b = 0; if (a) { b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ b = a; a = b;
+ return 200; } else { return -200; } } f()
+"
+frame size: 2 # in multiples of sizeof(void*)
+parameter count: 1
+bytecodes: [
+ B(StackCheck),
+ B(LdaZero),
+ B(Star), R(0),
+ B(LdaZero),
+ B(Star), R(1),
+ B(Ldar), R(0),
+ B(JumpIfToBooleanFalseConstant), U8(1),
+ B(Ldar), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(Star), R(1),
+ B(Star), R(0),
+ B(LdaConstant), U8(0),
+ B(Return),
+ B(LdaConstant), U8(2),
+ B(Return),
+ B(LdaUndefined),
+ B(Return),
+]
+constant pool: [
+ 200,
+ 263,
+ -200,
+]
+handlers: [
+]
+
+---
+snippet: "
+ function f(a, b) {
+ if (a == b) { return 1; }
+ if (a === b) { return 1; }
+ if (a < b) { return 1; }
+ if (a > b) { return 1; }
+ if (a <= b) { return 1; }
+ if (a >= b) { return 1; }
+ if (a in b) { return 1; }
+ if (a instanceof b) { return 1; }
+ return 0;
+ } f(1, 1);
+"
+frame size: 1 # in multiples of sizeof(void*)
+parameter count: 3
+bytecodes: [
+ B(StackCheck),
+ B(Ldar), R(arg0),
+ B(Star), R(0),
+ B(Ldar), R(arg1),
+ B(TestEqual), R(0),
+ B(JumpIfFalse), U8(5),
+ B(LdaSmi8), U8(1),
+ B(Return),
+ B(Ldar), R(arg0),
+ B(Star), R(0),
+ B(Ldar), R(arg1),
+ B(TestEqualStrict), R(0),
+ B(JumpIfFalse), U8(5),
+ B(LdaSmi8), U8(1),
+ B(Return),
+ B(Ldar), R(arg0),
+ B(Star), R(0),
+ B(Ldar), R(arg1),
+ B(TestLessThan), R(0),
+ B(JumpIfFalse), U8(5),
+ B(LdaSmi8), U8(1),
+ B(Return),
+ B(Ldar), R(arg0),
+ B(Star), R(0),
+ B(Ldar), R(arg1),
+ B(TestGreaterThan), R(0),
+ B(JumpIfFalse), U8(5),
+ B(LdaSmi8), U8(1),
+ B(Return),
+ B(Ldar), R(arg0),
+ B(Star), R(0),
+ B(Ldar), R(arg1),
+ B(TestLessThanOrEqual), R(0),
+ B(JumpIfFalse), U8(5),
+ B(LdaSmi8), U8(1),
+ B(Return),
+ B(Ldar), R(arg0),
+ B(Star), R(0),
+ B(Ldar), R(arg1),
+ B(TestGreaterThanOrEqual), R(0),
+ B(JumpIfFalse), U8(5),
+ B(LdaSmi8), U8(1),
+ B(Return),
+ B(Ldar), R(arg0),
+ B(Star), R(0),
+ B(Ldar), R(arg1),
+ B(TestIn), R(0),
+ B(JumpIfFalse), U8(5),
+ B(LdaSmi8), U8(1),
+ B(Return),
+ B(Ldar), R(arg0),
+ B(Star), R(0),
+ B(Ldar), R(arg1),
+ B(TestInstanceOf), R(0),
+ B(JumpIfFalse), U8(5),
+ B(LdaSmi8), U8(1),
+ B(Return),
+ B(LdaZero),
+ B(Return),
+]
+constant pool: [
+]
+handlers: [
+]
+
+---
+snippet: "
+ function f() { var a = 0; if (a) { return 20;} else { return -20;}};f();
+"
+frame size: 1 # in multiples of sizeof(void*)
+parameter count: 1
+bytecodes: [
+ B(StackCheck),
+ B(LdaZero),
+ B(Star), R(0),
+ B(JumpIfToBooleanFalse), U8(5),
+ B(LdaSmi8), U8(20),
+ B(Return),
+ B(LdaSmi8), U8(-20),
+ B(Return),
+ B(LdaUndefined),
+ B(Return),
+]
+constant pool: [
+]
+handlers: [
+]
+

Powered by Google App Engine
This is Rietveld 408576698