Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
06d69dd
Abstract out the call to array allocator as an intrinsic.
sklam May 24, 2021
81cba5d
Cleanup previous staging.
sklam May 25, 2021
c15fac1
Adding classmethod Array._allocate
sklam May 25, 2021
ac2708c
Use align instead of dtype
sklam May 25, 2021
ffcb989
Use array type to determine the classmethod
sklam May 25, 2021
b683418
Convert operator module functions to overloads.
stuartarchibald May 26, 2021
81ed617
Fix Black-Scholes test
stuartarchibald May 26, 2021
2b31732
Fix test_array_exprs
stuartarchibald May 26, 2021
64ca8bc
Flake8
stuartarchibald May 26, 2021
7ddd4d5
Fix error handling test
stuartarchibald May 26, 2021
37530ba
Fix debug test
stuartarchibald May 26, 2021
2cb8766
Fix up cache test
stuartarchibald May 26, 2021
2c0582c
Remove compile_isolated from svml tests
stuartarchibald May 27, 2021
6b8c62e
Fix test_debug in 32-bit platforms
sklam Jun 2, 2021
4188fe5
Fix fastmath propagation in SVML.
sklam Jun 3, 2021
b1b4fe3
Run SVML tests in isolated processes
sklam Jun 7, 2021
a5e7c43
Add inheriting behavior for error_model
sklam Jun 2, 2021
49f1dd8
Avoid compile_isolated in looplifting tests
sklam Jun 2, 2021
4024a9a
Revert "Convert operator module functions to overloads."
sklam Jun 8, 2021
57ebd93
Merge branch 'pr/7058' with revert of 0e323f5 into enh/arrayallocapi
sklam Jun 8, 2021
30b4eab
Revert patches specific to overload operators
sklam Jun 8, 2021
cec66fd
Test target specific overload_classmethod for allocator
stuartarchibald Jun 17, 2021
c5c08bb
Fix overload_method and attribute lookup not respecting hw class
sklam Jun 18, 2021
693f759
Fix typo
sklam Jun 23, 2021
609533a
Fix incorrect caching of BoundFunction due to target-overload
sklam Jun 23, 2021
1230e55
Merge branch 'master' into enh/arrayallocapi
sklam Jun 23, 2021
8fee312
Fix ir inlining test due to `inline` option in kwargs
sklam Jun 23, 2021
6c21b6d
More kwargs fixes
sklam Jun 24, 2021
144a840
Cleanup
sklam Jun 24, 2021
344c5b3
Apply suggestions from code review
sklam Jun 25, 2021
179767a
Remove dead code
sklam Jun 25, 2021
a5c48e6
Add timeout to avoid test hanging
sklam Jun 25, 2021
049923d
Remove redundant target_override and put nopython flag into jit_options
sklam Jun 25, 2021
f756fd0
PEP8
sklam Jun 25, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Fix fastmath propagation in SVML.
There's still remaining problem with compile_internal that is not considering the flags.
  • Loading branch information
sklam authored and stuartarchibald committed Jun 8, 2021
commit 4188fe5ca8656bde018c0b2f71df809fa6aae510
2 changes: 2 additions & 0 deletions numba/core/cpu.py
Original file line number Diff line number Diff line change
Expand Up @@ -162,6 +162,8 @@ def build_map(self, builder, dict_type, item_types, items):


def post_lowering(self, mod, library):
if self.fastmath:
fastmathpass.rewrite_module(mod, self.fastmath)

if self.is32bit:
# 32-bit machine needs to replace all 64-bit div/rem to avoid
Expand Down
2 changes: 1 addition & 1 deletion numba/core/fastmathpass.py
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,6 @@ def rewrite_module(mod, options):
Rewrite the given LLVM module to use fastmath everywhere.
"""
flags = options.flags
FastFloatBinOpVisitor(flags).visit(mod)
# FastFloatBinOpVisitor(flags).visit(mod)
FastFloatCallVisitor(flags).visit(mod)

3 changes: 2 additions & 1 deletion numba/np/ufunc/array_exprs.py
Original file line number Diff line number Diff line change
Expand Up @@ -376,9 +376,10 @@ def _lower_array_expr(lowerer, expr):
inner_sig_args.append(argty)
inner_sig = outer_sig.return_type.dtype(*inner_sig_args)

flags = utils.ConfigStack().top_or_none() or compiler.Flags()
flags = flags.copy() # make sure it's a clone or a fresh instance
Comment thread
sklam marked this conversation as resolved.
Resolved
# Follow the Numpy error model. Note this also allows e.g. vectorizing
# division (issue #1223).
flags = compiler.Flags()
flags.error_model = 'numpy'
cres = context.compile_subroutine(builder, impl, inner_sig, flags=flags,
caching=False)
Expand Down