<feed xmlns='http://www.w3.org/2005/Atom'>
<title>bcm5719-llvm/mlir/lib/Conversion/VectorToLLVM, branch meklort-10.0.1</title>
<subtitle>Project Ortega BCM5719 LLVM</subtitle>
<id>https://git.raptorcs.com/git/bcm5719-llvm/atom?h=meklort-10.0.1</id>
<link rel='self' href='https://git.raptorcs.com/git/bcm5719-llvm/atom?h=meklort-10.0.1'/>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/'/>
<updated>2020-01-14T13:06:37+00:00</updated>
<entry>
<title>Make helper functions static or move them into anonymous namespaces.  NFC.</title>
<updated>2020-01-14T13:06:37+00:00</updated>
<author>
<name>Benjamin Kramer</name>
<email>benny.kra@googlemail.com</email>
</author>
<published>2020-01-14T13:06:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=df186507e1d07c3ddba091a076ba7a33dbdc5867'/>
<id>urn:sha1:df186507e1d07c3ddba091a076ba7a33dbdc5867</id>
<content type='text'>
</content>
</entry>
<entry>
<title>[mlir] NFC: Remove Value::operator* and Value::operator-&gt; now that Value is properly value-typed.</title>
<updated>2020-01-11T16:54:39+00:00</updated>
<author>
<name>River Riddle</name>
<email>riverriddle@google.com</email>
</author>
<published>2020-01-11T16:54:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=2bdf33cc4c733342fc83081bc7410ac5e9a24f55'/>
<id>urn:sha1:2bdf33cc4c733342fc83081bc7410ac5e9a24f55</id>
<content type='text'>
Summary: These were temporary methods used to simplify the transition.

Reviewed By: antiagainst

Differential Revision: https://reviews.llvm.org/D72548
</content>
</entry>
<entry>
<title>[mlir][VectorOps] Implement insert_strided_slice conversion</title>
<updated>2020-01-09T08:13:01+00:00</updated>
<author>
<name>Nicolas Vasilache</name>
<email>ntv@google.com</email>
</author>
<published>2020-01-09T08:12:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=2d515e49d89c0738ccef8f1733d5f9afe00ee979'/>
<id>urn:sha1:2d515e49d89c0738ccef8f1733d5f9afe00ee979</id>
<content type='text'>
Summary:
This diff implements the progressive lowering of insert_strided_slice.
Two cases appear:
1. when the source and dest vectors have different ranks, extract the dest
subvector at the proper offset and reduce to case 2.
2. when they have the same rank N:
  a. if the source and dest type are the same, the insertion is trivial:
     just forward the source
  b. otherwise, iterate over all N-1 D subvectors and create an
     extract/insert_strided_slice/insert replacement, reducing the problem
     to vecotrs of the same N-1 rank.

This combines properly with the other conversion patterns to lower all the way to LLVM.

Reviewers: ftynse, rriddle, AlexEichenberger, andydavis1, tetuante, nicolasvasilache

Reviewed By: andydavis1

Subscribers: merge_guards_bot, mehdi_amini, jpienaar, burmako, shauheen, antiagainst, arpith-jacob, mgester, lucyrfox, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D72317
</content>
</entry>
<entry>
<title>[mlir][VectorOps] Implement strided_slice conversion</title>
<updated>2020-01-09T08:03:51+00:00</updated>
<author>
<name>Nicolas Vasilache</name>
<email>ntv@google.com</email>
</author>
<published>2020-01-09T07:58:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=65678d938431c90408afa8d255cbed3d8ed8273f'/>
<id>urn:sha1:65678d938431c90408afa8d255cbed3d8ed8273f</id>
<content type='text'>
Summary:
This diff implements the progressive lowering of strided_slice to either:
  1. extractelement + insertelement for the 1-D case
  2. extract + optional strided_slice + insert for the n-D case.

This combines properly with the other conversion patterns to lower all the way to LLVM.

Appropriate tests are added.

Reviewers: ftynse, rriddle, AlexEichenberger, andydavis1, tetuante

Reviewed By: andydavis1

