Stella Laurenzo
e1839a0d6b
Bump llvm and iree versions.
...
* Gets us passed the upstream changes that enable type interfaces.
* Adds the ARM backend due to an implicit IREE dependency sneaking in for that (https://github.com/google/iree/issues/2401 )
* Adds explicit TypeStorage to type base classes per upstream change.
2020-07-02 11:24:05 -07:00
Stella Laurenzo
046751254f
Refactor old tracing tests and remove deprecated ops.
...
* Old doctests to run under lit.
* Old custom filecheck tests -> pytest directory (under lit).
* Rename some old ufunc ops in the tracer.
2020-06-29 16:19:03 -07:00
Stella Laurenzo
7ca292ade5
Add partial evaluator for explicit numpy ufuncs.
...
* This enables emission of "numpy.add(a, b)" and several dozen others.
* Will deprecate original ufunc infra in a follow-on.
2020-06-29 15:27:39 -07:00
Stella Laurenzo
a4f3ce1ed3
Add value coding for ndarray.
...
* This lets us import arrays from the outer environment, which is the first step to actually handling numpy ops.
2020-06-28 18:42:08 -07:00
Stella Laurenzo
f6721c173d
Add create_array_from_tensor and copy_to_tensor ops.
2020-06-28 17:58:26 -07:00
Stella Laurenzo
efe8915901
Add NdArrayType.
2020-06-28 17:37:20 -07:00
Stella Laurenzo
432e01fe8f
Move Basicpy and Numpy dialect IR to IR/ folder.
2020-06-09 19:22:24 -07:00
Sean Silva
1fed1cb016
Update llvm-project to 753a21928413f8a7e76978cb1354e09150e114e0
2020-05-21 13:09:06 -07:00
Stella Laurenzo
a91b0bfbe1
Add numpy.get_slice op and wire it up to the tracer.
2020-05-08 16:04:58 -07:00
Stella Laurenzo
bc5ef81d68
Add basicpy.SlotObject type and ops to create/index into it.
...
* This is intended to provide low-level modeling for built-in objects.
* It is now possible to trace slice tuples (which are tuples of NoneType|EllipsisType|SlotObjectType<slice, ...>).
2020-05-05 18:16:01 -07:00
Stella Laurenzo
bfd5fedba7
Add central registration for type ranges.
2020-05-05 14:16:39 -07:00
Stella Laurenzo
ebb5bcf6af
Handle np.transpose() and ndarray.T shortcut.
...
* Just the form without explicit permutation for now.
2020-05-04 16:20:36 -07:00
Stella Laurenzo
a5f755d406
Implement __array_func__ hook and use it to trace np.dot.
...
* Creates an abstraction/registry around emitters (intended to generalize to AST compilation as well).
* Reworks ufuncs to use the same mechanism as array funcs.
* Adds the numpy.dot op.
2020-05-04 15:47:01 -07:00
Stella Laurenzo
c89a35f97f
Rework the poc tracer to be structured how intended.
2020-05-02 19:52:21 -07:00
Stella Laurenzo
d3632af675
Add !numpy.any_dtype dialect type.
2020-04-29 18:20:42 -07:00
Stella Laurenzo
b4425fe1d2
Add numpy.ufunc_call op.
2020-04-29 17:49:56 -07:00
Stella Laurenzo
c4a192d5c9
Rename from npcomp::NUMPY to NPCOMP::numpy to follow IREE convention.
2020-04-29 17:10:10 -07:00
Stella Laurenzo
e845db8a20
Add builtin_ufunc and generic_ufunc ops.
2020-04-28 23:51:54 -07:00
Stella Laurenzo
d3b6e1767a
Add stub numpy dialect.
2020-04-26 17:20:58 -07:00