| main = #lib::main; |
| [@vm.bytecode= |
| ComponentBytecodeMetadata { |
| |
| Bytecode (version: stable) |
| Main library: #lib |
| |
| } |
| ] [@vm.bytecode= |
| MembersBytecodeMetadata { |
| |
| Members { |
| |
| Function 'foo1', static, reflectable, debuggable |
| parameters [dart:core::int 'x'] (required: 1) |
| return-type dart:core::int |
| |
| |
| Bytecode { |
| Entry 2 |
| CheckStack 0 |
| PushNull |
| PopLocal r0 |
| Push FP[-5] |
| PopLocal r1 |
| Push r1 |
| PushInt 1 |
| InterfaceCall 2, CP#0 |
| JumpIfTrue L1 |
| Push r1 |
| PushInt 2 |
| InterfaceCall 2, CP#0 |
| JumpIfTrue L2 |
| Push r1 |
| PushInt 3 |
| InterfaceCall 2, CP#0 |
| JumpIfTrue L3 |
| Jump L4 |
| L1: |
| PushInt 11 |
| PopLocal r0 |
| Jump L4 |
| L2: |
| PushInt 22 |
| PopLocal r0 |
| Jump L4 |
| L3: |
| PushInt 33 |
| PopLocal r0 |
| Jump L4 |
| L4: |
| Push r0 |
| ReturnTOS |
| } |
| ConstantPool { |
| [0] = InterfaceCall 'dart:core::Object::==', ArgDesc num-args 2, num-type-args 0, names [] |
| [1] = Reserved |
| } |
| |
| |
| Function 'foo2', static, reflectable, debuggable |
| parameters [dart:core::int 'x'] (required: 1) |
| return-type dart:core::int |
| |
| |
| Bytecode { |
| Entry 2 |
| CheckStack 0 |
| PushNull |
| PopLocal r0 |
| Push FP[-5] |
| PopLocal r1 |
| Push r1 |
| PushInt 1 |
| InterfaceCall 2, CP#0 |
| JumpIfTrue L1 |
| Push r1 |
| PushInt 2 |
| InterfaceCall 2, CP#0 |
| JumpIfTrue L1 |
| Push r1 |
| PushInt 3 |
| InterfaceCall 2, CP#0 |
| JumpIfTrue L1 |
| Push r1 |
| PushInt 4 |
| InterfaceCall 2, CP#0 |
| JumpIfTrue L2 |
| Push r1 |
| PushInt 5 |
| InterfaceCall 2, CP#0 |
| JumpIfTrue L2 |
| Push r1 |
| PushInt 6 |
| InterfaceCall 2, CP#0 |
| JumpIfTrue L2 |
| Jump L3 |
| L1: |
| PushInt 11 |
| PopLocal r0 |
| Jump L4 |
| L2: |
| PushInt 22 |
| PopLocal r0 |
| Jump L4 |
| L3: |
| PushInt 33 |
| PopLocal r0 |
| L4: |
| Push r0 |
| ReturnTOS |
| } |
| ConstantPool { |
| [0] = InterfaceCall 'dart:core::Object::==', ArgDesc num-args 2, num-type-args 0, names [] |
| [1] = Reserved |
| } |
| |
| |
| Function 'foo3', static, reflectable, debuggable |
| parameters [dart:core::int 'x'] (required: 1) |
| return-type dart:core::int |
| |
| |
| Bytecode { |
| Entry 2 |
| CheckStack 0 |
| PushNull |
| PopLocal r0 |
| Push FP[-5] |
| PopLocal r1 |
| Push r1 |
| PushInt 1 |
| InterfaceCall 2, CP#0 |
| JumpIfTrue L1 |
| Push r1 |
| PushInt 2 |
| InterfaceCall 2, CP#0 |
| JumpIfTrue L1 |
| Push r1 |
| PushInt 3 |
| InterfaceCall 2, CP#0 |
| JumpIfTrue L1 |
| Push r1 |
| PushInt 4 |
| InterfaceCall 2, CP#0 |
| JumpIfTrue L2 |
| Push r1 |
| PushInt 5 |
| InterfaceCall 2, CP#0 |
| JumpIfTrue L2 |
| Push r1 |
| PushInt 6 |
| InterfaceCall 2, CP#0 |
| JumpIfTrue L2 |
| Jump L3 |
| L1: |
| PushInt 11 |
| PopLocal r0 |
| Jump L2 |
| L2: |
| PushInt 22 |
| PopLocal r0 |
| PushInt 42 |
| ReturnTOS |
| L3: |
| PushInt 33 |
| PopLocal r0 |
| Push r0 |
| ReturnTOS |
| } |
| ConstantPool { |
| [0] = InterfaceCall 'dart:core::Object::==', ArgDesc num-args 2, num-type-args 0, names [] |
| [1] = Reserved |
| } |
| |
| |
| Function 'main', static, reflectable, debuggable |
| parameters [] (required: 0) |
| return-type dynamic |
| |
| |
| Bytecode { |
| Entry 0 |
| CheckStack 0 |
| PushNull |
| ReturnTOS |
| } |
| ConstantPool { |
| } |
| |
| } |
| |
| } |
| ]library #lib from "#lib" as #lib { |
| |
| static method foo1(dart.core::int x) → dart.core::int { |
| dart.core::int y; |
| #L1: |
| switch(x) { |
| #L2: |
| case #C1: |
| { |
| y = 11; |
| break #L1; |
| } |
| #L3: |
| case #C2: |
| { |
| y = 22; |
| break #L1; |
| } |
| #L4: |
| case #C3: |
| { |
| y = 33; |
| break #L1; |
| } |
| } |
| return y; |
| } |
| static method foo2(dart.core::int x) → dart.core::int { |
| dart.core::int y; |
| #L5: |
| switch(x) { |
| #L6: |
| case #C1: |
| case #C2: |
| case #C3: |
| { |
| y = 11; |
| break #L5; |
| } |
| #L7: |
| case #C4: |
| case #C5: |
| case #C6: |
| { |
| y = 22; |
| break #L5; |
| } |
| #L8: |
| default: |
| { |
| y = 33; |
| } |
| } |
| return y; |
| } |
| static method foo3(dart.core::int x) → dart.core::int { |
| dart.core::int y; |
| switch(x) { |
| #L9: |
| case #C1: |
| case #C2: |
| case #C3: |
| { |
| y = 11; |
| continue #L10; |
| } |
| #L10: |
| case #C4: |
| case #C5: |
| case #C6: |
| { |
| y = 22; |
| return 42; |
| } |
| #L11: |
| default: |
| { |
| y = 33; |
| } |
| } |
| return y; |
| } |
| static method main() → dynamic {} |
| } |
| constants { |
| #C1 = 1 |
| #C2 = 2 |
| #C3 = 3 |
| #C4 = 4 |
| #C5 = 5 |
| #C6 = 6 |
| } |