freebsd-dev/contrib/llvm
Dimitry Andric 54553daf6d Pull in r339734 from upstream llvm trunk (by Eli Friedman):
[ARM] Make PerformSHLSimplify add nodes to the DAG worklist correctly.

  Intentionally excluding nodes from the DAGCombine worklist is likely
  to lead to weird optimizations and infinite loops, so it's generally
  a bad idea.

  To avoid the infinite loops, fix DAGCombine to use the
  isDesirableToCommuteWithShift target hook before performing the
  transforms in question, and implement the target hook in the ARM
  backend disable the transforms in question.

  Fixes https://bugs.llvm.org/show_bug.cgi?id=38530 . (I don't have a
  reduced testcase for that bug. But we should have sufficient test
  coverage for PerformSHLSimplify given that we're not playing weird
  tricks with the worklist. I can try to bugpoint it if necessary,
  though.)

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

This should fix a possible hang when compiling sys/dev/nxge/if_nxge.c
(which exists now only in the stable/11 branch) for arm.
2019-02-12 18:32:14 +00:00
..
include Pull in r339734 from upstream llvm trunk (by Eli Friedman): 2019-02-12 18:32:14 +00:00
lib Pull in r339734 from upstream llvm trunk (by Eli Friedman): 2019-02-12 18:32:14 +00:00
projects/libunwind o Implement unw_getcontext() 2018-06-19 14:46:59 +00:00
tools clang: default to DWARF 4 as of FreeBSD 13 2019-01-25 14:46:13 +00:00
utils/TableGen Merge llvm trunk r338150 (just before the 7.0.0 branch point), and 2018-08-02 17:42:12 +00:00
FREEBSD-Xlist Update FREEBSD-Xlist files for llvm and clang. 2015-05-27 20:58:54 +00:00
LICENSE.TXT Merge llvm trunk r338150, and resolve conflicts. 2018-07-30 16:33:32 +00:00