<feed xmlns='http://www.w3.org/2005/Atom'>
<title>bcm5719-llvm/libunwind/include, branch meklort-10.0.1</title>
<subtitle>Project Ortega BCM5719 LLVM</subtitle>
<id>https://git.raptorcs.com/git/bcm5719-llvm/atom?h=meklort-10.0.1</id>
<link rel='self' href='https://git.raptorcs.com/git/bcm5719-llvm/atom?h=meklort-10.0.1'/>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/'/>
<updated>2019-12-16T16:36:56+00:00</updated>
<entry>
<title>[libunwind][RISCV] Add 64-bit RISC-V support</title>
<updated>2019-12-16T16:36:56+00:00</updated>
<author>
<name>Sam Elliott</name>
<email>selliott@lowrisc.org</email>
</author>
<published>2019-12-16T16:35:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=ce3d1c6d61dcd96f44492516f8b613bbcadaeb8e'/>
<id>urn:sha1:ce3d1c6d61dcd96f44492516f8b613bbcadaeb8e</id>
<content type='text'>
Summary:
Add unwinding support for 64-bit RISC-V.

This is from the FreeBSD implementation with the following minor
changes:

- Renamed and renumbered DWARF registers to match the RISC-V ABI [1]
- Use the ABI mneumonics in getRegisterName() instead of the exact
   register names
- Include checks for __riscv_xlen == 64 to facilitate adding the 32-bit
   ABI in the future.

[1] https://github.com/riscv/riscv-elf-psabi-doc/blob/master/riscv-elf.md

Patch by Mitchell Horne (mhorne)

Reviewers: lenary, luismarques, compnerd, phosek

Reviewed By: lenary, luismarques

Subscribers: arichardson, sameer.abuasal, abidh, asb, aprantl, krytarowski, simoncook, kito-cheng, christof, shiva0217, rogfer01, rkruppe, PkmX, psnobl, benna, lenary, s.egerton, luismarques, emaste, cfe-commits

Differential Revision: https://reviews.llvm.org/D68362
</content>
</entry>
<entry>
<title>[NFC] Correct outdated links to the Itanium C++ ABI documentation</title>
<updated>2019-04-11T16:37:07+00:00</updated>
<author>
<name>Louis Dionne</name>
<email>ldionne@apple.com</email>
</author>
<published>2019-04-11T16:37:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=2b0da3d63ea6281d7ae8f858bbf86270a5405fb1'/>
<id>urn:sha1:2b0da3d63ea6281d7ae8f858bbf86270a5405fb1</id>
<content type='text'>
Those are now hosted on GitHub.

rdar://problem/36557462

llvm-svn: 358191
</content>
</entry>
<entry>
<title>[libunwind] Remove the remote unwinding support</title>
<updated>2019-02-02T20:54:03+00:00</updated>
<author>
<name>Petr Hosek</name>
<email>phosek@chromium.org</email>
</author>
<published>2019-02-02T20:54:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=368c02e3ec44e5418626f46abebcc22a69c7f66d'/>
<id>urn:sha1:368c02e3ec44e5418626f46abebcc22a69c7f66d</id>
<content type='text'>
This is unfinished, unused and incomplete. This could be brought back in
the future if there's a desire to build a more complete implementation,
but at the moment it's just bitrotting.

Differential Revision: https://reviews.llvm.org/D57252

llvm-svn: 352965
</content>
</entry>
<entry>
<title>Don't define unw_fpreg_t to uint64_t for __ARM_DWARF_EH__</title>
<updated>2019-01-29T09:00:32+00:00</updated>
<author>
<name>Martin Storsjo</name>
<email>martin@martin.st</email>
</author>
<published>2019-01-29T09:00:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=d27bec48542e9638ff41033ad714e90207b53c68'/>
<id>urn:sha1:d27bec48542e9638ff41033ad714e90207b53c68</id>
<content type='text'>
The existing typedef of unw_fpreg_t to uint64_t might work and be
correct for the ARM_EHABI case, but for dwarf, some cases in e.g.
DwarfInstructions.hpp convert between double and unw_fpreg_t.

When converting implicitly between double and unw_fpreg_t (uint64_t),
the values get interpreted as integers and converted to float and vice
versa, while the correct thing would be to keep the same bit pattern.

Avoid the whole issue by using the same definition of unw_fpreg_t
as all other architectures, when using dwarf unwinding on ARM.

Change assembler functions to take a void pointer instead of
unw_fpreg_t pointer, to avoid having a different mangled symbol name
depending on the actual value of this typedef.

Differential Revision: https://reviews.llvm.org/D57001

llvm-svn: 352461
</content>
</entry>
<entry>
<title>Update more file headers across all of the LLVM projects in the monorepo</title>
<updated>2019-01-19T10:56:40+00:00</updated>
<author>
<name>Chandler Carruth</name>
<email>chandlerc@gmail.com</email>
</author>
<published>2019-01-19T10:56:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=57b08b0944046a6a57ee9b7b479181f548a5b9b4'/>
<id>urn:sha1:57b08b0944046a6a57ee9b7b479181f548a5b9b4</id>
<content type='text'>
to reflect the new license. These used slightly different spellings that
defeated my regular expressions.

