<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 - LLDB does not support armvXl, armvXb, armvXlhf, armvXbhf, arm64l, aarch64l and aarch64b"
href="https://bugs.llvm.org/show_bug.cgi?id=40141">40141</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>LLDB does not support armvXl, armvXb, armvXlhf, armvXbhf, arm64l, aarch64l and aarch64b
</td>
</tr>
<tr>
<th>Product</th>
<td>lldb
</td>
</tr>
<tr>
<th>Version</th>
<td>5.0
</td>
</tr>
<tr>
<th>Hardware</th>
<td>Other
</td>
</tr>
<tr>
<th>OS</th>
<td>All
</td>
</tr>
<tr>
<th>Status</th>
<td>NEW
</td>
</tr>
<tr>
<th>Severity</th>
<td>enhancement
</td>
</tr>
<tr>
<th>Priority</th>
<td>P
</td>
</tr>
<tr>
<th>Component</th>
<td>All Bugs
</td>
</tr>
<tr>
<th>Assignee</th>
<td>lldb-dev@lists.llvm.org
</td>
</tr>
<tr>
<th>Reporter</th>
<td>kenji.koyanagi@gmail.com
</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=21269" name="attach_21269" title="Patch for 5.0.2">attachment 21269</a> <a href="attachment.cgi?id=21269&action=edit" title="Patch for 5.0.2">[details]</a></span>
Patch for 5.0.2
I tried to debug an application on armv7l-linux but it did not work. I applied
the below patch, but the result was the same.
<a href="https://github.com/hpux735/swift-lldb/commit/e3e023f54c69512a77a87dfc328b3a8e75a9e185">https://github.com/hpux735/swift-lldb/commit/e3e023f54c69512a77a87dfc328b3a8e75a9e185</a>
The behavior of current LLDB + above patch:
I set a breakpoint at line 6, but not worked after line 16.
LLDB changed arch arm-*-linux-eabihf to armv7l-unknown-unknown at line 8-12.
I was not able to set breakpoint at line 13.
1 (lldb) file ~/a.out
2 Current executable set to '~/a.out' (arm).
3 (lldb) target list
4 Current targets:
5 * target #0: /home/common/a.out ( arch=arm-*-linux-eabihf,
platform=host )
6 (lldb) b main
7 Breakpoint 1: where = a.out`main, address = 0x000103f4
8 (lldb) process launch --stop-at-entry
9 Process 5659 launched: '/home/common/a.out' (arm)
10 (lldb) target list
11 Current targets:
12 * target #0: <none> ( arch=armv7l-unknown-unknown, platform=host,
pid=5659, state=stopped )
13 (lldb) b main
14 Breakpoint 2: no locations (pending).
15 WARNING: Unable to resolve breakpoint to any actual locations.
16 (lldb) c
17 Process 5659 resuming
18 hello
19 Process 5659 exited with status = 0 (0x00000000)
20 (lldb)
I am using Digilent Zybo, but same problem will probably occur in RaspberryPi.
I think there is a bug in ArchSpec::MergeFrom.
LLDB loses vendor and OS name by calling ArchSpec::CoreUpdated(true) to set
SubArch.
I think this problem is caused by the fact that SubArch can only be set by the
constructor of llvm::Triple.
LLDB worked fine by saving those information.
I judged that the FindCoreDefinition should be modified to support cores other
than armv7 and little-endian, so the above patch is not good.
I have created a patch. Are there any arm users who can try this?
I used 5.0.2 and 6.0.1 because libcxxabi of 7.0.0 failed in build on arm.</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the assignee for the bug.</li>
</ul>
</body>
</html>