Revision tags: llvmorg-18.1.8, llvmorg-18.1.7, llvmorg-18.1.6, llvmorg-18.1.5, llvmorg-18.1.4, llvmorg-18.1.3, llvmorg-18.1.2, llvmorg-18.1.1, llvmorg-18.1.0, llvmorg-18.1.0-rc4, llvmorg-18.1.0-rc3, llvmorg-18.1.0-rc2, llvmorg-18.1.0-rc1, llvmorg-19-init, llvmorg-17.0.6, llvmorg-17.0.5, llvmorg-17.0.4, llvmorg-17.0.3, llvmorg-17.0.2, llvmorg-17.0.1, llvmorg-17.0.0, llvmorg-17.0.0-rc4, llvmorg-17.0.0-rc3, llvmorg-17.0.0-rc2, llvmorg-17.0.0-rc1, llvmorg-18-init, llvmorg-16.0.6, llvmorg-16.0.5, llvmorg-16.0.4, llvmorg-16.0.3, llvmorg-16.0.2, llvmorg-16.0.1, llvmorg-16.0.0, llvmorg-16.0.0-rc4, llvmorg-16.0.0-rc3, llvmorg-16.0.0-rc2, llvmorg-16.0.0-rc1, llvmorg-17-init, llvmorg-15.0.7 |
|
#
232a27b1 |
| 14-Dec-2022 |
David Spickett <david.spickett@linaro.org> |
[LLVM][TableGen] Notebook describing how to write a Python backend
This tutorial uses the dump json option to write a backend for SQL queries.
It is based on the work of Min-Yih Hsu: * https://gith
[LLVM][TableGen] Notebook describing how to write a Python backend
This tutorial uses the dump json option to write a backend for SQL queries.
It is based on the work of Min-Yih Hsu: * https://github.com/mshockwave/SQLGen * https://www.youtube.com/watch?v=UP-LBRbvI_U
I hope that having the same concepts in 3 forms will allow people to choose the style that fits them.
The main drawback here being that it's in Python. C++ can be used in a notebook (https://github.com/jupyter-xeus/xeus-cling) but I decided against it for a few reasons:
* Python is the default for Jupyter, no extra installs needed. * Having the code in a second language may help people who know one or the other. * There is no upstream example of a JSON powered backend. (and although we would be unlikely to accept one upstream, I think it's a great option for quick development before translating into C++)
Reviewed By: myhsu
Differential Revision: https://reviews.llvm.org/D142364
show more ...
|