Skip to content

1.0.0rc2

Compare
Choose a tag to compare
@tonybaloney tonybaloney released this 05 Aug 04:58
996fbcf
  • BINARY_MULTIPLY and BINARY_POWER will assume the resulting integer is a big integer (not unboxed)
  • Introduced two optimizations IntegerUnboxingMultiply and IntegerUnboxingPower which are applied at optimization level 2. Try level two if you work with integers, but at smaller values to see better performance.
  • Pyjion will infer that range(n) generates integers in iterator to improve unboxing
  • LOAD_BUILD_CLASS will infer a function type instead of Any (#42)
  • Instruction graphs will include the name of fast locals
  • Instruction graph const values are capped to 40 characters
  • Added abstract types for all builtins (#339)
  • pyjion.info() will now return a JitInfo object
  • Optimization flags that were applied to a function during compilation are available in JitInfo.optimizations
  • All optimizations are now runtime flags instead of compile-time features
  • Unboxing PGC errors will raise pyjion.PyjionUnboxingError (ValueError) instead of ValueError
  • Instruction graphs will show conditional branches (in orange)
  • Fixed a bug in generators where mixed unboxed/boxed fast locals would yield the wrong values with PGC between the first and second compilation stages
  • Fixed a de-optimization that happened in rc1 due to PGC asserting the abstract kind on the profiling phase and then always asserting that integers were big-integers
  • Fixed a bug where unboxed locals were decrefing frame locals on yield
  • Generators will not unbox fast locals for stability reasons
  • Fixed a regression on unboxed integers, caused by PGC values being set as Any
  • Assert return types for float object methods (as_integer_ratio, conjugate, is_integer, hex)