Created
August 20, 2015 00:10
-
-
Save mattzeunert/baea04b55ae16042aea6 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
begin_compilation | |
name "add" | |
method "add:0" | |
date 1440029178000 | |
end_compilation | |
begin_cfg | |
name "H_Assign dominators" | |
begin_block | |
name "B0" | |
from_bci -1 | |
to_bci -1 | |
predecessors | |
successors "B1" | |
xhandlers | |
flags | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v0 BlockEntry type:Tagged <|@ | |
0 0 t12 Constant 0x333080a1 <the hole> [map 0x29e08211] <|@ | |
0 0 t6 Constant 0x33308091 <undefined> [map 0x29e080f9] <|@ | |
0 4 t1 Context type:Tagged <|@ | |
0 2 t2 Parameter 0 type:Tagged <|@ | |
0 3 t3 Parameter 1 type:Tagged <|@ | |
0 3 t4 Parameter 2 type:Tagged <|@ | |
0 0 t5 ArgumentsObject t2 t3 t4 type:Tagged <|@ | |
0 0 v7 Simulate id=2 var[3] = t1, var[2] = t4, var[1] = t3, var[0] = t2 type:Tagged <|@ | |
0 0 v8 Goto B1 type:Tagged <|@ | |
end_HIR | |
end_block | |
begin_block | |
name "B1" | |
from_bci -1 | |
to_bci -1 | |
predecessors "B0" | |
successors | |
xhandlers | |
flags | |
dominator "B0" | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v9 BlockEntry type:Tagged <|@ | |
0 0 v10 Simulate id=3 type:Tagged <|@ | |
0 0 v11 StackCheck t1 changes[NewSpacePromotion] type:Tagged <|@ | |
0 2 v13 Add t3 t4 ! changes[*] type:TaggedNumber <|@ | |
0 0 v14 Simulate id=4 push v13 type:Tagged <|@ | |
0 1 s15 Constant 2 type:Smi <|@ | |
0 0 v16 Return v13 (pop s15 values) type:Tagged <|@ | |
end_HIR | |
end_block | |
end_cfg | |
begin_cfg | |
name "H_Environment liveness analysis" | |
begin_block | |
name "B0" | |
from_bci -1 | |
to_bci -1 | |
predecessors | |
successors "B1" | |
xhandlers | |
flags | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v0 BlockEntry type:Tagged <|@ | |
0 0 s17 Constant 0 type:Smi <|@ | |
0 0 t12 Constant 0x333080a1 <the hole> [map 0x29e08211] <|@ | |
0 0 t6 Constant 0x33308091 <undefined> [map 0x29e080f9] <|@ | |
0 4 t1 Context type:Tagged <|@ | |
0 2 t2 Parameter 0 type:Tagged <|@ | |
0 3 t3 Parameter 1 type:Tagged <|@ | |
0 3 t4 Parameter 2 type:Tagged <|@ | |
0 0 t5 ArgumentsObject t2 t3 t4 type:Tagged <|@ | |
0 0 v7 Simulate id=2 var[3] = t1, var[2] = t4, var[1] = t3, var[0] = t2 type:Tagged <|@ | |
0 0 v8 Goto B1 type:Tagged <|@ | |
end_HIR | |
end_block | |
begin_block | |
name "B1" | |
from_bci -1 | |
to_bci -1 | |
predecessors "B0" | |
successors | |
xhandlers | |
flags | |
dominator "B0" | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v9 BlockEntry type:Tagged <|@ | |
0 0 v10 Simulate id=3 type:Tagged <|@ | |
0 0 v11 StackCheck t1 changes[NewSpacePromotion] type:Tagged <|@ | |
0 2 v13 Add t3 t4 ! changes[*] type:TaggedNumber <|@ | |
0 0 v14 Simulate id=4 push v13 type:Tagged <|@ | |
0 1 s15 Constant 2 type:Smi <|@ | |
0 0 v16 Return v13 (pop s15 values) type:Tagged <|@ | |
end_HIR | |
end_block | |
end_cfg | |
begin_cfg | |
name "H_Redundant phi elimination" | |
begin_block | |
name "B0" | |
from_bci -1 | |
to_bci -1 | |
predecessors | |
successors "B1" | |
xhandlers | |
flags | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v0 BlockEntry type:Tagged <|@ | |
0 0 s17 Constant 0 type:Smi <|@ | |
0 0 t12 Constant 0x333080a1 <the hole> [map 0x29e08211] <|@ | |
0 0 t6 Constant 0x33308091 <undefined> [map 0x29e080f9] <|@ | |
0 4 t1 Context type:Tagged <|@ | |
0 2 t2 Parameter 0 type:Tagged <|@ | |
0 3 t3 Parameter 1 type:Tagged <|@ | |
0 3 t4 Parameter 2 type:Tagged <|@ | |
0 0 t5 ArgumentsObject t2 t3 t4 type:Tagged <|@ | |
0 0 v7 Simulate id=2 var[3] = t1, var[2] = t4, var[1] = t3, var[0] = t2 type:Tagged <|@ | |
0 0 v8 Goto B1 type:Tagged <|@ | |
end_HIR | |
end_block | |
begin_block | |
name "B1" | |
from_bci -1 | |
to_bci -1 | |
predecessors "B0" | |
successors | |
xhandlers | |
flags | |
dominator "B0" | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v9 BlockEntry type:Tagged <|@ | |
0 0 v10 Simulate id=3 type:Tagged <|@ | |
0 0 v11 StackCheck t1 changes[NewSpacePromotion] type:Tagged <|@ | |
0 2 v13 Add t3 t4 ! changes[*] type:TaggedNumber <|@ | |
0 0 v14 Simulate id=4 push v13 type:Tagged <|@ | |
0 1 s15 Constant 2 type:Smi <|@ | |
0 0 v16 Return v13 (pop s15 values) type:Tagged <|@ | |
end_HIR | |
end_block | |
end_cfg | |
begin_cfg | |
name "H_Mark unreachable blocks" | |
begin_block | |
name "B0" | |
from_bci -1 | |
to_bci -1 | |
predecessors | |
successors "B1" | |
xhandlers | |
flags | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v0 BlockEntry type:Tagged <|@ | |
0 0 s17 Constant 0 type:Smi <|@ | |
0 0 t12 Constant 0x333080a1 <the hole> [map 0x29e08211] <|@ | |
0 0 t6 Constant 0x33308091 <undefined> [map 0x29e080f9] <|@ | |
0 4 t1 Context type:Tagged <|@ | |
0 2 t2 Parameter 0 type:Tagged <|@ | |
0 3 t3 Parameter 1 type:Tagged <|@ | |
0 3 t4 Parameter 2 type:Tagged <|@ | |
0 0 t5 ArgumentsObject t2 t3 t4 type:Tagged <|@ | |
0 0 v7 Simulate id=2 var[3] = t1, var[2] = t4, var[1] = t3, var[0] = t2 type:Tagged <|@ | |
0 0 v8 Goto B1 type:Tagged <|@ | |
end_HIR | |
end_block | |
begin_block | |
name "B1" | |
from_bci -1 | |
to_bci -1 | |
predecessors "B0" | |
successors | |
xhandlers | |
flags | |
dominator "B0" | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v9 BlockEntry type:Tagged <|@ | |
0 0 v10 Simulate id=3 type:Tagged <|@ | |
0 0 v11 StackCheck t1 changes[NewSpacePromotion] type:Tagged <|@ | |
0 2 v13 Add t3 t4 ! changes[*] type:TaggedNumber <|@ | |
0 0 v14 Simulate id=4 push v13 type:Tagged <|@ | |
0 1 s15 Constant 2 type:Smi <|@ | |
0 0 v16 Return v13 (pop s15 values) type:Tagged <|@ | |
end_HIR | |
end_block | |
end_cfg | |
begin_cfg | |
name "H_Dead code elimination" | |
begin_block | |
name "B0" | |
from_bci -1 | |
to_bci -1 | |
predecessors | |
successors "B1" | |
xhandlers | |
flags | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v0 BlockEntry type:Tagged <|@ | |
0 4 t1 Context type:Tagged <|@ | |
0 2 t2 Parameter 0 type:Tagged <|@ | |
0 3 t3 Parameter 1 type:Tagged <|@ | |
0 3 t4 Parameter 2 type:Tagged <|@ | |
0 0 t5 ArgumentsObject t2 t3 t4 type:Tagged <|@ | |
0 0 v7 Simulate id=2 var[3] = t1, var[2] = t4, var[1] = t3, var[0] = t2 type:Tagged <|@ | |
0 0 v8 Goto B1 type:Tagged <|@ | |
end_HIR | |
end_block | |
begin_block | |
name "B1" | |
from_bci -1 | |
to_bci -1 | |
predecessors "B0" | |
successors | |
xhandlers | |
flags | |
dominator "B0" | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v9 BlockEntry type:Tagged <|@ | |
0 0 v10 Simulate id=3 type:Tagged <|@ | |
0 0 v11 StackCheck t1 changes[NewSpacePromotion] type:Tagged <|@ | |
0 2 v13 Add t3 t4 ! changes[*] type:TaggedNumber <|@ | |
0 0 v14 Simulate id=4 push v13 type:Tagged <|@ | |
0 1 s15 Constant 2 type:Smi <|@ | |
0 0 v16 Return v13 (pop s15 values) type:Tagged <|@ | |
end_HIR | |
end_block | |
end_cfg | |
begin_cfg | |
name "H_Escape analysis" | |
begin_block | |
name "B0" | |
from_bci -1 | |
to_bci -1 | |
predecessors | |
successors "B1" | |
xhandlers | |
flags | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v0 BlockEntry type:Tagged <|@ | |
0 4 t1 Context type:Tagged <|@ | |
0 2 t2 Parameter 0 type:Tagged <|@ | |
0 3 t3 Parameter 1 type:Tagged <|@ | |
0 3 t4 Parameter 2 type:Tagged <|@ | |
0 0 t5 ArgumentsObject t2 t3 t4 type:Tagged <|@ | |
0 0 v7 Simulate id=2 var[3] = t1, var[2] = t4, var[1] = t3, var[0] = t2 type:Tagged <|@ | |
0 0 v8 Goto B1 type:Tagged <|@ | |
end_HIR | |
end_block | |
begin_block | |
name "B1" | |
from_bci -1 | |
to_bci -1 | |
predecessors "B0" | |
successors | |
xhandlers | |
flags | |
dominator "B0" | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v9 BlockEntry type:Tagged <|@ | |
0 0 v10 Simulate id=3 type:Tagged <|@ | |
0 0 v11 StackCheck t1 changes[NewSpacePromotion] type:Tagged <|@ | |
0 2 v13 Add t3 t4 ! changes[*] type:TaggedNumber <|@ | |
0 0 v14 Simulate id=4 push v13 type:Tagged <|@ | |
0 1 s15 Constant 2 type:Smi <|@ | |
0 0 v16 Return v13 (pop s15 values) type:Tagged <|@ | |
end_HIR | |
end_block | |
end_cfg | |
begin_cfg | |
name "H_Load elimination" | |
begin_block | |
name "B0" | |
from_bci -1 | |
to_bci -1 | |
predecessors | |
successors "B1" | |
xhandlers | |
flags | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v0 BlockEntry type:Tagged <|@ | |
0 4 t1 Context type:Tagged <|@ | |
0 2 t2 Parameter 0 type:Tagged <|@ | |
0 3 t3 Parameter 1 type:Tagged <|@ | |
0 3 t4 Parameter 2 type:Tagged <|@ | |
0 0 t5 ArgumentsObject t2 t3 t4 type:Tagged <|@ | |
0 0 v7 Simulate id=2 var[3] = t1, var[2] = t4, var[1] = t3, var[0] = t2 type:Tagged <|@ | |
0 0 v8 Goto B1 type:Tagged <|@ | |
end_HIR | |
end_block | |
begin_block | |
name "B1" | |
from_bci -1 | |
to_bci -1 | |
predecessors "B0" | |
successors | |
xhandlers | |
flags | |
dominator "B0" | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v9 BlockEntry type:Tagged <|@ | |
0 0 v10 Simulate id=3 type:Tagged <|@ | |
0 0 v11 StackCheck t1 changes[NewSpacePromotion] type:Tagged <|@ | |
0 2 v13 Add t3 t4 ! changes[*] type:TaggedNumber <|@ | |
0 0 v14 Simulate id=4 push v13 type:Tagged <|@ | |
0 1 s15 Constant 2 type:Smi <|@ | |
0 0 v16 Return v13 (pop s15 values) type:Tagged <|@ | |
end_HIR | |
end_block | |
end_cfg | |
begin_cfg | |
name "H_Infer representations" | |
begin_block | |
name "B0" | |
from_bci -1 | |
to_bci -1 | |
predecessors | |
successors "B1" | |
xhandlers | |
flags | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v0 BlockEntry type:Tagged <|@ | |
0 4 t1 Context type:Tagged <|@ | |
0 2 t2 Parameter 0 type:Tagged <|@ | |
0 3 t3 Parameter 1 type:Tagged <|@ | |
0 3 t4 Parameter 2 type:Tagged <|@ | |
0 0 t5 ArgumentsObject t2 t3 t4 type:Tagged <|@ | |
0 0 v7 Simulate id=2 var[3] = t1, var[2] = t4, var[1] = t3, var[0] = t2 type:Tagged <|@ | |
0 0 v8 Goto B1 type:Tagged <|@ | |
end_HIR | |
end_block | |
begin_block | |
name "B1" | |
from_bci -1 | |
to_bci -1 | |
predecessors "B0" | |
successors | |
xhandlers | |
flags | |
dominator "B0" | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v9 BlockEntry type:Tagged <|@ | |
0 0 v10 Simulate id=3 type:Tagged <|@ | |
0 0 v11 StackCheck t1 changes[NewSpacePromotion] type:Tagged <|@ | |
0 2 s13 Add t3 t4 ! type:TaggedNumber <|@ | |
0 0 v14 Simulate id=4 push s13 type:Tagged <|@ | |
0 1 s15 Constant 2 type:Smi <|@ | |
0 0 v16 Return s13 (pop s15 values) type:Tagged <|@ | |
end_HIR | |
end_block | |
end_cfg | |
begin_cfg | |
name "H_Merge removable simulates" | |
begin_block | |
name "B0" | |
from_bci -1 | |
to_bci -1 | |
predecessors | |
successors "B1" | |
xhandlers | |
flags | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v0 BlockEntry type:Tagged <|@ | |
0 4 t1 Context type:Tagged <|@ | |
0 2 t2 Parameter 0 type:Tagged <|@ | |
0 3 t3 Parameter 1 type:Tagged <|@ | |
0 3 t4 Parameter 2 type:Tagged <|@ | |
0 0 t5 ArgumentsObject t2 t3 t4 type:Tagged <|@ | |
0 0 v7 Simulate id=2 var[3] = t1, var[2] = t4, var[1] = t3, var[0] = t2 type:Tagged <|@ | |
0 0 v8 Goto B1 type:Tagged <|@ | |
end_HIR | |
end_block | |
begin_block | |
name "B1" | |
from_bci -1 | |
to_bci -1 | |
predecessors "B0" | |
successors | |
xhandlers | |
flags | |
dominator "B0" | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v9 BlockEntry type:Tagged <|@ | |
0 0 v10 Simulate id=3 type:Tagged <|@ | |
0 0 v11 StackCheck t1 changes[NewSpacePromotion] type:Tagged <|@ | |
0 1 s13 Add t3 t4 ! type:TaggedNumber <|@ | |
0 1 s15 Constant 2 type:Smi <|@ | |
0 0 v16 Return s13 (pop s15 values) type:Tagged <|@ | |
end_HIR | |
end_block | |
end_cfg | |
begin_cfg | |
name "H_Mark deoptimize on undefined" | |
begin_block | |
name "B0" | |
from_bci -1 | |
to_bci -1 | |
predecessors | |
successors "B1" | |
xhandlers | |
flags | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v0 BlockEntry type:Tagged <|@ | |
0 4 t1 Context type:Tagged <|@ | |
0 2 t2 Parameter 0 type:Tagged <|@ | |
0 3 t3 Parameter 1 type:Tagged <|@ | |
0 3 t4 Parameter 2 type:Tagged <|@ | |
0 0 t5 ArgumentsObject t2 t3 t4 type:Tagged <|@ | |
0 0 v7 Simulate id=2 var[3] = t1, var[2] = t4, var[1] = t3, var[0] = t2 type:Tagged <|@ | |
0 0 v8 Goto B1 type:Tagged <|@ | |
end_HIR | |
end_block | |
begin_block | |
name "B1" | |
from_bci -1 | |
to_bci -1 | |
predecessors "B0" | |
successors | |
xhandlers | |
flags | |
dominator "B0" | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v9 BlockEntry type:Tagged <|@ | |
0 0 v10 Simulate id=3 type:Tagged <|@ | |
0 0 v11 StackCheck t1 changes[NewSpacePromotion] type:Tagged <|@ | |
0 1 s13 Add t3 t4 ! type:TaggedNumber <|@ | |
0 1 s15 Constant 2 type:Smi <|@ | |
0 0 v16 Return s13 (pop s15 values) type:Tagged <|@ | |
end_HIR | |
end_block | |
end_cfg | |
begin_cfg | |
name "H_Representation changes" | |
begin_block | |
name "B0" | |
from_bci -1 | |
to_bci -1 | |
predecessors | |
successors "B1" | |
xhandlers | |
flags | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v0 BlockEntry type:Tagged <|@ | |
0 4 t1 Context type:Tagged <|@ | |
0 2 t2 Parameter 0 type:Tagged <|@ | |
0 3 t3 Parameter 1 type:Tagged <|@ | |
0 3 t4 Parameter 2 type:Tagged <|@ | |
0 0 t5 ArgumentsObject t2 t3 t4 type:Tagged <|@ | |
0 0 v7 Simulate id=2 var[3] = t1, var[2] = t4, var[1] = t3, var[0] = t2 type:Tagged <|@ | |
0 0 v8 Goto B1 type:Tagged <|@ | |
end_HIR | |
end_block | |
begin_block | |
name "B1" | |
from_bci -1 | |
to_bci -1 | |
predecessors "B0" | |
successors | |
xhandlers | |
flags | |
dominator "B0" | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v9 BlockEntry type:Tagged <|@ | |
0 0 v10 Simulate id=3 type:Tagged <|@ | |
0 0 v11 StackCheck t1 changes[NewSpacePromotion] type:Tagged <|@ | |
0 1 s18 Change t3 t to s type:TaggedNumber <|@ | |
0 1 s19 Change t4 t to s type:TaggedNumber <|@ | |
0 1 s13 Add s18 s19 ! type:TaggedNumber <|@ | |
0 1 s15 Constant 2 type:Smi <|@ | |
0 1 t20 Change s13 s to t <|@ | |
0 0 v16 Return t20 (pop s15 values) type:Tagged <|@ | |
end_HIR | |
end_block | |
end_cfg | |
begin_cfg | |
name "H_Inferring types" | |
begin_block | |
name "B0" | |
from_bci -1 | |
to_bci -1 | |
predecessors | |
successors "B1" | |
xhandlers | |
flags | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v0 BlockEntry type:Tagged <|@ | |
0 4 t1 Context type:Tagged <|@ | |
0 2 t2 Parameter 0 type:Tagged <|@ | |
0 3 t3 Parameter 1 type:Tagged <|@ | |
0 3 t4 Parameter 2 type:Tagged <|@ | |
0 0 t5 ArgumentsObject t2 t3 t4 type:Tagged <|@ | |
0 0 v7 Simulate id=2 var[3] = t1, var[2] = t4, var[1] = t3, var[0] = t2 type:Tagged <|@ | |
0 0 v8 Goto B1 type:Tagged <|@ | |
end_HIR | |
end_block | |
begin_block | |
name "B1" | |
from_bci -1 | |
to_bci -1 | |
predecessors "B0" | |
successors | |
xhandlers | |
flags | |
dominator "B0" | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v9 BlockEntry type:Tagged <|@ | |
0 0 v10 Simulate id=3 type:Tagged <|@ | |
0 0 v11 StackCheck t1 changes[NewSpacePromotion] type:Tagged <|@ | |
0 1 s18 Change t3 t to s type:TaggedNumber <|@ | |
0 1 s19 Change t4 t to s type:TaggedNumber <|@ | |
0 1 s13 Add s18 s19 ! type:TaggedNumber <|@ | |
0 1 s15 Constant 2 type:Smi <|@ | |
0 1 t20 Change s13 s to t <|@ | |
0 0 v16 Return t20 (pop s15 values) type:Tagged <|@ | |
end_HIR | |
end_block | |
end_cfg | |
begin_cfg | |
name "H_Compute safe UInt32 operations" | |
begin_block | |
name "B0" | |
from_bci -1 | |
to_bci -1 | |
predecessors | |
successors "B1" | |
xhandlers | |
flags | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v0 BlockEntry type:Tagged <|@ | |
0 4 t1 Context type:Tagged <|@ | |
0 2 t2 Parameter 0 type:Tagged <|@ | |
0 3 t3 Parameter 1 type:Tagged <|@ | |
0 3 t4 Parameter 2 type:Tagged <|@ | |
0 0 t5 ArgumentsObject t2 t3 t4 type:Tagged <|@ | |
0 0 v7 Simulate id=2 var[3] = t1, var[2] = t4, var[1] = t3, var[0] = t2 type:Tagged <|@ | |
0 0 v8 Goto B1 type:Tagged <|@ | |
end_HIR | |
end_block | |
begin_block | |
name "B1" | |
from_bci -1 | |
to_bci -1 | |
predecessors "B0" | |
successors | |
xhandlers | |
flags | |
dominator "B0" | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v9 BlockEntry type:Tagged <|@ | |
0 0 v10 Simulate id=3 type:Tagged <|@ | |
0 0 v11 StackCheck t1 changes[NewSpacePromotion] type:Tagged <|@ | |
0 1 s18 Change t3 t to s type:TaggedNumber <|@ | |
0 1 s19 Change t4 t to s type:TaggedNumber <|@ | |
0 1 s13 Add s18 s19 ! type:TaggedNumber <|@ | |
0 1 s15 Constant 2 type:Smi <|@ | |
0 1 t20 Change s13 s to t <|@ | |
0 0 v16 Return t20 (pop s15 values) type:Tagged <|@ | |
end_HIR | |
end_block | |
end_cfg | |
begin_cfg | |
name "H_Redundant phi elimination" | |
begin_block | |
name "B0" | |
from_bci -1 | |
to_bci -1 | |
predecessors | |
successors "B1" | |
xhandlers | |
flags | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v0 BlockEntry type:Tagged <|@ | |
0 4 t1 Context type:Tagged <|@ | |
0 2 t2 Parameter 0 type:Tagged <|@ | |
0 3 t3 Parameter 1 type:Tagged <|@ | |
0 3 t4 Parameter 2 type:Tagged <|@ | |
0 0 t5 ArgumentsObject t2 t3 t4 type:Tagged <|@ | |
0 0 v7 Simulate id=2 var[3] = t1, var[2] = t4, var[1] = t3, var[0] = t2 type:Tagged <|@ | |
0 0 v8 Goto B1 type:Tagged <|@ | |
end_HIR | |
end_block | |
begin_block | |
name "B1" | |
from_bci -1 | |
to_bci -1 | |
predecessors "B0" | |
successors | |
xhandlers | |
flags | |
dominator "B0" | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v9 BlockEntry type:Tagged <|@ | |
0 0 v10 Simulate id=3 type:Tagged <|@ | |
0 0 v11 StackCheck t1 changes[NewSpacePromotion] type:Tagged <|@ | |
0 1 s18 Change t3 t to s type:TaggedNumber <|@ | |
0 1 s19 Change t4 t to s type:TaggedNumber <|@ | |
0 1 s13 Add s18 s19 ! type:TaggedNumber <|@ | |
0 1 s15 Constant 2 type:Smi <|@ | |
0 1 t20 Change s13 s to t <|@ | |
0 0 v16 Return t20 (pop s15 values) type:Tagged <|@ | |
end_HIR | |
end_block | |
end_cfg | |
begin_cfg | |
name "H_Canonicalize" | |
begin_block | |
name "B0" | |
from_bci -1 | |
to_bci -1 | |
predecessors | |
successors "B1" | |
xhandlers | |
flags | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v0 BlockEntry type:Tagged <|@ | |
0 4 t1 Context type:Tagged <|@ | |
0 2 t2 Parameter 0 type:Tagged <|@ | |
0 3 t3 Parameter 1 type:Tagged <|@ | |
0 3 t4 Parameter 2 type:Tagged <|@ | |
0 0 t5 ArgumentsObject t2 t3 t4 type:Tagged <|@ | |
0 0 v7 Simulate id=2 var[3] = t1, var[2] = t4, var[1] = t3, var[0] = t2 type:Tagged <|@ | |
0 0 v8 Goto B1 type:Tagged <|@ | |
end_HIR | |
end_block | |
begin_block | |
name "B1" | |
from_bci -1 | |
to_bci -1 | |
predecessors "B0" | |
successors | |
xhandlers | |
flags | |
dominator "B0" | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v9 BlockEntry type:Tagged <|@ | |
0 0 v10 Simulate id=3 type:Tagged <|@ | |
0 0 v11 StackCheck t1 changes[NewSpacePromotion] type:Tagged <|@ | |
0 1 s18 Change t3 t to s type:TaggedNumber <|@ | |
0 1 s19 Change t4 t to s type:TaggedNumber <|@ | |
0 1 s13 Add s18 s19 ! type:TaggedNumber <|@ | |
0 1 s15 Constant 2 type:Smi <|@ | |
0 1 t20 Change s13 s to t <|@ | |
0 0 v16 Return t20 (pop s15 values) type:Tagged <|@ | |
end_HIR | |
end_block | |
end_cfg | |
begin_cfg | |
name "H_Global value numbering" | |
begin_block | |
name "B0" | |
from_bci -1 | |
to_bci -1 | |
predecessors | |
successors "B1" | |
xhandlers | |
flags | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v0 BlockEntry type:Tagged <|@ | |
0 4 t1 Context type:Tagged <|@ | |
0 2 t2 Parameter 0 type:Tagged <|@ | |
0 3 t3 Parameter 1 type:Tagged <|@ | |
0 3 t4 Parameter 2 type:Tagged <|@ | |
0 0 t5 ArgumentsObject t2 t3 t4 type:Tagged <|@ | |
0 0 v7 Simulate id=2 var[3] = t1, var[2] = t4, var[1] = t3, var[0] = t2 type:Tagged <|@ | |
0 0 v8 Goto B1 type:Tagged <|@ | |
end_HIR | |
end_block | |
begin_block | |
name "B1" | |
from_bci -1 | |
to_bci -1 | |
predecessors "B0" | |
successors | |
xhandlers | |
flags | |
dominator "B0" | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v9 BlockEntry type:Tagged <|@ | |
0 0 v10 Simulate id=3 type:Tagged <|@ | |
0 0 v11 StackCheck t1 changes[NewSpacePromotion] type:Tagged <|@ | |
0 1 s18 Change t3 t to s type:TaggedNumber <|@ | |
0 1 s19 Change t4 t to s type:TaggedNumber <|@ | |
0 1 s13 Add s18 s19 ! type:TaggedNumber <|@ | |
0 1 s15 Constant 2 type:Smi <|@ | |
0 1 t20 Change s13 s to t <|@ | |
0 0 v16 Return t20 (pop s15 values) type:Tagged <|@ | |
end_HIR | |
end_block | |
end_cfg | |
begin_cfg | |
name "H_Check Elimination" | |
begin_block | |
name "B0" | |
from_bci -1 | |
to_bci -1 | |
predecessors | |
successors "B1" | |
xhandlers | |
flags | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v0 BlockEntry type:Tagged <|@ | |
0 4 t1 Context type:Tagged <|@ | |
0 2 t2 Parameter 0 type:Tagged <|@ | |
0 3 t3 Parameter 1 type:Tagged <|@ | |
0 3 t4 Parameter 2 type:Tagged <|@ | |
0 0 t5 ArgumentsObject t2 t3 t4 type:Tagged <|@ | |
0 0 v7 Simulate id=2 var[3] = t1, var[2] = t4, var[1] = t3, var[0] = t2 type:Tagged <|@ | |
0 0 v8 Goto B1 type:Tagged <|@ | |
end_HIR | |
end_block | |
begin_block | |
name "B1" | |
from_bci -1 | |
to_bci -1 | |
predecessors "B0" | |
successors | |
xhandlers | |
flags | |
dominator "B0" | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v9 BlockEntry type:Tagged <|@ | |
0 0 v10 Simulate id=3 type:Tagged <|@ | |
0 0 v11 StackCheck t1 changes[NewSpacePromotion] type:Tagged <|@ | |
0 1 s18 Change t3 t to s type:TaggedNumber <|@ | |
0 1 s19 Change t4 t to s type:TaggedNumber <|@ | |
0 1 s13 Add s18 s19 ! type:TaggedNumber <|@ | |
0 1 s15 Constant 2 type:Smi <|@ | |
0 1 t20 Change s13 s to t <|@ | |
0 0 v16 Return t20 (pop s15 values) type:Tagged <|@ | |
end_HIR | |
end_block | |
end_cfg | |
begin_cfg | |
name "H_Range analysis" | |
begin_block | |
name "B0" | |
from_bci -1 | |
to_bci -1 | |
predecessors | |
successors "B1" | |
xhandlers | |
flags | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v0 BlockEntry type:Tagged <|@ | |
0 4 t1 Context type:Tagged <|@ | |
0 2 t2 Parameter 0 type:Tagged <|@ | |
0 3 t3 Parameter 1 type:Tagged <|@ | |
0 3 t4 Parameter 2 type:Tagged <|@ | |
0 0 t5 ArgumentsObject t2 t3 t4 type:Tagged <|@ | |
0 0 v7 Simulate id=2 var[3] = t1, var[2] = t4, var[1] = t3, var[0] = t2 type:Tagged <|@ | |
0 0 v8 Goto B1 type:Tagged <|@ | |
end_HIR | |
end_block | |
begin_block | |
name "B1" | |
from_bci -1 | |
to_bci -1 | |
predecessors "B0" | |
successors | |
xhandlers | |
flags | |
dominator "B0" | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v9 BlockEntry type:Tagged <|@ | |
0 0 v10 Simulate id=3 type:Tagged <|@ | |
0 0 v11 StackCheck t1 changes[NewSpacePromotion] type:Tagged <|@ | |
0 1 s18 Change t3 t to s -0? type:TaggedNumber <|@ | |
0 1 s19 Change t4 t to s type:TaggedNumber <|@ | |
0 1 s13 Add s18 s19 ! type:TaggedNumber <|@ | |
0 1 s15 Constant 2 type:Smi <|@ | |
0 1 t20 Change s13 s to t <|@ | |
0 0 v16 Return t20 (pop s15 values) type:Tagged <|@ | |
end_HIR | |
end_block | |
end_cfg | |
begin_cfg | |
name "H_Compute change undefined to nan" | |
begin_block | |
name "B0" | |
from_bci -1 | |
to_bci -1 | |
predecessors | |
successors "B1" | |
xhandlers | |
flags | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v0 BlockEntry type:Tagged <|@ | |
0 4 t1 Context type:Tagged <|@ | |
0 2 t2 Parameter 0 type:Tagged <|@ | |
0 3 t3 Parameter 1 type:Tagged <|@ | |
0 3 t4 Parameter 2 type:Tagged <|@ | |
0 0 t5 ArgumentsObject t2 t3 t4 type:Tagged <|@ | |
0 0 v7 Simulate id=2 var[3] = t1, var[2] = t4, var[1] = t3, var[0] = t2 type:Tagged <|@ | |
0 0 v8 Goto B1 type:Tagged <|@ | |
end_HIR | |
end_block | |
begin_block | |
name "B1" | |
from_bci -1 | |
to_bci -1 | |
predecessors "B0" | |
successors | |
xhandlers | |
flags | |
dominator "B0" | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v9 BlockEntry type:Tagged <|@ | |
0 0 v10 Simulate id=3 type:Tagged <|@ | |
0 0 v11 StackCheck t1 changes[NewSpacePromotion] type:Tagged <|@ | |
0 1 s18 Change t3 t to s -0? allow-undefined-as-nan type:TaggedNumber <|@ | |
0 1 s19 Change t4 t to s allow-undefined-as-nan type:TaggedNumber <|@ | |
0 1 s13 Add s18 s19 ! type:TaggedNumber <|@ | |
0 1 s15 Constant 2 type:Smi <|@ | |
0 1 t20 Change s13 s to t <|@ | |
0 0 v16 Return t20 (pop s15 values) type:Tagged <|@ | |
end_HIR | |
end_block | |
end_cfg | |
begin_cfg | |
name "H_Stack check elimination" | |
begin_block | |
name "B0" | |
from_bci -1 | |
to_bci -1 | |
predecessors | |
successors "B1" | |
xhandlers | |
flags | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v0 BlockEntry type:Tagged <|@ | |
0 4 t1 Context type:Tagged <|@ | |
0 2 t2 Parameter 0 type:Tagged <|@ | |
0 3 t3 Parameter 1 type:Tagged <|@ | |
0 3 t4 Parameter 2 type:Tagged <|@ | |
0 0 t5 ArgumentsObject t2 t3 t4 type:Tagged <|@ | |
0 0 v7 Simulate id=2 var[3] = t1, var[2] = t4, var[1] = t3, var[0] = t2 type:Tagged <|@ | |
0 0 v8 Goto B1 type:Tagged <|@ | |
end_HIR | |
end_block | |
begin_block | |
name "B1" | |
from_bci -1 | |
to_bci -1 | |
predecessors "B0" | |
successors | |
xhandlers | |
flags | |
dominator "B0" | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v9 BlockEntry type:Tagged <|@ | |
0 0 v10 Simulate id=3 type:Tagged <|@ | |
0 0 v11 StackCheck t1 changes[NewSpacePromotion] type:Tagged <|@ | |
0 1 s18 Change t3 t to s -0? allow-undefined-as-nan type:TaggedNumber <|@ | |
0 1 s19 Change t4 t to s allow-undefined-as-nan type:TaggedNumber <|@ | |
0 1 s13 Add s18 s19 ! type:TaggedNumber <|@ | |
0 1 s15 Constant 2 type:Smi <|@ | |
0 1 t20 Change s13 s to t <|@ | |
0 0 v16 Return t20 (pop s15 values) type:Tagged <|@ | |
end_HIR | |
end_block | |
end_cfg | |
begin_cfg | |
name "H_Bounds checks elimination" | |
begin_block | |
name "B0" | |
from_bci -1 | |
to_bci -1 | |
predecessors | |
successors "B1" | |
xhandlers | |
flags | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v0 BlockEntry type:Tagged <|@ | |
0 4 t1 Context type:Tagged <|@ | |
0 2 t2 Parameter 0 type:Tagged <|@ | |
0 3 t3 Parameter 1 type:Tagged <|@ | |
0 3 t4 Parameter 2 type:Tagged <|@ | |
0 0 t5 ArgumentsObject t2 t3 t4 type:Tagged <|@ | |
0 0 v7 Simulate id=2 var[3] = t1, var[2] = t4, var[1] = t3, var[0] = t2 type:Tagged <|@ | |
0 0 v8 Goto B1 type:Tagged <|@ | |
end_HIR | |
end_block | |
begin_block | |
name "B1" | |
from_bci -1 | |
to_bci -1 | |
predecessors "B0" | |
successors | |
xhandlers | |
flags | |
dominator "B0" | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v9 BlockEntry type:Tagged <|@ | |
0 0 v10 Simulate id=3 type:Tagged <|@ | |
0 0 v11 StackCheck t1 changes[NewSpacePromotion] type:Tagged <|@ | |
0 1 s18 Change t3 t to s -0? allow-undefined-as-nan type:TaggedNumber <|@ | |
0 1 s19 Change t4 t to s allow-undefined-as-nan type:TaggedNumber <|@ | |
0 1 s13 Add s18 s19 ! type:TaggedNumber <|@ | |
0 1 s15 Constant 2 type:Smi <|@ | |
0 1 t20 Change s13 s to t <|@ | |
0 0 v16 Return t20 (pop s15 values) type:Tagged <|@ | |
end_HIR | |
end_block | |
end_cfg | |
begin_cfg | |
name "H_Dehoist index computations" | |
begin_block | |
name "B0" | |
from_bci -1 | |
to_bci -1 | |
predecessors | |
successors "B1" | |
xhandlers | |
flags | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v0 BlockEntry type:Tagged <|@ | |
0 4 t1 Context type:Tagged <|@ | |
0 2 t2 Parameter 0 type:Tagged <|@ | |
0 3 t3 Parameter 1 type:Tagged <|@ | |
0 3 t4 Parameter 2 type:Tagged <|@ | |
0 0 t5 ArgumentsObject t2 t3 t4 type:Tagged <|@ | |
0 0 v7 Simulate id=2 var[3] = t1, var[2] = t4, var[1] = t3, var[0] = t2 type:Tagged <|@ | |
0 0 v8 Goto B1 type:Tagged <|@ | |
end_HIR | |
end_block | |
begin_block | |
name "B1" | |
from_bci -1 | |
to_bci -1 | |
predecessors "B0" | |
successors | |
xhandlers | |
flags | |
dominator "B0" | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v9 BlockEntry type:Tagged <|@ | |
0 0 v10 Simulate id=3 type:Tagged <|@ | |
0 0 v11 StackCheck t1 changes[NewSpacePromotion] type:Tagged <|@ | |
0 1 s18 Change t3 t to s -0? allow-undefined-as-nan type:TaggedNumber <|@ | |
0 1 s19 Change t4 t to s allow-undefined-as-nan type:TaggedNumber <|@ | |
0 1 s13 Add s18 s19 ! type:TaggedNumber <|@ | |
0 1 s15 Constant 2 type:Smi <|@ | |
0 1 t20 Change s13 s to t <|@ | |
0 0 v16 Return t20 (pop s15 values) type:Tagged <|@ | |
end_HIR | |
end_block | |
end_cfg | |
begin_cfg | |
name "H_Dead code elimination" | |
begin_block | |
name "B0" | |
from_bci -1 | |
to_bci -1 | |
predecessors | |
successors "B1" | |
xhandlers | |
flags | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v0 BlockEntry type:Tagged <|@ | |
0 4 t1 Context type:Tagged <|@ | |
0 2 t2 Parameter 0 type:Tagged <|@ | |
0 3 t3 Parameter 1 type:Tagged <|@ | |
0 3 t4 Parameter 2 type:Tagged <|@ | |
0 0 t5 ArgumentsObject t2 t3 t4 type:Tagged <|@ | |
0 0 v7 Simulate id=2 var[3] = t1, var[2] = t4, var[1] = t3, var[0] = t2 type:Tagged <|@ | |
0 0 v8 Goto B1 type:Tagged <|@ | |
end_HIR | |
end_block | |
begin_block | |
name "B1" | |
from_bci -1 | |
to_bci -1 | |
predecessors "B0" | |
successors | |
xhandlers | |
flags | |
dominator "B0" | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v9 BlockEntry type:Tagged <|@ | |
0 0 v10 Simulate id=3 type:Tagged <|@ | |
0 0 v11 StackCheck t1 changes[NewSpacePromotion] type:Tagged <|@ | |
0 1 s18 Change t3 t to s -0? allow-undefined-as-nan type:TaggedNumber <|@ | |
0 1 s19 Change t4 t to s allow-undefined-as-nan type:TaggedNumber <|@ | |
0 1 s13 Add s18 s19 ! type:TaggedNumber <|@ | |
0 1 s15 Constant 2 type:Smi <|@ | |
0 1 t20 Change s13 s to t <|@ | |
0 0 v16 Return t20 (pop s15 values) type:Tagged <|@ | |
end_HIR | |
end_block | |
end_cfg | |
begin_cfg | |
name "H_Restore actual values" | |
begin_block | |
name "B0" | |
from_bci -1 | |
to_bci -1 | |
predecessors | |
successors "B1" | |
xhandlers | |
flags | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v0 BlockEntry type:Tagged <|@ | |
0 4 t1 Context type:Tagged <|@ | |
0 2 t2 Parameter 0 type:Tagged <|@ | |
0 3 t3 Parameter 1 type:Tagged <|@ | |
0 3 t4 Parameter 2 type:Tagged <|@ | |
0 0 t5 ArgumentsObject t2 t3 t4 type:Tagged <|@ | |
0 0 v7 Simulate id=2 var[3] = t1, var[2] = t4, var[1] = t3, var[0] = t2 type:Tagged <|@ | |
0 0 v8 Goto B1 type:Tagged <|@ | |
end_HIR | |
end_block | |
begin_block | |
name "B1" | |
from_bci -1 | |
to_bci -1 | |
predecessors "B0" | |
successors | |
xhandlers | |
flags | |
dominator "B0" | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v9 BlockEntry type:Tagged <|@ | |
0 0 v10 Simulate id=3 type:Tagged <|@ | |
0 0 v11 StackCheck t1 changes[NewSpacePromotion] type:Tagged <|@ | |
0 1 s18 Change t3 t to s -0? allow-undefined-as-nan type:TaggedNumber <|@ | |
0 1 s19 Change t4 t to s allow-undefined-as-nan type:TaggedNumber <|@ | |
0 1 s13 Add s18 s19 ! type:TaggedNumber <|@ | |
0 1 s15 Constant 2 type:Smi <|@ | |
0 1 t20 Change s13 s to t <|@ | |
0 0 v16 Return t20 (pop s15 values) type:Tagged <|@ | |
end_HIR | |
end_block | |
end_cfg | |
begin_cfg | |
name "H_Mark unreachable blocks" | |
begin_block | |
name "B0" | |
from_bci -1 | |
to_bci -1 | |
predecessors | |
successors "B1" | |
xhandlers | |
flags | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v0 BlockEntry type:Tagged <|@ | |
0 4 t1 Context type:Tagged <|@ | |
0 2 t2 Parameter 0 type:Tagged <|@ | |
0 3 t3 Parameter 1 type:Tagged <|@ | |
0 3 t4 Parameter 2 type:Tagged <|@ | |
0 0 t5 ArgumentsObject t2 t3 t4 type:Tagged <|@ | |
0 0 v7 Simulate id=2 var[3] = t1, var[2] = t4, var[1] = t3, var[0] = t2 type:Tagged <|@ | |
0 0 v8 Goto B1 type:Tagged <|@ | |
end_HIR | |
end_block | |
begin_block | |
name "B1" | |
from_bci -1 | |
to_bci -1 | |
predecessors "B0" | |
successors | |
xhandlers | |
flags | |
dominator "B0" | |
loop_depth 0 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v9 BlockEntry type:Tagged <|@ | |
0 0 v10 Simulate id=3 type:Tagged <|@ | |
0 0 v11 StackCheck t1 changes[NewSpacePromotion] type:Tagged <|@ | |
0 1 s18 Change t3 t to s -0? allow-undefined-as-nan type:TaggedNumber <|@ | |
0 1 s19 Change t4 t to s allow-undefined-as-nan type:TaggedNumber <|@ | |
0 1 s13 Add s18 s19 ! type:TaggedNumber <|@ | |
0 1 s15 Constant 2 type:Smi <|@ | |
0 1 t20 Change s13 s to t <|@ | |
0 0 v16 Return t20 (pop s15 values) type:Tagged <|@ | |
end_HIR | |
end_block | |
end_cfg | |
begin_cfg | |
name "L_Building chunk" | |
begin_block | |
name "B0" | |
from_bci -1 | |
to_bci -1 | |
predecessors | |
successors "B1" | |
xhandlers | |
flags | |
loop_depth 0 | |
first_lir_id 0 | |
last_lir_id 22 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v0 BlockEntry type:Tagged <|@ | |
0 4 t1 Context type:Tagged <|@ | |
0 2 t2 Parameter 0 type:Tagged <|@ | |
0 3 t3 Parameter 1 type:Tagged <|@ | |
0 3 t4 Parameter 2 type:Tagged <|@ | |
0 0 t5 ArgumentsObject t2 t3 t4 type:Tagged <|@ | |
0 0 v7 Simulate id=2 var[3] = t1, var[2] = t4, var[1] = t3, var[0] = t2 type:Tagged <|@ | |
0 0 v8 Goto B1 type:Tagged <|@ | |
end_HIR | |
begin_LIR | |
0 label () () () () [hir:v0] <|@ | |
2 gap () () () () [hir:v0] <|@ | |
4 context v1(R)= [hir:t1] <|@ | |
6 gap () () () () [hir:t1] <|@ | |
8 parameter v2(=-3S)= [hir:t2] <|@ | |
10 gap () () () () [hir:t2] <|@ | |
12 parameter v3(=-2S)= [hir:t3] <|@ | |
14 gap () () () () [hir:t3] <|@ | |
16 parameter v4(=-1S)= [hir:t4] <|@ | |
18 gap () () () () [hir:t4] <|@ | |
20 gap () () () () [hir:v8] <|@ | |
22 goto B1 [hir:v8] <|@ | |
end_LIR | |
end_block | |
begin_block | |
name "B1" | |
from_bci -1 | |
to_bci -1 | |
predecessors "B0" | |
successors | |
xhandlers | |
flags | |
dominator "B0" | |
loop_depth 0 | |
first_lir_id 24 | |
last_lir_id 54 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v9 BlockEntry type:Tagged <|@ | |
0 0 v10 Simulate id=3 type:Tagged <|@ | |
0 0 v11 StackCheck t1 changes[NewSpacePromotion] type:Tagged <|@ | |
0 1 s18 Change t3 t to s -0? allow-undefined-as-nan type:TaggedNumber <|@ | |
0 1 s19 Change t4 t to s allow-undefined-as-nan type:TaggedNumber <|@ | |
0 1 s13 Add s18 s19 ! type:TaggedNumber <|@ | |
0 1 s15 Constant 2 type:Smi <|@ | |
0 1 t20 Change s13 s to t <|@ | |
0 0 v16 Return t20 (pop s15 values) type:Tagged <|@ | |
end_HIR | |
begin_LIR | |
24 label () () () () [hir:v9] <|@ | |
26 gap () () () () [hir:v9] <|@ | |
28 stack-check = v1(=esi) [id=3|parameters=3|arguments_stack_height=0|v2(-);v3(-);v4(-);v1(-)] {} [hir:v11] <|@ | |
30 gap () () () () [hir:v11] <|@ | |
32 lazy-bailout = [id=3|parameters=3|arguments_stack_height=0|v2(-);v3(-);v4(-);v1(-)] [hir:v11] <|@ | |
34 gap () () () () [hir:v11] <|@ | |
36 check-smi v18(1)= v3(R) [id=3|parameters=3|arguments_stack_height=0|v2(-);v3(-);v4(-);v1(-)] [hir:s18] <|@ | |
38 gap () () () () [hir:s18] <|@ | |
40 check-smi v19(1)= v4(R) [id=3|parameters=3|arguments_stack_height=0|v2(-);v3(-);v4(-);v1(-)] [hir:s19] <|@ | |
42 gap () () () () [hir:s19] <|@ | |
44 add-i v13(1)= v19(R) v18 [id=3|parameters=3|arguments_stack_height=0|v2(-);v3(-);v4(-);v1(-)] [hir:s13] <|@ | |
46 gap () () () () [hir:s13] <|@ | |
48 dummy-use v20(1)= v13(R) [hir:t20] <|@ | |
50 gap () () () () [hir:t20] <|@ | |
52 return = v20(=eax) NULL [constant:15] [hir:v16] <|@ | |
54 gap () () () () [hir:v16] <|@ | |
end_LIR | |
end_block | |
end_cfg | |
begin_cfg | |
name "L_Register constraints" | |
begin_block | |
name "B0" | |
from_bci -1 | |
to_bci -1 | |
predecessors | |
successors "B1" | |
xhandlers | |
flags | |
loop_depth 0 | |
first_lir_id 0 | |
last_lir_id 22 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v0 BlockEntry type:Tagged <|@ | |
0 4 t1 Context type:Tagged <|@ | |
0 2 t2 Parameter 0 type:Tagged <|@ | |
0 3 t3 Parameter 1 type:Tagged <|@ | |
0 3 t4 Parameter 2 type:Tagged <|@ | |
0 0 t5 ArgumentsObject t2 t3 t4 type:Tagged <|@ | |
0 0 v7 Simulate id=2 var[3] = t1, var[2] = t4, var[1] = t3, var[0] = t2 type:Tagged <|@ | |
0 0 v8 Goto B1 type:Tagged <|@ | |
end_HIR | |
begin_LIR | |
0 label () () () () [hir:v0] <|@ | |
2 gap () () () () [hir:v0] <|@ | |
4 context v1(R)= [hir:t1] <|@ | |
6 gap ((0) = v1(R);) () () () [hir:t1] <|@ | |
8 parameter [stack:-3]= [hir:t2] <|@ | |
10 gap () (v2(-) = [stack:-3];) () () [hir:t2] <|@ | |
12 parameter [stack:-2]= [hir:t3] <|@ | |
14 gap () (v3(-) = [stack:-2];) () () [hir:t3] <|@ | |
16 parameter [stack:-1]= [hir:t4] <|@ | |
18 gap () (v4(-) = [stack:-1];) () () [hir:t4] <|@ | |
20 gap () () () () [hir:v8] <|@ | |
22 goto B1 [hir:v8] <|@ | |
end_LIR | |
end_block | |
begin_block | |
name "B1" | |
from_bci -1 | |
to_bci -1 | |
predecessors "B0" | |
successors | |
xhandlers | |
flags | |
dominator "B0" | |
loop_depth 0 | |
first_lir_id 24 | |
last_lir_id 54 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v9 BlockEntry type:Tagged <|@ | |
0 0 v10 Simulate id=3 type:Tagged <|@ | |
0 0 v11 StackCheck t1 changes[NewSpacePromotion] type:Tagged <|@ | |
0 1 s18 Change t3 t to s -0? allow-undefined-as-nan type:TaggedNumber <|@ | |
0 1 s19 Change t4 t to s allow-undefined-as-nan type:TaggedNumber <|@ | |
0 1 s13 Add s18 s19 ! type:TaggedNumber <|@ | |
0 1 s15 Constant 2 type:Smi <|@ | |
0 1 t20 Change s13 s to t <|@ | |
0 0 v16 Return t20 (pop s15 values) type:Tagged <|@ | |
end_HIR | |
begin_LIR | |
24 label () () () () [hir:v9] <|@ | |
26 gap () ([esi|R] = v1(-);) () () [hir:v9] <|@ | |
28 stack-check = [esi|R] [id=3|parameters=3|arguments_stack_height=0|v2(-);v3(-);v4(-);v1(-)] {[esi|R]} [hir:v11] <|@ | |
30 gap () () () () [hir:v11] <|@ | |
32 lazy-bailout = [id=3|parameters=3|arguments_stack_height=0|v2(-);v3(-);v4(-);v1(-)] [hir:v11] <|@ | |
34 gap () (v18(R) = v3(-);) () () [hir:v11] <|@ | |
36 check-smi v18(1)= v18(R) [id=3|parameters=3|arguments_stack_height=0|v2(-);v3(-);v4(-);v1(-)] [hir:s18] <|@ | |
38 gap ((0) = v18(1);) (v19(R) = v4(-);) () () [hir:s18] <|@ | |
40 check-smi v19(1)= v19(R) [id=3|parameters=3|arguments_stack_height=0|v2(-);v3(-);v4(-);v1(-)] [hir:s19] <|@ | |
42 gap ((0) = v19(1);) (v13(R) = v19(-);) () () [hir:s19] <|@ | |
44 add-i v13(1)= v13(R) v18 [id=3|parameters=3|arguments_stack_height=0|v2(-);v3(-);v4(-);v1(-)] [hir:s13] <|@ | |
46 gap ((0) = v13(1);) (v20(R) = v13(-);) () () [hir:s13] <|@ | |
48 dummy-use v20(1)= v20(R) [hir:t20] <|@ | |
50 gap ((0) = v20(1);) ([eax|R] = v20(-);) () () [hir:t20] <|@ | |
52 return = [eax|R] NULL [constant:15] [hir:v16] <|@ | |
54 gap () () () () [hir:v16] <|@ | |
end_LIR | |
end_block | |
end_cfg | |
begin_intervals | |
name "L_Register constraints" | |
end_intervals | |
begin_cfg | |
name "L_Resolve phis" | |
begin_block | |
name "B0" | |
from_bci -1 | |
to_bci -1 | |
predecessors | |
successors "B1" | |
xhandlers | |
flags | |
loop_depth 0 | |
first_lir_id 0 | |
last_lir_id 22 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v0 BlockEntry type:Tagged <|@ | |
0 4 t1 Context type:Tagged <|@ | |
0 2 t2 Parameter 0 type:Tagged <|@ | |
0 3 t3 Parameter 1 type:Tagged <|@ | |
0 3 t4 Parameter 2 type:Tagged <|@ | |
0 0 t5 ArgumentsObject t2 t3 t4 type:Tagged <|@ | |
0 0 v7 Simulate id=2 var[3] = t1, var[2] = t4, var[1] = t3, var[0] = t2 type:Tagged <|@ | |
0 0 v8 Goto B1 type:Tagged <|@ | |
end_HIR | |
begin_LIR | |
0 label () () () () [hir:v0] <|@ | |
2 gap () () () () [hir:v0] <|@ | |
4 context v1(R)= [hir:t1] <|@ | |
6 gap ((0) = v1(R);) () () () [hir:t1] <|@ | |
8 parameter [stack:-3]= [hir:t2] <|@ | |
10 gap () (v2(-) = [stack:-3];) () () [hir:t2] <|@ | |
12 parameter [stack:-2]= [hir:t3] <|@ | |
14 gap () (v3(-) = [stack:-2];) () () [hir:t3] <|@ | |
16 parameter [stack:-1]= [hir:t4] <|@ | |
18 gap () (v4(-) = [stack:-1];) () () [hir:t4] <|@ | |
20 gap () () () () [hir:v8] <|@ | |
22 goto B1 [hir:v8] <|@ | |
end_LIR | |
end_block | |
begin_block | |
name "B1" | |
from_bci -1 | |
to_bci -1 | |
predecessors "B0" | |
successors | |
xhandlers | |
flags | |
dominator "B0" | |
loop_depth 0 | |
first_lir_id 24 | |
last_lir_id 54 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v9 BlockEntry type:Tagged <|@ | |
0 0 v10 Simulate id=3 type:Tagged <|@ | |
0 0 v11 StackCheck t1 changes[NewSpacePromotion] type:Tagged <|@ | |
0 1 s18 Change t3 t to s -0? allow-undefined-as-nan type:TaggedNumber <|@ | |
0 1 s19 Change t4 t to s allow-undefined-as-nan type:TaggedNumber <|@ | |
0 1 s13 Add s18 s19 ! type:TaggedNumber <|@ | |
0 1 s15 Constant 2 type:Smi <|@ | |
0 1 t20 Change s13 s to t <|@ | |
0 0 v16 Return t20 (pop s15 values) type:Tagged <|@ | |
end_HIR | |
begin_LIR | |
24 label () () () () [hir:v9] <|@ | |
26 gap () ([esi|R] = v1(-);) () () [hir:v9] <|@ | |
28 stack-check = [esi|R] [id=3|parameters=3|arguments_stack_height=0|v2(-);v3(-);v4(-);v1(-)] {[esi|R]} [hir:v11] <|@ | |
30 gap () () () () [hir:v11] <|@ | |
32 lazy-bailout = [id=3|parameters=3|arguments_stack_height=0|v2(-);v3(-);v4(-);v1(-)] [hir:v11] <|@ | |
34 gap () (v18(R) = v3(-);) () () [hir:v11] <|@ | |
36 check-smi v18(1)= v18(R) [id=3|parameters=3|arguments_stack_height=0|v2(-);v3(-);v4(-);v1(-)] [hir:s18] <|@ | |
38 gap ((0) = v18(1);) (v19(R) = v4(-);) () () [hir:s18] <|@ | |
40 check-smi v19(1)= v19(R) [id=3|parameters=3|arguments_stack_height=0|v2(-);v3(-);v4(-);v1(-)] [hir:s19] <|@ | |
42 gap ((0) = v19(1);) (v13(R) = v19(-);) () () [hir:s19] <|@ | |
44 add-i v13(1)= v13(R) v18 [id=3|parameters=3|arguments_stack_height=0|v2(-);v3(-);v4(-);v1(-)] [hir:s13] <|@ | |
46 gap ((0) = v13(1);) (v20(R) = v13(-);) () () [hir:s13] <|@ | |
48 dummy-use v20(1)= v20(R) [hir:t20] <|@ | |
50 gap ((0) = v20(1);) ([eax|R] = v20(-);) () () [hir:t20] <|@ | |
52 return = [eax|R] NULL [constant:15] [hir:v16] <|@ | |
54 gap () () () () [hir:v16] <|@ | |
end_LIR | |
end_block | |
end_cfg | |
begin_intervals | |
name "L_Resolve phis" | |
end_intervals | |
begin_cfg | |
name "L_Build live ranges" | |
begin_block | |
name "B0" | |
from_bci -1 | |
to_bci -1 | |
predecessors | |
successors "B1" | |
xhandlers | |
flags | |
loop_depth 0 | |
first_lir_id 0 | |
last_lir_id 22 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v0 BlockEntry type:Tagged <|@ | |
0 4 t1 Context type:Tagged <|@ | |
0 2 t2 Parameter 0 type:Tagged <|@ | |
0 3 t3 Parameter 1 type:Tagged <|@ | |
0 3 t4 Parameter 2 type:Tagged <|@ | |
0 0 t5 ArgumentsObject t2 t3 t4 type:Tagged <|@ | |
0 0 v7 Simulate id=2 var[3] = t1, var[2] = t4, var[1] = t3, var[0] = t2 type:Tagged <|@ | |
0 0 v8 Goto B1 type:Tagged <|@ | |
end_HIR | |
begin_LIR | |
0 label () () () () [hir:v0] <|@ | |
2 gap () () () () [hir:v0] <|@ | |
4 context v1(R)= [hir:t1] <|@ | |
6 gap ((0) = v1(R);) () () () [hir:t1] <|@ | |
8 parameter [stack:-3]= [hir:t2] <|@ | |
10 gap () (v2(-) = [stack:-3];) () () [hir:t2] <|@ | |
12 parameter [stack:-2]= [hir:t3] <|@ | |
14 gap () (v3(-) = [stack:-2];) () () [hir:t3] <|@ | |
16 parameter [stack:-1]= [hir:t4] <|@ | |
18 gap () (v4(-) = [stack:-1];) () () [hir:t4] <|@ | |
20 gap () () () () [hir:v8] <|@ | |
22 goto B1 [hir:v8] <|@ | |
end_LIR | |
end_block | |
begin_block | |
name "B1" | |
from_bci -1 | |
to_bci -1 | |
predecessors "B0" | |
successors | |
xhandlers | |
flags | |
dominator "B0" | |
loop_depth 0 | |
first_lir_id 24 | |
last_lir_id 54 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v9 BlockEntry type:Tagged <|@ | |
0 0 v10 Simulate id=3 type:Tagged <|@ | |
0 0 v11 StackCheck t1 changes[NewSpacePromotion] type:Tagged <|@ | |
0 1 s18 Change t3 t to s -0? allow-undefined-as-nan type:TaggedNumber <|@ | |
0 1 s19 Change t4 t to s allow-undefined-as-nan type:TaggedNumber <|@ | |
0 1 s13 Add s18 s19 ! type:TaggedNumber <|@ | |
0 1 s15 Constant 2 type:Smi <|@ | |
0 1 t20 Change s13 s to t <|@ | |
0 0 v16 Return t20 (pop s15 values) type:Tagged <|@ | |
end_HIR | |
begin_LIR | |
24 label () () () () [hir:v9] <|@ | |
26 gap () ([esi|R] = v1(-);) () () [hir:v9] <|@ | |
28 stack-check = [esi|R] [id=3|parameters=3|arguments_stack_height=0|v2(-);v3(-);v4(-);v1(-)] {[esi|R]} [hir:v11] <|@ | |
30 gap () () () () [hir:v11] <|@ | |
32 lazy-bailout = [id=3|parameters=3|arguments_stack_height=0|v2(-);v3(-);v4(-);v1(-)] [hir:v11] <|@ | |
34 gap () (v18(R) = v3(-);) () () [hir:v11] <|@ | |
36 check-smi v18(1)= v18(R) [id=3|parameters=3|arguments_stack_height=0|v2(-);v3(-);v4(-);v1(-)] [hir:s18] <|@ | |
38 gap ((0) = v18(1);) (v19(R) = v4(-);) () () [hir:s18] <|@ | |
40 check-smi v19(1)= v19(R) [id=3|parameters=3|arguments_stack_height=0|v2(-);v3(-);v4(-);v1(-)] [hir:s19] <|@ | |
42 gap ((0) = v19(1);) (v13(R) = v19(-);) () () [hir:s19] <|@ | |
44 add-i v13(1)= v13(R) v18 [id=3|parameters=3|arguments_stack_height=0|v2(-);v3(-);v4(-);v1(-)] [hir:s13] <|@ | |
46 gap ((0) = v13(1);) (v20(R) = v13(-);) () () [hir:s13] <|@ | |
48 dummy-use v20(1)= v20(R) [hir:t20] <|@ | |
50 gap ((0) = v20(1);) ([eax|R] = v20(-);) () () [hir:t20] <|@ | |
52 return = [eax|R] NULL [constant:15] [hir:v16] <|@ | |
54 gap () () () () [hir:v16] <|@ | |
end_LIR | |
end_block | |
end_cfg | |
begin_intervals | |
name "L_Build live ranges" | |
-7 fixed "xmm1" -7 -1 [28, 29[ "" | |
-8 fixed "xmm2" -8 -1 [28, 29[ "" | |
-9 fixed "xmm3" -9 -1 [28, 29[ "" | |
-10 fixed "xmm4" -10 -1 [28, 29[ "" | |
-11 fixed "xmm5" -11 -1 [28, 29[ "" | |
-12 fixed "xmm6" -12 -1 [28, 29[ "" | |
-13 fixed "xmm7" -13 -1 [28, 29[ "" | |
-1 fixed "eax" -1 -1 [28, 29[ [50, 53[ "" | |
-2 fixed "ecx" -2 -1 [28, 29[ "" | |
-3 fixed "edx" -3 -1 [28, 29[ "" | |
-4 fixed "ebx" -4 -1 [28, 29[ "" | |
-5 fixed "esi" -5 -1 [26, 29[ "" | |
-6 fixed "edi" -6 -1 [28, 29[ "" | |
1 object 1 -1 [4, 45[ 4 M "" | |
2 object 2 -1 [10, 45[ "" | |
3 object 3 -1 [14, 45[ "" | |
4 object 4 -1 [18, 45[ "" | |
13 object 13 -1 [42, 46[ 42 M 44 M 44 M "" | |
18 object 18 -1 [34, 44[ 34 M 36 M 37 M 44 M "" | |
19 object 19 -1 [38, 42[ 38 M 40 M 41 M "" | |
20 object 20 -1 [46, 50[ 46 M 48 M 49 M "" | |
end_intervals | |
begin_cfg | |
name "L_Allocate general registers" | |
begin_block | |
name "B0" | |
from_bci -1 | |
to_bci -1 | |
predecessors | |
successors "B1" | |
xhandlers | |
flags | |
loop_depth 0 | |
first_lir_id 0 | |
last_lir_id 22 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v0 BlockEntry type:Tagged <|@ | |
0 4 t1 Context type:Tagged <|@ | |
0 2 t2 Parameter 0 type:Tagged <|@ | |
0 3 t3 Parameter 1 type:Tagged <|@ | |
0 3 t4 Parameter 2 type:Tagged <|@ | |
0 0 t5 ArgumentsObject t2 t3 t4 type:Tagged <|@ | |
0 0 v7 Simulate id=2 var[3] = t1, var[2] = t4, var[1] = t3, var[0] = t2 type:Tagged <|@ | |
0 0 v8 Goto B1 type:Tagged <|@ | |
end_HIR | |
begin_LIR | |
0 label () () () () [hir:v0] <|@ | |
2 gap () () () () [hir:v0] <|@ | |
4 context [eax|R]= [hir:t1] <|@ | |
6 gap ([stack:1] = [eax|R];) () () () [hir:t1] <|@ | |
8 parameter [stack:-3]= [hir:t2] <|@ | |
10 gap () ([stack:-3];) () () [hir:t2] <|@ | |
12 parameter [stack:-2]= [hir:t3] <|@ | |
14 gap () ([stack:-2];) () () [hir:t3] <|@ | |
16 parameter [stack:-1]= [hir:t4] <|@ | |
18 gap () ([stack:-1];) () () [hir:t4] <|@ | |
20 gap () () () () [hir:v8] <|@ | |
22 goto B1 [hir:v8] <|@ | |
end_LIR | |
end_block | |
begin_block | |
name "B1" | |
from_bci -1 | |
to_bci -1 | |
predecessors "B0" | |
successors | |
xhandlers | |
flags | |
dominator "B0" | |
loop_depth 0 | |
first_lir_id 24 | |
last_lir_id 54 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v9 BlockEntry type:Tagged <|@ | |
0 0 v10 Simulate id=3 type:Tagged <|@ | |
0 0 v11 StackCheck t1 changes[NewSpacePromotion] type:Tagged <|@ | |
0 1 s18 Change t3 t to s -0? allow-undefined-as-nan type:TaggedNumber <|@ | |
0 1 s19 Change t4 t to s allow-undefined-as-nan type:TaggedNumber <|@ | |
0 1 s13 Add s18 s19 ! type:TaggedNumber <|@ | |
0 1 s15 Constant 2 type:Smi <|@ | |
0 1 t20 Change s13 s to t <|@ | |
0 0 v16 Return t20 (pop s15 values) type:Tagged <|@ | |
end_HIR | |
begin_LIR | |
24 label () () () () [hir:v9] <|@ | |
26 gap () ([esi|R] = [eax|R];) () () [hir:v9] <|@ | |
28 stack-check = [esi|R] [id=3|parameters=3|arguments_stack_height=0|[stack:-3];[stack:-2];[stack:-1];[stack:1]] {[esi|R]} [hir:v11] <|@ | |
30 gap () () () () [hir:v11] <|@ | |
32 lazy-bailout = [id=3|parameters=3|arguments_stack_height=0|[stack:-3];[stack:-2];[stack:-1];[stack:1]] [hir:v11] <|@ | |
34 gap () ([eax|R] = [stack:-2];) () () [hir:v11] <|@ | |
36 check-smi [eax|R]= [eax|R] [id=3|parameters=3|arguments_stack_height=0|[stack:-3];[stack:-2];[stack:-1];[stack:1]] [hir:s18] <|@ | |
38 gap ((0) = [eax|R];) ([ecx|R] = [stack:-1];) () () [hir:s18] <|@ | |
40 check-smi [ecx|R]= [ecx|R] [id=3|parameters=3|arguments_stack_height=0|[stack:-3];[stack:-2];[stack:-1];[stack:1]] [hir:s19] <|@ | |
42 gap ((0) = [ecx|R];) ([ecx|R];) () () [hir:s19] <|@ | |
44 add-i [ecx|R]= [ecx|R] [eax|R] [id=3|parameters=3|arguments_stack_height=0|[stack:-3];[stack:-2];[stack:-1];[stack:1]] [hir:s13] <|@ | |
46 gap ((0) = [ecx|R];) ([ecx|R];) () () [hir:s13] <|@ | |
48 dummy-use [ecx|R]= [ecx|R] [hir:t20] <|@ | |
50 gap ((0) = [ecx|R];) ([eax|R] = [ecx|R];) () () [hir:t20] <|@ | |
52 return = [eax|R] NULL [constant:15] [hir:v16] <|@ | |
54 gap () () () () [hir:v16] <|@ | |
end_LIR | |
end_block | |
end_cfg | |
begin_intervals | |
name "L_Allocate general registers" | |
-7 fixed "xmm1" -7 -1 [28, 29[ "" | |
-8 fixed "xmm2" -8 -1 [28, 29[ "" | |
-9 fixed "xmm3" -9 -1 [28, 29[ "" | |
-10 fixed "xmm4" -10 -1 [28, 29[ "" | |
-11 fixed "xmm5" -11 -1 [28, 29[ "" | |
-12 fixed "xmm6" -12 -1 [28, 29[ "" | |
-13 fixed "xmm7" -13 -1 [28, 29[ "" | |
-1 fixed "eax" -1 -1 [28, 29[ [50, 53[ "" | |
-2 fixed "ecx" -2 -1 [28, 29[ "" | |
-3 fixed "edx" -3 -1 [28, 29[ "" | |
-4 fixed "ebx" -4 -1 [28, 29[ "" | |
-5 fixed "esi" -5 -1 [26, 29[ "" | |
-6 fixed "edi" -6 -1 [28, 29[ "" | |
1 object "eax" 1 -1 [4, 28[ 4 M "" | |
2 object "stack:-3" 2 -1 [10, 45[ "" | |
3 object "stack:-2" 3 -1 [14, 45[ "" | |
4 object "stack:-1" 4 -1 [18, 45[ "" | |
13 object "ecx" 13 -1 [42, 46[ 42 M 44 M 44 M "" | |
18 object "eax" 18 -1 [34, 44[ 34 M 36 M 37 M 44 M "" | |
19 object "ecx" 19 -1 [38, 42[ 38 M 40 M 41 M "" | |
20 object "ecx" 20 -1 [46, 50[ 46 M 48 M 49 M "" | |
21 object "stack:1" 1 -1 [28, 45[ "" | |
end_intervals | |
begin_cfg | |
name "L_Allocate double registers" | |
begin_block | |
name "B0" | |
from_bci -1 | |
to_bci -1 | |
predecessors | |
successors "B1" | |
xhandlers | |
flags | |
loop_depth 0 | |
first_lir_id 0 | |
last_lir_id 22 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v0 BlockEntry type:Tagged <|@ | |
0 4 t1 Context type:Tagged <|@ | |
0 2 t2 Parameter 0 type:Tagged <|@ | |
0 3 t3 Parameter 1 type:Tagged <|@ | |
0 3 t4 Parameter 2 type:Tagged <|@ | |
0 0 t5 ArgumentsObject t2 t3 t4 type:Tagged <|@ | |
0 0 v7 Simulate id=2 var[3] = t1, var[2] = t4, var[1] = t3, var[0] = t2 type:Tagged <|@ | |
0 0 v8 Goto B1 type:Tagged <|@ | |
end_HIR | |
begin_LIR | |
0 label () () () () [hir:v0] <|@ | |
2 gap () () () () [hir:v0] <|@ | |
4 context [eax|R]= [hir:t1] <|@ | |
6 gap ([stack:1] = [eax|R];) () () () [hir:t1] <|@ | |
8 parameter [stack:-3]= [hir:t2] <|@ | |
10 gap () ([stack:-3];) () () [hir:t2] <|@ | |
12 parameter [stack:-2]= [hir:t3] <|@ | |
14 gap () ([stack:-2];) () () [hir:t3] <|@ | |
16 parameter [stack:-1]= [hir:t4] <|@ | |
18 gap () ([stack:-1];) () () [hir:t4] <|@ | |
20 gap () () () () [hir:v8] <|@ | |
22 goto B1 [hir:v8] <|@ | |
end_LIR | |
end_block | |
begin_block | |
name "B1" | |
from_bci -1 | |
to_bci -1 | |
predecessors "B0" | |
successors | |
xhandlers | |
flags | |
dominator "B0" | |
loop_depth 0 | |
first_lir_id 24 | |
last_lir_id 54 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v9 BlockEntry type:Tagged <|@ | |
0 0 v10 Simulate id=3 type:Tagged <|@ | |
0 0 v11 StackCheck t1 changes[NewSpacePromotion] type:Tagged <|@ | |
0 1 s18 Change t3 t to s -0? allow-undefined-as-nan type:TaggedNumber <|@ | |
0 1 s19 Change t4 t to s allow-undefined-as-nan type:TaggedNumber <|@ | |
0 1 s13 Add s18 s19 ! type:TaggedNumber <|@ | |
0 1 s15 Constant 2 type:Smi <|@ | |
0 1 t20 Change s13 s to t <|@ | |
0 0 v16 Return t20 (pop s15 values) type:Tagged <|@ | |
end_HIR | |
begin_LIR | |
24 label () () () () [hir:v9] <|@ | |
26 gap () ([esi|R] = [eax|R];) () () [hir:v9] <|@ | |
28 stack-check = [esi|R] [id=3|parameters=3|arguments_stack_height=0|[stack:-3];[stack:-2];[stack:-1];[stack:1]] {[esi|R]} [hir:v11] <|@ | |
30 gap () () () () [hir:v11] <|@ | |
32 lazy-bailout = [id=3|parameters=3|arguments_stack_height=0|[stack:-3];[stack:-2];[stack:-1];[stack:1]] [hir:v11] <|@ | |
34 gap () ([eax|R] = [stack:-2];) () () [hir:v11] <|@ | |
36 check-smi [eax|R]= [eax|R] [id=3|parameters=3|arguments_stack_height=0|[stack:-3];[stack:-2];[stack:-1];[stack:1]] [hir:s18] <|@ | |
38 gap ((0) = [eax|R];) ([ecx|R] = [stack:-1];) () () [hir:s18] <|@ | |
40 check-smi [ecx|R]= [ecx|R] [id=3|parameters=3|arguments_stack_height=0|[stack:-3];[stack:-2];[stack:-1];[stack:1]] [hir:s19] <|@ | |
42 gap ((0) = [ecx|R];) ([ecx|R];) () () [hir:s19] <|@ | |
44 add-i [ecx|R]= [ecx|R] [eax|R] [id=3|parameters=3|arguments_stack_height=0|[stack:-3];[stack:-2];[stack:-1];[stack:1]] [hir:s13] <|@ | |
46 gap ((0) = [ecx|R];) ([ecx|R];) () () [hir:s13] <|@ | |
48 dummy-use [ecx|R]= [ecx|R] [hir:t20] <|@ | |
50 gap ((0) = [ecx|R];) ([eax|R] = [ecx|R];) () () [hir:t20] <|@ | |
52 return = [eax|R] NULL [constant:15] [hir:v16] <|@ | |
54 gap () () () () [hir:v16] <|@ | |
end_LIR | |
end_block | |
end_cfg | |
begin_intervals | |
name "L_Allocate double registers" | |
-7 fixed "xmm1" -7 -1 [28, 29[ "" | |
-8 fixed "xmm2" -8 -1 [28, 29[ "" | |
-9 fixed "xmm3" -9 -1 [28, 29[ "" | |
-10 fixed "xmm4" -10 -1 [28, 29[ "" | |
-11 fixed "xmm5" -11 -1 [28, 29[ "" | |
-12 fixed "xmm6" -12 -1 [28, 29[ "" | |
-13 fixed "xmm7" -13 -1 [28, 29[ "" | |
-1 fixed "eax" -1 -1 [28, 29[ [50, 53[ "" | |
-2 fixed "ecx" -2 -1 [28, 29[ "" | |
-3 fixed "edx" -3 -1 [28, 29[ "" | |
-4 fixed "ebx" -4 -1 [28, 29[ "" | |
-5 fixed "esi" -5 -1 [26, 29[ "" | |
-6 fixed "edi" -6 -1 [28, 29[ "" | |
1 object "eax" 1 -1 [4, 28[ 4 M "" | |
2 object "stack:-3" 2 -1 [10, 45[ "" | |
3 object "stack:-2" 3 -1 [14, 45[ "" | |
4 object "stack:-1" 4 -1 [18, 45[ "" | |
13 object "ecx" 13 -1 [42, 46[ 42 M 44 M 44 M "" | |
18 object "eax" 18 -1 [34, 44[ 34 M 36 M 37 M 44 M "" | |
19 object "ecx" 19 -1 [38, 42[ 38 M 40 M 41 M "" | |
20 object "ecx" 20 -1 [46, 50[ 46 M 48 M 49 M "" | |
21 object "stack:1" 1 -1 [28, 45[ "" | |
end_intervals | |
begin_cfg | |
name "L_Populate pointer maps" | |
begin_block | |
name "B0" | |
from_bci -1 | |
to_bci -1 | |
predecessors | |
successors "B1" | |
xhandlers | |
flags | |
loop_depth 0 | |
first_lir_id 0 | |
last_lir_id 22 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v0 BlockEntry type:Tagged <|@ | |
0 4 t1 Context type:Tagged <|@ | |
0 2 t2 Parameter 0 type:Tagged <|@ | |
0 3 t3 Parameter 1 type:Tagged <|@ | |
0 3 t4 Parameter 2 type:Tagged <|@ | |
0 0 t5 ArgumentsObject t2 t3 t4 type:Tagged <|@ | |
0 0 v7 Simulate id=2 var[3] = t1, var[2] = t4, var[1] = t3, var[0] = t2 type:Tagged <|@ | |
0 0 v8 Goto B1 type:Tagged <|@ | |
end_HIR | |
begin_LIR | |
0 label () () () () [hir:v0] <|@ | |
2 gap () () () () [hir:v0] <|@ | |
4 context [eax|R]= [hir:t1] <|@ | |
6 gap ([stack:1] = [eax|R];) () () () [hir:t1] <|@ | |
8 parameter [stack:-3]= [hir:t2] <|@ | |
10 gap () ([stack:-3];) () () [hir:t2] <|@ | |
12 parameter [stack:-2]= [hir:t3] <|@ | |
14 gap () ([stack:-2];) () () [hir:t3] <|@ | |
16 parameter [stack:-1]= [hir:t4] <|@ | |
18 gap () ([stack:-1];) () () [hir:t4] <|@ | |
20 gap () () () () [hir:v8] <|@ | |
22 goto B1 [hir:v8] <|@ | |
end_LIR | |
end_block | |
begin_block | |
name "B1" | |
from_bci -1 | |
to_bci -1 | |
predecessors "B0" | |
successors | |
xhandlers | |
flags | |
dominator "B0" | |
loop_depth 0 | |
first_lir_id 24 | |
last_lir_id 54 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v9 BlockEntry type:Tagged <|@ | |
0 0 v10 Simulate id=3 type:Tagged <|@ | |
0 0 v11 StackCheck t1 changes[NewSpacePromotion] type:Tagged <|@ | |
0 1 s18 Change t3 t to s -0? allow-undefined-as-nan type:TaggedNumber <|@ | |
0 1 s19 Change t4 t to s allow-undefined-as-nan type:TaggedNumber <|@ | |
0 1 s13 Add s18 s19 ! type:TaggedNumber <|@ | |
0 1 s15 Constant 2 type:Smi <|@ | |
0 1 t20 Change s13 s to t <|@ | |
0 0 v16 Return t20 (pop s15 values) type:Tagged <|@ | |
end_HIR | |
begin_LIR | |
24 label () () () () [hir:v9] <|@ | |
26 gap () ([esi|R] = [eax|R];) () () [hir:v9] <|@ | |
28 stack-check = [esi|R] [id=3|parameters=3|arguments_stack_height=0|[stack:-3];[stack:-2];[stack:-1];[stack:1]] {[esi|R];[stack:1]} [hir:v11] <|@ | |
30 gap () () () () [hir:v11] <|@ | |
32 lazy-bailout = [id=3|parameters=3|arguments_stack_height=0|[stack:-3];[stack:-2];[stack:-1];[stack:1]] [hir:v11] <|@ | |
34 gap () ([eax|R] = [stack:-2];) () () [hir:v11] <|@ | |
36 check-smi [eax|R]= [eax|R] [id=3|parameters=3|arguments_stack_height=0|[stack:-3];[stack:-2];[stack:-1];[stack:1]] [hir:s18] <|@ | |
38 gap ((0) = [eax|R];) ([ecx|R] = [stack:-1];) () () [hir:s18] <|@ | |
40 check-smi [ecx|R]= [ecx|R] [id=3|parameters=3|arguments_stack_height=0|[stack:-3];[stack:-2];[stack:-1];[stack:1]] [hir:s19] <|@ | |
42 gap ((0) = [ecx|R];) ([ecx|R];) () () [hir:s19] <|@ | |
44 add-i [ecx|R]= [ecx|R] [eax|R] [id=3|parameters=3|arguments_stack_height=0|[stack:-3];[stack:-2];[stack:-1];[stack:1]] [hir:s13] <|@ | |
46 gap ((0) = [ecx|R];) ([ecx|R];) () () [hir:s13] <|@ | |
48 dummy-use [ecx|R]= [ecx|R] [hir:t20] <|@ | |
50 gap ((0) = [ecx|R];) ([eax|R] = [ecx|R];) () () [hir:t20] <|@ | |
52 return = [eax|R] NULL [constant:15] [hir:v16] <|@ | |
54 gap () () () () [hir:v16] <|@ | |
end_LIR | |
end_block | |
end_cfg | |
begin_intervals | |
name "L_Populate pointer maps" | |
-7 fixed "xmm1" -7 -1 [28, 29[ "" | |
-8 fixed "xmm2" -8 -1 [28, 29[ "" | |
-9 fixed "xmm3" -9 -1 [28, 29[ "" | |
-10 fixed "xmm4" -10 -1 [28, 29[ "" | |
-11 fixed "xmm5" -11 -1 [28, 29[ "" | |
-12 fixed "xmm6" -12 -1 [28, 29[ "" | |
-13 fixed "xmm7" -13 -1 [28, 29[ "" | |
-1 fixed "eax" -1 -1 [28, 29[ [50, 53[ "" | |
-2 fixed "ecx" -2 -1 [28, 29[ "" | |
-3 fixed "edx" -3 -1 [28, 29[ "" | |
-4 fixed "ebx" -4 -1 [28, 29[ "" | |
-5 fixed "esi" -5 -1 [26, 29[ "" | |
-6 fixed "edi" -6 -1 [28, 29[ "" | |
1 object "eax" 1 -1 [4, 28[ 4 M "" | |
2 object "stack:-3" 2 -1 [10, 45[ "" | |
3 object "stack:-2" 3 -1 [14, 45[ "" | |
4 object "stack:-1" 4 -1 [18, 45[ "" | |
13 object "ecx" 13 -1 [42, 46[ 42 M 44 M 44 M "" | |
18 object "eax" 18 -1 [34, 44[ 34 M 36 M 37 M 44 M "" | |
19 object "ecx" 19 -1 [38, 42[ 38 M 40 M 41 M "" | |
20 object "ecx" 20 -1 [46, 50[ 46 M 48 M 49 M "" | |
21 object "stack:1" 1 -1 [28, 45[ "" | |
end_intervals | |
begin_cfg | |
name "L_Connect ranges" | |
begin_block | |
name "B0" | |
from_bci -1 | |
to_bci -1 | |
predecessors | |
successors "B1" | |
xhandlers | |
flags | |
loop_depth 0 | |
first_lir_id 0 | |
last_lir_id 22 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v0 BlockEntry type:Tagged <|@ | |
0 4 t1 Context type:Tagged <|@ | |
0 2 t2 Parameter 0 type:Tagged <|@ | |
0 3 t3 Parameter 1 type:Tagged <|@ | |
0 3 t4 Parameter 2 type:Tagged <|@ | |
0 0 t5 ArgumentsObject t2 t3 t4 type:Tagged <|@ | |
0 0 v7 Simulate id=2 var[3] = t1, var[2] = t4, var[1] = t3, var[0] = t2 type:Tagged <|@ | |
0 0 v8 Goto B1 type:Tagged <|@ | |
end_HIR | |
begin_LIR | |
0 label () () () () [hir:v0] <|@ | |
2 gap () () () () [hir:v0] <|@ | |
4 context [eax|R]= [hir:t1] <|@ | |
6 gap ([stack:1] = [eax|R];) () () () [hir:t1] <|@ | |
8 parameter [stack:-3]= [hir:t2] <|@ | |
10 gap () ([stack:-3];) () () [hir:t2] <|@ | |
12 parameter [stack:-2]= [hir:t3] <|@ | |
14 gap () ([stack:-2];) () () [hir:t3] <|@ | |
16 parameter [stack:-1]= [hir:t4] <|@ | |
18 gap () ([stack:-1];) () () [hir:t4] <|@ | |
20 gap () () () () [hir:v8] <|@ | |
22 goto B1 [hir:v8] <|@ | |
end_LIR | |
end_block | |
begin_block | |
name "B1" | |
from_bci -1 | |
to_bci -1 | |
predecessors "B0" | |
successors | |
xhandlers | |
flags | |
dominator "B0" | |
loop_depth 0 | |
first_lir_id 24 | |
last_lir_id 54 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v9 BlockEntry type:Tagged <|@ | |
0 0 v10 Simulate id=3 type:Tagged <|@ | |
0 0 v11 StackCheck t1 changes[NewSpacePromotion] type:Tagged <|@ | |
0 1 s18 Change t3 t to s -0? allow-undefined-as-nan type:TaggedNumber <|@ | |
0 1 s19 Change t4 t to s allow-undefined-as-nan type:TaggedNumber <|@ | |
0 1 s13 Add s18 s19 ! type:TaggedNumber <|@ | |
0 1 s15 Constant 2 type:Smi <|@ | |
0 1 t20 Change s13 s to t <|@ | |
0 0 v16 Return t20 (pop s15 values) type:Tagged <|@ | |
end_HIR | |
begin_LIR | |
24 label () () () () [hir:v9] <|@ | |
26 gap () ([esi|R] = [eax|R];) () () [hir:v9] <|@ | |
28 stack-check = [esi|R] [id=3|parameters=3|arguments_stack_height=0|[stack:-3];[stack:-2];[stack:-1];[stack:1]] {[esi|R];[stack:1]} [hir:v11] <|@ | |
30 gap () () () () [hir:v11] <|@ | |
32 lazy-bailout = [id=3|parameters=3|arguments_stack_height=0|[stack:-3];[stack:-2];[stack:-1];[stack:1]] [hir:v11] <|@ | |
34 gap () ([eax|R] = [stack:-2];) () () [hir:v11] <|@ | |
36 check-smi [eax|R]= [eax|R] [id=3|parameters=3|arguments_stack_height=0|[stack:-3];[stack:-2];[stack:-1];[stack:1]] [hir:s18] <|@ | |
38 gap ((0) = [eax|R];) ([ecx|R] = [stack:-1];) () () [hir:s18] <|@ | |
40 check-smi [ecx|R]= [ecx|R] [id=3|parameters=3|arguments_stack_height=0|[stack:-3];[stack:-2];[stack:-1];[stack:1]] [hir:s19] <|@ | |
42 gap ((0) = [ecx|R];) ([ecx|R];) () () [hir:s19] <|@ | |
44 add-i [ecx|R]= [ecx|R] [eax|R] [id=3|parameters=3|arguments_stack_height=0|[stack:-3];[stack:-2];[stack:-1];[stack:1]] [hir:s13] <|@ | |
46 gap ((0) = [ecx|R];) ([ecx|R];) () () [hir:s13] <|@ | |
48 dummy-use [ecx|R]= [ecx|R] [hir:t20] <|@ | |
50 gap ((0) = [ecx|R];) ([eax|R] = [ecx|R];) () () [hir:t20] <|@ | |
52 return = [eax|R] NULL [constant:15] [hir:v16] <|@ | |
54 gap () () () () [hir:v16] <|@ | |
end_LIR | |
end_block | |
end_cfg | |
begin_intervals | |
name "L_Connect ranges" | |
-7 fixed "xmm1" -7 -1 [28, 29[ "" | |
-8 fixed "xmm2" -8 -1 [28, 29[ "" | |
-9 fixed "xmm3" -9 -1 [28, 29[ "" | |
-10 fixed "xmm4" -10 -1 [28, 29[ "" | |
-11 fixed "xmm5" -11 -1 [28, 29[ "" | |
-12 fixed "xmm6" -12 -1 [28, 29[ "" | |
-13 fixed "xmm7" -13 -1 [28, 29[ "" | |
-1 fixed "eax" -1 -1 [28, 29[ [50, 53[ "" | |
-2 fixed "ecx" -2 -1 [28, 29[ "" | |
-3 fixed "edx" -3 -1 [28, 29[ "" | |
-4 fixed "ebx" -4 -1 [28, 29[ "" | |
-5 fixed "esi" -5 -1 [26, 29[ "" | |
-6 fixed "edi" -6 -1 [28, 29[ "" | |
1 object "eax" 1 -1 [4, 28[ 4 M "" | |
2 object "stack:-3" 2 -1 [10, 45[ "" | |
3 object "stack:-2" 3 -1 [14, 45[ "" | |
4 object "stack:-1" 4 -1 [18, 45[ "" | |
13 object "ecx" 13 -1 [42, 46[ 42 M 44 M 44 M "" | |
18 object "eax" 18 -1 [34, 44[ 34 M 36 M 37 M 44 M "" | |
19 object "ecx" 19 -1 [38, 42[ 38 M 40 M 41 M "" | |
20 object "ecx" 20 -1 [46, 50[ 46 M 48 M 49 M "" | |
21 object "stack:1" 1 -1 [28, 45[ "" | |
end_intervals | |
begin_cfg | |
name "L_Resolve control flow" | |
begin_block | |
name "B0" | |
from_bci -1 | |
to_bci -1 | |
predecessors | |
successors "B1" | |
xhandlers | |
flags | |
loop_depth 0 | |
first_lir_id 0 | |
last_lir_id 22 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v0 BlockEntry type:Tagged <|@ | |
0 4 t1 Context type:Tagged <|@ | |
0 2 t2 Parameter 0 type:Tagged <|@ | |
0 3 t3 Parameter 1 type:Tagged <|@ | |
0 3 t4 Parameter 2 type:Tagged <|@ | |
0 0 t5 ArgumentsObject t2 t3 t4 type:Tagged <|@ | |
0 0 v7 Simulate id=2 var[3] = t1, var[2] = t4, var[1] = t3, var[0] = t2 type:Tagged <|@ | |
0 0 v8 Goto B1 type:Tagged <|@ | |
end_HIR | |
begin_LIR | |
0 label () () () () [hir:v0] <|@ | |
2 gap () () () () [hir:v0] <|@ | |
4 context [eax|R]= [hir:t1] <|@ | |
6 gap ([stack:1] = [eax|R];) () () () [hir:t1] <|@ | |
8 parameter [stack:-3]= [hir:t2] <|@ | |
10 gap () ([stack:-3];) () () [hir:t2] <|@ | |
12 parameter [stack:-2]= [hir:t3] <|@ | |
14 gap () ([stack:-2];) () () [hir:t3] <|@ | |
16 parameter [stack:-1]= [hir:t4] <|@ | |
18 gap () ([stack:-1];) () () [hir:t4] <|@ | |
20 gap () () () () [hir:v8] <|@ | |
22 goto B1 [hir:v8] <|@ | |
end_LIR | |
end_block | |
begin_block | |
name "B1" | |
from_bci -1 | |
to_bci -1 | |
predecessors "B0" | |
successors | |
xhandlers | |
flags | |
dominator "B0" | |
loop_depth 0 | |
first_lir_id 24 | |
last_lir_id 54 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v9 BlockEntry type:Tagged <|@ | |
0 0 v10 Simulate id=3 type:Tagged <|@ | |
0 0 v11 StackCheck t1 changes[NewSpacePromotion] type:Tagged <|@ | |
0 1 s18 Change t3 t to s -0? allow-undefined-as-nan type:TaggedNumber <|@ | |
0 1 s19 Change t4 t to s allow-undefined-as-nan type:TaggedNumber <|@ | |
0 1 s13 Add s18 s19 ! type:TaggedNumber <|@ | |
0 1 s15 Constant 2 type:Smi <|@ | |
0 1 t20 Change s13 s to t <|@ | |
0 0 v16 Return t20 (pop s15 values) type:Tagged <|@ | |
end_HIR | |
begin_LIR | |
24 label () () () () [hir:v9] <|@ | |
26 gap () ([esi|R] = [eax|R];) () () [hir:v9] <|@ | |
28 stack-check = [esi|R] [id=3|parameters=3|arguments_stack_height=0|[stack:-3];[stack:-2];[stack:-1];[stack:1]] {[esi|R];[stack:1]} [hir:v11] <|@ | |
30 gap () () () () [hir:v11] <|@ | |
32 lazy-bailout = [id=3|parameters=3|arguments_stack_height=0|[stack:-3];[stack:-2];[stack:-1];[stack:1]] [hir:v11] <|@ | |
34 gap () ([eax|R] = [stack:-2];) () () [hir:v11] <|@ | |
36 check-smi [eax|R]= [eax|R] [id=3|parameters=3|arguments_stack_height=0|[stack:-3];[stack:-2];[stack:-1];[stack:1]] [hir:s18] <|@ | |
38 gap ((0) = [eax|R];) ([ecx|R] = [stack:-1];) () () [hir:s18] <|@ | |
40 check-smi [ecx|R]= [ecx|R] [id=3|parameters=3|arguments_stack_height=0|[stack:-3];[stack:-2];[stack:-1];[stack:1]] [hir:s19] <|@ | |
42 gap ((0) = [ecx|R];) ([ecx|R];) () () [hir:s19] <|@ | |
44 add-i [ecx|R]= [ecx|R] [eax|R] [id=3|parameters=3|arguments_stack_height=0|[stack:-3];[stack:-2];[stack:-1];[stack:1]] [hir:s13] <|@ | |
46 gap ((0) = [ecx|R];) ([ecx|R];) () () [hir:s13] <|@ | |
48 dummy-use [ecx|R]= [ecx|R] [hir:t20] <|@ | |
50 gap ((0) = [ecx|R];) ([eax|R] = [ecx|R];) () () [hir:t20] <|@ | |
52 return = [eax|R] NULL [constant:15] [hir:v16] <|@ | |
54 gap () () () () [hir:v16] <|@ | |
end_LIR | |
end_block | |
end_cfg | |
begin_intervals | |
name "L_Resolve control flow" | |
-7 fixed "xmm1" -7 -1 [28, 29[ "" | |
-8 fixed "xmm2" -8 -1 [28, 29[ "" | |
-9 fixed "xmm3" -9 -1 [28, 29[ "" | |
-10 fixed "xmm4" -10 -1 [28, 29[ "" | |
-11 fixed "xmm5" -11 -1 [28, 29[ "" | |
-12 fixed "xmm6" -12 -1 [28, 29[ "" | |
-13 fixed "xmm7" -13 -1 [28, 29[ "" | |
-1 fixed "eax" -1 -1 [28, 29[ [50, 53[ "" | |
-2 fixed "ecx" -2 -1 [28, 29[ "" | |
-3 fixed "edx" -3 -1 [28, 29[ "" | |
-4 fixed "ebx" -4 -1 [28, 29[ "" | |
-5 fixed "esi" -5 -1 [26, 29[ "" | |
-6 fixed "edi" -6 -1 [28, 29[ "" | |
1 object "eax" 1 -1 [4, 28[ 4 M "" | |
2 object "stack:-3" 2 -1 [10, 45[ "" | |
3 object "stack:-2" 3 -1 [14, 45[ "" | |
4 object "stack:-1" 4 -1 [18, 45[ "" | |
13 object "ecx" 13 -1 [42, 46[ 42 M 44 M 44 M "" | |
18 object "eax" 18 -1 [34, 44[ 34 M 36 M 37 M 44 M "" | |
19 object "ecx" 19 -1 [38, 42[ 38 M 40 M 41 M "" | |
20 object "ecx" 20 -1 [46, 50[ 46 M 48 M 49 M "" | |
21 object "stack:1" 1 -1 [28, 45[ "" | |
end_intervals | |
begin_cfg | |
name "L_Mark empty blocks" | |
begin_block | |
name "B0" | |
from_bci -1 | |
to_bci -1 | |
predecessors | |
successors "B1" | |
xhandlers | |
flags | |
loop_depth 0 | |
first_lir_id 0 | |
last_lir_id 22 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v0 BlockEntry type:Tagged <|@ | |
0 4 t1 Context type:Tagged <|@ | |
0 2 t2 Parameter 0 type:Tagged <|@ | |
0 3 t3 Parameter 1 type:Tagged <|@ | |
0 3 t4 Parameter 2 type:Tagged <|@ | |
0 0 t5 ArgumentsObject t2 t3 t4 type:Tagged <|@ | |
0 0 v7 Simulate id=2 var[3] = t1, var[2] = t4, var[1] = t3, var[0] = t2 type:Tagged <|@ | |
0 0 v8 Goto B1 type:Tagged <|@ | |
end_HIR | |
begin_LIR | |
0 label () () () () [hir:v0] <|@ | |
2 gap () () () () [hir:v0] <|@ | |
4 context [eax|R]= [hir:t1] <|@ | |
6 gap ([stack:1] = [eax|R];) () () () [hir:t1] <|@ | |
8 parameter [stack:-3]= [hir:t2] <|@ | |
10 gap () ([stack:-3];) () () [hir:t2] <|@ | |
12 parameter [stack:-2]= [hir:t3] <|@ | |
14 gap () ([stack:-2];) () () [hir:t3] <|@ | |
16 parameter [stack:-1]= [hir:t4] <|@ | |
18 gap () ([stack:-1];) () () [hir:t4] <|@ | |
20 gap () () () () [hir:v8] <|@ | |
22 goto B1 [hir:v8] <|@ | |
end_LIR | |
end_block | |
begin_block | |
name "B1" | |
from_bci -1 | |
to_bci -1 | |
predecessors "B0" | |
successors | |
xhandlers | |
flags | |
dominator "B0" | |
loop_depth 0 | |
first_lir_id 24 | |
last_lir_id 54 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v9 BlockEntry type:Tagged <|@ | |
0 0 v10 Simulate id=3 type:Tagged <|@ | |
0 0 v11 StackCheck t1 changes[NewSpacePromotion] type:Tagged <|@ | |
0 1 s18 Change t3 t to s -0? allow-undefined-as-nan type:TaggedNumber <|@ | |
0 1 s19 Change t4 t to s allow-undefined-as-nan type:TaggedNumber <|@ | |
0 1 s13 Add s18 s19 ! type:TaggedNumber <|@ | |
0 1 s15 Constant 2 type:Smi <|@ | |
0 1 t20 Change s13 s to t <|@ | |
0 0 v16 Return t20 (pop s15 values) type:Tagged <|@ | |
end_HIR | |
begin_LIR | |
24 label () () () () [hir:v9] <|@ | |
26 gap () ([esi|R] = [eax|R];) () () [hir:v9] <|@ | |
28 stack-check = [esi|R] [id=3|parameters=3|arguments_stack_height=0|[stack:-3];[stack:-2];[stack:-1];[stack:1]] {[esi|R];[stack:1]} [hir:v11] <|@ | |
30 gap () () () () [hir:v11] <|@ | |
32 lazy-bailout = [id=3|parameters=3|arguments_stack_height=0|[stack:-3];[stack:-2];[stack:-1];[stack:1]] [hir:v11] <|@ | |
34 gap () ([eax|R] = [stack:-2];) () () [hir:v11] <|@ | |
36 check-smi [eax|R]= [eax|R] [id=3|parameters=3|arguments_stack_height=0|[stack:-3];[stack:-2];[stack:-1];[stack:1]] [hir:s18] <|@ | |
38 gap ((0) = [eax|R];) ([ecx|R] = [stack:-1];) () () [hir:s18] <|@ | |
40 check-smi [ecx|R]= [ecx|R] [id=3|parameters=3|arguments_stack_height=0|[stack:-3];[stack:-2];[stack:-1];[stack:1]] [hir:s19] <|@ | |
42 gap ((0) = [ecx|R];) ([ecx|R];) () () [hir:s19] <|@ | |
44 add-i [ecx|R]= [ecx|R] [eax|R] [id=3|parameters=3|arguments_stack_height=0|[stack:-3];[stack:-2];[stack:-1];[stack:1]] [hir:s13] <|@ | |
46 gap ((0) = [ecx|R];) ([ecx|R];) () () [hir:s13] <|@ | |
48 dummy-use [ecx|R]= [ecx|R] [hir:t20] <|@ | |
50 gap ((0) = [ecx|R];) ([eax|R] = [ecx|R];) () () [hir:t20] <|@ | |
52 return = [eax|R] NULL [constant:15] [hir:v16] <|@ | |
54 gap () () () () [hir:v16] <|@ | |
end_LIR | |
end_block | |
end_cfg | |
begin_cfg | |
name "Z_Code generation" | |
begin_block | |
name "B0" | |
from_bci -1 | |
to_bci -1 | |
predecessors | |
successors "B1" | |
xhandlers | |
flags | |
loop_depth 0 | |
first_lir_id 0 | |
last_lir_id 22 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v0 BlockEntry type:Tagged <|@ | |
0 4 t1 Context type:Tagged <|@ | |
0 2 t2 Parameter 0 type:Tagged <|@ | |
0 3 t3 Parameter 1 type:Tagged <|@ | |
0 3 t4 Parameter 2 type:Tagged <|@ | |
0 0 t5 ArgumentsObject t2 t3 t4 type:Tagged <|@ | |
0 0 v7 Simulate id=2 var[3] = t1, var[2] = t4, var[1] = t3, var[0] = t2 type:Tagged <|@ | |
0 0 v8 Goto B1 type:Tagged <|@ | |
end_HIR | |
begin_LIR | |
0 label () () () () [hir:v0] <|@ | |
2 gap () () () () [hir:v0] <|@ | |
4 context [eax|R]= [hir:t1] <|@ | |
6 gap ([stack:1] = [eax|R];) () () () [hir:t1] <|@ | |
8 parameter [stack:-3]= [hir:t2] <|@ | |
10 gap () ([stack:-3];) () () [hir:t2] <|@ | |
12 parameter [stack:-2]= [hir:t3] <|@ | |
14 gap () ([stack:-2];) () () [hir:t3] <|@ | |
16 parameter [stack:-1]= [hir:t4] <|@ | |
18 gap () ([stack:-1];) () () [hir:t4] <|@ | |
20 gap () () () () [hir:v8] <|@ | |
22 goto B1 [hir:v8] <|@ | |
end_LIR | |
end_block | |
begin_block | |
name "B1" | |
from_bci -1 | |
to_bci -1 | |
predecessors "B0" | |
successors | |
xhandlers | |
flags | |
dominator "B0" | |
loop_depth 0 | |
first_lir_id 24 | |
last_lir_id 54 | |
begin_states | |
begin_locals | |
size 0 | |
method "None" | |
end_locals | |
end_states | |
begin_HIR | |
0 0 v9 BlockEntry type:Tagged <|@ | |
0 0 v10 Simulate id=3 type:Tagged <|@ | |
0 0 v11 StackCheck t1 changes[NewSpacePromotion] type:Tagged <|@ | |
0 1 s18 Change t3 t to s -0? allow-undefined-as-nan type:TaggedNumber <|@ | |
0 1 s19 Change t4 t to s allow-undefined-as-nan type:TaggedNumber <|@ | |
0 1 s13 Add s18 s19 ! type:TaggedNumber <|@ | |
0 1 s15 Constant 2 type:Smi <|@ | |
0 1 t20 Change s13 s to t <|@ | |
0 0 v16 Return t20 (pop s15 values) type:Tagged <|@ | |
end_HIR | |
begin_LIR | |
24 label () () () () [hir:v9] <|@ | |
26 gap () ([esi|R] = [eax|R];) () () [hir:v9] <|@ | |
28 stack-check = [esi|R] [id=3|parameters=3|arguments_stack_height=0|[stack:-3];[stack:-2];[stack:-1];[stack:1]] {[esi|R];[stack:1]} [hir:v11] <|@ | |
30 gap () () () () [hir:v11] <|@ | |
32 lazy-bailout = [id=3|deopt_id=0|parameters=3|arguments_stack_height=0|[stack:-3];[stack:-2];[stack:-1];[stack:1]] [hir:v11] <|@ | |
34 gap () ([eax|R] = [stack:-2];) () () [hir:v11] <|@ | |
36 check-smi [eax|R]= [eax|R] [id=3|deopt_id=1|parameters=3|arguments_stack_height=0|[stack:-3];[stack:-2];[stack:-1];[stack:1]] [hir:s18] <|@ | |
38 gap ((0) = [eax|R];) ([ecx|R] = [stack:-1];) () () [hir:s18] <|@ | |
40 check-smi [ecx|R]= [ecx|R] [id=3|deopt_id=2|parameters=3|arguments_stack_height=0|[stack:-3];[stack:-2];[stack:-1];[stack:1]] [hir:s19] <|@ | |
42 gap ((0) = [ecx|R];) ([ecx|R];) () () [hir:s19] <|@ | |
44 add-i [ecx|R]= [ecx|R] [eax|R] [id=3|deopt_id=3|parameters=3|arguments_stack_height=0|[stack:-3];[stack:-2];[stack:-1];[stack:1]] [hir:s13] <|@ | |
46 gap ((0) = [ecx|R];) ([ecx|R];) () () [hir:s13] <|@ | |
48 dummy-use [ecx|R]= [ecx|R] [hir:t20] <|@ | |
50 gap ((0) = [ecx|R];) ([eax|R] = [ecx|R];) () () [hir:t20] <|@ | |
52 return = [eax|R] NULL [constant:15] [hir:v16] <|@ | |
54 gap () () () () [hir:v16] <|@ | |
end_LIR | |
end_block | |
end_cfg |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment