From 56f3a5ddfd007b7c7fc1b67b93b29c976d511f2b Mon Sep 17 00:00:00 2001 From: edwin Date: Wed, 29 Nov 2006 22:33:49 +0000 Subject: [PATCH] * tests/regression/jasmin/test_verify_fail_merge_init_nullpointer.j: New test. * tests/regression/jasmin/test_verify_fail_init_nullpointer.j: Pass null pointer without merging. * tests/regression/jasmin/Makefile.am: Added new test. --- tests/regression/jasmin/Makefile.am | 1 + .../test_verify_fail_init_nullpointer.j | 9 ----- .../test_verify_fail_merge_init_nullpointer.j | 40 +++++++++++++++++++ 3 files changed, 41 insertions(+), 9 deletions(-) create mode 100644 tests/regression/jasmin/test_verify_fail_merge_init_nullpointer.j diff --git a/tests/regression/jasmin/Makefile.am b/tests/regression/jasmin/Makefile.am index 95f4b6d2d..30fa5adb2 100644 --- a/tests/regression/jasmin/Makefile.am +++ b/tests/regression/jasmin/Makefile.am @@ -99,6 +99,7 @@ JASMIN_TESTS = \ $(srcdir)/test_verify_fail_long_local.j \ $(srcdir)/test_verify_fail_long_overwritten.j \ $(srcdir)/test_verify_fail_merge_different_new_objects.j \ + $(srcdir)/test_verify_fail_merge_init_nullpointer.j \ $(srcdir)/test_verify_fail_putfield_basic_type_instance.j \ $(srcdir)/test_verify_fail_putfield_basic_type_lookup.j \ $(srcdir)/test_verify_fail_putfield_basic_type_value.j \ diff --git a/tests/regression/jasmin/test_verify_fail_init_nullpointer.j b/tests/regression/jasmin/test_verify_fail_init_nullpointer.j index 2e0fed236..fd6afbf22 100644 --- a/tests/regression/jasmin/test_verify_fail_init_nullpointer.j +++ b/tests/regression/jasmin/test_verify_fail_init_nullpointer.j @@ -18,16 +18,7 @@ ldc 1 istore 1 - aload 0 - ifnull branch1 - - new test_verify_fail_init_nullpointer - goto branch2 - -branch1: aconst_null - -branch2: dup invokespecial test_verify_fail_init_nullpointer/()V ; ERROR: VerifyError diff --git a/tests/regression/jasmin/test_verify_fail_merge_init_nullpointer.j b/tests/regression/jasmin/test_verify_fail_merge_init_nullpointer.j new file mode 100644 index 000000000..f21605c4a --- /dev/null +++ b/tests/regression/jasmin/test_verify_fail_merge_init_nullpointer.j @@ -0,0 +1,40 @@ +.class public test_verify_fail_merge_init_nullpointer +.super java/lang/Object + +; ====================================================================== + +.method public ()V + aload_0 + invokenonvirtual java/lang/Object/()V + return +.end method + +; ====================================================================== + +.method public static main([Ljava/lang/String;)V + .limit stack 2 + .limit locals 3 + + ldc 1 + istore 1 + + aload 0 + ifnull branch1 + + new test_verify_fail_merge_init_nullpointer + goto branch2 + +branch1: + aconst_null + +branch2: + dup + invokespecial test_verify_fail_merge_init_nullpointer/()V + ; ERROR: VerifyError + + getstatic java/lang/System/out Ljava/io/PrintStream; + swap + invokevirtual java/io/PrintStream/println(Ljava/lang/Object;)V + + return +.end method -- 2.25.1