harmony-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Mikhail Fursov (JIRA)" <j...@apache.org>
Subject [jira] Created: (HARMONY-3715) [drlvm] Memory access errors in DRLVM
Date Fri, 20 Apr 2007 12:52:15 GMT
[drlvm] Memory access errors in DRLVM
-------------------------------------

                 Key: HARMONY-3715
                 URL: https://issues.apache.org/jira/browse/HARMONY-3715
             Project: Harmony
          Issue Type: Bug
          Components: DRLVM
            Reporter: Mikhail Fursov


Here are results from valgrind (http://valgrind.org/) run with DRLVM 

1)
==21788== Conditional jump or move depends on uninitialised value(s)
==21788==    at 0x4BFF1E9: EncoderBase::Operands::add(EncoderBase::Operand const&) (enc_base.h:546)
==21788==    by 0x5E8FB40: Jitrino::Ia32::Encoder::emit(unsigned char*, Jitrino::Ia32::Inst
const*) (Ia32Encoder.cpp:226)
==21788==    by 0x5EBEEEB: Jitrino::Ia32::Inst::emit(unsigned char*) (Ia32Inst.cpp:441)
==21788==    by 0x5E68CB5: Jitrino::Ia32::CodeEmitter::emitCode() (Ia32CodeEmitter.cpp:427)
==21788==    by 0x5E68500: Jitrino::Ia32::CodeEmitter::runImpl() (Ia32CodeEmitter.cpp:300)
==21788==    by 0x5EB7F41: Jitrino::Ia32::SessionAction::run() (Ia32IRManager.cpp:2269)
==21788==    by 0x5F3DAA4: Jitrino::runPipeline(Jitrino::CompilationContext*) (Jitrino.cpp:227)
==21788==    by 0x5F3DC26: Jitrino::compileMethod(Jitrino::CompilationContext*) (Jitrino.cpp:262)
==21788==    by 0x5F3DD3E: Jitrino::Jitrino::CompileMethod(Jitrino::CompilationContext*) (Jitrino.cpp:287)
==21788==    by 0x5E2D144: JIT_compile_method_with_params (DrlJITInterface.cpp:279)
==21788==    by 0x4C05384: Dll_JIT::compile_method_with_params(void*, Method*, OpenMethodExecutionParams)
(dll_jit_intf.h:86)
==21788==    by 0x4BFC8D6: compile_do_compilation_jit(Method*, JIT*) (compile.cpp:657)


2)
==21788== Conditional jump or move depends on uninitialised value(s)
==21788==    at 0x5EB7F80: Jitrino::Ia32::SessionAction::run() (Ia32IRManager.cpp:2274)
==21788==    by 0x5F3DAA4: Jitrino::runPipeline(Jitrino::CompilationContext*) (Jitrino.cpp:227)
==21788==    by 0x5F3DC26: Jitrino::compileMethod(Jitrino::CompilationContext*) (Jitrino.cpp:262)
==21788==    by 0x5F3DD3E: Jitrino::Jitrino::CompileMethod(Jitrino::CompilationContext*) (Jitrino.cpp:287)
==21788==    by 0x5E2D144: JIT_compile_method_with_params (DrlJITInterface.cpp:279)
==21788==    by 0x4C05384: Dll_JIT::compile_method_with_params(void*, Method*, OpenMethodExecutionParams)
(dll_jit_intf.h:86)
==21788==    by 0x4BFC8D6: compile_do_compilation_jit(Method*, JIT*) (compile.cpp:657)
==21788==    by 0x4BADDBE: vm_compile_method (C_Interface.cpp:2492)
==21788==    by 0x5B56F66: DrlEMImpl::methodProfileIsReady(MethodProfile*) (DrlEMImpl.cpp:772)
==21788==    by 0x5B6086E: EBProfileCollector::syncModeJitCallback(MethodProfile*) (EBProfileCollector.cpp:191)
==21788==    by 0x5B5FBF5: eb_profiler_sync_mode_callback(void*) (EBProfileCollector.cpp:91)
==21788==    by 0x4441039: ???
==21788==

