Package Release Info

moarvm-2018.04.1-bp150.2.3

Update Info: Base Release
Available in Package Hub : 15

platforms

AArch64
ppc64le
s390x
x86-64

subpackages

moarvm
moarvm-devel

Change Logs

* Tue May 01 2018 nine@detonation.org
- update to version 2018.04.1
  + Fix precision in Num and use Grisu3 algorithm for stringification
  + Use vectorization to speed up many string operations
  + Add support for the windows-932 variant of the ShiftJIS encoding
  + Fix bug in windows-1252 when a replacement occurs in the last position of the input stream
  + JIT expr templates for getstringfrom and getwvalfrom
  + JIT floor_n, continuationinvoke, ctx and a few ops that ThreadPoolScheduler uses
  + Measure and report time spent on JIT compilation
  + Ensure memory blocks in the nursery are aligned where necessary
  + Spot use of an item already put in a gen2 freelist
  + Suspend other threads during global destruction
  + Fix missing GC mark of deserializer contexts list
  + Optimize getrusage and log it in the profile
  + Add getsignals op, queries for valid signals
  + Guard against negative and zero signals in MVM_io_signal_handle
  + Make tryfindmeth not throw in some cases it did
  + Add missing write barrier enforcement in CPPStruct, CStruct
  + Use Fixed Size Allocator for all_scs list
  + Fix segfault on concurrent array access while resizing
  + Mark thread blocked around getaddrinfo
  + Convey the process ID of a started child
  + Fix optimization of wvals
  + Fix negated spesh of known type
  + Add optimize_unbox
  + Fix issues with optimization of boolean tests
  + Insert null-out-instructions before prof_enter
  + Cut module names out of filenames
  + Add metadata for ReentrantMutex and Semaphore
  + Fix loading bytecode on big endian systems
  + Correct lazy static lexical deserialization
  + Fix bytecodedump to understand inlines
* Tue Mar 20 2018 nine@detonation.org
- update to version 2018.03
  + Add remote debugging support, optionally enabled with the --debug-port option
  + Add getppid op. Allows a child process to get the parent process id, and thus
  + Use uv_fs_copyfile API in MVM_file_copy
  + Make IO signal handlers cancellable
  + Add an tryfindmethod op which evaluates to null in the event that the method
  + Ignore libuv-caused "fake" empty datagrams
  + Expose both hostname and port of received datagrams
  + Add proper support for strict decoding and replacements in decodestream for windows1252/1
  + Add some string consts in MVMStringConsts for MVMDecodeStream
  + optimize eq_s and ne_s against empty string in spesh
  + Bump libuv version 1.19.2
  + Add JIT templates for more than 50 ops
  + Fix several bugs in the expr JIT compiler
  + Only BAIL on DEOPT_ONE annotations on actual guard ops in expr JIT
  + Support for threaded profiling has been added, although it is not fully stable yet
  + Clean up one-shot timers after firing
  + Fix missing argument to syncsocket error message
  + Fix EOF detection on zero-size files
  + Add windows-1251 (Cyrillic) decode/encode support
  + Make MVM_spesh_manipulate_remove_handler_successors() public
  + Fix MVM_spesh_log_decont not logging anything
  + Don't spesh log if we have a spesh_cand
  + Don't optimize getattr unless known concrete
  + Implement unmanaged_size in MVMSpeshLog repr
  + Run basic facts discovery on inlined code
  + Clean up handler successors after throwish ops become non-throwing
  + Put inlined blocks between their caller and its successor
  + Fix an off-by-one in uninline
  + Remove superfluous DEOPT_ONE_INS annotation on some deconts
  + Work around a segfault caused by type tuple without type information
  + Revive removal of dead instructions after the first inlined function
  + Fix SEGV when opening MVM_*_LOG files
  + Better error in boxed ref for repr_id mismatch
  + Merge non-control-flow basic blocks so expr JIT has more code to optimize
* Thu Feb 01 2018 nine@detonation.org
- update to version 2018.01
  + Faster string searching and other string improvements
  + New expression JIT
  + JIT compilation of native calls
  + Update Unicode database for Unicode 10
  + Flush standard handles at exit
  + Flush output buffer where needed
  + Various improvements to spesh
  + Lots of bug fixes
* Mon Aug 21 2017 nine@detonation.org
- update to version 2017.08.1
  + Dynamic optimization moved to a worker thread
  + New statistics model for making better specialization decisions
  + New argument guard, based around a tree, which means less checks need to be
  + More efficient usage of memory in hot paths
  + Lots of bug fixes (around optimization and string handling)
  + JIT improvements
  + Performance improvements
  + Make precompiled byte code reproducible
  + Enable native callbacks on different threads
  + Update TinyMT to version 1.1
  + Implement atomic ops
  + Add nqp::coveragecontrol op
* Sat Jul 29 2017 nine@detonation.org
- update to version 2017.07
  + Full Unicode 9.0 and Emoji 4.0 text segmentation support
  + Lots of speed-ups, especially in string processing and JIT compiler
  + Numerous bug fixes
  + Remove support for character level I/O - taken over by high level code
  + Remove arbitrary string repeat limit
  + Remove synchronous process support - now done using async code
  + Re-implement synchronous sockets without using libuv
  + Add ability to get port from already bind-ed socket
  + Add cpucores op to get the number of CPU cores
  + Re-implement print/say debug output ops to encode and then use binary I/O
  + Eliminate use of libuv in synchronous file handles
  + Support merge_bytes in async proc ops, for reading STDOUT and STDERR
  + Support binding handles to file descriptors in async procs
  + Add string eqat/index ignorecase+ignoremark functions
  + Add new eqaticim_s and indexicim_s ops ignorecase+ignoremark
  + Add improved support for GCB=Prepend
  + Improve Regional Indicators support during normalization
  + Serialize a Decoder REPR object into null, so incidental file handle
  + Fix newline translation in various encoding's streaming decoder
* Wed Jun 07 2017 nine@detonation.org
- Explicitly state build requirement to fix build on Fedora
* Fri Jun 02 2017 nine@detonation.org
- update to version 2017.05
  + Mark profiler call graphs iteratively instead of recursively
  + Keep around line number annotations in spesh, for more accurate source
  + Introduce "telemeh", a high-precision-time low-impact logger
  + Fix error reporting in chdir
  + Fix memory leak on error in chdir
  + Fix bug in index ignorecase and equal at ignorecase
  + Fix all known remaining bugs in indexic and eqatic
  + Zero slot when popping a VMArray, to avoid junk reads if it grows again later
  + Add can_fit_into_8bit funct, put logic used many places into one function
  + Use -1 instead of 0 when long right-shifting negative smallints
  + Remove workaround for tommath issue #56, which is now fixed upstream
  + Don't crash on reading a closed dir handle
  + Remove deprecated async string I/O ops
* Tue Apr 18 2017 nine@detonation.org
- update to version 2017.04
  + Shorten the nursery when creating large bigints, to bring GC forward and
  + Use correct format for repeat/concat errors
  + Fix bug in indexic_s if expanding codepoint is the last codepoint
  + Speed up MVM_nfg_is_concat_stable
  + Do not set use rpath if installing into proper system locations
  + Optimize passes_quickcheck_and_zero_ccc to be much faster
  + Give this_repr constants more meaningful names to aid debugging
  + Streamline MVM_bigint_radix and MVM_radix for Nd Unicode #'s
  + Fix case-insensitive string compare bug when synthetics are in the haystack
  + Improve description for "should eventually be unreachable" error
  + Correctly detect and handle overflow in mp_get_int64
  + Split into mp_get_int64 and mp_get_uint64
  + Only allocate and normalize for cp's that require it in MVM_string_chr, and
  + Provide a better error when failing to encode surrogates in UTF-8
  + Add a cast to suppress a compiler warning in strings/ops.c
  + Factor out code from equal_at_ignore_case for use in index_ignore_case also
  + Use both hex and decimal for UTF8 encoding error messages
  + Use PRIu64 in fprintf's to fix compiler warning about incorrect types
  + Add a check that introspection->is_tty is not NULL, avoiding a crash
  + Mention debug_name in errors about uncomposed repr
  + Cope with a native type with no nativesize, but signedness
  + Remove two functions in normalize.c that have been superseded
  + Give collapse_strands a 5.4% speed boost under some workloads
  + Add MVM_string_graphs_nocheck funct, use it in places we previously already
  + Have a two-part loop in collapse strands to make loop tighter when possible
  + Implement serialize/deserialize in VMHash REPR.
  + Use memmem in string index. Uses Knuth-Morris-Pratt on glibc, and adds the
  + Fix a join NFG bug when there was an  empty string and an empty seperator
  + Reorder MVMStaticFrameBody to save 16 bytes according to pahole; similarly
  + Remove arbitrary and small length range check for reading bytes from a file
  + Greatly reduce contention in the fixed-size allocator for multi-threaded
  + Mark thread GC blocked when doing synchronous writes
  + Add missing MVMROOT when reading bytes, which could result in occasional
- Remove moarvm-remove-rpath.diff as the issue has been fixed upstream.
* Sun Mar 19 2017 nine@detonation.org
- update to version 2017.03
  + Fix loads of performance and stability issues
* Sun Dec 18 2016 nine@detonation.org
- remove use of rpath in build
  Patch is already included in upstream git and can be removed in the next
  release.
  new patch: moarvm-remove-rpath.diff
* Sun Dec 18 2016 nine@detonation.org
- replace patching in spec file by use of proper configure options
- update to version 2016.12
  + Decode Latin-1 and UTF-8 strings to 8-bit width when possible
  + Teach a few string functions to compress results into 8-bit storage
  + Fix for AIX's INFINITY not being a constant
  + Unlink libmoar before (re)installing it
  + Add configuration for AIX
  + Support Perl older than 5.10 for Configure.pl
  + Use "pkgconfig --libs libffi" additionally to --cflags
  + Fix powerpc detection on AIX (gcc)
  + Make multidim error messages say they are multidim
  + Add comment about where to find UNIDATA
  + Implement captureinnerlex op, for fixing QUIT/LAST phaser scoping in Perl 6
  + Fix mis-sized free in the NFG trie that only showed up in 32-bit
  + Add GC debug helper to "find" a pointer in nurseries/gen2 bins
  + Make ASSERT_NOT_FROMSPACE check fromspaces of all threads
  + Fix missing MVMROOT around an allocation
  + Fix typo in nfg.h comment
  + Fix native callback and GC interaction when embedded
  + Add GC block management functions to the public API
  + Mark throwpayload* as :throwish in oplist
  + Optimize the check for negative bignums
  + Remove useless mp_neg calls
  + Fix premature free of UV socket handles
  + Fix premature handle free in async UDP sockets
  + Add a "check every register access" GC debug mode
  + Provide a #define to disable dynlex caching
  + Provide a #define for deopt logging
  + Invalidate dynlex caches during deopt
  + Fix pow_I when it takes an exponent larger than 2**32
  + Only do MVM_ASSERT_NOT_FROMSPACE in GC debug mode
  + Add a fromspace assertion in finalize
  + Avoid a number of spesh GC invariant violations
  + Panic if we try to GC when speshing/JITing
  + Ensure we don't leak partially deserialized objects
  + Fix unrooted frame around SC object lookup
  + Remove some GC debug code
  + Avoid reading nativerefs in spesh, since it can cause boxing and thus GC
  + Cope with push being used on concurrent queues
  + MVMROOT around putting work on concurrent queue
  + MVMROOT eventloop queue when polling it
  + Do MVM_ASSIGN_REF after block/unblock in concurrent queue
  + Fix more unrooted frame around SC object lookup
* Thu Nov 24 2016 nine@detonation.org
- update to version 2016.11
  + Workaround tommath issue #56 which affects random bigint numbers > 32 bits
  + Fix memory leaks in nqp_nfa_run
  + Fix a sizeof arg that allocated a much-too-big buffer for callsite arg names
  + Add missing breaks in MVMString's copy_to
  + Prevent null deref when calling MVM_string_utf16_encode
  + Introduce MVM_SPESH_LIMIT, which limits how many specializations will be
  + Make sure we never box a NULL filename when creating backtraces
  + Fix the nativecall attribute error messages
  + Remove (non-existent) num16 from error message
  + Make the fixed size allocator provide useful information to Valgrind
  + Implement serialization of SCRef
  + Include file/line of unserializable closure, to aid debugging
  + Add type info when failing to bind an attribute
  + Use ffi_arg type for libffi nativecall return types
  + Handle libffi return type more correctly
  + Work around missing libatomic_ops prototype on s390x
  + Panic when trying to GC a locked mutex
  + Make VM panic output state that a panic occurred
  + Fix JIT code generation bug in nqp::exception
  + Add missing rooting of value pushed to concurrent queue
  + Add src/gc/debug.h dependency to Makefile
  + Mark a thread GC-blocked while it is in native code
  + Have "Cannot * a type object" also outputs the type's debug name
  + Don't reveal partially deserialized method cache
  + Give a bunch of exception ops REPR and debug name output
  + Prevent segfault when null string used as hash key
  + Request POSIX.1.c compliance on solaris
  + Change to use readdir insteal of readdir_r
  + give diagnostic output when compiling fails
  + Fixed readdir so it won't check old errno
  + Refactor hashes to no longer need to flatten ropes in string keys
  + Save 8 (64-bit) or 4 (32-bit) bytes per entry in the MVMHash REPR
  + Remove the deprecated flattenropes op
  + Remove now-unused MVM_string_flatten function
  + Don't treat an nread of 0 in libuv read callbacks as an error
  + Bump to latest libatomic_ops
* Sun Oct 16 2016 nine@detonation.org
- update to version 2016.10
  + Fix build without libtommath source
  + Make MVM_file_open_fh() throw if the file we opened was a directory
  + Fix bug and memory leaks in MVM_file_open_fh()
  + Add error message for likely MacOS build failure
  + Don't set inheriting process on inherited pipe, fixing a segfault
  + Update to the Unicode 9 database
  + Die on CStruct without any fields
  + Constant-fold unipropcode and unipvalcode
  + Use PRId64 instead of %d for 64 bit int format string args
  + "Cannot unbox type object" error gets debugname and native type info
  + Fix uninitialized arg_names of an MVMCallsite
  + Handle C++ constructors on libffi
  + Fix CUnion get_attribute treating inlined attrs as pointers
  + Fix 32 bit issue with rw args in NativeCall callbacks
  + Use better throw-away type for void nativecalls
  + Gracefully handle a 0 RSS reported by the Linux kernel
  + Fix "Invalid free()" in empty repossessed arrays
  + Make sure we mean "signed char" when we say "char"
  + Fix calculating structure sizes for arm64 and others
  + Disable JIT on x32, since it has a different calling convention
  + Fix pointer size unit in configure message
  + Use set_uint64 in from_num, otherwise we overflow on x32
  + Rewrite mkdir_p api, no function changes
  + Improve nativecall attribute error messages
  + Include debug_name in crossthreadwritelog and serialization errors
  + Deprecate async string I/O ops
  + Deprecate flattenropes op
  + Implement indexingoptimized op (replaces flattenropes, but is not in-place)
  + Fix memory leadk in ord_basechar_at
  + Ensure errno is grabbed before MVM_free is called
  + Make extra sure unlock only happens if lock happened
* Fri Sep 30 2016 nine@detonation.org
- update to 2016.09
  + Fix various crasher bugs
  + Fix sprintf
  + Move string decoding to higher levels of the stack
  + Fix a couple of memory leaks
  + Fix deadlocks when accepting a socket
* Sun Aug 21 2016 nine@detonation.org
- update to 2016.08
  + Fix various concurrency issues
  + Don't crash in P6opaque on NULL name_to_index_mapping
  + Fix off-by-one in grapheme iterator
  + Add a flag for PIPE_MERGED_OUT_ERR; fix stdio setup for merge
  + Fix EOF detection when reading files from /proc and similar
  + Fix lost socket listen errors
  + Add some missing fact dependencies in spesh, fixing some wrong guard eliminations
  + Avoid use of possibly-invalidated decont facts in spesh
  + Remove keep_caller from MVMFrame
  + Correctly NULL-terminate the buffer in MVM_vm_dump_file
* Sun Jul 24 2016 nine@detonation.org
- update to 2016.07
  * Numerous fixes for memory leaks
  * Numerous performance improvements
  * Fixes for NativeCall
  * Updates to moar-gdb.py (MoarVM GDB plug-in)
  * New heap profiler
  * JIT compile more code paths
  * Make the GC smarter
  * Fixes for UTF8-C8 encoding and use it for directory listing
  * Fixe a couple of SEGVs
  * Further support for function pointers in native calling
  * Implement loadbytecodebuffer and loadbytecodefh ops
  * New multi-dispatch cache supporting calls with named parameters
* Fri Jan 29 2016 nine@detonation.org
- update to 2016.01
  * Only optimize istrue to unbox_i when known concrete
  * Bump libuv to 1.8
  * Various fixes/updates to graph_spesh.p6
  * Don't install sha1 and tinymt headers; they're only used internally
  * Only install msinttypes on MS platform
  * Fix a gc bug in string concatenation
  * Add subsecond file time ops stat_time and lstat_time
  * Fix stat CREATETIME return value
  * Note graphs_s will be deprecated; dupe of chars
* Mon Jan 04 2016 nine@detonation.org
- update to 2015.12
  * support for multidimensional arrays
  * updated to Unicode 8 and lots of Unicode fixes
  * C++ support for native calling
  * proper support for unsigned native types
  * threading fixes
  * memory leak fixes
* Thu Jun 11 2015 mls@suse.de
- update to 2015.05
  * instrumenting profiler
  * many optimizations
  * added documentation
  * large file handling
  * endian fixes
  * lazy deserialization
  * implement NFC/NFD/NFKC/NFKD Unicode normalization algorithms
  * fix various memory leaks
- fix setup
* Fri Aug 22 2014 mls@suse.de
- update to 2014.08
  * support for JIT
  * specializer support
  * async read/write
  * lots of bugfixes