Subscribers: merge_guards_bot, mehdi_amini, jpienaar, burmako, shauheen, antiagainst, arpith-jacob, mgester, lucyrfox, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D72310
</content>
</entry>
<entry>
<title>NFC: Replace ValuePtr with Value and remove it now that Value is value-typed.</title>
<updated>2019-12-24T00:36:53+00:00</updated>
<author>
<name>River Riddle</name>
<email>riverriddle@google.com</email>
</author>
<published>2019-12-23T22:45:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=e62a69561fb9d7b1013d2853da68d79a7907fead'/>
<id>urn:sha1:e62a69561fb9d7b1013d2853da68d79a7907fead</id>
<content type='text'>
ValuePtr was a temporary typedef during the transition to a value-typed Value.

PiperOrigin-RevId: 286945714
</content>
</entry>
<entry>
<title>Adjust License.txt file to use the LLVM license</title>
<updated>2019-12-23T23:33:37+00:00</updated>
<author>
<name>Mehdi Amini</name>
<email>aminim@google.com</email>
</author>
<published>2019-12-23T17:35:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=56222a0694e4caf35e892d70591417c39fef1185'/>
<id>urn:sha1:56222a0694e4caf35e892d70591417c39fef1185</id>
<content type='text'>
PiperOrigin-RevId: 286906740
</content>
</entry>
<entry>
<title>NFC: Introduce new ValuePtr/ValueRef typedefs to simplify the transition to Value being value-typed.</title>
<updated>2019-12-23T06:00:23+00:00</updated>
<author>
<name>River Riddle</name>
<email>riverriddle@google.com</email>
</author>
<published>2019-12-23T05:59:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=35807bc4c5c9d8abc31ba0b2f955a82abf276e12'/>
<id>urn:sha1:35807bc4c5c9d8abc31ba0b2f955a82abf276e12</id>
<content type='text'>
This is an initial step to refactoring the representation of OpResult as proposed in: https://groups.google.com/a/tensorflow.org/g/mlir/c/XXzzKhqqF_0/m/v6bKb08WCgAJ

This change will make it much simpler to incrementally transition all of the existing code to use value-typed semantics.

PiperOrigin-RevId: 286844725
</content>
</entry>
<entry>
<title>[VectorOps] unify vector dialect "subscripts"</title>
<updated>2019-12-20T23:33:04+00:00</updated>
<author>
<name>Aart Bik</name>
<email>ajcbik@google.com</email>
</author>
<published>2019-12-20T23:32:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=1d47564a53b0110d0aff51360c9fad0b6c767908'/>
<id>urn:sha1:1d47564a53b0110d0aff51360c9fad0b6c767908</id>
<content type='text'>
PiperOrigin-RevId: 286650682
</content>
</entry>
<entry>
<title>[VectorOps] Add vector.print definition, with lowering support</title>
<updated>2019-12-18T19:31:34+00:00</updated>
<author>
<name>Aart Bik</name>
<email>ajcbik@google.com</email>
</author>
<published>2019-12-18T19:23:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=d9b500d3bb151bfb96073b0d66e8338a5c0186d5'/>
<id>urn:sha1:d9b500d3bb151bfb96073b0d66e8338a5c0186d5</id>
<content type='text'>
Examples:

  vector.print %f : f32
  vector.print %x : vector&lt;4xf32&gt;
  vector.print %y : vector&lt;3x4xf32&gt;
  vector.print %z : vector&lt;2x3x4xf32&gt;

LLVM lowering replaces these with fully unrolled calls
into a small runtime support library that provides some
basic printing operations (single value, opening closing
bracket, comma, newline).

PiperOrigin-RevId: 286230325
</content>
</entry>
<entry>
<title>[VectorOps] Add [insert/extract]element definition together with lowering to LLVM</title>
<updated>2019-12-16T17:52:46+00:00</updated>
<author>
<name>Aart Bik</name>
<email>ajcbik@google.com</email>
</author>
<published>2019-12-16T17:52:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=cd5dab8ad7fccc3b3e371ff37cb20ebfb4368d3f'/>
<id>urn:sha1:cd5dab8ad7fccc3b3e371ff37cb20ebfb4368d3f</id>
<content type='text'>
Similar to insert/extract vector instructions but
(1) work on 1-D vectors only
(2) allow for a dynamic index

  %c3 = constant 3 : index
  %0 = vector.insertelement %arg0, %arg1[%c : index] : vector&lt;4xf32&gt;
  %1 = vector.extractelement %arg0[%c3 : index] : vector&lt;4xf32&gt;

PiperOrigin-RevId: 285792205
</content>
</entry>
</feed>
