Commit Graph

2287 Commits (main)

Author SHA1 Message Date
Kaustubh 78ebf9bf18
Merge pull request #1069 from yashssh/pic-callback-bug
Add instrumentation callback hook for new pass managers
2024-07-24 15:29:28 +05:30
Kaustubh b15213fd9f
Merge pull request #1068 from yashssh/fpm-run-bug
Early exit from fpm.run() if called on function declarations
2024-07-24 13:30:10 +05:30
Yashwant Singh 664d2a2803 review comments in tests 2024-07-23 12:19:53 +05:30
Yashwant Singh adad42b68d Query PIC directly from PB object, instead of managing it seperately 2024-07-23 12:07:10 +05:30
Yashwant Singh fdaeabbda7 more formatting 2024-07-19 20:41:50 +05:30
Yashwant Singh 75131d5e77 Address review comments for tests 2024-07-19 15:38:41 +05:30
Yashwant Singh 58569a0ddd Expose PIC in ffi layer 2024-07-19 15:16:06 +05:30
Yashwant Singh 5aaa1561a5 clang-format 2024-07-18 15:03:22 +05:30
Yashwant Singh c34d53909e Add llvm16 supported syntax 2024-07-18 14:52:32 +05:30
Yashwant Singh 507db4c2de Add instrumentation callbacks for pass managers
The new pass manager relies on PIC callbacks for deciding
if a function needs to be skipped for optimization when
compiled with 'optnone'.
2024-07-18 09:18:41 +05:30
Yashwant Singh 86f684e278 Early exit from fpm.run() if called on function declarations
This pattern in common in Numba which causes fpm to crash
2024-07-17 16:24:37 +05:30
Siu Kwan Lam f59140fb34
Merge pull request #1067 from gmarkall/llvm15
Use LLVM 15 by default, add experimental LLVM 16 support
2024-07-16 14:40:10 -05:00
Graham Markall dc56048d50
Replace llvmlite LLVM 14 recipe with LLVM 15 recipe 2024-07-15 11:58:19 +01:00
Graham Markall 98452e2a63
Remove llvmdev 14 recipe
Replace with llvmdev recipe for LLVM 15.
2024-07-15 11:55:15 +01:00
Siu Kwan Lam 9721cbf40d
Merge pull request #1046 from yashssh/npm-numba
Add basic infra required to move Numba to NewPassManager
2024-07-08 15:28:29 -05:00
Graham Markall 29fcbb86ed
Try editing build.py on RTD instead 2024-07-05 15:09:10 +01:00
Graham Markall 587c885f77
Set LLVM version to 15 in post_system_dependencies on RTD 2024-07-05 14:48:19 +01:00
Graham Markall f3564f3c27
Use LLVM 15 on RTD 2024-07-05 14:41:15 +01:00
Graham Markall d75760d228
Try setting CMake C++ standard to 17 to fix Windows LLVM 16 build 2024-07-05 14:15:37 +01:00
Graham Markall 65bcb0318b
Use LLVM 15 by default, add experimental LLVM 16 support
Changes required to use LLVM 15 by default, and to support LLVM 16
experimentally, include:

CI config:
- Bump all LLVM 14 configurations to use LLVM 15
- Dump the LLVM 15 configurations to use LLVM 16

llvmlite:
- Always set opaque pointers to false (they are the default in both 15
  and 16, unlike 14).
- Don't initialize of `ObjCARCOpts` in LLVM 16 and above. This was
  removed in LLVM 16 by:

  ```
  commit 4153f989bab0f2f300fa8d3001ebeef7b6d9672c
  Author: Arthur Eubanks <aeubanks@google.com>
  Date:   Sun Oct 2 13:20:21 2022 -0700

      [ObjCARC] Remove legacy PM versions of optimization passes
  ```
- Remove the `AggressiveInstCombine` and `PruneEH` passes. These were
  removed from the legacy pass manager in LLVM 16 by:

  ```
  commit 70dc3b811e4926fa2c88bd3b53b29c46fcba1a90
  Author: Arthur Eubanks <aeubanks@google.com>
  Date:   Mon Oct 31 14:50:38 2022 -0700

      [AggressiveInstCombine] Remove legacy PM pass
  ```

  and

  ```
  commit 46fc75ab28b78a730ea21fd7daba6443937bfaac
  Author: Sebastian Peryt <sebastian.peryt@intel.com>
  Date:   Mon Sep 26 18:31:32 2022 -0700

      [NFC][2/n] Remove PrunePH pass
  ```
- Modify `reserveAllocationSpace` in the memory manager to use `Align`
  for the type of alignments in LLVM 16 - this mirrors an upstream
  change.
