reading Blort.class...
method <init> ()V
first 000c
block 0000
pred 000a
live in:{2}
Blort.java:2@0001: Rop{invoke-direct . <- Ljava/lang/Object; call throws <any
>}(java.lang.Object.<init>:()V catch) . <- v2:NffffLBlort;
next 0004
live out:{}
block 0004
pred 0000
live in:{}
Blort.java:2@0004: goto . <- .
next 000b
live out:{}
block 000a
pred 000c
live in:{}
Blort.java:2@0000: move-param-object(0) v2:"this"NffffLBlort; <- .
Blort.java:2@0000: goto . <- .
next 0000
live out:{2}
block 000b
pred 0004
live in:{}
Blort.java:2@0004: return-void . <- .
next 000d
live out:{}
block 000c
live in:{}
@????: goto . <- .
next 000a
live out:{}
block 000d
pred 000b
live in:{}
returns
live out:{}
method arrayCopyTest (I)V
first 012c
block 0000
pred 0112
live in:{12, 62, 63}
Blort.java:5@0001: move-int v13:"j"I <- v12:I
Blort.java:7@0004: new-array-object(java.lang.String[] catch) . <- v63:I=8
next 0119
live out:{62, 63}
block 0007
pred 0119
live in:{15, 62, 63}
@????: mark-local-object . <- v15:"stringArray"[Ljava/lang/String;
Blort.java:8@000a: new-array-object(java.lang.Object[] catch) . <- v63:I=8
next 011a
live out:{15, 62}
block 000d
pred 011a
live in:{15, 17, 62}
@????: mark-local-object . <- v17:"objectArray"[Ljava/lang/Object;
Blort.java:10@000f: move-object v18:"anotherOne"[Ljava/lang/Object; <- v17:[L
java/lang/Object;
Blort.java:12@0013: if-eqz-object . <- v18:[Ljava/lang/Object;
next 0016 *
next 0131
live out:{15, 17, 62}
block 0016
pred 000d
live in:{15, 17, 62}
Blort.java:13@0016: get-static-object(java.lang.System.out:Ljava/io/PrintStre
am; catch) . <- .
next 011b
live out:{15, 17, 62}
block 0019
pred 011b
live in:{15, 17, 19, 62}
Blort.java:13@0019: const-object("foo" catch) . <- .
next 011c
live out:{15, 17, 19, 62}
block 001b
pred 011c
live in:{15, 17, 19, 20, 62}
Blort.java:13@001b: Rop{invoke-virtual . <- Ljava/io/PrintStream; Ljava/lang/
String; call throws <any>}(java.io.PrintStream.println:(Ljava/lang/String;)V
catch) . <- v19:Ljava/io/PrintStream; v20:Ljava/lang/String;="foo"
next 0130
live out:{15, 17, 62}
block 001e
pred 0130
pred 0131
live in:{15, 17, 62}
Blort.java:17@001e: const-int(0) v23:I=0 <- .
@????: mark-local-int . <- v23:"i"I
Blort.java:17@001f: goto . <- .
next 0021
live out:{15, 17, 23, 62}
block 0021
pred 001e
pred 0038
live in:{15, 17, 62}
@????: phi v30:"i"I <- v23:"i"I[b=001e] v34:"i"I[b=0038]
Blort.java:17@0024: array-length(catch) . <- v15:[Ljava/lang/String;
next 011d
live out:{15, 17, 30, 62}
block 0025
pred 011d
live in:{15, 17, 30, 31, 62}
Blort.java:17@0025: if-ge-int . <- v30:I v31:I
next 0028 *
next 003e
live out:{15, 17, 30, 62}
block 0028
pred 0025
live in:{15, 17, 30, 62}
Blort.java:18@002b: new-instance(java.lang.String catch) . <- .
next 011e
live out:{15, 17, 30, 62}
block 002e
pred 011e
live in:{15, 17, 30, 32, 62}
Blort.java:18@0031: Rop{invoke-static . <- I call throws <any>}(java.lang.Int
eger.toString:(I)Ljava/lang/String; catch) . <- v30:I
next 011f
live out:{15, 17, 30, 32, 62}
block 0034
pred 011f
live in:{15, 17, 30, 32, 33, 62}
Blort.java:18@0034: Rop{invoke-direct . <- Ljava/lang/String; Ljava/lang/Stri
ng; call throws <any>}(java.lang.String.<init>:(Ljava/lang/String;)V catch) .
<- v32:N002bLjava/lang/String; v33:Ljava/lang/String;
next 0037
live out:{15, 17, 30, 32, 62}
block 0037
pred 0034
live in:{15, 17, 30, 32, 62}
Blort.java:18@0037: aput-object(catch) . <- v32:Ljava/lang/String; v15:[Ljava
/lang/String; v30:I
next 0038
live out:{15, 17, 30, 62}
block 0038
pred 0037
live in:{15, 17, 30, 62}
Blort.java:17@0038: add-const-int(1) v34:"i"I <- v30:I
Blort.java:17@003b: goto . <- .
next 0021
live out:{15, 17, 34, 62}
block 003e
pred 0025
live in:{15, 17, 62}
Blort.java:20@003e: get-static-object(java.lang.System.out:Ljava/io/PrintStre
am; catch) . <- .
next 0120
live out:{15, 17, 62}
block 0041
pred 0120
live in:{15, 17, 35, 62}
Blort.java:20@0041: const-object("string -> object" catch) . <- .
next 0121
live out:{15, 17, 35, 62}
block 0043
pred 0121
live in:{15, 17, 35, 36, 62}
Blort.java:20@0043: Rop{invoke-virtual . <- Ljava/io/PrintStream; Ljava/lang/
String; call throws <any>}(java.io.PrintStream.println:(Ljava/lang/String;)V
catch) . <- v35:Ljava/io/PrintStream; v36:Ljava/lang/String;="string -> objec
t"
next 0046
live out:{15, 17, 62}
block 0046
pred 0043
live in:{15, 17, 62}
Blort.java:21@004b: array-length(catch) . <- v15:[Ljava/lang/String;
next 0122
live out:{15, 17, 62}
block 004c
pred 0122
live in:{15, 17, 39, 62}
Blort.java:21@004c: Rop{invoke-static . <- Ljava/lang/Object; I Ljava/lang/Ob
ject; I I call throws <any>}(java.lang.System.arraycopy:(Ljava/lang/Object;IL
java/lang/Object;II)V catch) . <- v15:[Ljava/lang/String; v62:I=0 v17:[Ljava/
lang/Object; v62:I=0 v39:I
next 004f
live out:{15, 17, 62}
block 004f
pred 004c
live in:{15, 17, 62}
Blort.java:22@004f: get-static-object(java.lang.System.out:Ljava/io/PrintStre
am; catch) . <- .
next 0123
live out:{15, 17, 62}
block 0052
pred 0123
live in:{15, 17, 40, 62}
Blort.java:22@0052: const-object("object -> string" catch) . <- .
next 0124
live out:{15, 17, 40, 62}
block 0054
pred 0124
live in:{15, 17, 40, 41, 62}
Blort.java:22@0054: Rop{invoke-virtual . <- Ljava/io/PrintStream; Ljava/lang/
String; call throws <any>}(java.io.PrintStream.println:(Ljava/lang/String;)V
catch) . <- v40:Ljava/io/PrintStream; v41:Ljava/lang/String;="object -> strin
g"
next 0057
live out:{15, 17, 62}
block 0057
pred 0054
live in:{15, 17, 62}
Blort.java:23@005c: array-length(catch) . <- v15:[Ljava/lang/String;
next 0125
live out:{15, 17, 62}
block 005d
pred 0125
live in:{15, 17, 44, 62}
Blort.java:23@005d: Rop{invoke-static . <- Ljava/lang/Object; I Ljava/lang/Ob
ject; I I call throws <any>}(java.lang.System.arraycopy:(Ljava/lang/Object;IL
java/lang/Object;II)V catch) . <- v17:[Ljava/lang/Object; v62:I=0 v15:[Ljava/
lang/String; v62:I=0 v44:I
next 0060
live out:{15, 17}
block 0060
pred 005d
live in:{15, 17}
Blort.java:24@0060: get-static-object(java.lang.System.out:Ljava/io/PrintStre
am; catch) . <- .
next 0126
live out:{15, 17}
block 0063
pred 0126
live in:{15, 17, 45}
Blort.java:24@0063: const-object("object -> string (modified)" catch) . <- .
next 0127
live out:{15, 17, 45}
block 0065
pred 0127
live in:{15, 17, 45, 46}
Blort.java:24@0065: Rop{invoke-virtual . <- Ljava/io/PrintStream; Ljava/lang/
String; call throws <any>}(java.io.PrintStream.println:(Ljava/lang/String;)V
catch) . <- v45:Ljava/io/PrintStream; v46:Ljava/lang/String;="object -> strin
g (modified)"
next 0068
live out:{15, 17}
block 0068
pred 0065
live in:{15, 17}
Blort.java:25@0069: const-int(4) v47:I=4 <- .
Blort.java:25@006a: new-instance(java.lang.Object catch) . <- .
next 0128
live out:{15, 17, 47}
block 006d
pred 0128
live in:{15, 17, 47, 48}
Blort.java:25@006e: Rop{invoke-direct . <- Ljava/lang/Object; call throws <an
y>}(java.lang.Object.<init>:()V catch) . <- v48:N006aLjava/lang/Object;
next 0071
live out:{15, 17, 47, 48}
block 0071
pred 006d
live in:{15, 17, 47, 48}
Blort.java:25@0071: aput-object(catch) . <- v48:Ljava/lang/Object; v17:[Ljava
/lang/Object; v47:I=4
next 0072
live out:{15, 17}
block 0072
pred 0071
live in:{15, 17}
Blort.java:27@0073: const-int(0) v49:I=0 <- .
Blort.java:27@0075: const-int(0) v50:I=0 <- .
Blort.java:27@0077: array-length(catch java.lang.ArraySto
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
虚拟机 dalvik4.2 源代码 (2000个子文件)
TraceDump.c 92KB
TraceDump.c 92KB
HprofConv.c 19KB
HprofConv.c 19KB
CreateTestTrace.c 15KB
CreateTestTrace.c 15KB
main.c 13KB
main.c 13KB
gdbjithelper.c 3KB
gdbjithelper.c 3KB
iface-gen.c 1KB
iface-gen.c 1KB
AnalysisO1.cpp 219KB
AnalysisO1.cpp 219KB
CodeVerify.cpp 217KB
CodeVerify.cpp 217KB
BytecodeVisitor.cpp 202KB
BytecodeVisitor.cpp 202KB
CodegenDriver.cpp 185KB
CodegenDriver.cpp 185KB
CodegenDriver.cpp 179KB
CodegenDriver.cpp 179KB
Class.cpp 175KB
Class.cpp 175KB
InterpC-allstubs.cpp 154KB
InterpC-allstubs.cpp 154KB
InterpC-portable.cpp 152KB
InterpC-portable.cpp 152KB
Jni.cpp 128KB
Jni.cpp 127KB
Assemble.cpp 127KB
Assemble.cpp 127KB
Thread.cpp 126KB
Thread.cpp 125KB
LowerHelper.cpp 119KB
LowerHelper.cpp 119KB
InterpC-mips.cpp 104KB
InterpC-mips.cpp 104KB
InterpC-x86.cpp 103KB
InterpC-x86.cpp 103KB
DexSwapVerify.cpp 96KB
DexSwapVerify.cpp 95KB
Assemble.cpp 92KB
Assemble.cpp 92KB
CheckJni.cpp 89KB
CheckJni.cpp 88KB
Debugger.cpp 84KB
Debugger.cpp 84KB
Frontend.cpp 80KB
Frontend.cpp 80KB
Annotation.cpp 73KB
Annotation.cpp 73KB
Init.cpp 71KB
LowerInvoke.cpp 71KB
LowerInvoke.cpp 70KB
Copying.cpp 70KB
Copying.cpp 70KB
Init.cpp 70KB
enc_tabl.cpp 68KB
enc_tabl.cpp 68KB
Interp.cpp 67KB
Interp.cpp 67KB
InterpC-armv7-a-neon.cpp 67KB
InterpC-armv7-a-neon.cpp 67KB
InterpC-armv5te-vfp.cpp 67KB
InterpC-armv5te-vfp.cpp 67KB
InterpC-armv7-a.cpp 67KB
InterpC-armv5te.cpp 67KB
InterpC-armv5te.cpp 67KB
InterpC-armv7-a.cpp 67KB
JdwpHandler.cpp 62KB
JdwpHandler.cpp 62KB
DexDump.cpp 60KB
DexDump.cpp 60KB
Jit.cpp 60KB
Jit.cpp 60KB
RegisterMap.cpp 59KB
RegisterMap.cpp 59KB
CodegenInterface.cpp 59KB
CodegenInterface.cpp 58KB
LowerAlu.cpp 57KB
LowerAlu.cpp 56KB
Dataflow.cpp 54KB
Dataflow.cpp 54KB
LowerJump.cpp 52KB
DexPrepare.cpp 52KB
DexPrepare.cpp 52KB
LowerJump.cpp 52KB
Exception.cpp 51KB
Exception.cpp 51KB
Stack.cpp 46KB
Stack.cpp 46KB
opcommon.cpp 44KB
opcommon.cpp 44KB
Factory.cpp 44KB
Factory.cpp 44KB
Sync.cpp 42KB
Sync.cpp 42KB
HeapSource.cpp 41KB
HeapSource.cpp 41KB
共 2000 条
- 1
- 2
- 3
- 4
- 5
- 6
- 20
资源评论
- qq_203962812018-01-21不错的宝贝
- charlesfang032014-09-02Dalvik源代码,很不错,下下来学习java虚拟机
- CAINAIFA2015-08-14不错,正是我要找的。
shangzebei
- 粉丝: 4
- 资源: 3
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功