blob: 82d80450445446c0bc4af598c7d0cc3b1059dcf9 [file] [log] [blame]
Bytecode
Dynamic Module Entry Point: DART_SDK/pkg/dart2bytecode/testcases/loops.dart::main
Library 'DART_SDK/pkg/dart2bytecode/testcases/loops.dart'
name '#lib'
script 'DART_SDK/pkg/dart2bytecode/testcases/loops.dart'
Class '', script = 'DART_SDK/pkg/dart2bytecode/testcases/loops.dart'
Function 'testFor', static, reflectable, debuggable
parameters [dart:core::List < dart:core::int > 'list'] (required: 1)
return-type dart:core::int
Bytecode {
Entry 2
CheckStack 0
PushInt 0
PopLocal r0
PushInt 0
PopLocal r1
L2:
CheckStack 1
Push r1
Push FP[-5]
InterfaceCall CP#0, 1
CompareIntLt
JumpIfFalse L1
Push r0
Push FP[-5]
Push r1
InterfaceCall CP#2, 2
AddInt
PopLocal r0
Push r1
PushInt 1
AddInt
StoreLocal r1
Drop1
Jump L2
L1:
Push r0
ReturnTOS
}
ConstantPool {
[0] = InterfaceCall 'dart:core::List::get:length', ArgDesc num-args 1, num-type-args 0, names []
[1] = Reserved
[2] = InterfaceCall 'dart:core::List::[]', ArgDesc num-args 2, num-type-args 0, names []
[3] = Reserved
}
Function 'testForBreak', static, reflectable, debuggable
parameters [dart:core::List < dart:core::int > 'list'] (required: 1)
return-type dart:core::int
Bytecode {
Entry 2
CheckStack 0
PushInt 0
PopLocal r0
PushInt 0
PopLocal r1
L3:
CheckStack 1
Push r1
PushInt 0
CompareIntGe
JumpIfFalse L1
Push r1
Push FP[-5]
InterfaceCall CP#0, 1
CompareIntGe
JumpIfFalse L2
Jump L1
L2:
Push r0
Push FP[-5]
Push r1
InterfaceCall CP#2, 2
AddInt
PopLocal r0
Push r1
PushInt 1
AddInt
StoreLocal r1
Drop1
Jump L3
L1:
Push r0
ReturnTOS
}
ConstantPool {
[0] = InterfaceCall 'dart:core::List::get:length', ArgDesc num-args 1, num-type-args 0, names []
[1] = Reserved
[2] = InterfaceCall 'dart:core::List::[]', ArgDesc num-args 2, num-type-args 0, names []
[3] = Reserved
}
Function 'testForContinue', static, reflectable, debuggable
parameters [dart:core::List < dart:core::int > 'list'] (required: 1)
return-type dart:core::int
Bytecode {
Entry 2
CheckStack 0
PushInt 0
PopLocal r0
PushInt 100
NegateInt
PopLocal r1
L4:
CheckStack 1
Push r1
Push FP[-5]
InterfaceCall CP#0, 1
CompareIntLt
JumpIfFalse L1
Push r1
PushInt 0
CompareIntLt
JumpIfFalse L2
Jump L3
L2:
Push r0
Push FP[-5]
Push r1
InterfaceCall CP#2, 2
AddInt
PopLocal r0
L3:
Push r1
PushInt 1
AddInt
StoreLocal r1
Drop1
Jump L4
L1:
Push r0
ReturnTOS
}
ConstantPool {
[0] = InterfaceCall 'dart:core::List::get:length', ArgDesc num-args 1, num-type-args 0, names []
[1] = Reserved
[2] = InterfaceCall 'dart:core::List::[]', ArgDesc num-args 2, num-type-args 0, names []
[3] = Reserved
}
Function 'testWhile', static, reflectable, debuggable
parameters [dart:core::List < dart:core::int > 'list'] (required: 1)
return-type dart:core::int
Bytecode {
Entry 4
CheckStack 0
PushInt 0
PopLocal r0
PushInt 0
PopLocal r1
L2:
CheckStack 1
Push r1
Push FP[-5]
InterfaceCall CP#0, 1
CompareIntLt
JumpIfFalse L1
Push r0
Push FP[-5]
Push r1
PopLocal r2
Push r2
PushInt 1
AddInt
StoreLocal r1
PopLocal r3
Push r2
InterfaceCall CP#2, 2
AddInt
PopLocal r0
Jump L2
L1:
Push r0
ReturnTOS
}
ConstantPool {
[0] = InterfaceCall 'dart:core::List::get:length', ArgDesc num-args 1, num-type-args 0, names []
[1] = Reserved
[2] = InterfaceCall 'dart:core::List::[]', ArgDesc num-args 2, num-type-args 0, names []
[3] = Reserved
}
Function 'testDoWhile', static, reflectable, debuggable
parameters [dart:core::List < dart:core::int > 'list'] (required: 1)
return-type dart:core::int
Bytecode {
Entry 2
CheckStack 0
PushInt 0
PopLocal r0
PushInt 0
PopLocal r1
L1:
CheckStack 1
Push r0
Push FP[-5]
Push r1
InterfaceCall CP#0, 2
AddInt
PopLocal r0
Push r1
PushInt 1
AddInt
PopLocal r1
Push r1
Push FP[-5]
InterfaceCall CP#2, 1
CompareIntLt
JumpIfTrue L1
Push r0
ReturnTOS
}
ConstantPool {
[0] = InterfaceCall 'dart:core::List::[]', ArgDesc num-args 2, num-type-args 0, names []
[1] = Reserved
[2] = InterfaceCall 'dart:core::List::get:length', ArgDesc num-args 1, num-type-args 0, names []
[3] = Reserved
}
Function 'testForIn', static, reflectable, debuggable
parameters [dart:core::List < dart:core::int > 'list'] (required: 1)
return-type dart:core::int
Bytecode {
Entry 3
CheckStack 0
PushInt 0
PopLocal r0
Push FP[-5]
InterfaceCall CP#0, 1
PopLocal r1
L2:
CheckStack 1
Push r1
InterfaceCall CP#2, 1
JumpIfFalse L1
Push r1
InterfaceCall CP#4, 1
PopLocal r2
Push r0
Push r2
AddInt
PopLocal r0
Jump L2
L1:
Push r0
ReturnTOS
}
ConstantPool {
[0] = InterfaceCall 'dart:core::Iterable::get:iterator', ArgDesc num-args 1, num-type-args 0, names []
[1] = Reserved
[2] = InterfaceCall 'dart:core::Iterator::moveNext', ArgDesc num-args 1, num-type-args 0, names []
[3] = Reserved
[4] = InterfaceCall 'dart:core::Iterator::get:current', ArgDesc num-args 1, num-type-args 0, names []
[5] = Reserved
}
Function 'testForInWithOuterVar', static, reflectable, debuggable
parameters [dart:core::List < dart:core::int > 'list'] (required: 1)
return-type dart:core::int
Bytecode {
Entry 4
CheckStack 0
PushInt 0
PopLocal r0
PushInt 42
PopLocal r1
Push FP[-5]
InterfaceCall CP#0, 1
PopLocal r2
L2:
CheckStack 1
Push r2
InterfaceCall CP#2, 1
JumpIfFalse L1
Push r2
InterfaceCall CP#4, 1
PopLocal r3
Push r3
PopLocal r1
Push r0
Push r1
AddInt
PopLocal r0
Jump L2
L1:
Push r0
ReturnTOS
}
ConstantPool {
[0] = InterfaceCall 'dart:core::Iterable::get:iterator', ArgDesc num-args 1, num-type-args 0, names []
[1] = Reserved
[2] = InterfaceCall 'dart:core::Iterator::moveNext', ArgDesc num-args 1, num-type-args 0, names []
[3] = Reserved
[4] = InterfaceCall 'dart:core::Iterator::get:current', ArgDesc num-args 1, num-type-args 0, names []
[5] = Reserved
}
Function 'main', static, reflectable, debuggable
parameters [] (required: 0)
return-type dynamic
Bytecode {
Entry 0
CheckStack 0
PushNull
ReturnTOS
}
ConstantPool {
}