Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Building with -g produces LLVM assertion #369

Closed
steven-johnson opened this issue Jul 11, 2014 · 1 comment
Closed

Building with -g produces LLVM assertion #369

steven-johnson opened this issue Jul 11, 2014 · 1 comment

Comments

@steven-johnson
Copy link
Contributor

Haven't yet investigated further; steps to repeat:
-- OSX, use LLVM 3.4 TOT
-- in Makefile, change all three -O3 references to -g
-- make -j8 all

output:
IRPrinter test passed
CodeGen_C test passed
Simplify test passed
Bounds test passed
Lowering test passed
pseudo instructions should be removed before code emission
UNREACHABLE executed at X86CodeEmitter.cpp:1176!
bash: line 1: 83254 Abort trap: 6 DYLD_LIBRARY_PATH=:../bin LD_LIBRARY_PATH=:../bin ../bin/test_internal
make: *** [test_internal] Error 134

Traceback in lldb:

  • thread Bounds checking on input images #1: tid = 0x4d13ff, 0x00007fff97e18866 libsystem_kernel.dylib__pthread_kill + 10, queue = 'com.apple.main-thread, stop reason = signal SIGABRT frame #0: 0x00007fff97e18866 libsystem_kernel.dylibpthread_kill + 10
    frame Bounds checking on input images #1: 0x00007fff8da6435c libsystem_pthread.dylibpthread_kill + 92 frame #2: 0x0000000100e5dea6 libHalide.soabort + 22
    frame Convolution test fails on GPU #3: 0x0000000100e4de9a libHalide.sollvm::llvm_unreachable_internal(char const*, char const*, unsigned int) + 474 frame #4: 0x00000001005aae2d libHalide.so(anonymous namespace)::Emitterllvm::JITCodeEmitter::emitInstruction(llvm::MachineInstr&, llvm::MCInstrDesc const
    ) + 12829
    frame Casting a FuncRef to an Expr crashes if the Func is not yet defined. #5: 0x00000001005a7ae2 libHalide.so(anonymous namespace)::Emitter<llvm::JITCodeEmitter>::runOnMachineFunction(llvm::MachineFunction&) + 562 frame #6: 0x0000000100904f2d libHalide.sollvm::MachineFunctionPass::runOnFunction(llvm::Function&) + 125
    frame C backend does not support vector types #7: 0x0000000100df107b libHalide.sollvm::FPPassManager::runOnFunction(llvm::Function&) + 347 frame #8: 0x0000000100df088b libHalide.sollvm::legacy::FunctionPassManagerImpl::run(llvm::Function&) + 235
    frame ptx backend not working (cuCtxSynchronize could not be resolved) #9: 0x0000000100df0766 libHalide.sollvm::legacy::FunctionPassManager::run(llvm::Function&) + 86 frame #10: 0x00000001008692a9 libHalide.sollvm::JIT::runJITOnFunctionUnlocked(llvm::Function
    , llvm::MutexGuard const&) + 233
    frame Build fails on ubuntu 11.10 #11: 0x00000001008694a0 libHalide.sollvm::JIT::getPointerToFunction(llvm::Function*) + 288 frame #12: 0x00000001002f41c1 libHalide.sovoid Halide::Internal::(anonymous namespace)::hook_up_function_pointer<void*>(ee=0x0000000101ec57f0, mod=0x0000000101c533b0, name=0x0000000101c04628, must_succeed=true, result=0x00007fff5fbfa848) + 753 at JITCompiledModule.cpp:87
    frame Microsoft Windows support #13: 0x00000001002f3246 libHalide.soHalide::Internal::JITCompiledModule::compile_module(this=0x00007fff5fbfa848, cg=0x0000000101c04580, m=0x0000000101c533b0, function_name=0x0000000101c04628) + 1558 at JITCompiledModule.cpp:163 frame #14: 0x000000010002769a libHalide.soHalide::Internal::CodeGen::compile_to_function_pointers(this=0x0000000101c04580) + 250 at CodeGen.cpp:335
    frame Reusing a variable name as the inner dimension of a split breaks #15: 0x00000001002d729f libHalide.soHalide::Internal::StmtCompiler::compile_to_function_pointers(this=0x00007fff5fbfaba0) + 31 at StmtCompiler.cpp:59 frame #16: 0x00000001001c3651 libHalide.soHalide::Func::compile_jit(this=0x00007fff5fbff4c0, target=0x00007fff5fbff3e0) + 4673 at Func.cpp:2379
    frame Vectorize across multiple variables  #17: 0x00000001001b9d72 libHalide.soHalide::Func::realize(this=0x00007fff5fbff4c0, dst=0x00007fff5fbfc880, target=0x00007fff5fbff3e0) + 98 at Func.cpp:2082 frame #18: 0x00000001001bb33a libHalide.soHalide::Func::realize(this=0x00007fff5fbff4c0, x_size=4, y_size=4, z_size=0, w_size=0, target=0x00007fff5fbff3e0) + 922 at Func.cpp:1655
    frame Update build instructions #19: 0x00000001001bb435 libHalide.soHalide::Func::realize(this=0x00007fff5fbff4c0, x_size=4, y_size=4, target=0x00007fff5fbff3e0) + 69 at Func.cpp:1664 frame #20: 0x00000001000017e1 lesson_05main + 1041
    frame Compute Capability of Halide #21: 0x00007fff9a04b5fd libdyld.dylib`start + 1
@zvookin
Copy link
Member

zvookin commented Sep 12, 2014

This happens when debugging is turned on for the runtime and one is using pre-MCJIT JIT on certain platforms. I believe the debug runtime changes and switch to MCJIT address this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants