[LLVMbugs] [Bug 4810] New: [2.6] ExecutionEngine test failures on mixed 64/32 system

bugzilla-daemon at cs.uiuc.edu bugzilla-daemon at cs.uiuc.edu
Thu Aug 27 22:33:57 PDT 2009


http://llvm.org/bugs/show_bug.cgi?id=4810

           Summary: [2.6] ExecutionEngine test failures on mixed 64/32
                    system
           Product: libraries
           Version: trunk
          Platform: PC
        OS/Version: Linux
            Status: NEW
          Severity: normal
          Priority: P2
         Component: Generic Execution Engine Support
        AssignedTo: unassignedbugs at nondot.org
        ReportedBy: nicholas at mxc.ca
                CC: llvmbugs at cs.uiuc.edu


My test system is a Debian 32-bit userspace running in a 64-bit kernel. LLVM
detects this as an x86-64 because that's what uname says, even though gcc/as
are 32-bit (supporting the -m64 flag). This system is capable of running both
32-bit and 64-bit programs.

Sample failure:

FAIL: /home/nicholas/2.6/llvm-2.6/test/ExecutionEngine/2003-01-04-LoopTest.ll
Failed with exit(255) at line 2
while running:  lli 2003-01-04-LoopTest.ll.tmp.bc > /dev/null
child process exited abnormally

The *exact* same failure happens on:

  test/ExecutionEngine/2003-01-15-AlignmentTest.ll
  test/ExecutionEngine/2003-05-07-ArgumentTest.ll
  test/ExecutionEngine/hello.ll
  test/ExecutionEngine/hello2.ll
  test/ExecutionEngine/simpletest.ll
  test/ExecutionEngine/test-call.ll
  test/ExecutionEngine/test-fp.ll

It repros on the command-line too, but I'm not sure what to do to debug it.

$ head -2 test/ExecutionEngine/2003-01-04-LoopTest.ll
; RUN: llvm-as %s -o %t.bc -f
; RUN: lli %t.bc > /dev/null
$ Release/bin/llvm-as test/ExecutionEngine/2003-01-04-LoopTest.ll -o x.bc -f
$ Release/bin/lli x.bc
$ echo $?
255
$ valgrind --quiet Release/bin/lli x.bc
==13477== Conditional jump or move depends on uninitialised value(s)
==13477==    at 0x83C2632: (anonymous
namespace)::DefaultJITMemoryManager::allocateNewSlab(unsigned int) (in
/home/nicholas/2.6/llvm-2.6/Release/bin/lli)
==13477==    by 0xFFFF: ???
==13477== 
==13477== Syscall param write(buf) points to uninitialised byte(s)
==13477==    at 0x74EFF03: __write_nocancel (in /lib/i686/cmov/libc-2.9.so)
==13477==    by 0x7489206: _IO_do_write@@GLIBC_2.1 (fileops.c:529)
==13477==    by 0x7488AA9: _IO_file_sync@@GLIBC_2.1 (fileops.c:904)
==13477==    by 0x7482989: fflush_unlocked (iofflush_u.c:40)
==13477==    by 0x70C6D88: op_write_native_code (in
/usr/lib/oprofile/libopagent.so.1.0.0)
==13477==    by 0x83C4CF3: (anonymous
namespace)::OProfileJITEventListener::NotifyFunctionEmitted(llvm::Function
const&, void*, unsigned int, llvm::JITEvent_EmittedFunctionDetails const&) (in
/home/nicholas/2.6/llvm-2.6/Release/bin/lli)
==13477==  Address 0x5203024 is not stack'd, malloc'd or (recently) free'd


-- 
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.



More information about the llvm-bugs mailing list