-maxlimit-termination-mode=report issue
On master the following command segfaults.
icgrep -colors=always -m=3 -maxlimit-termination-mode=report '[cde]{3}' testfiles/bounded_charclass
Here is an lldb backtrace:
(lldb) process launch -- -colors=always -m=3 -maxlimit-termination-mode=report -ccc-type=ternary '[cde]{3}' testfiles/bounded_charclass
Process 34929 launched: '/Users/cameron/parabix-branch/build/bin/icgrep' (arm64)
Process 34929 stopped
* thread #1, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0x0)
frame #0: 0x0000000100b7accc libparabix_kernel_pipeline.dylib`kernel::PipelineAnalysis::addKernelRelationshipsInReferenceOrdering(unsigned int, boost::adjacency_list<boost::vecS, boost::vecS, boost::bidirectionalS, kernel::RelationshipNode, kernel::RelationshipType, boost::no_property, boost::listS> const&, std::__1::function<void (kernel::Kernel::PortType, unsigned int, unsigned int)>) + 1684
libparabix_kernel_pipeline.dylib`kernel::PipelineAnalysis::addKernelRelationshipsInReferenceOrdering:
-> 0x100b7accc <+1684>: ldr w9, [x9]
0x100b7acd0 <+1688>: cbz w9, 0x100b7ad14 ; <+1756>
0x100b7acd4 <+1692>: ldr x8, [x8, #0x88]
0x100b7acd8 <+1696>: ldr x9, [x20, #0x18]
Target 0: (icgrep) stopped.
(lldb) bt
* thread #1, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0x0)
* frame #0: 0x0000000100b7accc libparabix_kernel_pipeline.dylib`kernel::PipelineAnalysis::addKernelRelationshipsInReferenceOrdering(unsigned int, boost::adjacency_list<boost::vecS, boost::vecS, boost::bidirectionalS, kernel::RelationshipNode, kernel::RelationshipType, boost::no_property, boost::listS> const&, std::__1::function<void (kernel::Kernel::PortType, unsigned int, unsigned int)>) + 1684
frame #1: 0x0000000100b5eedc libparabix_kernel_pipeline.dylib`kernel::PipelineAnalysis::generatePartitionGraph() + 2332
frame #2: 0x0000000100c37a18 libparabix_kernel_pipeline.dylib`kernel::PipelineAnalysis::analyze(kernel::KernelBuilder&, kernel::PipelineKernel*) + 152
frame #3: 0x0000000100c3477c libparabix_kernel_pipeline.dylib`kernel::PipelineKernel::instantiateKernelCompiler(kernel::KernelBuilder&) const + 80
frame #4: 0x000000010110b614 libparabix_kernel_core.dylib`kernel::Kernel::generateKernel(kernel::KernelBuilder&) + 76
frame #5: 0x0000000100b3f950 libparabix_kernel_pipeline.dylib`CPUDriver::generateUncachedKernels() + 244
frame #6: 0x0000000100c3ca60 libparabix_kernel_pipeline.dylib`kernel::ProgramBuilder::compile() + 180
frame #7: 0x0000000100576000 libparabix_grep.dylib`grep::EmitMatchesEngine::grepCodeGen() + 520
frame #8: 0x0000000100017d10 icgrep`main + 960
frame #9: 0x0000000181faf154 dyld`start + 2476
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information