<feed xmlns='http://www.w3.org/2005/Atom'>
<title>bcm5719-llvm/llvm/lib/CodeGen, 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>2020-06-26T20:45:41+00:00</updated>
<entry>
<title>[DAGCombine] Check the uses of negated floating constant and remove the hack</title>
<updated>2020-06-26T20:45:41+00:00</updated>
<author>
<name>QingShan Zhang</name>
<email>qshanz@cn.ibm.com</email>
</author>
<published>2020-03-05T03:42:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=76ceebb0d96361de2b61bf8e504d306d1f2e492f'/>
<id>urn:sha1:76ceebb0d96361de2b61bf8e504d306d1f2e492f</id>
<content type='text'>
PowerPC hits an assertion due to somewhat the same reason as https://reviews.llvm.org/D70975.
Though there are already some hack, it still failed with some case, when the operand 0 is NOT
a const fp, it is another fma that with const fp. And that const fp is negated which result in multi-uses.

A better fix is to check the uses of the negated const fp. If there are already use of its negated
value, we will have benefit as no extra Node is added.

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

(cherry picked from commit 3906ae387f0775dfe4426e4336748269fafbd190)
</content>
</entry>
<entry>
<title>[LegalizeTypes][RISCV] Correctly sign-extend comparison for ATOMIC_CMP_XCHG</title>
<updated>2020-06-25T23:13:53+00:00</updated>
<author>
<name>Alex Bradbury</name>
<email>asb@asbradbury.org</email>
</author>
<published>2020-06-25T10:38:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=f8e49af4f1adcf457ea32e7164a126b10357cf4f'/>
<id>urn:sha1:f8e49af4f1adcf457ea32e7164a126b10357cf4f</id>
<content type='text'>
Currently, the comparison argument used for ATOMIC_CMP_XCHG is legalised
with GetPromotedInteger, which leaves the upper bits of the value
undefind. Since this is used for comparing in an LR/SC loop with a
full-width comparison, we must sign extend it on RISC-V.

This is related to https://reviews.llvm.org/D58829, which solved the
issue for ATOMIC_CMP_SWAP_WITH_SUCCESS, but not the simpler
ATOMIC_CMP_SWAP.

This patch is a modified form of
616289ed29225c0ddfe5699c7fdf42a0fcbe0ab4 by Jessica Clarke. It localises
the changes to LegalizeIntegerTypes and avoids adding a new virtual
method to TargetLowering to avoid changing the ABI of libLLVM.so.
</content>
</entry>
<entry>
<title>Move RDF from Hexagon to Codegen</title>
<updated>2020-06-24T16:31:04+00:00</updated>
<author>
<name>Scott Constable</name>
<email>scott.d.constable@intel.com</email>
</author>
<published>2020-03-17T18:45:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=34f7e00333ac26c0b2b7f34b5988f2fec7d99f03'/>
<id>urn:sha1:34f7e00333ac26c0b2b7f34b5988f2fec7d99f03</id>
<content type='text'>
RDF is designed to be target agnostic. Therefore it would be useful to have it available for other targets, such as X86.

Based on a previous patch by Krzysztof Parzyszek

Differential Revision: https://reviews.llvm.org/D75932
</content>
</entry>
<entry>
<title>Don't jump to landing pads in Control Flow Optimizer</title>
<updated>2020-05-28T23:27:42+00:00</updated>
<author>
<name>Arthur Eubanks</name>
<email>aeubanks@google.com</email>
</author>
<published>2020-05-13T23:33:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=a634a80615b1e012f1a61aa0cd1e2e67ef77d0bd'/>
<id>urn:sha1:a634a80615b1e012f1a61aa0cd1e2e67ef77d0bd</id>
<content type='text'>
Summary: Likely fixes https://bugs.llvm.org/show_bug.cgi?id=45858.

Subscribers: hiraditya, llvm-commits

Tags: #llvm

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

(cherry picked from commit fc937806efd71eb3803b35d0920bb7d76bc3040b)
</content>
</entry>
<entry>
<title>[MachineSink] Fix for breaking phi edges with instructions with multiple defs</title>
<updated>2020-05-07T14:27:37+00:00</updated>
<author>
<name>David Green</name>
<email>david.green@arm.com</email>
</author>
<published>2020-04-16T14:23:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=bab8d1790a33235dfb0e633652ca7fa21d0fb0d0'/>
<id>urn:sha1:bab8d1790a33235dfb0e633652ca7fa21d0fb0d0</id>
<content type='text'>
BreakPHIEdge would be set based on whether the instruction needs to
insert a new critical edge to allow sinking into a block where the uses
are PHI nodes. But for instructions with multiple defs it would be reset
on the second def, allowing the instruciton to sink where it should not.

Fixes PR44981

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

