[llvm-bugs] [Bug 33689] New: Assertion `BitWidth == RHS.BitWidth && "Bit widths must be the same"' failed. when running -instcombine

via llvm-bugs llvm-bugs at lists.llvm.org
Wed Jul 5 01:15:15 PDT 2017


https://bugs.llvm.org/show_bug.cgi?id=33689

            Bug ID: 33689
           Summary: Assertion `BitWidth == RHS.BitWidth && "Bit widths
                    must be the same"' failed. when running -instcombine
           Product: new-bugs
           Version: unspecified
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: new bugs
          Assignee: unassignedbugs at nondot.org
          Reporter: mikael.holmen at ericsson.com
                CC: llvm-bugs at lists.llvm.org

Created attachment 18750
  --> https://bugs.llvm.org/attachment.cgi?id=18750&action=edit
reduced reproducer

opt -S -o - reduced.ll -instcombine

gives

opt: ../lib/Support/APInt.cpp:257: llvm::APInt &llvm::APInt::operator*=(const
llvm::APInt &): Assertion `BitWidth == RHS.BitWidth && "Bit widths must be the
same"' failed.
#0 0x0000000001cc8c04 PrintStackTraceSignalHandler(void*)
(build-all/bin/opt+0x1cc8c04)
#1 0x0000000001cc9376 SignalHandler(int) (build-all/bin/opt+0x1cc9376)
#2 0x00007fb1d2914330 __restore_rt
(/lib/x86_64-linux-gnu/libpthread.so.0+0x10330)
#3 0x00007fb1d1503c37 gsignal
/build/eglibc-SvCtMH/eglibc-2.19/signal/../nptl/sysdeps/unix/sysv/linux/raise.c:56:0
#4 0x00007fb1d1507028 abort
/build/eglibc-SvCtMH/eglibc-2.19/stdlib/abort.c:91:0
#5 0x00007fb1d14fcbf6 __assert_fail_base
/build/eglibc-SvCtMH/eglibc-2.19/assert/assert.c:92:0
#6 0x00007fb1d14fcca2 (/lib/x86_64-linux-gnu/libc.so.6+0x2fca2)
#7 0x0000000001c583b9 llvm::APInt::operator*=(llvm::APInt const&)
(build-all/bin/opt+0x1c583b9)
#8 0x0000000001337146
llvm::ObjectSizeOffsetVisitor::visitAllocaInst(llvm::AllocaInst&)
(build-all/bin/opt+0x1337146)
#9 0x0000000001336767 llvm::InstVisitor<llvm::ObjectSizeOffsetVisitor,
std::pair<llvm::APInt, llvm::APInt> >::visit(llvm::Instruction&)
(build-all/bin/opt+0x1336767)
#10 0x0000000001335ce1 llvm::ObjectSizeOffsetVisitor::compute(llvm::Value*)
(build-all/bin/opt+0x1335ce1)
#11 0x0000000001335a49 llvm::getObjectSize(llvm::Value const*, unsigned long&,
llvm::DataLayout const&, llvm::TargetLibraryInfo const*, llvm::ObjectSizeOpts)
(build-all/bin/opt+0x1335a49)
#12 0x00000000012623e9 llvm::BasicAAResult::aliasCheck(llvm::Value const*,
unsigned long, llvm::AAMDNodes, llvm::Value const*, unsigned long,
llvm::AAMDNodes, llvm::Value const*, llvm::Value const*)
(build-all/bin/opt+0x12623e9)
#13 0x0000000001261fc8 llvm::BasicAAResult::alias(llvm::MemoryLocation const&,
llvm::MemoryLocation const&) (build-all/bin/opt+0x1261fc8)
#14 0x0000000001251acf llvm::AAResults::getModRefInfo(llvm::StoreInst const*,
llvm::MemoryLocation const&) (build-all/bin/opt+0x1251acf)
#15 0x0000000001320129 llvm::FindAvailablePtrLoadStore(llvm::Value*,
llvm::Type*, bool, llvm::BasicBlock*,
llvm::ilist_iterator<llvm::ilist_detail::node_options<llvm::Instruction, true,
false, void>, false, false>&, unsigned int, llvm::AAResults*, bool*, unsigned
int*) (build-all/bin/opt+0x1320129)
#16 0x000000000131fe2a llvm::FindAvailableLoadedValue(llvm::LoadInst*,
llvm::BasicBlock*,
llvm::ilist_iterator<llvm::ilist_detail::node_options<llvm::Instruction, true,
false, void>, false, false>&, unsigned int, llvm::AAResults*, bool*, unsigned
int*) (build-all/bin/opt+0x131fe2a)
#17 0x000000000197a839 llvm::InstCombiner::visitLoadInst(llvm::LoadInst&)
(build-all/bin/opt+0x197a839)
#18 0x000000000190b9fb llvm::InstCombiner::run() (build-all/bin/opt+0x190b9fb)
#19 0x000000000190d729 combineInstructionsOverFunction(llvm::Function&,
llvm::InstCombineWorklist&, llvm::AAResults*, llvm::AssumptionCache&,
llvm::TargetLibraryInfo&, llvm::DominatorTree&, bool, llvm::LoopInfo*)
(build-all/bin/opt+0x190d729)
#20 0x000000000190dd6e
llvm::InstructionCombiningPass::runOnFunction(llvm::Function&)
(build-all/bin/opt+0x190dd6e)
#21 0x00000000017e9b78 llvm::FPPassManager::runOnFunction(llvm::Function&)
(build-all/bin/opt+0x17e9b78)
#22 0x00000000017e9db8 llvm::FPPassManager::runOnModule(llvm::Module&)
(build-all/bin/opt+0x17e9db8)
#23 0x00000000017ea295 llvm::legacy::PassManagerImpl::run(llvm::Module&)
(build-all/bin/opt+0x17ea295)
#24 0x00000000006daec5 main (build-all/bin/opt+0x6daec5)
#25 0x00007fb1d14eef45 __libc_start_main
/build/eglibc-SvCtMH/eglibc-2.19/csu/libc-start.c:321:0
#26 0x00000000006cc52b _start (build-all/bin/opt+0x6cc52b)
Stack dump:
0.      Program arguments: build-all/bin/opt -S -o - reduced.ll -instcombine 
1.      Running pass 'Function Pass Manager' on module 'reduced.ll'.
2.      Running pass 'Combine redundant instructions' on function '@f'
Abort

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20170705/d1f9476b/attachment-0001.html>


More information about the llvm-bugs mailing list