[PATCH] Fix some more MCJIT PIC test XFAILs (for i386)

Dimitry Andric dimitry at andric.com
Thu Aug 29 13:24:08 PDT 2013


Lately, I consistently got these few MCJIT test failures while building for i386-unknown-freebsd10:

Failing Tests (4):
    LLVM :: ExecutionEngine/MCJIT/remote/test-global-init-nonzero-sm-pic.ll
    LLVM :: ExecutionEngine/MCJIT/remote/test-ptr-reloc-sm-pic.ll
    LLVM :: ExecutionEngine/MCJIT/test-global-init-nonzero-sm-pic.ll
    LLVM :: ExecutionEngine/MCJIT/test-ptr-reloc-sm-pic.ll

These were all of the form:

FAIL: LLVM :: ExecutionEngine/MCJIT/remote/test-global-init-nonzero-sm-pic.ll (38 of 71)
******************** TEST 'LLVM :: ExecutionEngine/MCJIT/remote/test-global-init-nonzero-sm-pic.ll' FAILED ********************
/home/dim/obj/llvm-189593M-trunk-freebsd10-i386-aconf-rel-1/Release+Asserts/bin/lli -use-mcjit -remote-mcjit -relocation-model=pic -code-model=small /share/dim/src/llvm/trunk/test/ExecutionEngine/MCJIT/remote/test-global-init-nonzero-sm-pic.ll > /dev/null
Exit Code: 1

Command Output (stderr):
warning: remote mcjit does not support lazy compilation
LLVM ERROR: Program used external function '_GLOBAL_OFFSET_TABLE_' which could not be resolved!


Similar to the other recent commits in this area, the 'i386' arch has to explicitly added to the XFAIL cases, as in the attached patch.

This patch also changes test/lit.cfg to match 'i386' in the target_triple setting when running with mcjit, and mangling -mcjit into the target triple, which seems to be the most logical thing to do.


P.S.: Since you theoretically can also have 'i486', 'i586' etc as part of the target triple, maybe we should also add all of these, or just fold everything into 'x86'...

-------------- next part --------------
A non-text attachment was scrubbed...
Name: fix-mcjit-tests-on-i386.patch
Type: application/octet-stream
Size: 2867 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20130829/fa53a721/attachment.obj>

More information about the llvm-commits mailing list