<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm/test/Transforms/LoopVectorize/X86, branch stable</title>
<subtitle>http://llvm.org</subtitle>
<id>https://git.amat.us/llvm/atom/test/Transforms/LoopVectorize/X86?h=stable</id>
<link rel='self' href='https://git.amat.us/llvm/atom/test/Transforms/LoopVectorize/X86?h=stable'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/'/>
<updated>2013-04-01T10:23:49Z</updated>
<entry>
<title>X86TTI: Add accurate costs for itofp operations, based on the actual instruction counts.</title>
<updated>2013-04-01T10:23:49Z</updated>
<author>
<name>Benjamin Kramer</name>
<email>benny.kra@googlemail.com</email>
</author>
<published>2013-04-01T10:23:49Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=13497b3aa7589fc4f9e924f850a7e5151e9ddd2f'/>
<id>urn:sha1:13497b3aa7589fc4f9e924f850a7e5151e9ddd2f</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178459 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>LoopVectorizer: Insert some white space to make test case more readable</title>
<updated>2013-03-14T21:31:09Z</updated>
<author>
<name>Arnold Schwaighofer</name>
<email>aschwaighofer@apple.com</email>
</author>
<published>2013-03-14T21:31:09Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=c184a5f4cad9415ee93ff6d24da2ed676573b61c'/>
<id>urn:sha1:c184a5f4cad9415ee93ff6d24da2ed676573b61c</id>
<content type='text'>
Also remove some unneeded function attributes.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177114 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Add missing asserts flag to test - it uses debug flags</title>
<updated>2013-03-14T19:01:58Z</updated>
<author>
<name>Arnold Schwaighofer</name>
<email>aschwaighofer@apple.com</email>
</author>
<published>2013-03-14T19:01:58Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=e2188d9c43d9e81407d2c7b7ef887e27f028a8ff'/>
<id>urn:sha1:e2188d9c43d9e81407d2c7b7ef887e27f028a8ff</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177102 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>LoopVectorize: Invert case when we use a vector cmp value to query select cost</title>
<updated>2013-03-14T18:54:36Z</updated>
<author>
<name>Arnold Schwaighofer</name>
<email>aschwaighofer@apple.com</email>
</author>
<published>2013-03-14T18:54:36Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=d517da33b712b5d8d687ee5e5974056a4787ec4f'/>
<id>urn:sha1:d517da33b712b5d8d687ee5e5974056a4787ec4f</id>
<content type='text'>
We generate a select with a vectorized condition argument when the condition is
NOT loop invariant. Not the other way around.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177098 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Force cpu in test.</title>
<updated>2013-03-08T17:01:18Z</updated>
<author>
<name>Benjamin Kramer</name>
<email>benny.kra@googlemail.com</email>
</author>
<published>2013-03-08T17:01:18Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=35a4a0ca510feb21aeffb27982b9610f65f55e61'/>
<id>urn:sha1:35a4a0ca510feb21aeffb27982b9610f65f55e61</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176702 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Insert the reduction start value into the first bypass block to preserve domination.</title>
<updated>2013-03-08T16:58:37Z</updated>
<author>
<name>Benjamin Kramer</name>
<email>benny.kra@googlemail.com</email>
</author>
<published>2013-03-08T16:58:37Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=f22d9cfa6d145ce26930804cc3ac54340f49c38b'/>
<id>urn:sha1:f22d9cfa6d145ce26930804cc3ac54340f49c38b</id>
<content type='text'>
Fixes PR15344.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176701 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>X86 cost model: Adjust cost for custom lowered vector multiplies</title>
<updated>2013-03-02T04:02:52Z</updated>
<author>
<name>Arnold Schwaighofer</name>
<email>aschwaighofer@apple.com</email>
</author>
<published>2013-03-02T04:02:52Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=5f0d9dbdf48a9efe16bfadf88e5335f7b9a8ec3f'/>
<id>urn:sha1:5f0d9dbdf48a9efe16bfadf88e5335f7b9a8ec3f</id>
<content type='text'>
This matters for example in following matrix multiply:

int **mmult(int rows, int cols, int **m1, int **m2, int **m3) {
  int i, j, k, val;
  for (i=0; i&lt;rows; i++) {
    for (j=0; j&lt;cols; j++) {
      val = 0;
      for (k=0; k&lt;cols; k++) {
        val += m1[i][k] * m2[k][j];
      }
      m3[i][j] = val;
    }
  }
  return(m3);
}

Taken from the test-suite benchmark Shootout.

We estimate the cost of the multiply to be 2 while we generate 9 instructions
for it and end up being quite a bit slower than the scalar version (48% on my
machine).

Also, properly differentiate between avx1 and avx2. On avx-1 we still split the
vector into 2 128bits and handle the subvector muls like above with 9
instructions.
Only on avx-2 will we have a cost of 9 for v4i64.

I changed the test case in test/Transforms/LoopVectorize/X86/avx1.ll to use an
add instead of a mul because with a mul we now no longer vectorize. I did
verify that the mul would be indeed more expensive when vectorized with 3
kernels:

for (i ...)
   r += a[i] * 3;
for (i ...)
  m1[i] = m1[i] * 3; // This matches the test case in avx1.ll
and a matrix multiply.

In each case the vectorized version was considerably slower.

radar://13304919

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176403 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Forgot to 'svn add' the LoopVectorizer tests for the new parallel loop metadata, sorry.</title>
<updated>2013-02-15T21:50:19Z</updated>
<author>
<name>Pekka Jaaskelainen</name>
<email>pekka.jaaskelainen@tut.fi</email>
</author>
<published>2013-02-15T21:50:19Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=b3dedc2ef26fd3c5ee5d14e5ef10d6dcf44fedd7'/>
<id>urn:sha1:b3dedc2ef26fd3c5ee5d14e5ef10d6dcf44fedd7</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175311 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Formatting.</title>
<updated>2013-02-05T15:32:16Z</updated>
<author>
<name>NAKAMURA Takumi</name>
<email>geek4civic@gmail.com</email>
</author>
<published>2013-02-05T15:32:16Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=f5b39cd8dec1e64ce060bf5bcafc13aaf72d9d70'/>
<id>urn:sha1:f5b39cd8dec1e64ce060bf5bcafc13aaf72d9d70</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174380 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>llvm/test/Transforms/LoopVectorize/X86/vector_ptr_load_store.ll: "-debug" requires +Asserts.</title>
<updated>2013-02-05T15:32:10Z</updated>
<author>
<name>NAKAMURA Takumi</name>
<email>geek4civic@gmail.com</email>
</author>
<published>2013-02-05T15:32:10Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=eec44ce8345a0207a17eb4ecd0445db7164b7ccf'/>
<id>urn:sha1:eec44ce8345a0207a17eb4ecd0445db7164b7ccf</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174379 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
</feed>
