David Schleef [Wed, 25 Aug 2010 23:00:58 +0000 (16:00 -0700)]
Fix testing of float params
David Schleef [Wed, 25 Aug 2010 21:51:18 +0000 (14:51 -0700)]
c: Handle denormals and nan using bit ops
Stefan Kost [Wed, 25 Aug 2010 17:55:59 +0000 (20:55 +0300)]
testsuite: use correct return type
gcc was complaining about the comparision due to wrong type.
David Schleef [Wed, 25 Aug 2010 10:29:25 +0000 (03:29 -0700)]
orcc: remove (fake) dependency on liborc-test
David Schleef [Wed, 25 Aug 2010 10:28:56 +0000 (03:28 -0700)]
Check for posix_memalign()
David Schleef [Wed, 25 Aug 2010 10:28:16 +0000 (03:28 -0700)]
Fix cross compiling
David Schleef [Wed, 25 Aug 2010 10:26:58 +0000 (03:26 -0700)]
test: Add denormal array pattern
David Schleef [Wed, 25 Aug 2010 10:26:20 +0000 (03:26 -0700)]
show_parse: Allocate array (fix segfault)
David Schleef [Wed, 25 Aug 2010 10:25:14 +0000 (03:25 -0700)]
altivec: Implement lots more rules
David Schleef [Tue, 24 Aug 2010 20:22:24 +0000 (13:22 -0700)]
Use OrcCode structure to handle all executable code
David Schleef [Mon, 23 Aug 2010 21:42:29 +0000 (14:42 -0700)]
Code memory allocation
David Schleef [Mon, 23 Aug 2010 21:17:25 +0000 (14:17 -0700)]
Add OrcCodeRegion
David Schleef [Sun, 22 Aug 2010 23:25:22 +0000 (16:25 -0700)]
test: Add special patterns (for floats)
David Schleef [Sun, 22 Aug 2010 23:24:49 +0000 (16:24 -0700)]
show_parse: Add -n option
David Schleef [Sun, 22 Aug 2010 00:10:32 +0000 (17:10 -0700)]
sse: Fix some compilation issues on x86-64
Andrea Canciani [Sat, 21 Aug 2010 21:05:18 +0000 (14:05 -0700)]
sse: add better rules for mulhsl/mulhul
David Schleef [Sat, 21 Aug 2010 20:46:20 +0000 (13:46 -0700)]
sse: quit early if error is detected
David Schleef [Sat, 21 Aug 2010 20:45:52 +0000 (13:45 -0700)]
c: minor hack for lots of temp vars
David Schleef [Sat, 21 Aug 2010 20:45:18 +0000 (13:45 -0700)]
tests: Add show_parse
David Schleef [Fri, 20 Aug 2010 23:15:04 +0000 (16:15 -0700)]
Add ORC_VAR_T16
David Schleef [Fri, 20 Aug 2010 23:14:47 +0000 (16:14 -0700)]
compiler: If compilation fails, go back to backup function
David Schleef [Fri, 20 Aug 2010 19:48:27 +0000 (12:48 -0700)]
orcc: Use ORC_RESTRICT for executor structure
David Schleef [Fri, 20 Aug 2010 19:48:04 +0000 (12:48 -0700)]
autogen.sh: Enable --enable-gtk-doc for ds
David Schleef [Fri, 20 Aug 2010 19:47:39 +0000 (12:47 -0700)]
Fix distcheck for new examples
David Schleef [Fri, 20 Aug 2010 19:15:14 +0000 (12:15 -0700)]
Update documentation, add tutorial
David Schleef [Thu, 19 Aug 2010 20:32:10 +0000 (13:32 -0700)]
c: Add definition of ORC_RESTRICT
Theoretically, this should allow gcc to generate better code.
David Schleef [Thu, 19 Aug 2010 20:31:40 +0000 (13:31 -0700)]
Add perf testing of emulated code
David Schleef [Thu, 19 Aug 2010 19:53:17 +0000 (12:53 -0700)]
back to unreleased
David Schleef [Thu, 19 Aug 2010 19:42:02 +0000 (12:42 -0700)]
Fix printing of performance data in tests
David Schleef [Thu, 19 Aug 2010 06:54:31 +0000 (23:54 -0700)]
Release 0.4.7
David Schleef [Thu, 19 Aug 2010 01:24:10 +0000 (18:24 -0700)]
test: Improve opcode test program generation
David Schleef [Thu, 19 Aug 2010 01:09:58 +0000 (18:09 -0700)]
neon: Fix div255w rule
David Schleef [Wed, 18 Aug 2010 21:23:09 +0000 (14:23 -0700)]
mmx: update from sse
David Schleef [Wed, 18 Aug 2010 02:22:55 +0000 (19:22 -0700)]
sse: use pinsrw to load 2-byte values
David Schleef [Wed, 18 Aug 2010 01:34:45 +0000 (18:34 -0700)]
test: Add alignment and misalignment to arrays
This causes most of the performance tests to slow down significantly,
but is a more realistic measurement of actual performance.
David Schleef [Wed, 18 Aug 2010 01:02:40 +0000 (18:02 -0700)]
sse,x86: Add some new instruction emission code
David Schleef [Wed, 18 Aug 2010 01:01:54 +0000 (18:01 -0700)]
sse: minor optimization for constant_m=1
David Schleef [Wed, 18 Aug 2010 01:01:11 +0000 (18:01 -0700)]
sse: reset more of the compiler after a test loop
David Schleef [Wed, 18 Aug 2010 00:55:58 +0000 (17:55 -0700)]
sse: better choosing of alignment var
This causes a bunch of test programs to increase in speed by 10-20%,
specifically those that have larger source sizes than dest sizes.
The one notable exception is orc_interleave_s16, which decreases in
speed by 50%, even though there is no apparent change in code. WTF.
David Schleef [Wed, 18 Aug 2010 00:55:03 +0000 (17:55 -0700)]
configure: reminder to bump libversion
David Schleef [Sun, 15 Aug 2010 01:12:39 +0000 (18:12 -0700)]
opcodes: fix emulation of ldres* opcodes
David Schleef [Sun, 15 Aug 2010 01:06:34 +0000 (18:06 -0700)]
orcc: Fix code generation
Problems with dspp opcodes. Fix a gcc warning about large numbers
wrapping around to negative on 32-bit.
David Schleef [Sun, 15 Aug 2010 01:05:51 +0000 (18:05 -0700)]
sse: remove unused src->dest chaining checks
David Schleef [Sun, 15 Aug 2010 00:58:16 +0000 (17:58 -0700)]
sse: don't unroll larger programs
David Schleef [Fri, 13 Aug 2010 18:53:33 +0000 (11:53 -0700)]
tests: Add code for ldres* opcodes
David Schleef [Fri, 13 Aug 2010 18:52:35 +0000 (11:52 -0700)]
Add ldresnear[bl] and ldreslin[bl] opcodes
David Schleef [Fri, 13 Aug 2010 18:50:04 +0000 (11:50 -0700)]
Fixes to handle opcodes with 3 sources
David Schleef [Fri, 13 Aug 2010 11:36:24 +0000 (04:36 -0700)]
Rename splatw0q to splatw3q
David Schleef [Fri, 13 Aug 2010 02:27:28 +0000 (19:27 -0700)]
test: Remove #undef so it can be overridden in CFLAGS
David Schleef [Fri, 13 Aug 2010 02:20:56 +0000 (19:20 -0700)]
tests: Fix code to not trip new sanity check
David Schleef [Fri, 13 Aug 2010 02:20:24 +0000 (19:20 -0700)]
test: Decrease n for performance testing
David Schleef [Fri, 13 Aug 2010 02:19:44 +0000 (19:19 -0700)]
neon: new rules, tuning of code generation
David Schleef [Fri, 13 Aug 2010 02:18:19 +0000 (19:18 -0700)]
arm: Better checking, add data and nops
David Schleef [Thu, 12 Aug 2010 01:22:43 +0000 (18:22 -0700)]
sse: be more careful about keeping stack aligned
David Schleef [Thu, 12 Aug 2010 01:04:02 +0000 (18:04 -0700)]
Update generated code due to orcc changes
David Schleef [Thu, 12 Aug 2010 01:03:14 +0000 (18:03 -0700)]
orcc: Don't use ORC_INLINE for inline generation
David Schleef [Thu, 12 Aug 2010 00:46:30 +0000 (17:46 -0700)]
parser: Add .init directive
David Schleef [Thu, 12 Aug 2010 00:31:23 +0000 (17:31 -0700)]
orcc: Add --inline and --init-function
David Schleef [Wed, 11 Aug 2010 22:22:15 +0000 (15:22 -0700)]
c: Fix emulation opcode generation due to previous changes
Also update generated code.
David Schleef [Wed, 11 Aug 2010 22:04:51 +0000 (15:04 -0700)]
c: implement x2/x4 prefix
David Schleef [Wed, 11 Aug 2010 22:04:00 +0000 (15:04 -0700)]
orcc: Handle x2/x4 prefix for tests
David Schleef [Wed, 11 Aug 2010 20:44:10 +0000 (13:44 -0700)]
autogen: remove --enable-gtk-doc
David Schleef [Wed, 11 Aug 2010 20:43:51 +0000 (13:43 -0700)]
configure: fix AC_HELP_STRING
David Schleef [Wed, 11 Aug 2010 10:02:50 +0000 (03:02 -0700)]
tests: Add more programs to test.orc
David Schleef [Wed, 11 Aug 2010 10:01:38 +0000 (03:01 -0700)]
orcc: create inline functions
This is turned on by default, and doesn't generate backup functions,
so it might cause problems.
David Schleef [Wed, 11 Aug 2010 10:00:54 +0000 (03:00 -0700)]
Use instruction size for loadp, not var size
David Schleef [Wed, 11 Aug 2010 08:37:40 +0000 (01:37 -0700)]
Use ORC_N_COMPILER_VARIABLES where appropriate
David Schleef [Wed, 11 Aug 2010 08:36:45 +0000 (01:36 -0700)]
c: Fix generation of loadoff, loadup code
David Schleef [Wed, 11 Aug 2010 08:35:38 +0000 (01:35 -0700)]
Fix warnings
David Schleef [Wed, 11 Aug 2010 07:26:19 +0000 (00:26 -0700)]
orcc: Fix warning in generated code
David Schleef [Wed, 11 Aug 2010 07:24:57 +0000 (00:24 -0700)]
Fix segfault in test programs
Emulation requires that the program be compiled.
David Schleef [Wed, 11 Aug 2010 06:31:15 +0000 (23:31 -0700)]
sse: use fewer temporary registers
David Schleef [Wed, 11 Aug 2010 06:30:19 +0000 (23:30 -0700)]
Make sure there are enough registers for temps
David Schleef [Wed, 11 Aug 2010 06:28:48 +0000 (23:28 -0700)]
Look for rules in reverse order
That way, we'll find the SSSE3 rules before SSE2. Duh.
David Schleef [Wed, 11 Aug 2010 06:17:17 +0000 (23:17 -0700)]
Fix sanity check for loadp
David Schleef [Wed, 11 Aug 2010 05:16:50 +0000 (22:16 -0700)]
Better constant loading
David Schleef [Wed, 11 Aug 2010 05:15:33 +0000 (22:15 -0700)]
compiler: additional sanity check for loadp
David Schleef [Wed, 11 Aug 2010 03:42:36 +0000 (20:42 -0700)]
sse: switch to orc_compiler_get_temp_reg()
David Schleef [Wed, 11 Aug 2010 02:39:41 +0000 (19:39 -0700)]
Dynamically allocate temporary registers
David Schleef [Wed, 11 Aug 2010 02:38:33 +0000 (19:38 -0700)]
sse: improve constant loading
David Schleef [Wed, 11 Aug 2010 00:06:57 +0000 (17:06 -0700)]
sse: fix divluw implementation
Also slightly faster.
David Schleef [Mon, 9 Aug 2010 23:56:13 +0000 (16:56 -0700)]
Add orc_program_append_2() for instruction flags
David Schleef [Mon, 9 Aug 2010 23:47:38 +0000 (16:47 -0700)]
Add divluw opcode
David Schleef [Mon, 9 Aug 2010 23:45:39 +0000 (16:45 -0700)]
Fix splatw0q opcode to be useful for pixman
David Schleef [Mon, 9 Aug 2010 23:39:57 +0000 (16:39 -0700)]
test: Add x4 prefix program
David Schleef [Mon, 9 Aug 2010 23:31:58 +0000 (16:31 -0700)]
Refactor instruction flags
David Schleef [Sun, 8 Aug 2010 19:56:46 +0000 (12:56 -0700)]
sse: Fix recently broken convsuslw rule
David Schleef [Sat, 7 Aug 2010 01:43:41 +0000 (18:43 -0700)]
Add low-level opcodes for compositing
David Schleef [Sat, 7 Aug 2010 00:50:39 +0000 (17:50 -0700)]
Add some 64-bit opcodes, and SSE rules
David Schleef [Fri, 6 Aug 2010 20:42:49 +0000 (13:42 -0700)]
remove old style of opcode emulation
David Schleef [Fri, 6 Aug 2010 20:33:32 +0000 (13:33 -0700)]
Generate header file for opcode emulation
David Schleef [Fri, 6 Aug 2010 20:03:51 +0000 (13:03 -0700)]
sse: better implementation of addssl
David Schleef [Fri, 6 Aug 2010 18:46:57 +0000 (11:46 -0700)]
sse: implement more rules
David Schleef [Fri, 6 Aug 2010 02:52:52 +0000 (19:52 -0700)]
c: Fix loadupib code
David Schleef [Fri, 6 Aug 2010 01:08:25 +0000 (18:08 -0700)]
sse: Add more slow rules
David Schleef [Thu, 5 Aug 2010 21:22:40 +0000 (14:22 -0700)]
test.orc: Add a function with loadupdb
David Schleef [Thu, 5 Aug 2010 21:22:15 +0000 (14:22 -0700)]
tests: don't run compare programs
For MMX/SSE only.
David Schleef [Thu, 5 Aug 2010 21:21:34 +0000 (14:21 -0700)]
sse: implement loadoff, loadup opcodes
David Schleef [Thu, 5 Aug 2010 21:20:58 +0000 (14:20 -0700)]
sse: implement mulhul
David Schleef [Thu, 5 Aug 2010 21:18:42 +0000 (14:18 -0700)]
Add loadoff[bwl], loadup[id]b opcodes