- Remove LLVM 14-specific code paths (and one vestigial LLVM < 9 path).
- Update the function attributes test to recognize the new form of
  memory attributes, - `memory(<action>)` as opposed to individual
  attributes like `readonly`. See:
  https://releases.llvm.org/16.0.0/docs/LangRef.html#function-attributes
2024-07-05 13:49:32 +01:00
Siu Kwan Lam cb8baa4389
Merge pull request #1066 from gmarkall/macos-12
Move Azure to use macos-12
2024-06-27 15:11:59 -05:00
Siu Kwan Lam c956275c9c
Merge pull request #1063 from kc611/triple_partitioning
Added llvm based process triple partitioning
2024-06-27 15:11:49 -05:00
Siu Kwan Lam 41acda38c8
Merge pull request #1036 from sklam/enh/llvm15_conda_buildscript
LLVM 15 conda recipe
2024-06-27 15:11:40 -05:00
Graham Markall 1f38172882
Move Azure to use macos-12
macos-11 is deprecated and will be removed very soon.
2024-06-27 09:51:51 +01:00
Kaustubh 8d56e3b8f3
Update llvmlite/binding/targets.py
Co-authored-by: Graham Markall <535640+gmarkall@users.noreply.github.com>
2024-06-26 23:27:06 +05:30
kc611 bb1ea3c46d Fixed object format dictionary and added additional test cases 2024-06-26 17:23:23 +05:30
kc611 fcc69a281a Fixed flake8 issues and added unittests 2024-06-25 19:31:02 +05:30
kc611 c32768127f Sorted out architecture and objectformat issues 2024-06-25 18:03:56 +05:30
kc611 6d5e5f2bfb Used enum parsers to parse the input triple string 2024-06-25 16:17:38 +05:30
kc611 a14264e55c Added llvm based processs triple partitioning 2024-06-24 18:08:37 +05:30
Emergency Self-Construct 5c181ff3af
Merge pull request #1060 from esc/misc/changelog-0.43.0-for-main
port changelog for 0.43.0 to main
2024-06-14 15:51:30 +02:00
esc 07a8a54918 port changelog for 0.43.0 to main
As title
2024-06-14 14:43:46 +02:00
Siu Kwan Lam 91451746b4
Merge pull request #1051 from sklam/enh/type_roundtrip
Roundtrip llvmlite.binding.TypeRef back into llvmlite.ir.Type
2024-06-10 13:28:10 -05:00
Siu Kwan Lam 2d91d8e3b7
Update docs/source/user-guide/binding/type-references.rst
Co-authored-by: stuartarchibald <stuartarchibald@users.noreply.github.com>
2024-06-10 11:30:04 -05:00
Graham Markall 69c867cf6c
Merge remote-tracking branch 'numba/main' into npm-numba 2024-06-10 09:25:11 +01:00
Emergency Self-Construct 9284b1b1dd
Merge pull request #1053 from gmarkall/newer-sphinx
Use RTD for all docs CI / testing (was: Try and get CI to use a newer Sphinx)
2024-06-07 12:12:41 +02:00
Graham Markall 20cc75f745
Remove docs build from Azure pipelines 2024-06-04 17:58:54 +01:00
Graham Markall 0c1900298a
Revert "Purposely break a reference to test nitpicky mode"
This reverts commit adf79ff712.
2024-06-04 17:57:55 +01:00
Graham Markall 18e060695b
Enable nitpicky mode 2024-06-04 15:54:19 +01:00
Graham Markall adf79ff712
Purposely break a reference to test nitpicky mode 2024-06-04 15:54:03 +01:00
Yashwant Singh 4194dbb966 Fix typo in file name 2024-05-31 18:17:51 +05:30
Yashwant Singh 76171d09b5
Edit error message
Co-authored-by: Graham Markall <535640+gmarkall@users.noreply.github.com>
2024-05-31 17:24:33 +05:30
Yashwant Singh 707a0381b2
Typo
Co-authored-by: Graham Markall <535640+gmarkall@users.noreply.github.com>
2024-05-31 17:23:53 +05:30
Yashwant Singh b49dabd27f fix tests 2024-05-31 12:01:20 +05:30
Yashwant Singh a5b5467221 Rename opt_level to speed_level and typos 2024-05-31 11:53:21 +05:30
Graham Markall a90a3ac1ed Tidy up the examples 2024-05-31 11:17:42 +05:30
Graham Markall e187d0fe8e
Use conda-forge for Sphinx 2024-05-30 17:46:24 +01:00
Graham Markall 07392d63a1
Revert "Try and get CI to use a newer sphinx"
This reverts commit 003f3287ef.
2024-05-30 17:45:31 +01:00
Graham Markall 003f3287ef
Try and get CI to use a newer sphinx 2024-05-30 17:34:20 +01:00
Graham Markall 1b36ab19cc
Add notes on how to correctly create new pass manager instances 2024-05-30 16:43:19 +01:00