aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Analysis/ThreadSafety.cpp
diff options
context:
space:
mode:
authorSanjay Patel <spatel@rotateright.com>2015-02-03 18:54:00 +0000
committerSanjay Patel <spatel@rotateright.com>2015-02-03 18:54:00 +0000
commitb7d562878440cedcca1cefa2ba445092f2f7753e (patch)
tree980ae9df231ed1a1d3ca2fc0bbbe654ef0bf9342 /clang/lib/Analysis/ThreadSafety.cpp
parent2e18729bcef90939b7d0be61a1503d64d5cae471 (diff)
downloadllvm-b7d562878440cedcca1cefa2ba445092f2f7753e.zip
llvm-b7d562878440cedcca1cefa2ba445092f2f7753e.tar.gz
llvm-b7d562878440cedcca1cefa2ba445092f2f7753e.tar.bz2
Merge consecutive 16-byte loads into one 32-byte load (PR22329)
This patch detects consecutive vector loads using the existing EltsFromConsecutiveLoads() logic. This fixes: http://llvm.org/bugs/show_bug.cgi?id=22329 This patch effectively reverts the tablegen additions of D6492 / http://reviews.llvm.org/rL224344 ...which in hindsight were a horrible hack. The test cases that were added with that patch are simply modified to load from varying offsets of a base pointer. These loads did not match the existing tablegen patterns. A happy side effect of doing this optimization earlier is that we can now fold the load into a math op where possible; this is shown in some of the updated checks in the test file. Differential Revision: http://reviews.llvm.org/D7303 llvm-svn: 228006
Diffstat (limited to 'clang/lib/Analysis/ThreadSafety.cpp')
0 files changed, 0 insertions, 0 deletions