diff options
| -rw-r--r-- | test/601-verifier-fails/expected.txt | 4 | ||||
| -rw-r--r-- | test/601-verifier-fails/info.txt | 18 | ||||
| -rw-r--r-- | test/601-verifier-fails/smali/construct.smali | 25 | ||||
| -rw-r--r-- | test/601-verifier-fails/smali/iget.smali | 25 | ||||
| -rw-r--r-- | test/601-verifier-fails/smali/iput.smali | 25 | ||||
| -rw-r--r-- | test/601-verifier-fails/smali/sput.smali | 23 | ||||
| -rw-r--r-- | test/601-verifier-fails/src/Main.java | 40 |
7 files changed, 0 insertions, 160 deletions
diff --git a/test/601-verifier-fails/expected.txt b/test/601-verifier-fails/expected.txt deleted file mode 100644 index 8399969a2d..0000000000 --- a/test/601-verifier-fails/expected.txt +++ /dev/null @@ -1,4 +0,0 @@ -passed A -passed B -passed C -passed D diff --git a/test/601-verifier-fails/info.txt b/test/601-verifier-fails/info.txt deleted file mode 100644 index f77de05ac7..0000000000 --- a/test/601-verifier-fails/info.txt +++ /dev/null @@ -1,18 +0,0 @@ -The situations in these tests were discovered by running the mutating -dexfuzz on the DEX files of fuzzingly random generated Java test. - -(A) b/28908555: - soft verification failure (on the final field modification) should - not hide the hard verification failure (on the type mismatch) to - avoid compiler crash later on -(B) b/29070461: - hard verification failure (not calling super in constructor) should - bail immediately and not allow soft verification failures to pile up - behind it to avoid fatal message later on -(C) b/29068831: - access validation should occur prior to null reference check -(D) b/29126870: - soft verification failure (cannot access) should not hide the hard - verification failure (non-reference type) to avoid a compiler crash - later on - diff --git a/test/601-verifier-fails/smali/construct.smali b/test/601-verifier-fails/smali/construct.smali deleted file mode 100644 index 417ced94fa..0000000000 --- a/test/601-verifier-fails/smali/construct.smali +++ /dev/null @@ -1,25 +0,0 @@ -# -# Copyright (C) 2016 The Android Open Source Project -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -.class public LB; -.super Ljava/lang/Object; - -.method public constructor <init>()V - .registers 1 - if-eqz v0, :bail - invoke-direct {v0}, LB;->append(Ljava/lang/String;)V -:bail - return-void -.end method diff --git a/test/601-verifier-fails/smali/iget.smali b/test/601-verifier-fails/smali/iget.smali deleted file mode 100644 index 5c045e6b76..0000000000 --- a/test/601-verifier-fails/smali/iget.smali +++ /dev/null @@ -1,25 +0,0 @@ -# -# Copyright (C) 2016 The Android Open Source Project -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -.class public LD; -.super Ljava/lang/Object; - -.method public constructor <init>()V - .registers 2 - invoke-direct {v1}, Ljava/lang/Object;-><init>()V - const v0, 2 - iget v1, v0, LMain;->privateField:I - return-void -.end method diff --git a/test/601-verifier-fails/smali/iput.smali b/test/601-verifier-fails/smali/iput.smali deleted file mode 100644 index bd8b9280c0..0000000000 --- a/test/601-verifier-fails/smali/iput.smali +++ /dev/null @@ -1,25 +0,0 @@ -# -# Copyright (C) 2016 The Android Open Source Project -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -.class public LC; -.super Ljava/lang/Object; - -.method public constructor <init>()V - .registers 2 - invoke-direct {v1}, Ljava/lang/Object;-><init>()V - const v0, 0 - iput-object v0, v0, LMain;->staticPrivateField:Ljava/lang/String; - return-void -.end method diff --git a/test/601-verifier-fails/smali/sput.smali b/test/601-verifier-fails/smali/sput.smali deleted file mode 100644 index e8e56acf13..0000000000 --- a/test/601-verifier-fails/smali/sput.smali +++ /dev/null @@ -1,23 +0,0 @@ -# -# Copyright (C) 2016 The Android Open Source Project -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -.class public LA; -.super Ljava/lang/Object; - -.method public foo(I)V -.registers 2 - sput v1, LMain;->staticFinalField:Ljava/lang/String; - return-void -.end method diff --git a/test/601-verifier-fails/src/Main.java b/test/601-verifier-fails/src/Main.java deleted file mode 100644 index a6a07fda79..0000000000 --- a/test/601-verifier-fails/src/Main.java +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (C) 2016 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -public class Main { - - public static final String staticFinalField = null; - - private static String staticPrivateField = null; - - private int privateField = 0; - - private static void test(String name) throws Exception { - try { - Class<?> a = Class.forName(name); - a.newInstance(); - } catch (java.lang.LinkageError e) { - System.out.println("passed " + name); - } - } - - public static void main(String[] args) throws Exception { - test("A"); - test("B"); - test("C"); - test("D"); - } -} |