<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src-test/contrib/llvm/lib/Target/PowerPC, branch main</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src-test/atom?h=main</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src-test/atom?h=main'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test/'/>
<updated>2019-12-20T19:53:05Z</updated>
<entry>
<title>Move all sources from the llvm project into contrib/llvm-project.</title>
<updated>2019-12-20T19:53:05Z</updated>
<author>
<name>Dimitry Andric</name>
<email>dim@FreeBSD.org</email>
</author>
<published>2019-12-20T19:53:05Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test/commit/?id=0b57cec536236d46e3dba9bd041533462f33dbb7'/>
<id>urn:sha1:0b57cec536236d46e3dba9bd041533462f33dbb7</id>
<content type='text'>
This uses the new layout of the upstream repository, which was recently
migrated to GitHub, and converted into a "monorepo".  That is, most of
the earlier separate sub-projects with their own branches and tags were
consolidated into one top-level directory, and are now branched and
tagged together.

Updating the vendor area to match this layout is next.
</content>
</entry>
<entry>
<title>﻿Merge commit 241cbf201 from llvm git (by Nemanja Ivanovic):</title>
<updated>2019-12-04T18:38:50Z</updated>
<author>
<name>Dimitry Andric</name>
<email>dim@FreeBSD.org</email>
</author>
<published>2019-12-04T18:38:50Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test/commit/?id=d8cad2f198e5bcc60f6fbd885c5e994fafcec263'/>
<id>urn:sha1:d8cad2f198e5bcc60f6fbd885c5e994fafcec263</id>
<content type='text'>
  [PowerPC] Fix crash in peephole optimization

  When converting reg+reg shifts to reg+imm rotates, we neglect to
  consider the CodeGenOnly versions of the 32-bit shift mnemonics. This
  means we produce a rotate with missing operands which causes a crash.

  Committing this fix without review since it is non-controversial that
  the list of mnemonics to consider should include the 64-bit aliases
  for the exact mnemonics.

  Fixes PR44183.

This should fix "Assertion failed: (idx &lt; size()), function operator[],
file /usr/src/contrib/llvm/include/llvm/ADT/SmallVector.h, line 153"
when building the graphics/mesa-dri port for the PowerPC64 ELFv2 ABI.

Reported by:	Alfredo Dal'Ava Júnior &lt;alfredo.junior@eldorado.org.br&gt;
MFC after:      1 month
X-MFC-With:     r353358
</content>
</entry>
<entry>
<title>Merge commit 97e362607 from llvm git (by Nemanja Ivanovic):</title>
<updated>2019-11-04T19:38:07Z</updated>
<author>
<name>Dimitry Andric</name>
<email>dim@FreeBSD.org</email>
</author>
<published>2019-11-04T19:38:07Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test/commit/?id=232097767948bca7e04b1aa6d8fbfb0e425fe497'/>
<id>urn:sha1:232097767948bca7e04b1aa6d8fbfb0e425fe497</id>
<content type='text'>
  [PowerPC] Do not emit HW loop if the body contains calls to
  lrint/lround

  These two intrinsics are lowered to calls so should prevent the
  formation of CTR loops. In a subsequent patch, we will handle all
  currently known intrinsics and prevent the formation of HW loops if
  any unknown intrinsics are encountered.

  Differential revision: https://reviews.llvm.org/D68841

This should fix an "invalid CRT loop" assertion when building the
www/node port for powerpc64.

Requested by:	Alfredo Dal'Ava Júnior &lt;alfredo.junior@eldorado.org.br&gt;
MFC after:	1 month
X-MFC-With:	r353358
</content>
</entry>
<entry>
<title>﻿Pull in r370426 from upstream llvm trunk (by Fāng-ruì Sòng):</title>
<updated>2019-09-07T12:23:57Z</updated>
<author>
<name>Dimitry Andric</name>
<email>dim@FreeBSD.org</email>
</author>
<published>2019-09-07T12:23:57Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test/commit/?id=617ea2e6c88134c0fb9b0b590dbf5d518620a6c5'/>
<id>urn:sha1:617ea2e6c88134c0fb9b0b590dbf5d518620a6c5</id>
<content type='text'>
  [PPC32] Emit R_PPC_GOT_TPREL16 instead R_PPC_GOT_TPREL16_LO

  Unlike ppc64, which has ADDISgotTprelHA+LDgotTprelL pairs, ppc32 just
  uses LDgotTprelL32, so it does not make lots of sense to use _LO
  without a paired _HA.

  Emit R_PPC_GOT_TPREL16 instead R_PPC_GOT_TPREL16_LO to match GCC, and
  get better linker relocation check. Note, R_PPC_GOT_TPREL16_{HA,LO}
  don't have good linker support:

  (a) lld does not support R_PPC_GOT_TPREL16_{HA,LO}.
  (b) Top of tree ld.bfd does not support R_PPC_GOT_REL16_HA
      Initial-Exec -&gt; Local-Exec relaxation:

    // a.o
    addis 3, 3, tsd_tls@got@tprel@ha
    lwz 3, tsd_tls@got@tprel@l(3)
    add 3, 3, tsd_tls@tls
    // b.o
    .section .tdata,"awT"; .globl tsd_tls; tsd_tls:

    // ld/ld-new a.o b.o
    internal error, aborting at ../../bfd/elf32-ppc.c:7952 in
    ppc_elf_relocate_section

  Reviewed By: adalava

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