3)
==21788== Conditional jump or move depends on uninitialised value(s)
==21788==    at 0x5EB7F65: Jitrino::Ia32::SessionAction::run() (Ia32IRManager.cpp:2272)
==21788==    by 0x5F3DAA4: Jitrino::runPipeline(Jitrino::CompilationContext*) (Jitrino.cpp:227)
==21788==    by 0x5F3DC26: Jitrino::compileMethod(Jitrino::CompilationContext*) (Jitrino.cpp:262)
==21788==    by 0x5F3DD3E: Jitrino::Jitrino::CompileMethod(Jitrino::CompilationContext*) (Jitrino.cpp:287)
==21788==    by 0x5E2D144: JIT_compile_method_with_params (DrlJITInterface.cpp:279)
==21788==    by 0x4C05384: Dll_JIT::compile_method_with_params(void*, Method*, OpenMethodExecutionParams)
(dll_jit_intf.h:86)
==21788==    by 0x4BFC8D6: compile_do_compilation_jit(Method*, JIT*) (compile.cpp:657)
==21788==    by 0x4BADDBE: vm_compile_method (C_Interface.cpp:2492)
==21788==    by 0x5B56F66: DrlEMImpl::methodProfileIsReady(MethodProfile*) (DrlEMImpl.cpp:772)
==21788==    by 0x5B6086E: EBProfileCollector::syncModeJitCallback(MethodProfile*) (EBProfileCollector.cpp:191)
==21788==    by 0x5B5FBF5: eb_profiler_sync_mode_callback(void*) (EBProfileCollector.cpp:91)
==21788==    by 0x4441039: ???

4)
==22293== Conditional jump or move depends on uninitialised value(s)
==22293==    at 0x5F0243C: Jitrino::Ia32::StackLayouter::createProlog() (Ia32StackLayout.cpp:332)
==22293==    by 0x5F01E10: Jitrino::Ia32::StackLayouter::runImpl() (Ia32StackLayout.cpp:181)
==22293==    by 0x5EB7F49: Jitrino::Ia32::SessionAction::run() (Ia32IRManager.cpp:2269)
==22293==    by 0x5F3DAAC: Jitrino::runPipeline(Jitrino::CompilationContext*) (Jitrino.cpp:227)
==22293==    by 0x5F3DC2E: Jitrino::compileMethod(Jitrino::CompilationContext*) (Jitrino.cpp:262)
==22293==    by 0x5F3DD46: Jitrino::Jitrino::CompileMethod(Jitrino::CompilationContext*) (Jitrino.cpp:287)
==22293==    by 0x5E2D144: JIT_compile_method_with_params (DrlJITInterface.cpp:279)
==22293==    by 0x4C0538C: Dll_JIT::compile_method_with_params(void*, Method*, OpenMethodExecutionParams)
(dll_jit_intf.h:86)
==22293==    by 0x4BFC8D6: compile_do_compilation_jit(Method*, JIT*) (compile.cpp:657)
==22293==    by 0x4BADDBE: vm_compile_method (C_Interface.cpp:2492)
==22293==    by 0x5B56F66: DrlEMImpl::methodProfileIsReady(MethodProfile*) (DrlEMImpl.cpp:772)
==22293==    by 0x5B6086E: EBProfileCollector::syncModeJitCallback(MethodProfile*) (EBProfileCollector.cpp:191)
==22293==

5)
==22293== Conditional jump or move depends on uninitialised value(s)
==22293==    at 0x4BD22EA: Class::assign_offsets_to_methods(Global_Env*) (Prepare.cpp:833)
==22293==    by 0x4BD3BBD: Class::prepare(Global_Env*) (Prepare.cpp:1223)
==22293==    by 0x4BEEC56: ClassLoader::LoadVerifyAndPrepareClass(Global_Env*, String const*)
(classloader.cpp:366)
==22293==    by 0x4BCB98E: Global_Env::LoadCoreClass(String const*) (Environment.cpp:280)
==22293==    by 0x4CBCB5E: preload_class(Global_Env*, String*) (vm_init.cpp:72)
==22293==    by 0x4CBD856: bootstrap_initial_java_classes(Global_Env*) (vm_init.cpp:308)
==22293==    by 0x4CBDAAC: preload_classes(Global_Env*) (vm_init.cpp:342)
==22293==    by 0x4CBF097: vm_init1(JavaVM_Internal*, JavaVMInitArgs*) (vm_init.cpp:713)
==22293==    by 0x4C29F54: JNI_CreateJavaVM (jni.cpp:499)
==22293==    by 0x80499BC: invocation (main.c:658)
==22293==    by 0x80490AF: gpProtectedMain (main.c:379)
==22293==    by 0x804B506: main (cmain.c:147)

