New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Upgrade to LLVM9 #548
Upgrade to LLVM9 #548
Conversation
sklam
commented
Jan 31, 2020
•
edited
edited
- Upgrades to LLVM9
- exposes isJIT from target machine creation function
ffi/build.py
Outdated
@@ -109,7 +109,7 @@ def main_posix(kind, library_ext): | |||
|
|||
out = out.decode('latin1') | |||
print(out) | |||
if not (out.startswith('8.0.') or out.startswith('7.0.') | |||
if not (out.startswith('9.0.') or out.startswith('7.0.') |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
if not (out.startswith('9.0.') or out.startswith('7.0.') | |
if not (out.startswith('9.0.') or out.startswith('8.0.') or out.startswith('7.0.') |
This will drop support for 8.0 which I assume was not intended.
# Conflicts: # buildscripts/azure/azure-windows.yml # ffi/build.py
Remove old & unused EmitJITDebug.
how did my PR cause flake8 error on files it didn't change?! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the patch and for working through getting LLVM 9 supported. There's a few things to resolve in the change set but largely seems good! Thanks again!
@rem Install enum34 for Python < 3.4 | ||
if %PYTHON% LSS 3.4 (%CONDA_INSTALL% enum34) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we need this!?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nope, removed
ffi/build.py
Outdated
if not (out.startswith('9.0.') | ||
or out.startswith('8.0.') | ||
or out.startswith('7.0.') |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If llvmlite
continues to support 7 and 8, but in prod everything moves to 9, how do we know if 7 and 8 got accidentally broken by some incoming change? I think all supported platforms work on 9 so it's not like we've got a spread of LLVM possibilities running to track this. Perhaps this should just be a move to 9 or comment about 7 and 8 likely to work but out of support?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also think the docs and README will need a patch for whatever changes are determined?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
let's just move to llvm9. we won't be testing llvm 8, 7 anymore.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Agree. There's a few references to 7 and 8 in the source that need patching.
docs/source/user-guide/ir/index.rst:<http://llvm.org/releases/7.0.0/docs/LangRef.html>`_.
docs/source/admin-guide/install.rst:#. Download the `LLVM 7.0.0 source code <http://releases.llvm.org/7.0.0/llvm-7.0.0.src.tar.xz>`_.
docs/source/admin-guide/install.rst: or `LLVM 8.0.0 source code <http://releases.llvm.org/8.0.0/llvm-8.0.0.src.tar.xz>`_
docs/source/conf.py: 'llvm': ('http://llvm.org/releases/8.0.0/docs', None),
smoking at |
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for working all this out and slogging through the challenges that this always present, great to see this done!
Wheel failure will be dealt with separately. |