freebsd-dev/contrib/llvm
Dimitry Andric 211f2e5c6b Pull in r371111 from upstream llvm trunk (by Eli Friedman):
[IfConversion] Fix diamond conversion with unanalyzable branches.

  The code was incorrectly counting the number of identical
  instructions, and therefore tried to predicate an instruction which
  should not have been predicated.  This could have various effects: a
  compiler crash, an assembler failure, a miscompile, or just
  generating an extra, unnecessary instruction.

  Instead of depending on TargetInstrInfo::removeBranch, which only
  works on analyzable branches, just remove all branch instructions.

  Fixes https://bugs.llvm.org/show_bug.cgi?id=43121 and
  https://bugs.llvm.org/show_bug.cgi?id=41121 .

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

This should fix "Unable to predicate BX killed renamable $r0" errors
when building the lang/spidermonkey170 and lang/spidermonkey38 ports for
armv7 and armv6.

PR:		236567
MFC after:	3 days
2019-09-06 16:06:37 +00:00
..
include Pull in r360968 from upstream llvm trunk (by Philip Reames): 2019-07-01 21:06:10 +00:00
lib Pull in r371111 from upstream llvm trunk (by Eli Friedman): 2019-09-06 16:06:37 +00:00
tools lldb: shorten thread names to make logs easier to follow 2019-09-01 16:50:34 +00:00
utils/TableGen Pull in r352607 from upstream llvm trunk (by Craig Topper): 2019-02-10 12:45:33 +00:00
FREEBSD-Xlist Merge llvm trunk r351319, resolve conflicts, and update FREEBSD-Xlist. 2019-01-20 11:41:25 +00:00
LICENSE.TXT Merge llvm trunk r351319, resolve conflicts, and update FREEBSD-Xlist. 2019-01-20 11:41:25 +00:00