6)
==22293== Conditional jump or move depends on uninitialised value(s)
==22293==    at 0x4BDC368: String_Pool::hash_it(char const*, unsigned*, unsigned*) (String_Pool.cpp:110)
==22293==    by 0x4BDC7F9: String_Pool::lookup(char const*) (String_Pool.cpp:263)
==22293==    by 0x4BEEDB1: ClassLoader::ReportFailedClass(char const*, char const*, std::basic_stringstream<char,
std::char_traits<char>, std::allocator<char> >&) (classloader.cpp:398)
==22293==    by 0x4BF7D7E: BootstrapClassLoader::ReportFailedClass(char const*, char const*,
std::basic_stringstream<char, std::char_traits<char>, std::allocator<char>
>&) (classloader.h:352)
==22293==    by 0x4BF3F22: BootstrapClassLoader::LoadFromFile(String const*) (classloader.cpp:1659)
==22293==    by 0x4BF2FE6: BootstrapClassLoader::DoLoadClass(Global_Env*, String const*) (classloader.cpp:1435)
==22293==    by 0x4BF2D68: ClassLoader::LoadClass(Global_Env*, String const*) (classloader.cpp:1390)
==22293==    by 0x4BEEC15: ClassLoader::LoadVerifyAndPrepareClass(Global_Env*, String const*)
(classloader.cpp:363)
==22293==    by 0x4BC8D9E: class_load_verify_prepare_from_jni(Global_Env*, String const*)
(Class_File_Loader.cpp:3642)
==22293==    by 0x4BAA582: class_find_class_from_loader (C_Interface.cpp:1036)
==22293==    by 0x4C114DA: Java_java_lang_VMClassRegistry_loadBootstrapClass (java_lang_VMClassRegistry.cpp:82)
==22293==    by 0x786AE35: ???


7)
==22293== Invalid read of size 4
==22293==    at 0x4BDC350: String_Pool::hash_it(char const*, unsigned*, unsigned*) (String_Pool.cpp:109)
==22293==    by 0x4BDC7F9: String_Pool::lookup(char const*) (String_Pool.cpp:263)
==22293==    by 0x4C2A5FD: FindClass(JNIEnv_External*, char const*) (jni.cpp:637)
==22293==    by 0x804AA95: main_runJavaMain (main.c:1232)
==22293==    by 0x8049AF0: invocation (main.c:730)
==22293==    by 0x80490AF: gpProtectedMain (main.c:379)
==22293==    by 0x804B506: main (cmain.c:147)

8)
==22293==  Address 0x70CCE14 is 4 bytes inside a block of size 6 alloc'd
==22293==    at 0x401B85E: malloc (vg_replace_malloc.c:149)
==22293==    by 0x4CC83B5: string_get_utf8_chars(ManagedObject*) (vm_strings.cpp:478)
==22293==    by 0x4CC84D1: string_get_utf8_chars_h(_jobject*) (vm_strings.cpp:492)
==22293==    by 0x4C2D3E7: GetStringUTFChars(JNIEnv_External*, _jobject*, unsigned char*)
(jni.cpp:1179)
==22293==    by 0x804AA39: main_runJavaMain (main.c:1222)
==22293==    by 0x8049AF0: invocation (main.c:730)
==22293==    by 0x80490AF: gpProtectedMain (main.c:379)
==22293==    by 0x804B506: main (cmain.c:147)



================================================
To reproduce the results you use these files:

Empty.java:
public class Empty {
    public static void main(String[] args) {
        System.loadLibrary("empty");
        nat();
    }
    static native void nat();
}



Empty.c:
#include <jni.h>
#include "stdlib.h"
#ifdef __cplusplus
extern "C" {
#endif
JNIEXPORT void JNICALL Java_Empty_nat (JNIEnv *p1, jclass p2) {
    int a;
    if( a == 4 ) a = 3;
  
}
#ifdef __cplusplus
}
#endif


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message