(cherry picked from commit 44c4ba34d001dcf538d7396007b5611d6f697f86)
</content>
</entry>
<entry>
<title>[DAGCombine] Fix splitting indexed loads in ForwardStoreValueToDirectLoad()</title>
<updated>2020-04-15T03:05:13+00:00</updated>
<author>
<name>Nemanja Ivanovic</name>
<email>nemanja.i.ibm@gmail.com</email>
</author>
<published>2020-03-27T22:29:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=321d929774c6fa0767e4ae5eb0881ad15e7a4664'/>
<id>urn:sha1:321d929774c6fa0767e4ae5eb0881ad15e7a4664</id>
<content type='text'>
In DAGCombiner::visitLOAD() we perform some checks before breaking up an indexed
load. However, we don't do the same checking in ForwardStoreValueToDirectLoad()
which can lead to failures later during combining
(see: https://bugs.llvm.org/show_bug.cgi?id=45301).

This patch just adds the same checks to this function as well.

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

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

(cherry picked from commit 482141134729237072cb94248381dab96ce34374)
</content>
</entry>
<entry>
<title>[CodeGen] Fix sinking local values in lpads with phis</title>
<updated>2020-04-13T20:37:15+00:00</updated>
<author>
<name>Reid Kleckner</name>
<email>rnk@google.com</email>
</author>
<published>2020-03-28T18:03:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=47e68d864420afd42d34fd25e97522e5c149de46'/>
<id>urn:sha1:47e68d864420afd42d34fd25e97522e5c149de46</id>
<content type='text'>
There was already a test case for landingpads to handle this case, but I
had forgotten to consider PHI instructions preceding the EH_LABEL in the
landingpad.

PR45261

(cherry picked from commit e5bf5037d869c74bc2faf81fa1f58dfd827e8356)
</content>
</entry>
<entry>
<title>No longer generate calls to *_finite</title>
<updated>2020-02-28T10:52:11+00:00</updated>
<author>
<name>serge-sans-paille</name>
<email>sguelton@redhat.com</email>
</author>
<published>2020-02-21T14:51:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=cd0926d087a85c5ee1222ca80980b4440214a822'/>
<id>urn:sha1:cd0926d087a85c5ee1222ca80980b4440214a822</id>
<content type='text'>
According to Joseph Myers, a libm maintainer

&gt; They were only ever an ABI (selected by use of -ffinite-math-only or
&gt; options implying it, which resulted in the headers using "asm" to redirect
&gt; calls to some libm functions), not an API. The change means that ABI has
&gt; turned into compat symbols (only available for existing binaries, not for
&gt; anything newly linked, not included in static libm at all, not included in
&gt; shared libm for future glibc ports such as RV32), so, yes, in any case
&gt; where tools generate direct calls to those functions (rather than just
&gt; following the "asm" annotations on function declarations in the headers),
&gt; they need to stop doing so.

As a consequence, we should no longer assume these symbols are available on the
target system.

Still keep the TargetLibraryInfo for constant folding.

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

(cherry picked from commit 6d15c4deab51498b70825fb6cefbbfe8f3d9bdcf)

For https://bugs.llvm.org/show_bug.cgi?id=45034
</content>
</entry>
<entry>
<title>[Codegen] Revert rL354676/rL354677 and followups - introduced PR43446 miscompile</title>
<updated>2020-02-26T14:22:28+00:00</updated>
<author>
<name>Roman Lebedev</name>
<email>lebedev.ri@gmail.com</email>
</author>
<published>2020-02-25T17:08:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=3abd9cd486d9c45867458f64d1294db698c39b4e'/>
<id>urn:sha1:3abd9cd486d9c45867458f64d1294db698c39b4e</id>
<content type='text'>
This reverts https://reviews.llvm.org/D58468
(rL354676, 44037d7a6377ec8e5542cced73583283334b516b),
and all and any follow-ups to that code block.

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

(cherry picked from commit d20907d1de89bf63b589fadd8c096d4895e47fba)
</content>
</entry>
<entry>
<title>[AArch64][FPenv] Update chain of int to fp conversion</title>
<updated>2020-02-18T15:46:44+00:00</updated>
<author>
<name>Diogo Sampaio</name>
<email>diogo.sampaio@arm.com</email>
</author>
<published>2020-02-15T05:05:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=b5d9a7e72fafaead89f0cc8994925c90ed3169be'/>
<id>urn:sha1:b5d9a7e72fafaead89f0cc8994925c90ed3169be</id>
<content type='text'>
Summary:
When using strict fp, it is required to update the
chain when performing integer type promotion of a
operand to a integer to floating point conversion.

Reviewers: craig.topper, john.brawn

Reviewed By: craig.topper

Subscribers: kristof.beyls, hiraditya, llvm-commits

Tags: #llvm

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

(cherry picked from commit 8bc790f9e6a6fc6d8fe8f41a7120269366fa0957)
</content>
</entry>
</feed>
