(JASMIN_TESTS): Removed.
(EXTRA_DIST): Removed JASMIN_TESTS, added $(srcdir)/*.j.
(build): Target added.
(run): Likewise.
* tests/regression/jasmin/runtest: Removed compilation of the tests.
* tests/regression/jasmin/test_verify_fail_jsr_multiple_returns.j:
Moved from here...
* tests/regression/jasmin/test_verify_fail_jsr_multiple_returns.j-no:
... to here.
* tests/regression/jasmin/test_verify_fail_jsr_recursion.j: Likewise.
* tests/regression/jasmin/test_verify_fail_jsr_recursion.j-no:
Likewise.
* tests/regression/jasmin/test_verify_fail_jsr_recursion_terminates.j:
Likewise.
* tests/regression/jasmin/test_verify_fail_jsr_recursion_terminates.j-no:
Likewise.
--HG--
rename : tests/regression/jasmin/test_verify_fail_jsr_multiple_returns.j => tests/regression/jasmin/test_verify_fail_jsr_multiple_returns.j-no
rename : tests/regression/jasmin/test_verify_fail_jsr_recursion.j => tests/regression/jasmin/test_verify_fail_jsr_recursion.j-no
rename : tests/regression/jasmin/test_verify_fail_jsr_recursion_terminates.j => tests/regression/jasmin/test_verify_fail_jsr_recursion_terminates.j-no
## 02110-1301, USA.
-JAVA = $(top_builddir)/src/cacao/cacao
+JAVA = LD_LIBRARY_PATH=$(top_builddir)/src/cacao/.libs $(top_builddir)/src/cacao/cacao
JAVACMD = $(JAVA) -Xbootclasspath:$(BOOTCLASSPATH)
JAVACCMD = $(JAVAC) -bootclasspath $(BOOTCLASSPATH)
-JASMIN_TESTS = \
- $(srcdir)/test_coalesce_simple_store.j \
- $(srcdir)/test_dup2.j \
- $(srcdir)/test_dup2_x1.j \
- $(srcdir)/test_dup2_x2.j \
- $(srcdir)/test_dup.j \
- $(srcdir)/test_dup_x1.j \
- $(srcdir)/test_dup_x1_interface_slots.j \
- $(srcdir)/test_dup_x2.j \
- $(srcdir)/test_dup_x2_interface_slots.j \
- $(srcdir)/test_dup_x2_to_dup_x1.j \
- $(srcdir)/test.j \
- $(srcdir)/test_iinc.j \
- $(srcdir)/test_load_store_conflict_by_exception.j \
- $(srcdir)/test_load_store_conflict_by_exception_not_thrown.j \
- $(srcdir)/test_load_store_conflict_different_types.j \
- $(srcdir)/test_load_store_conflict.j \
- $(srcdir)/test_load_store_conflict_via_dup.j \
- $(srcdir)/test_load_store_conflict_via_swap.j \
- $(srcdir)/test_many_dup.j \
- $(srcdir)/test_many_dup_x1.j \
- $(srcdir)/test_many_dup_x2.j \
- $(srcdir)/test_many_dup2.j \
- $(srcdir)/test_many_dup2_x1.j \
- $(srcdir)/test_many_dup2_x2.j \
- $(srcdir)/test_many_monitors.j \
- $(srcdir)/test_many_swap.j \
- $(srcdir)/test_no_store_load_conflict.j \
- $(srcdir)/test_no_store_store_conflict.j \
- $(srcdir)/test_nullpointerexception_monitorexit.j \
- $(srcdir)/test_simple_load_store.j \
- $(srcdir)/test_store_load_conflict.j \
- $(srcdir)/test_store_store_conflict_2.j \
- $(srcdir)/test_store_store_conflict.j \
- $(srcdir)/test_swap_interface_slots.j \
- $(srcdir)/test_swap.j \
- $(srcdir)/test_swap_locals.j \
- $(srcdir)/test_verify_fail_aload_retaddress.j \
- $(srcdir)/test_verify_fail_areturn_wrong_reftype.j \
- $(srcdir)/test_verify_fail_athrow_wrong_reftype.j \
- $(srcdir)/test_verify_fail_athrow_wrong_reftype_unresolved.j \
- $(srcdir)/test_verify_fail_backward_with_new_on_stack.j \
- $(srcdir)/test_verify_fail_double_local_index.j \
- $(srcdir)/test_verify_fail_double_overwritten.j \
- $(srcdir)/test_verify_fail_getfield_basic_type_instance.j \
- $(srcdir)/test_verify_fail_getfield_basic_type_lookup.j \
- $(srcdir)/test_verify_fail_getfield_basic_type_value.j \
- $(srcdir)/test_verify_fail_handler_bad_local.j \
- $(srcdir)/test_verify_fail_init_nullpointer.j \
- $(srcdir)/test_verify_fail_invoke_basic_type.j \
- $(srcdir)/test_verify_fail_invoke_return_basic_type.j \
- $(srcdir)/test_verify_fail_ireturn_wrong_type.j \
- $(srcdir)/test_verify_fail_jsr_called_with_different_stackdepths.j \
- $(srcdir)/test_verify_fail_jsr_exceptions.j \
- $(srcdir)/test_verify_fail_jsr_handler_in_sub.j \
- $(srcdir)/test_verify_fail_jsr_merge_subroutines.j \
- $(srcdir)/test_verify_fail_jsr_merge_subroutines_via_stack.j \
- $(srcdir)/test_verify_fail_jsr_polymorphic_pop.j \
- $(srcdir)/test_verify_fail_load_wrong_type.j \
- $(srcdir)/test_verify_fail_load_wrong_type_within_block.j \
- $(srcdir)/test_verify_fail_local_index.j \
- $(srcdir)/test_verify_fail_long_local_index.j \
- $(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 \
- $(srcdir)/test_verify_fail_putfieldconst_basic_type_instance.j \
- $(srcdir)/test_verify_fail_putfieldconst_basic_type_value.j \
- $(srcdir)/test_verify_fail_putstatic_basic_type_value.j \
- $(srcdir)/test_verify_fail_putstaticconst_basic_type_value.j \
- $(srcdir)/test_verify_fail_retaddr_as_object.j \
- $(srcdir)/test_verify_fail_ret_bad_type.j \
- $(srcdir)/test_verify_fail_ret_uninit_var.j \
- $(srcdir)/test_verify_fail_split_local.j \
- $(srcdir)/test_verify_ok_jsr_handler_in_sub2.j \
- $(srcdir)/test_verify_ok_jsr_improper_nesting.j \
- $(srcdir)/test_verify_ok_jsr.j \
- $(srcdir)/test_verify_ok_jsr_multiple_blocks.j \
- $(srcdir)/test_verify_ok_jsr_pop.j \
- $(srcdir)/test_verify_ok_jsr_push.j \
- $(srcdir)/test_verify_ok_jsr_subroutine_loops_to_start.j \
- $(srcdir)/test_verify_ok_jsr_swap.j \
- $(srcdir)/test_verify_ok_jsr_through_variable.j \
- $(srcdir)/test_verify_ok_local_as_retaddr_and_reference.j \
- $(srcdir)/test_verify_ok_overwrite_local_type.j \
- $(srcdir)/test_verify_ok_untyped_local.j \
- $(srcdir)/test_verify_unspecced_ok_backward_with_new_in_local.j \
- $(srcdir)/test_verify_unspecced_ok_backward_with_new_on_stack.j \
- $(srcdir)/test_verify_unspecced_ok_new_in_local_within_try.j
-
EXTRA_DIST = \
$(srcdir)/runtest \
$(srcdir)/show \
- $(JASMIN_TESTS)
+ $(srcdir)/*.j
CLEANFILES = \
*.class \
TESTLOG TESTEXPECT TESTOUT TESTERR TESTSIA
-check:
- @LD_LIBRARY_PATH=$(top_builddir)/src/cacao/.libs JAVA="$(JAVACMD)" $(srcdir)/runtest $(JASMIN_TESTS)
+check: build run
+
+build:
+ $(JAVACMD) -cp /usr/share/java/jasmin-sable.jar jasmin.Main $(srcdir)/*.j
+
+run:
+ @LD_LIBRARY_PATH=$(top_builddir)/src/cacao/.libs JAVA="$(top_builddir)/src/cacao/cacao -Xbootclasspath:$(BOOTCLASSPATH)" $(srcdir)/runtest $(srcdir)/*.j
+
## Local variables:
## mode: Makefile
ECHOFLAGS='-e'
fi
-if [ -z "$JASMIN_JAR" ] ; then
- JASMIN_JAR=/usr/share/java/jasmin-sable.jar
-fi
-
-if [ ! -r "$JASMIN_JAR" ] ; then
- echo >&2 "$0: warning: jasmin .jar is not available at $JASMIN_JAR"
- exit 0
-fi
-
-JASMIN="$JAVA $JAVAFLAGS -cp $JASMIN_JAR jasmin.Main"
-
echo "java command: $JAVA $JAVAFLAGS"
-echo "jasmin command: $JASMIN"
while [ -n "$1" ]
do
EXPECTSTATUS=0
CHECKICMD=0
- # compile the test
-
- $JASMIN "$TEST" || exit 2
-
if grep 'ERROR:' "$TEST" >/dev/null ; then
EXPECTSTATUS=1
EXPECTERROR=$(grep 'ERROR:.*' "$TEST" | sed 's,.*ERROR:[ \t]*,,')
# run the test
- $TIMEOUTRUN $JAVA $JAVAFLAGS "$TESTBASENAME" >"$TESTOUT" 2>"$TESTERR"
+ $TIMEOUTRUN $JAVA $JAVAFLAGS "$TESTBASENAME" >"$TESTOUT" 2>"$TESTERR"
TESTSTATUS=$?
if [ $TESTSTATUS -ne $EXPECTSTATUS ] ; then
+++ /dev/null
-.class public test_verify_fail_jsr_multiple_returns
-.super java/lang/Object
-
-; ======================================================================
-
-.method public <init>()V
- aload_0
- invokenonvirtual java/lang/Object/<init>()V
- return
-.end method
-
-; ======================================================================
-
-.method public static check(I)V
- .limit locals 1
- .limit stack 10
- getstatic java/lang/System/out Ljava/io/PrintStream;
- iload_0
- invokevirtual java/io/PrintStream/println(I)V
- return
-.end method
-
-.method public static check(Ljava/lang/String;)V
- .limit locals 1
- .limit stack 10
- getstatic java/lang/System/out Ljava/io/PrintStream;
- aload_0
- invokevirtual java/io/PrintStream/println(Ljava/lang/String;)V
- return
-.end method
-
-; ======================================================================
-
-.method public static main([Ljava/lang/String;)V
- .limit stack 2
- .limit locals 4
-
- ldc 0
- istore 1
-
- aload 0
- ifnull force_basic_block_boundary
-
- ; --------------------------------------------------
-
- jsr sbr_1
-
- jsr sbr_1
-
- ; --------------------------------------------------
-
-force_basic_block_boundary:
-
- iload 1
- invokestatic test_verify_fail_jsr_multiple_returns/check(I)V
-
- return
-
-sbr_1:
- astore 2
- ldc "one"
- invokestatic test_verify_fail_jsr_multiple_returns/check(Ljava/lang/String;)V
- jsr sbr_2
- ldc "one-B"
- invokestatic test_verify_fail_jsr_multiple_returns/check(Ljava/lang/String;)V
- iinc 1 1
- ret 2
-
-sbr_2:
- astore 3
- ldc "two"
- invokestatic test_verify_fail_jsr_multiple_returns/check(Ljava/lang/String;)V
- iload 1
- ifne second_time
- ret 3
-
-second_time:
- ret 2
- ; ERROR: VerifyError
-
-.end method
-
--- /dev/null
+.class public test_verify_fail_jsr_multiple_returns
+.super java/lang/Object
+
+; ======================================================================
+
+.method public <init>()V
+ aload_0
+ invokenonvirtual java/lang/Object/<init>()V
+ return
+.end method
+
+; ======================================================================
+
+.method public static check(I)V
+ .limit locals 1
+ .limit stack 10
+ getstatic java/lang/System/out Ljava/io/PrintStream;
+ iload_0
+ invokevirtual java/io/PrintStream/println(I)V
+ return
+.end method
+
+.method public static check(Ljava/lang/String;)V
+ .limit locals 1
+ .limit stack 10
+ getstatic java/lang/System/out Ljava/io/PrintStream;
+ aload_0
+ invokevirtual java/io/PrintStream/println(Ljava/lang/String;)V
+ return
+.end method
+
+; ======================================================================
+
+.method public static main([Ljava/lang/String;)V
+ .limit stack 2
+ .limit locals 4
+
+ ldc 0
+ istore 1
+
+ aload 0
+ ifnull force_basic_block_boundary
+
+ ; --------------------------------------------------
+
+ jsr sbr_1
+
+ jsr sbr_1
+
+ ; --------------------------------------------------
+
+force_basic_block_boundary:
+
+ iload 1
+ invokestatic test_verify_fail_jsr_multiple_returns/check(I)V
+
+ return
+
+sbr_1:
+ astore 2
+ ldc "one"
+ invokestatic test_verify_fail_jsr_multiple_returns/check(Ljava/lang/String;)V
+ jsr sbr_2
+ ldc "one-B"
+ invokestatic test_verify_fail_jsr_multiple_returns/check(Ljava/lang/String;)V
+ iinc 1 1
+ ret 2
+
+sbr_2:
+ astore 3
+ ldc "two"
+ invokestatic test_verify_fail_jsr_multiple_returns/check(Ljava/lang/String;)V
+ iload 1
+ ifne second_time
+ ret 3
+
+second_time:
+ ret 2
+ ; ERROR: VerifyError
+
+.end method
+
+++ /dev/null
-.class public test_verify_fail_jsr_recursion
-.super java/lang/Object
-
-; ======================================================================
-
-.method public <init>()V
- aload_0
- invokenonvirtual java/lang/Object/<init>()V
- return
-.end method
-
-; ======================================================================
-
-.method public static check(I)V
- .limit locals 1
- .limit stack 10
- getstatic java/lang/System/out Ljava/io/PrintStream;
- iload_0
- invokevirtual java/io/PrintStream/println(I)V
- return
-.end method
-
-; ======================================================================
-
-.method public static main([Ljava/lang/String;)V
- .limit stack 2
- .limit locals 4
-
- ldc 0
- istore 1
-
- aload 0
- ifnull force_basic_block_boundary
-
- ; --------------------------------------------------
-
- jsr sbr_1
- jsr sbr_1
-
- ; --------------------------------------------------
-
-force_basic_block_boundary:
-
- iload 1
- invokestatic test_verify_fail_jsr_recursion/check(I)V
-
- return
-
-sbr_1:
- astore 2
- iload 1
- invokestatic test_verify_fail_jsr_recursion/check(I)V
- iload 1
- ifne second_time
- iinc 1 1
- jsr sbr_1
- ; ERROR: VerifyError
-
-second_time:
- ret 2
-
-.end method
-
--- /dev/null
+.class public test_verify_fail_jsr_recursion
+.super java/lang/Object
+
+; ======================================================================
+
+.method public <init>()V
+ aload_0
+ invokenonvirtual java/lang/Object/<init>()V
+ return
+.end method
+
+; ======================================================================
+
+.method public static check(I)V
+ .limit locals 1
+ .limit stack 10
+ getstatic java/lang/System/out Ljava/io/PrintStream;
+ iload_0
+ invokevirtual java/io/PrintStream/println(I)V
+ return
+.end method
+
+; ======================================================================
+
+.method public static main([Ljava/lang/String;)V
+ .limit stack 2
+ .limit locals 4
+
+ ldc 0
+ istore 1
+
+ aload 0
+ ifnull force_basic_block_boundary
+
+ ; --------------------------------------------------
+
+ jsr sbr_1
+ jsr sbr_1
+
+ ; --------------------------------------------------
+
+force_basic_block_boundary:
+
+ iload 1
+ invokestatic test_verify_fail_jsr_recursion/check(I)V
+
+ return
+
+sbr_1:
+ astore 2
+ iload 1
+ invokestatic test_verify_fail_jsr_recursion/check(I)V
+ iload 1
+ ifne second_time
+ iinc 1 1
+ jsr sbr_1
+ ; ERROR: VerifyError
+
+second_time:
+ ret 2
+
+.end method
+
+++ /dev/null
-.class public test_verify_fail_jsr_recursion_terminates
-.super java/lang/Object
-
-; ======================================================================
-
-.method public <init>()V
- aload_0
- invokenonvirtual java/lang/Object/<init>()V
- return
-.end method
-
-; ======================================================================
-
-.method public static check(I)V
- .limit locals 1
- .limit stack 10
- getstatic java/lang/System/out Ljava/io/PrintStream;
- iload_0
- invokevirtual java/io/PrintStream/println(I)V
- return
-.end method
-
-.method public static check(Ljava/lang/String;)V
- .limit locals 1
- .limit stack 10
- getstatic java/lang/System/out Ljava/io/PrintStream;
- aload_0
- invokevirtual java/io/PrintStream/println(Ljava/lang/String;)V
- return
-.end method
-
-; ======================================================================
-
-.method public static main([Ljava/lang/String;)V
- .limit stack 2
- .limit locals 4
-
- ldc 0
- istore 1
-
- aload 0
- ifnull force_basic_block_boundary
-
- ; --------------------------------------------------
-
- jsr sbr_1
- jsr sbr_1
-
- ; --------------------------------------------------
-
-force_basic_block_boundary:
-
- iload 1
- invokestatic test_verify_fail_jsr_recursion_terminates/check(I)V
-
- return
-
-sbr_1:
- ldc "entry"
- invokestatic test_verify_fail_jsr_recursion_terminates/check(Ljava/lang/String;)V
- iload 1
- ifne second_time
-
- astore 2
- ldc "first"
- invokestatic test_verify_fail_jsr_recursion_terminates/check(Ljava/lang/String;)V
- iinc 1 1
- jsr sbr_1
- ; ERROR: VerifyError
- ret 2
-
-second_time:
- astore 3
- ldc "second"
- invokestatic test_verify_fail_jsr_recursion_terminates/check(Ljava/lang/String;)V
- ret 3
-
-.end method
-
--- /dev/null
+.class public test_verify_fail_jsr_recursion_terminates
+.super java/lang/Object
+
+; ======================================================================
+
+.method public <init>()V
+ aload_0
+ invokenonvirtual java/lang/Object/<init>()V
+ return
+.end method
+
+; ======================================================================
+
+.method public static check(I)V
+ .limit locals 1
+ .limit stack 10
+ getstatic java/lang/System/out Ljava/io/PrintStream;
+ iload_0
+ invokevirtual java/io/PrintStream/println(I)V
+ return
+.end method
+
+.method public static check(Ljava/lang/String;)V
+ .limit locals 1
+ .limit stack 10
+ getstatic java/lang/System/out Ljava/io/PrintStream;
+ aload_0
+ invokevirtual java/io/PrintStream/println(Ljava/lang/String;)V
+ return
+.end method
+
+; ======================================================================
+
+.method public static main([Ljava/lang/String;)V
+ .limit stack 2
+ .limit locals 4
+
+ ldc 0
+ istore 1
+
+ aload 0
+ ifnull force_basic_block_boundary
+
+ ; --------------------------------------------------
+
+ jsr sbr_1
+ jsr sbr_1
+
+ ; --------------------------------------------------
+
+force_basic_block_boundary:
+
+ iload 1
+ invokestatic test_verify_fail_jsr_recursion_terminates/check(I)V
+
+ return
+
+sbr_1:
+ ldc "entry"
+ invokestatic test_verify_fail_jsr_recursion_terminates/check(Ljava/lang/String;)V
+ iload 1
+ ifne second_time
+
+ astore 2
+ ldc "first"
+ invokestatic test_verify_fail_jsr_recursion_terminates/check(Ljava/lang/String;)V
+ iinc 1 1
+ jsr sbr_1
+ ; ERROR: VerifyError
+ ret 2
+
+second_time:
+ astore 3
+ ldc "second"
+ invokestatic test_verify_fail_jsr_recursion_terminates/check(Ljava/lang/String;)V
+ ret 3
+
+.end method
+