| 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: [
|
| +]
|
| +
|
|
|