This allows use of LLD for linking 32-bit static binaries on
FreeBSD/powerpc.

Submitted by:	Alfredo Dal'Ava Júnior &lt;alfredo.junior@eldorado.org.br&gt;
</content>
</entry>
<entry>
<title>Merge llvm trunk r366426, resolve conflicts, and update FREEBSD-Xlist.</title>
<updated>2019-08-21T18:13:02Z</updated>
<author>
<name>Dimitry Andric</name>
<email>dim@FreeBSD.org</email>
</author>
<published>2019-08-21T18:13:02Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test/commit/?id=54db30ce18663e6c2991958f3b5d18362e8e93c4'/>
<id>urn:sha1:54db30ce18663e6c2991958f3b5d18362e8e93c4</id>
<content type='text'>
</content>
</entry>
<entry>
<title>powerpc: Transition to Secure-PLT, like most other OSs (Toolchain part)</title>
<updated>2019-06-25T02:35:22Z</updated>
<author>
<name>Justin Hibbits</name>
<email>jhibbits@FreeBSD.org</email>
</author>
<published>2019-06-25T02:35:22Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test/commit/?id=e861dab451869582008237a8c11e97348d2440ce'/>
<id>urn:sha1:e861dab451869582008237a8c11e97348d2440ce</id>
<content type='text'>
Summary:
Toolchain follow-up to r349350.  LLVM patches will be submitted upstream for
9.0 as well.

The bsd.cpu.mk change is required because GNU ld assumes BSS-PLT if it
cannot determine for certain that it needs Secure-PLT, and some binaries do
not compile in such a way to make it know to use Secure-PLT.

Reviewed By: nwhitehorn, bdragon, pfg
Differential Revision: https://reviews.freebsd.org/D20598
</content>
</entry>
<entry>
<title>Upgrade our copies of clang, llvm, lld, lldb, compiler-rt, libc++,</title>
<updated>2019-06-12T21:10:37Z</updated>
<author>
<name>Dimitry Andric</name>
<email>dim@FreeBSD.org</email>
</author>
<published>2019-06-12T21:10:37Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test/commit/?id=efc5c4420a710bc3e07502d32d105ddf37f44d7b'/>
<id>urn:sha1:efc5c4420a710bc3e07502d32d105ddf37f44d7b</id>
<content type='text'>
libunwind and openmp to the upstream release_80 branch r363030
(effectively, 8.0.1 rc2).  The 8.0.1 release should follow this within a
week or so.

MFC after:	2 weeks
</content>
</entry>
<entry>
<title>Merge llvm trunk r351319, resolve conflicts, and update FREEBSD-Xlist.</title>
<updated>2019-01-20T11:41:25Z</updated>
<author>
<name>Dimitry Andric</name>
<email>dim@FreeBSD.org</email>
</author>
<published>2019-01-20T11:41:25Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test/commit/?id=d9484dd61cc151c4f34c31e07f693fefa66316b5'/>
<id>urn:sha1:d9484dd61cc151c4f34c31e07f693fefa66316b5</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Merge llvm, clang, lld, lldb, compiler-rt and libc++ release_70 branch</title>
<updated>2018-12-09T11:36:04Z</updated>
<author>
<name>Dimitry Andric</name>
<email>dim@FreeBSD.org</email>
</author>
<published>2018-12-09T11:36:04Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test/commit/?id=0b9890fcbf4bd3cb118afc215675503889b63fb9'/>
<id>urn:sha1:0b9890fcbf4bd3cb118afc215675503889b63fb9</id>
<content type='text'>
r348686 (effectively 7.0.1 rc3), resolve conflicts, and bump version
numbers.

PR:		230240, 230355
</content>
</entry>
<entry>
<title>Merge llvm, clang, lld, lldb, compiler-rt and libc++ release_70 branch</title>
<updated>2018-08-18T12:11:17Z</updated>
<author>
<name>Dimitry Andric</name>
<email>dim@FreeBSD.org</email>
</author>
<published>2018-08-18T12:11:17Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test/commit/?id=7726714dffdf7f3f8ac3ca8d0f167200150256d5'/>
<id>urn:sha1:7726714dffdf7f3f8ac3ca8d0f167200150256d5</id>
<content type='text'>
r339999, resolve conflicts, and bump version numbers.

PR:		230240,230355
</content>
</entry>
</feed>