We understand that people may be surprised that we're moving the header
entirely to discuss the new license. We checked this carefully with the
Foundation's lawyer and we believe this is the correct approach.

Essentially, all code in the project is now made available by the LLVM
project under our new license, so you will see that the license headers
include that license only. Some of our contributors have contributed
code under our old license, and accordingly, we have retained a copy of
our old license notice in the top-level files in each project and
repository.

llvm-svn: 351648
</content>
</entry>
<entry>
<title>[Sparc] Add Sparc V8 support</title>
<updated>2019-01-14T10:15:20+00:00</updated>
<author>
<name>Daniel Cederman</name>
<email>cederman@gaisler.com</email>
</author>
<published>2019-01-14T10:15:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=17121adfa607b1d70300e88925767626333cf730'/>
<id>urn:sha1:17121adfa607b1d70300e88925767626333cf730</id>
<content type='text'>
Summary:
Adds the register class implementation for Sparc.
Adds support for DW_CFA_GNU_window_save.
Adds save and restore context functionality.

Adds getArch() function to each Registers_ class to be able to separate
between DW_CFA_AARCH64_negate_ra_state and DW_CFA_GNU_window_save which
are both represented by the same constant.

On Sparc the return address is the address of the call instruction, so
an offset needs to be added when returning to skip the call instruction
and its delay slot. If the function returns a struct it is also necessary
to skip one extra instruction on Sparc V8.

Reviewers: jyknight, mclow.lists, mstorsjo, compnerd

Reviewed By: jyknight, compnerd

Subscribers: jgorbe, mgorny, christof, llvm-commits, fedor.sergeev, JDevlieghere, ldionne, libcxx-commits

Differential Revision: https://reviews.llvm.org/D55763

llvm-svn: 351044
</content>
</entry>
<entry>
<title>Revert "[Sparc] Add Sparc V8 support"</title>
<updated>2019-01-10T01:08:31+00:00</updated>
<author>
<name>Jorge Gorbe Moya</name>
<email>jgorbe@google.com</email>
</author>
<published>2019-01-10T01:08:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=8d530b777d5332ebc1fbf8239865dc1f507e740c'/>
<id>urn:sha1:8d530b777d5332ebc1fbf8239865dc1f507e740c</id>
<content type='text'>
This reverts commit r350705.

llvm-svn: 350787
</content>
</entry>
<entry>
<title>[Sparc] Add Sparc V8 support</title>
<updated>2019-01-09T12:06:05+00:00</updated>
<author>
<name>Daniel Cederman</name>
<email>cederman@gaisler.com</email>
</author>
<published>2019-01-09T12:06:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=b2be18f42dd8f5b0e20c6c3c3a186716ec70191f'/>
<id>urn:sha1:b2be18f42dd8f5b0e20c6c3c3a186716ec70191f</id>
<content type='text'>
Summary:
Adds the register class implementation for Sparc.
Adds support for DW_CFA_GNU_window_save.
Adds save and restore context functionality.

On Sparc the return address is the address of the call instruction,
so an offset needs to be added when returning to skip the call instruction
and its delay slot. If the function returns a struct it is also necessary
to skip one extra instruction.

Reviewers: jyknight, mclow.lists, mstorsjo, compnerd

Reviewed By: compnerd

Subscribers: fedor.sergeev, JDevlieghere, ldionne, libcxx-commits

Differential Revision: https://reviews.llvm.org/D55763

llvm-svn: 350705
</content>
</entry>
<entry>
<title>[SEH] Add initial support for AArch64</title>
<updated>2018-12-18T20:05:59+00:00</updated>
<author>
<name>Martin Storsjo</name>
<email>martin@martin.st</email>
</author>
<published>2018-12-18T20:05:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=09cf6374c162b13e00bb86c10e6e481abf437a07'/>
<id>urn:sha1:09cf6374c162b13e00bb86c10e6e481abf437a07</id>
<content type='text'>
This doesn't yet implement inspecting the .pdata/.xdata to find the
LSDA pointer (in UnwindCursor::getInfoFromSEH), but normal C++
exception handling seems to run just fine without it. (The only
place I can see where it's even referenced is in
unwind_phase2_forced, and I can't find a codepath where libcxxabi
would end up calling that.)

Differential Revision: https://reviews.llvm.org/D55674

llvm-svn: 349532
</content>
</entry>
<entry>
<title>[AArch64][libunwind] Unwinding support for return address signing</title>
<updated>2018-12-14T11:30:12+00:00</updated>
<author>
<name>Luke Cheeseman</name>
<email>luke.cheeseman@arm.com</email>
</author>
<published>2018-12-14T11:30:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=e1a819e82de87bfd217d73ca74a39d10b46d0a71'/>
<id>urn:sha1:e1a819e82de87bfd217d73ca74a39d10b46d0a71</id>
<content type='text'>
- Follow up to revision r342895
- gcc would not build libunwind with the earlier patch as the autia1716
  instruction wasn't allowed to be assembled for pre armv8.3a targets
- The autia1716 instruction lives in the hint space encodings so is a valid
  instruction for all armv8a targets
- To work around this I have swapped out the autia1716 instruction for the hint
  instruction

Differential Revision: https://reviews.llvm.org/D55700

llvm-svn: 349140
</content>
</entry>
</feed>
