Return-Path: Delivered-To: apmail-incubator-harmony-commits-archive@www.apache.org Received: (qmail 58166 invoked from network); 4 Nov 2006 14:15:40 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 4 Nov 2006 14:15:40 -0000 Received: (qmail 11965 invoked by uid 500); 4 Nov 2006 14:15:52 -0000 Delivered-To: apmail-incubator-harmony-commits-archive@incubator.apache.org Received: (qmail 11843 invoked by uid 500); 4 Nov 2006 14:15:51 -0000 Mailing-List: contact harmony-commits-help@incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: harmony-dev@incubator.apache.org Delivered-To: mailing list harmony-commits@incubator.apache.org Received: (qmail 11832 invoked by uid 99); 4 Nov 2006 14:15:51 -0000 Received: from herse.apache.org (HELO herse.apache.org) (140.211.11.133) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 04 Nov 2006 06:15:51 -0800 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests= X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO brutus.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 04 Nov 2006 06:15:39 -0800 Received: from brutus (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id 900267142D2 for ; Sat, 4 Nov 2006 06:15:19 -0800 (PST) Message-ID: <8660270.1162649719587.JavaMail.root@brutus> Date: Sat, 4 Nov 2006 06:15:19 -0800 (PST) From: "Geir Magnusson Jr (JIRA)" To: harmony-commits@incubator.apache.org Subject: [jira] Assigned: (HARMONY-1844) [drlvm][jit] -Xem opt: crash when use getstatic instruction for method getstatic java.util.zip.ZipConstants.CENSIG In-Reply-To: <26490878.1160652575098.JavaMail.jira@brutus> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org [ http://issues.apache.org/jira/browse/HARMONY-1844?page=all ] Geir Magnusson Jr reassigned HARMONY-1844: ------------------------------------------ Assignee: Geir Magnusson Jr > [drlvm][jit] -Xem opt: crash when use getstatic instruction for method getstatic java.util.zip.ZipConstants.CENSIG > ------------------------------------------------------------------------------------------------------------------- > > Key: HARMONY-1844 > URL: http://issues.apache.org/jira/browse/HARMONY-1844 > Project: Harmony > Issue Type: Bug > Components: DRLVM > Environment: Linux IA-32, Windows IA-32 > Reporter: Irina Arkhipets > Assigned To: Geir Magnusson Jr > Attachments: dup_x.diff, test.j > > > Attempt of the using java/util/zip/ZipConstants/CENSIG produces java crash instead of java.lang.IllegalAccessError in OPT mode. > Stack trace shows that the problem is in the translator (see the sample output below). > The following test example demonstrates the failure: > --------- test.j --------- > .class public test > .super java/lang/Object > .method public static main([Ljava/lang/String;)V > .limit stack 10 > .limit locals 10 > getstatic java/util/zip/ZipConstants/CENSIG J ; > lastblock: > getstatic java/lang/System/err Ljava/io/PrintStream; > dup_x2 > return > .end method > -------------------------- > Please, compile this source ("java -jar jasmin.jar test.j") and run it with OPT Jitrino ("java -Xem:opt -Dvm.assert_dialog=false test") to reproduce the failure. > This bug is not reproducible with JRockit JDK, as well as with DRL VM in interpreter, jet and client modes. > Please, note that the following test example causes IllegalAccessError as expected: > ---------test1.j --------- > .class public test1 > .super java/lang/Object > .method public static main([Ljava/lang/String;)V > .limit stack 10 > .limit locals 10 > getstatic java/util/zip/ZipConstants/CENSIG J ; > return > .end method > ---------------------------- > Sample output is: > ... > java: /export/users2/iarkhipe/20061012/trunk/working_vm/vm/jitrino/src/translator/TranslatorIntfc.h:111: Jitrino::Opnd* Jitrino::OpndStack::pop(): Assertion `0' failed. > SIGABRT in VM code. > Stack trace: > 1: ?? (??:-1) > 2: abort (??:-1) > 3: __assert_fail (??:-1) > 4: Jitrino::OpndStack::pop() (/export/users2/iarkhipe/20061012/trunk/working_vm/vm/jitrino/src/translator/TranslatorIntfc.h:114) > 5: Jitrino::JavaByteCodeTranslator::popOpnd() (/export/users2/iarkhipe/20061012/trunk/working_vm/vm/jitrino/src/translator/java/JavaByteCodeTranslator.cpp:471) > 6: Jitrino::JavaByteCodeTranslator::dup_x2() (/export/users2/iarkhipe/20061012/trunk/working_vm/vm/jitrino/src/translator/java/JavaByteCodeTranslator.cpp:1205) > 7: .L114 (/export/users2/iarkhipe/20061012/trunk/working_vm/vm/jitrino/src/translator/java/JavaByteCodeParser.cpp:417) > 8: Jitrino::ByteCodeParser::parse(Jitrino::ByteCodeParserCallback*) (/export/users2/iarkhipe/20061012/trunk/working_vm/vm/jitrino/src/translator/ByteCodeParser.h:66) > 9: Jitrino::JavaTranslator::translateMethod(Jitrino::CompilationInterface&, Jitrino::MethodDesc&, Jitrino::IRBuilder&) (/export/users2/iarkhipe/20061012/trunk/working_vm/vm/jitrino/src/translator/java/JavaTranslator.cpp:58) > 10: Jitrino::TranslatorSession::translate() (/export/users2/iarkhipe/20061012/trunk/working_vm/vm/jitrino/src/translator/TranslatorIntfc.cpp:62) > 11: Jitrino::TranslatorSession::run() (/export/users2/iarkhipe/20061012/trunk/working_vm/vm/jitrino/src/translator/TranslatorIntfc.cpp:44) > 12: Jitrino::runPipeline(Jitrino::CompilationContext*) (/export/users2/iarkhipe/20061012/trunk/working_vm/vm/jitrino/src/main/Jitrino.cpp:226) > 13: Jitrino::compileMethod(Jitrino::CompilationContext*) (/export/users2/iarkhipe/20061012/trunk/working_vm/vm/jitrino/src/main/Jitrino.cpp:261) > 14: Jitrino::Jitrino::CompileMethod(Jitrino::CompilationContext*) (/export/users2/iarkhipe/20061012/trunk/working_vm/vm/jitrino/src/main/Jitrino.cpp:286) > 15: JIT_compile_method_with_params (/export/users2/iarkhipe/20061012/trunk/working_vm/vm/jitrino/src/vm/drl/DrlJITInterface.cpp:282) > 16: Dll_JIT::compile_method_with_params(void*, Method*, OpenMethodExecutionParams) (/export/users2/iarkhipe/20061012/trunk/working_vm/vm/vmcore/include/dll_jit_intf.h:86) > 17: compile_do_compilation_jit(Method*, JIT*) (/export/users2/iarkhipe/20061012/trunk/working_vm/vm/vmcore/src/jit/compile.cpp:700) > 18: vm_compile_method (/export/users2/iarkhipe/20061012/trunk/working_vm/vm/vmcore/src/class_support/C_Interface.cpp:2538) > 19: DrlEMImpl::compileMethod(Method*) (/export/users2/iarkhipe/20061012/trunk/working_vm/vm/em/src/DrlEMImpl.cpp:520) > 20: CompileMethod (/export/users2/iarkhipe/20061012/trunk/working_vm/vm/em/src/em_intf.cpp:49) > 21: compile_do_compilation (/export/users2/iarkhipe/20061012/trunk/working_vm/vm/vmcore/src/jit/compile.cpp:780) > 22: compile_jit_a_method(Method*) (/export/users2/iarkhipe/20061012/trunk/working_vm/vm/vmcore/src/jit/compile.cpp:828) > 23: IP is 0x410D0172 > 24: vm_invoke_native_array_stub (/export/users2/iarkhipe/20061012/trunk/working_vm/vm/vmcore/src/util/ia32/base/invoke_native_stub_ia32.asm:41) > 25: JIT_execute_method_default(void*, _jmethodID*, jvalue*, jvalue*) (/export/users2/iarkhipe/20061012/trunk/working_vm/vm/vmcore/src/util/ia32/base/ini_iA32.cpp:199) > 26: DrlEMImpl::executeMethod(_jmethodID*, jvalue*, jvalue*) (/export/users2/iarkhipe/20061012/trunk/working_vm/vm/em/src/DrlEMImpl.cpp:489) > 27: ExecuteMethod (/export/users2/iarkhipe/20061012/trunk/working_vm/vm/em/src/em_intf.cpp:43) > 28: vm_execute_java_method_array(_jmethodID*, jvalue*, jvalue*) (/export/users2/iarkhipe/20061012/trunk/working_vm/vm/vmcore/src/jit/ini.cpp:58) > 29: call_static_method_no_ref_result (/export/users2/iarkhipe/20061012/trunk/working_vm/vm/vmcore/src/jni/jni_method.cpp:1072) > 30: CallStaticVoidMethodA(JNIEnv_External*, _jobject*, _jmethodID*, jvalue*) (/export/users2/iarkhipe/20061012/trunk/working_vm/vm/vmcore/src/jni/jni_method.cpp:1450) > 31: CallStaticVoidMethodV(JNIEnv_External*, _jobject*, _jmethodID*, char*) (/export/users2/iarkhipe/20061012/trunk/working_vm/vm/vmcore/src/jni/jni_method.cpp:1437) > 32: CallStaticVoidMethod(JNIEnv_External*, _jobject*, _jmethodID*, ...) (/export/users2/iarkhipe/20061012/trunk/working_vm/vm/vmcore/src/jni/jni_method.cpp:1427) > 33: ?? (??:-1) > 34: ?? (??:-1) > 35: ?? (??:-1) > 36: ?? (??:-1) > 37: hysig_protect (??:-1) > 38: ?? (??:-1) > 39: __libc_start_main (??:-1) > 40: ?? (??:-1) > > Aborted > ... -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira