- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I compiled my OpenCL code with AOC 17.1.2 Build 304 and got cryptic error messages shown below. Can anyone please let me know what causes such crash?
-- aocl-llc: /build/swbuild/SJ/nightly/17.1.2/304/l64/p4/acl/llvm/include/llvm/Support/Casting.h:194: typename llvm::cast_retty<To, From>::ret_type llvm::cast(const Y&) [with X = llvm::Constant, Y = const llvm::Value*]: Assertion `isa<X>(Val) && "cast<Ty>() argument of incompatible type!"' failed. 0 libLLVM-3.0.so 0x00007f354bbfd08f 1 libLLVM-3.0.so 0x00007f354bbff002 2 libpthread.so.0 0x00007f354a82e330 3 libc.so.6 0x00007f3549846c37 gsignal + 55 4 libc.so.6 0x00007f354984a028 abort + 328 5 libc.so.6 0x00007f354983fbf6 6 libc.so.6 0x00007f354983fca2 7 libLLVM-3.0.so 0x00007f354b34fd47 grif::XNodeROMBlockInstance::XNodeROMBlockInstance(llvm::CallInst*, grif::XNodeGroup*) + 1815 8 libLLVM-3.0.so 0x00007f354b3506c5 grif::XNodeROMLookup::XNodeROMLookup(llvm::Value*, grif::XNodeGroup*) + 437 9 libLLVM-3.0.so 0x00007f354b28167f grif::XNodeFactory::TranslateLLVMCall_Instruction(llvm::Value*, grif::XNodeGroup*) + 1903 10 libLLVM-3.0.so 0x00007f354b283232 grif::XNodeFactory::TranslateLLVMInstruction(llvm::Value*, grif::XNodeGroup*) + 1650 11 libLLVM-3.0.so 0x00007f354b283464 grif::XNodeFactory::Create(llvm::Value*, grif::XNodeGroup*, acl::BasicBlockLiveIO*) + 180 12 libLLVM-3.0.so 0x00007f354b38a55a grif::XNodeStallSyncCluster::add_cluster_nodes(std::vector<llvm::Instruction*, std::allocator<llvm::Instruction*> > const&) + 1098 13 libLLVM-3.0.so 0x00007f354b0ccb2f grif::util::create_netlist_nodes(llvm::Function&, acl::BasicBlockLiveIO*, grif::XNodeGroup*) + 303 14 libLLVM-3.0.so 0x00007f354b0bb008 acl::DSDKGenerate::Generate(llvm::Function&) + 584 15 libLLVM-3.0.so 0x00007f354b0bde33 acl::DSDKGenerate::runOnFunction(llvm::Function&) + 83 16 libLLVM-3.0.so 0x00007f354b0bebc0 acl::DSDKGenerate::runOnModule(llvm::Module&) + 2768 17 libLLVM-3.0.so 0x00007f354be1eb51 llvm::MPPassManager::runOnModule(llvm::Module&) + 577 18 libLLVM-3.0.so 0x00007f354be1ecfb llvm::PassManagerImpl::run(llvm::Module&) + 187 19 aocl-llc 0x000000000040bdc0 main + 5360 20 libc.so.6 0x00007f3549831f45 __libc_start_main + 245 21 aocl-llc 0x00000000004098e9 Stack dump: 0. Program arguments: aocl-llc -march=griffin -board /IntelFPGA/17.1/hld/board/a10_ref/hardware/a10gx/board_spec.xml -dbg-info-enabled my_fpga.bc -o my_fpga.v 1. Running pass 'Generate DSDK netlist and HDL' on module 'my_fpga.bc'. Aborted (core dumped) Error: Verilog generator FAILED.Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
These types of LLVM errors generally happen when the kernel is FPGA-unfriendly, or too complex for the compiler to handle. There is no fixed cause for them, nor is there a fixed solution. You can generally bypass them by refactoring your kernel and making it more FPGA-friendly. Other than that, you can also directly open a ticket with Altera and report the issue since this is basically a compiler bug, and only they can fix it.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I am having the same issue, is there a way to debug the kernel to determine what part of it is FPGA unfriendly. I only say this, as when emulating the kernel, it builds and runs absolutely fine. However, whenever I try to compile it to the FPGA hardware (on the Intel Devcloud), I run into this error.
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page