<html>
<head>
<base href="https://bugs.llvm.org/">
</head>
<body><table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Bug ID</th>
<td><a class="bz_bug_link
bz_status_NEW "
title="NEW - llvm-objdump fails on llvm/ADT/SmallVector.h:153: const_reference llvm::SmallVectorTemplateCommon<llvm::MCOperand, void>::operator[](size_type) const [T = llvm::MCOperand]: Assertion `idx < size()' failed"
href="https://bugs.llvm.org/show_bug.cgi?id=33622">33622</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>llvm-objdump fails on llvm/ADT/SmallVector.h:153: const_reference llvm::SmallVectorTemplateCommon<llvm::MCOperand, void>::operator[](size_type) const [T = llvm::MCOperand]: Assertion `idx < size()' failed
</td>
</tr>
<tr>
<th>Product</th>
<td>libraries
</td>
</tr>
<tr>
<th>Version</th>
<td>trunk
</td>
</tr>
<tr>
<th>Hardware</th>
<td>PC
</td>
</tr>
<tr>
<th>OS</th>
<td>Linux
</td>
</tr>
<tr>
<th>Status</th>
<td>NEW
</td>
</tr>
<tr>
<th>Severity</th>
<td>normal
</td>
</tr>
<tr>
<th>Priority</th>
<td>P
</td>
</tr>
<tr>
<th>Component</th>
<td>MC
</td>
</tr>
<tr>
<th>Assignee</th>
<td>unassignedbugs@nondot.org
</td>
</tr>
<tr>
<th>Reporter</th>
<td>lesliezhai@llvm.org.cn
</td>
</tr>
<tr>
<th>CC</th>
<td>llvm-bugs@lists.llvm.org
</td>
</tr></table>
<p>
<div>
<pre>Created <span class=""><a href="attachment.cgi?id=18726" name="attach_18726" title="basic-avr.s">attachment 18726</a> <a href="attachment.cgi?id=18726&action=edit" title="basic-avr.s">[details]</a></span>
basic-avr.s
Hi LLVM developers,
basic-avr.s attached.
$ llvm-mc -filetype=obj -triple=avr-unknown-linux -mcpu=atmega328p basic-avr.s
-o /tmp/basic-avr.o
$ ld.lld /tmp/basic-avr.o -o /tmp/basic-avr.o -Ttext=0
$ lldb /data/project/llvm/debug-build/bin/llvm-objdump
(lldb) target create "/data/project/llvm/debug-build/bin/llvm-objdump"
Current executable set to '/data/project/llvm/debug-build/bin/llvm-objdump'
(x86_64).
(lldb) r -d /tmp/basic-avr
Process 8788 launched: '/data/project/llvm/debug-build/bin/llvm-objdump'
(x86_64)
/tmp/basic-avr: file format ELF32-avr
Disassembly of section .text:
main:
11000: 0e 94 02 88 <unknown>
foo:
11004: c3 94 inc llvm-objdump:
/data/project/llvm/include/llvm/ADT/SmallVector.h:153: const_reference
llvm::SmallVectorTemplateCommon<llvm::MCOperand, void>::operator[](size_type)
const [T = llvm::MCOperand]: Assertion `idx < size()' failed.
Process 8788 stopped
* thread #1: tid = 8788, 0x00007fffeffaa8df libc.so.6`__GI_raise + 159, name =
'llvm-objdump', stop reason = signal SIGABRT
frame #0: 0x00007fffeffaa8df libc.so.6`__GI_raise + 159
libc.so.6`__GI_raise:
-> 0x7fffeffaa8df <+159>: movl %r8d, %eax
0x7fffeffaa8e2 <+162>: addq $0x90, %rsp
0x7fffeffaa8e9 <+169>: retq
0x7fffeffaa8ea <+170>: nopw (%rax,%rax)
(lldb) bt
* thread #1: tid = 8788, 0x00007fffeffaa8df libc.so.6`__GI_raise + 159, name =
'llvm-objdump', stop reason = signal SIGABRT
* frame #0: 0x00007fffeffaa8df libc.so.6`__GI_raise + 159
frame #1: 0x00007fffeffac4da libc.so.6`__GI_abort + 362
frame #2: 0x00007fffeffa2d67 libc.so.6`__assert_fail_base + 279
frame #3: 0x00007fffeffa2e12 libc.so.6`__GI___assert_fail + 66
frame #4: 0x00007ffff394bf6e
libLLVM-5.0svn.so`llvm::MCInst::getOperand(unsigned int) const [inlined]
llvm::SmallVectorTemplateCommon<llvm::MCOperand,
void>::operator[](this=0x00007fffffffbf60, idx=0) const + 86 at
SmallVector.h:153
frame #5: 0x00007ffff394bf18
libLLVM-5.0svn.so`llvm::MCInst::getOperand(this=0x00007fffffffbf50, i=0) const
+ 40 at MCInst.h:173
frame #6: 0x00007ffff47fbe0e
libLLVM-5.0svn.so`llvm::AVRInstPrinter::printOperand(this=0x0000000000770aa0,
MI=0x00007fffffffbf50, OpNo=0, O=0x00007ffff7d73ac0) + 46 at
AVRInstPrinter.cpp:103
frame #7: 0x00007ffff47fbaf9
libLLVM-5.0svn.so`llvm::AVRInstPrinter::printInstruction(this=0x0000000000770aa0,
MI=0x00007fffffffbf50, O=0x00007ffff7d73ac0) + 313 at AVRGenAsmWriter.inc:727
frame #8: 0x00007ffff47fd3f3
libLLVM-5.0svn.so`llvm::AVRInstPrinter::printInst(this=0x0000000000770aa0,
MI=0x00007fffffffbf50, O=0x00007ffff7d73ac0, Annot=(Data = "", Length = 0),
STI=0x0000000000767660) + 579 at AVRInstPrinter.cpp:82
frame #9: 0x0000000000425aa8 llvm-objdump`(anonymous
namespace)::PrettyPrinter::printInst(this=0x0000000000720b30,
IP=0x0000000000770aa0, MI=0x00007fffffffbf50, Bytes=(Data =
"Ô\f\x94\x02\x88Linker: LLD 5.0.0 (trunk 306352)", Length = 2), Address=69636,
OS=0x00007ffff7d73ac0, Annot=(Data = "", Length = 0), STI=0x0000000000767660,
SP=0x00007fffffffc898)::SourcePrinter*) + 728 at llvm-objdump.cpp:525
frame #10: 0x00000000004341ff
llvm-objdump`DisassembleObject(Obj=0x00000000007672f0, InlineRelocs=false) +
19727 at llvm-objdump.cpp:1583
frame #11: 0x000000000042ef08 llvm-objdump`DumpObject(o=0x00000000007672f0,
a=0x0000000000000000) + 616 at llvm-objdump.cpp:2037
frame #12: 0x0000000000425728 llvm-objdump`DumpInput(file=(Data =
"/tmp/basic-avr", Length = 14)) + 440 at llvm-objdump.cpp:2129
frame #13: 0x000000000043cb92 llvm-objdump`void
(__first=__normal_iterator<std::__cxx11::basic_string<char> *,
std::vector<std::__cxx11::basic_string<char>,
std::allocator<std::__cxx11::basic_string<char> > > > @ 0x00007fffffffdb28,
__last=__normal_iterator<std::__cxx11::basic_string<char> *,
std::vector<std::__cxx11::basic_string<char>,
std::allocator<std::__cxx11::basic_string<char> > > > @ 0x00007fffffffdb20,
__f=(llvm-objdump`DumpInput(llvm::StringRef) at
llvm-objdump.cpp:2110))(llvm::StringRef)>(__gnu_cxx::__normal_iterator<std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> >*,
std::vector<std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > > > >,
__gnu_cxx::__normal_iterator<std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> >*,
std::vector<std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > > > >, void
(*)(llvm::StringRef)))(llvm::StringRef) + 130 at stl_algo.h:3769
frame #14: 0x0000000000425509 llvm-objdump`main(argc=3,
argv=0x00007fffffffde48) + 3065 at llvm-objdump.cpp:2189
frame #15: 0x00007fffeff95401 libc.so.6`__libc_start_main + 241
frame #16: 0x000000000042053a llvm-objdump`_start + 42
Regards,
Leslie Zhai</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are on the CC list for the bug.</li>
</ul>
</body>
</html>