For all int-like typed variables, use int as field type and coerce
it during spill-unspill. Coerce int to boolean, otherwise, VerifyError is thrown on android Completely rewrite SpilledVariableFieldTypesAnalysis... again, but this time use BasicInterpreter This way, the analysis both does not use SourceInterpreter and is in line with the rest on analyses.
This commit is contained in:
+2
-2
@@ -37,5 +37,5 @@ fun box(): String {
|
||||
return "OK"
|
||||
}
|
||||
|
||||
// 1 PUTFIELD .*\.Z\$0 : Z
|
||||
// 1 PUTFIELD .*\.Z\$1 : Z
|
||||
// 1 PUTFIELD .*\.I\$0 : I
|
||||
// 1 PUTFIELD .*\.I\$1 : I
|
||||
|
||||
+1
-1
@@ -36,4 +36,4 @@ fun box(): String {
|
||||
return "OK"
|
||||
}
|
||||
|
||||
// 1 PUTFIELD .*\.B\$0 : B
|
||||
// 1 PUTFIELD .*\.I\$0 : I
|
||||
|
||||
Vendored
+1
-1
@@ -35,4 +35,4 @@ fun box(): String {
|
||||
return "OK"
|
||||
}
|
||||
|
||||
// 1 PUTFIELD .*\.Z\$0 : Z
|
||||
// 1 PUTFIELD .*\.I\$0 : I
|
||||
|
||||
+1
-1
@@ -35,4 +35,4 @@ fun box(): String {
|
||||
return "OK"
|
||||
}
|
||||
|
||||
// 1 PUTFIELD .*\.B\$0 : B
|
||||
// 1 PUTFIELD .*\.I\$0 : I
|
||||
|
||||
+1
-1
@@ -35,4 +35,4 @@ fun box(): String {
|
||||
return "OK"
|
||||
}
|
||||
|
||||
// 1 PUTFIELD .*\.Z\$0 : Z
|
||||
// 1 PUTFIELD .*\.I\$0 : I
|
||||
|
||||
Vendored
+1
-1
@@ -38,5 +38,5 @@ fun box(): String {
|
||||
return "OK"
|
||||
}
|
||||
|
||||
// 1 PUTFIELD .*\.B\$0 : B
|
||||
// 1 PUTFIELD .*\.I\$0 : I
|
||||
// 1 PUTFIELD .*\.I\$1 : I
|
||||
|
||||
+1
-5
@@ -81,8 +81,4 @@ fun box(): String {
|
||||
return "OK"
|
||||
}
|
||||
|
||||
// 1 PUTFIELD .*\.B\$0 : B
|
||||
// 1 PUTFIELD .*\.C\$0 : C
|
||||
// 1 PUTFIELD .*\.S\$0 : S
|
||||
// 1 PUTFIELD .*\.Z\$0 : Z
|
||||
// 1 PUTFIELD .*\.I\$0 : I
|
||||
// 5 PUTFIELD .*\.I\$0 : I
|
||||
|
||||
+1
-5
@@ -85,8 +85,4 @@ fun box(): String {
|
||||
return "OK"
|
||||
}
|
||||
|
||||
// 1 PUTFIELD .*\.B\$0 : B
|
||||
// 1 PUTFIELD .*\.C\$0 : C
|
||||
// 1 PUTFIELD .*\.S\$0 : S
|
||||
// 1 PUTFIELD .*\.Z\$0 : Z
|
||||
// 1 PUTFIELD .*\.I\$0 : I
|
||||
// 5 PUTFIELD .*\.I\$0 : I
|
||||
|
||||
+1
-5
@@ -71,8 +71,4 @@ fun box(): String {
|
||||
return "OK"
|
||||
}
|
||||
|
||||
// 1 PUTFIELD .*\.B\$0 : B
|
||||
// 1 PUTFIELD .*\.C\$0 : C
|
||||
// 1 PUTFIELD .*\.S\$0 : S
|
||||
// 1 PUTFIELD .*\.Z\$0 : Z
|
||||
// 1 PUTFIELD .*\.I\$0 : I
|
||||
// 5 PUTFIELD .*\.I\$0 : I
|
||||
|
||||
+1
-5
@@ -61,8 +61,4 @@ fun box(): String {
|
||||
return "OK"
|
||||
}
|
||||
|
||||
// 1 PUTFIELD .*\.B\$0 : B
|
||||
// 1 PUTFIELD .*\.C\$0 : C
|
||||
// 1 PUTFIELD .*\.S\$0 : S
|
||||
// 1 PUTFIELD .*\.Z\$0 : Z
|
||||
// 1 PUTFIELD .*\.I\$0 : I
|
||||
// 5 PUTFIELD .*\.I\$0 : I
|
||||
|
||||
Reference in New Issue
Block a user