summaryrefslogtreecommitdiffstats
path: root/lldb/packages/Python/lldbsuite/test/python_api/thread/main.cpp
diff options
context:
space:
mode:
authorSanjay Patel <spatel@rotateright.com>2017-12-11 15:19:31 +0000
committerSanjay Patel <spatel@rotateright.com>2017-12-11 15:19:31 +0000
commitf3436d7dab460b926b6794603d53c5ede9d1e464 (patch)
treed6f0a8cc601726d286514fe769c7c0dc4a463423 /lldb/packages/Python/lldbsuite/test/python_api/thread/main.cpp
parentc07e6a0eff976564060fb09400e637c5df03d564 (diff)
downloadbcm5719-llvm-f3436d7dab460b926b6794603d53c5ede9d1e464.tar.gz
bcm5719-llvm-f3436d7dab460b926b6794603d53c5ede9d1e464.zip
[DAGCombiner] protect against an infinite loop between shl <--> mul (PR35579)
At first, I tried to thread the x86 needle and use a target hook (isVectorShiftByScalarCheap()) to disable the transform only for non-splat pow-of-2 constants, but not AVX2, but only some element types, but...it's difficult. Here we just avoid the loop with the x86 vector transform that conflicts with the general DAG combine and preserve all of the existing behavior AFAICT otherwise. Some tests that will probably fail if someone does try to restrict this in a more targeted way for x86-only may be found in: test/CodeGen/X86/combine-mul.ll test/CodeGen/X86/vector-mul.ll test/CodeGen/X86/widen_arith-5.ll This should prevent the infinite looping seen with: https://bugs.llvm.org/show_bug.cgi?id=35579 Differential Revision: https://reviews.llvm.org/D41040 llvm-svn: 320374
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test/python_api/thread/main.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud