orc/orc.changes

360 lines
15 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

-------------------------------------------------------------------
Mon Jul 17 16:15:12 UTC 2017 - zaitor@opensuse.org
- Update to version 0.4.27:
+ sse: preserve non volatile sse registers, needed for MSVC.
+ x86: don't hard-code register size to 0 in orc_x86_emit_*()
funcs.
+ Fix incorrect asm generation on 64-bit Windows with MSVC.
+ Add support for building using the Meson build system.
-------------------------------------------------------------------
Sun Feb 12 17:29:14 UTC 2017 - zaitor@opensuse.org
- Disable make check for all arches except x86_64 again.
-------------------------------------------------------------------
Wed Aug 31 19:52:08 UTC 2016 - zaitor@opensuse.org
- Update to version 0.4.26:
+ Use 64 bit arithmetic to increment the stride if needed.
+ Fix generation of ModR/M / SIB bytes for the EBP, R12, R13
registers on X86/X86-64.
+ Fix test_parse unit test if no executable backend is available.
+ Add orc-test path to the -uninstalled .pc file.
+ Fix compiler warnings in the tests on OS X.
- Add pkgconfig(glib-2.0) BuildRequires, the build looks for it.
- Remove obsolete bconds, they were only there for now obsolete
versions of openSUSE.
- Drop explicit xz BuildRequires: No longer needed.
- Enable testsuite for all arches again.
-------------------------------------------------------------------
Sat Mar 5 13:02:47 UTC 2016 - zaitor@opensuse.org
- Update to version 0.4.25:
+ compiler: also prefer the backup function when no target,
instead of trying to use emulation which is usually slower.
+ executor: fix load of parameters smaller than 64 bits, fixing
crashes on ldresnearb and friends in emulated code.
+ test-limits: improve test without target.
+ Only check for Android's liblog on Android targets, so we don't
accidentally pick up another liblog that may exist elsewhere.
+ Don't require libtool for uninstalled setups (-uninstalled
pkg-config file).
+ Make -Bsymbolic check in configure work with clang.
+ Coverity code analyser fixes.
+ docs: update generated opcode tables.
+ Add orc_version_string() function and make orcc check the
liborc that is being picked up to make sure the right lib is
being used.
-------------------------------------------------------------------
Mon Sep 28 20:27:52 UTC 2015 - dmueller@suse.com
- disable testsuite on aarch64
-------------------------------------------------------------------
Thu Jul 9 22:03:42 UTC 2015 - zaitor@opensuse.org
- Update to version 0.4.24:
+ Only reuse constants of the same size and value.
+ Fix reading of .orc files with Windows line endings on Windows.
+ Fix out of bounds array access in the tests.
+ Remove duplicate code path in orcc.
+ Put a limit to the memcpy test.
+ Fix mmap leak on error path.
-------------------------------------------------------------------
Fri Feb 27 17:29:20 UTC 2015 - normand@linux.vnet.ibm.com
- disable make check for ppc64le archi
would need changes in orcprogram-altivec.c
and define of HAVE_POWERPC
-------------------------------------------------------------------
Fri Dec 26 11:27:42 UTC 2014 - zaitor@opensuse.org
- Update to version 0.4.23:
+ Various improvements to the NEON backend to bring it closer to
the SSE backend.
+ Add support for setting a custom backup function.
+ Preserve NEON/VFP registers across subroutines.
+ Fix 64 bit parameter loading on big-endian systems.
+ Improved implementations for various opcodes.
+ Various improvements and fixes to constants handling.
+ Avoid some undefined operations on signed integers.
+ Prefer user specific directories over global ones for
intermediate files to prevent name collisions.
-------------------------------------------------------------------
Thu Oct 9 13:53:25 UTC 2014 - dimstar@opensuse.org
- Fix version dependency for gtk-doc (min 1.12).
- Disable building of gtk-doc for SLE11, where this version of
gtk-doc is not available (by means of bcond_with/without).
The pre-built documentation, as shipped in the tarball will be
installed in this case.
-------------------------------------------------------------------
Thu Oct 9 13:41:02 UTC 2014 - dimstar@opensuse.org
- Add xz BuildRequires for openSUSE < 11.3 (and thus also SLE11).
-------------------------------------------------------------------
Tue Sep 23 20:58:44 UTC 2014 - zaitor@opensuse.org
- Temp-disable testsuite on i586 until we get the random fails
sorted out with upstream.
- Drop orc-disable-test-limits.patch, and autoreconf call, and
corresponding BuildRequires, as testsuite is disabled, and patch
needing them is dropped.
-------------------------------------------------------------------
Wed Sep 17 11:14:54 UTC 2014 - zaitor@opensuse.org
- Update to version 0.4.22:
+ Handle NOCONFIGURE=1 in autogen.sh.
+ Some memory leak fixes in the compiler.
+ Fixes for compiler warnings on Win64.
+ Properly detect CPU features on Android in non-debug build.
+ Use Android logging system instead of stderr for debug output.
-------------------------------------------------------------------
Fri Jul 4 07:57:28 UTC 2014 - idonmez@suse.com
- Update to version 0.4.21
+ Fix memory leaks
+ Fix list corruption when splitting code memory chunks,
causing crashes when allocating a lot of code memory and trying
to free it later
+ Various compiler warnings, coverity warnings and static code
analysis fixes
+ Documentation fix for mulhsw, mulhuw
- Add orc-disable-test-limits.patch to disable test-limits test,
it only works on x86-64
-------------------------------------------------------------------
Fri Dec 20 16:14:22 UTC 2013 - zaitor@opensuse.org
- Update to version 0.4.18:
+ Important bugfix in reading constants from bytecode.
+ Documentation and code cleanup.
+ Fix cache flushing on iOS.
-------------------------------------------------------------------
Wed May 15 18:05:56 UTC 2013 - dimstar@opensuse.org
- Update to version 0.4.17:
+ Merged known distro patches.
+ Added MIPS backend.
+ Disabled ARM backend because of poor coverage.
+ Added bytecode parsing and writing. This can be used instead of
manual creation of OrcPrograms.
- Drop altivec.patch and ppc64.patch: fixed upstream.
-------------------------------------------------------------------
Mon Sep 17 17:48:52 UTC 2012 - schwab@linux-m68k.org
- ppc64.patch: Add support for PowerPC64
- altivec.patch: Fix altivec implementation of cmpltf and cmplef operations
- Reenable check on ppc and ppc64
-------------------------------------------------------------------
Thu Mar 8 11:58:18 UTC 2012 - idonmez@suse.com
- Disable check on ARM.
-------------------------------------------------------------------
Thu Feb 2 12:26:37 UTC 2012 - idonmez@suse.com
- Fix license to be BSD-3-Clause.
-------------------------------------------------------------------
Wed Feb 1 11:09:49 UTC 2012 - dvaleev@suse.com
- disable check on ppc ppc64.
-------------------------------------------------------------------
Tue Oct 4 07:47:08 UTC 2011 - vuntz@opensuse.org
- Update to version 0.4.16:
+ orc_init() tried to take the same mutex as generated C code
that calls (indirectly) orc_init().
+ sse: Fixes for 64 bit pointers with any of the upper 32 bits
set.
-------------------------------------------------------------------
Mon Sep 26 11:35:02 UTC 2011 - vuntz@opensuse.org
- Update to version 0.4.15:
+ Protect global resources with mutexes.
+ Restore c64x-c backend (untested).
+ Convert MMX and SSE backends to a new instruction scheduler.
+ Add alignment and size hints to parser.
-------------------------------------------------------------------
Mon Jul 4 09:18:42 CEST 2011 - vuntz@opensuse.org
- Update to version 0.4.14:
+ Various fixes for SSE, MMX and Altivec
+ Fix endianness issues
-------------------------------------------------------------------
Wed Apr 27 16:02:34 UTC 2011 - chris@computersalat.de
- Update to version 0.4.13:
+ Fixes two serious code generation bugs in 0.4.12 on SSE and
Altivec.
+ Add some compatibility code to mitigate the previous automatic
inclusion of stdint.h
- Changes from version 0.4.12:
+ Fix gcc-4.6 warnings in generated code
+ Codegen fixes for Altivec. Passes regression tests again.
+ More error checking for code allocation.
+ NEON: floating point improvements
+ Removed stdint.h from API. This could theoretically cause
breakage if you depended on orc to include stdint.h.
+ Addition of the OrcCode structure, which keeps track of
compiled code. This now allows applications to free unused
code.
+ x86 code generation was completely refactored to add an
intermediate stage, which will later be used for instruction
reordering.
-------------------------------------------------------------------
Wed Dec 8 12:43:53 UTC 2010 - cristian.rodriguez@opensuse.org
- Run make check
-------------------------------------------------------------------
Mon Oct 18 10:20:19 CEST 2010 - vuntz@opensuse.org
- Update to version 0.4.11:
+ Fixes for CPUs that don't have backends
+ Fix loading of double parameters
+ mmx: Fix 64-bit parameter loading
+ sse/mmx: Fix x2/x4 with certain opcodes
-------------------------------------------------------------------
Sat Oct 9 11:20:19 CEST 2010 - vuntz@opensuse.org
- Update to version 0.4.10:
+ Added several simple 64-bit opcodes
+ Improved debugging by adding ORC_CODE=emulate
+ Allocation of mmapd areas for code now has several fallback
methods, in order to placate various SELinux configurations.
+ Various speed improvements in SSE backend
+ Add SSE implementations of ldreslinl and ldresnearl.
+ Update Mersenne Twister example
-------------------------------------------------------------------
Mon Sep 6 16:08:49 CEST 2010 - vuntz@opensuse.org
- Update to version 0.4.9:
+ Added handling for 64-bit constants
+ Fix building and use of static library
+ Fix register allocation on Win64 (still partly broken, however)
+ Quiet some non-errors printed by orcc in 0.4.8.
+ Fix implementation of several opcodes.
+ Until this release, the shared libraries all had the same
versioning information. This should be fixed going forward.
-------------------------------------------------------------------
Mon Aug 30 17:36:41 CEST 2010 - vuntz@opensuse.org
- Update to version 0.4.8:
+ Fix Windows and OS/X builds
+ Improve behavior in failure cases
+ Major improvements for Altivec backend
+ Significant documentation additions
+ Memory for executable code storage is now handled in a much
more controlled manner, and it's now possible to reclaim this
memory after it's no longer needed.
+ A few more 64-bit opcodes have been added, mostly related to
arithmetic on floating point values.
+ The orcc tool now handles 64-bit and floating point parameters
and constants.
- Add baselibs.conf.
-------------------------------------------------------------------
Thu Aug 26 12:01:02 CEST 2010 - vuntz@opensuse.org
- Update to version 0.4.7:
+ Lots of specialized new opcodes and opcode prefixes.
+ Important fixes for ARM backend
+ Improved emulation of programs (much faster)
+ Implemented fallback rules for almost all opcodes for SSE and
NEON backends
+ Performance improvements for SSE and NEON backends.
+ Many fixes to make larger programs compile properly.
+ 64-bit data types are now fully implemented, although there are
few operations on them.
+ Loads and stores are now handled by separate opcodes (loadb,
storeb, etc). For compatibility, these are automatically
included where necessary. This allowed new specialized loading
opcodes, for example, resampling a source array for use in
scaling images.
+ Opcodes may now be prefixed by "x2" or "x4", indicating that a
operation should be done on 2 or 4 parts of a proportionally
larger value. For example, "x4 addusb" performs 4 saturated
unsigned additions on each of the four bytes of 32-bit
quantities. This is useful in pixel operations.
+ The MMX backend is now (semi-) automatically generated from the
SSE backend.
+ The orcc tool has a new option "-inline", which creates inline
versions of the Orc stub functions. The orcc tool also
recognizes a new directive .init, which instructs the
compiler to generate an initialization function, which when
called at application init time, compiles all the generated
functions. This allows the generated stub functions to avoid
checking if the function has already been compiled. The use of
these two features can dramatically decrease the cost of
calling Orc functions.
-------------------------------------------------------------------
Fri Aug 6 17:45:52 CEST 2010 - vuntz@opensuse.org
- Update to version 0.4.6:
+ Various fixes to make Orc more portable
+ Major performance improvements to NEON backend
+ Minor performance improvements to SSE backend
+ Major improvements to ARM backend, now passes regression tests.
+ The defaults for floating point operations have been changed
somewhat: NANs are handled more like the IEEE 754 standard, and
denormals in operations are treated as zeros. The NAN changes
causes certain SSE operations to be slightly slower, but produce
less surprising results. Treating denormals as zero has effects
ranging from “slightly faster” to “now possible”.
+ New tool: orc-bugreport. Mainly this is to provide a limited
testing tool in the field, especially for embedded targets
which would not have access to the testsuite that is not
installed.
+ The environment variable ORC_CODE can now be used to adjust
some code generation. See orc-bugreport -help for details.
+ orcc has a new option to generate code that is compatible with
older versions of Orc.
+ New NEON detection relies on Linux 2.6.29 or later.
- Changes from version 0.4.5:
+ Many small improvements related to converting GStreamer from
liboil to Orc.
+ The major addition in this release is the mainstreaming of
the NEON backend, made possible by Nokia.
+ There is a new experimental option to ./configure,
--enable-backend, which allows you to choose a single code
generation backend to include in the library. This is mostly
useful for embedded systems, and is not recommended in general.
- Do not call autogen.sh and remove workaround for doc generation.
-------------------------------------------------------------------
Tue May 25 15:09:05 UTC 2010 - chris@computersalat.de
- update to version 0.4.4
o remove obsolete orc-asneeded.patch
-------------------------------------------------------------------
Wed Mar 17 10:47:22 UTC 2010 - dimstar@opensuse.org
- Initial package of orc 0.4.3