Release 0.4.7 orc-0.4.7
authorDavid Schleef <ds@schleef.org>
Thu, 19 Aug 2010 06:54:31 +0000 (23:54 -0700)
committerDavid Schleef <ds@schleef.org>
Thu, 19 Aug 2010 08:01:49 +0000 (01:01 -0700)
RELEASE
configure.ac

diff --git a/RELEASE b/RELEASE
index febd7cc..eeeedca 100644 (file)
--- a/RELEASE
+++ b/RELEASE
@@ -1,4 +1,51 @@
 
+0.4.7
+=====
+
+Changes:
+
+ - 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.
+
+Known Bugs: Orc generates code that crashes on 64-bit OS/X.
+
+Plans for 0.4.8: (was 2.5 for 4 this time around, not too bad!)
+Document all the new features in 0.4.7.  Instruction scheduler.
+Code and API cleanup.
+
+
+
 0.4.6
 =====
 
index 09ca95a..1221beb 100644 (file)
@@ -1,5 +1,5 @@
 AC_PREREQ([2.58])
-AC_INIT(orc,0.4.6.1)
+AC_INIT(orc,0.4.7)
 dnl don't forget to update libversion
 
 AS_NANO(ORC_CVS=no,ORC_CVS=yes)
@@ -17,7 +17,7 @@ dnl - library source changed -> increment REVISION
 dnl - interfaces added/removed/changed -> increment CURRENT, REVISION = 0
 dnl - interfaces added -> increment AGE
 dnl - interfaces removed -> AGE = 0
-ORC_LIBVERSION="2:0:2"
+ORC_LIBVERSION="7:0:7"
 AC_SUBST(ORC_LIBVERSION)
 AC_LIBTOOL_WIN32_DLL
 AC_LIBTOOL_TAGS([])