]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
MFC r275633:
authordim <dim@FreeBSD.org>
Sat, 13 Dec 2014 12:14:26 +0000 (12:14 +0000)
committerdim <dim@FreeBSD.org>
Sat, 13 Dec 2014 12:14:26 +0000 (12:14 +0000)
commit3156db9097eabc078be1c06088d994af5df0b52d
treea1ef4f975b82430cb58942c10fc0c804c65e18c2
parent8b3b3c8447148612e541ae4184534ac77184e978
MFC r275633:

Pull in r223171 from upstream llvm trunk (by Michael Zolotukhin):

  PR21302. Vectorize only bottom-tested loops.

  rdar://problem/18886083

This fixes a bug in the llvm vectorizer, which could sometimes cause
vectorized loops to perform an additional iteration, leading to possible
buffer overruns.  Symptoms of this, which are usually segfaults, were
first noticed when building gcc ports, here:

https://lists.freebsd.org/pipermail/freebsd-ports/2014-September/095466.html
https://lists.freebsd.org/pipermail/freebsd-toolchain/2014-September/001211.html

Since this fix is very important for ports, bump __FreeBSD_version to
make it easier for port maintainers to test whether the fix has been
applied.

Upstream PR: http://llvm.org/PR21302
contrib/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
sys/sys/param.h