platform/upstream/orc.git
14 years agoAdd ldresnear[bl] and ldreslin[bl] opcodes
David Schleef [Fri, 13 Aug 2010 18:52:35 +0000 (11:52 -0700)]
Add ldresnear[bl] and ldreslin[bl] opcodes

14 years agoFixes to handle opcodes with 3 sources
David Schleef [Fri, 13 Aug 2010 18:50:04 +0000 (11:50 -0700)]
Fixes to handle opcodes with 3 sources

14 years agoRename splatw0q to splatw3q
David Schleef [Fri, 13 Aug 2010 11:36:24 +0000 (04:36 -0700)]
Rename splatw0q to splatw3q

14 years agotest: Remove #undef so it can be overridden in CFLAGS
David Schleef [Fri, 13 Aug 2010 02:27:28 +0000 (19:27 -0700)]
test: Remove #undef so it can be overridden in CFLAGS

14 years agotests: Fix code to not trip new sanity check
David Schleef [Fri, 13 Aug 2010 02:20:56 +0000 (19:20 -0700)]
tests: Fix code to not trip new sanity check

14 years agotest: Decrease n for performance testing
David Schleef [Fri, 13 Aug 2010 02:20:24 +0000 (19:20 -0700)]
test: Decrease n for performance testing

14 years agoneon: new rules, tuning of code generation
David Schleef [Fri, 13 Aug 2010 02:19:44 +0000 (19:19 -0700)]
neon: new rules, tuning of code generation

14 years agoarm: Better checking, add data and nops
David Schleef [Fri, 13 Aug 2010 02:18:19 +0000 (19:18 -0700)]
arm: Better checking, add data and nops

14 years agosse: be more careful about keeping stack aligned
David Schleef [Thu, 12 Aug 2010 01:22:43 +0000 (18:22 -0700)]
sse: be more careful about keeping stack aligned

14 years agoUpdate generated code due to orcc changes
David Schleef [Thu, 12 Aug 2010 01:04:02 +0000 (18:04 -0700)]
Update generated code due to orcc changes

14 years agoorcc: Don't use ORC_INLINE for inline generation
David Schleef [Thu, 12 Aug 2010 01:03:14 +0000 (18:03 -0700)]
orcc: Don't use ORC_INLINE for inline generation

14 years agoparser: Add .init directive
David Schleef [Thu, 12 Aug 2010 00:46:30 +0000 (17:46 -0700)]
parser: Add .init directive

14 years agoorcc: Add --inline and --init-function
David Schleef [Thu, 12 Aug 2010 00:31:23 +0000 (17:31 -0700)]
orcc: Add --inline and --init-function

14 years agoc: Fix emulation opcode generation due to previous changes
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.

14 years agoc: implement x2/x4 prefix
David Schleef [Wed, 11 Aug 2010 22:04:51 +0000 (15:04 -0700)]
c: implement x2/x4 prefix

14 years agoorcc: Handle x2/x4 prefix for tests
David Schleef [Wed, 11 Aug 2010 22:04:00 +0000 (15:04 -0700)]
orcc: Handle x2/x4 prefix for tests

14 years agoautogen: remove --enable-gtk-doc
David Schleef [Wed, 11 Aug 2010 20:44:10 +0000 (13:44 -0700)]
autogen: remove --enable-gtk-doc

14 years agoconfigure: fix AC_HELP_STRING
David Schleef [Wed, 11 Aug 2010 20:43:51 +0000 (13:43 -0700)]
configure: fix AC_HELP_STRING

14 years agotests: Add more programs to test.orc
David Schleef [Wed, 11 Aug 2010 10:02:50 +0000 (03:02 -0700)]
tests: Add more programs to test.orc

14 years agoorcc: create inline functions
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.

14 years agoUse instruction size for loadp, not var size
David Schleef [Wed, 11 Aug 2010 10:00:54 +0000 (03:00 -0700)]
Use instruction size for loadp, not var size

14 years agoUse ORC_N_COMPILER_VARIABLES where appropriate
David Schleef [Wed, 11 Aug 2010 08:37:40 +0000 (01:37 -0700)]
Use ORC_N_COMPILER_VARIABLES where appropriate

14 years agoc: Fix generation of loadoff, loadup code
David Schleef [Wed, 11 Aug 2010 08:36:45 +0000 (01:36 -0700)]
c: Fix generation of loadoff, loadup code

14 years agoFix warnings
David Schleef [Wed, 11 Aug 2010 08:35:38 +0000 (01:35 -0700)]
Fix warnings

14 years agoorcc: Fix warning in generated code
David Schleef [Wed, 11 Aug 2010 07:26:19 +0000 (00:26 -0700)]
orcc: Fix warning in generated code

14 years agoFix segfault in test programs
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.

14 years agosse: use fewer temporary registers
David Schleef [Wed, 11 Aug 2010 06:31:15 +0000 (23:31 -0700)]
sse: use fewer temporary registers

14 years agoMake sure there are enough registers for temps
David Schleef [Wed, 11 Aug 2010 06:30:19 +0000 (23:30 -0700)]
Make sure there are enough registers for temps

14 years agoLook for rules in reverse order
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.

14 years agoFix sanity check for loadp
David Schleef [Wed, 11 Aug 2010 06:17:17 +0000 (23:17 -0700)]
Fix sanity check for loadp

14 years agoBetter constant loading
David Schleef [Wed, 11 Aug 2010 05:16:50 +0000 (22:16 -0700)]
Better constant loading

14 years agocompiler: additional sanity check for loadp
David Schleef [Wed, 11 Aug 2010 05:15:33 +0000 (22:15 -0700)]
compiler: additional sanity check for loadp

14 years agosse: switch to orc_compiler_get_temp_reg()
David Schleef [Wed, 11 Aug 2010 03:42:36 +0000 (20:42 -0700)]
sse: switch to orc_compiler_get_temp_reg()

14 years agoDynamically allocate temporary registers
David Schleef [Wed, 11 Aug 2010 02:39:41 +0000 (19:39 -0700)]
Dynamically allocate temporary registers

14 years agosse: improve constant loading
David Schleef [Wed, 11 Aug 2010 02:38:33 +0000 (19:38 -0700)]
sse: improve constant loading

14 years agosse: fix divluw implementation
David Schleef [Wed, 11 Aug 2010 00:06:57 +0000 (17:06 -0700)]
sse: fix divluw implementation

Also slightly faster.

14 years agoAdd orc_program_append_2() for instruction flags
David Schleef [Mon, 9 Aug 2010 23:56:13 +0000 (16:56 -0700)]
Add orc_program_append_2() for instruction flags

14 years agoAdd divluw opcode
David Schleef [Mon, 9 Aug 2010 23:47:38 +0000 (16:47 -0700)]
Add divluw opcode

14 years agoFix splatw0q opcode to be useful for pixman
David Schleef [Mon, 9 Aug 2010 23:45:39 +0000 (16:45 -0700)]
Fix splatw0q opcode to be useful for pixman

14 years agotest: Add x4 prefix program
David Schleef [Mon, 9 Aug 2010 23:39:57 +0000 (16:39 -0700)]
test: Add x4 prefix program

14 years agoRefactor instruction flags
David Schleef [Mon, 9 Aug 2010 23:31:58 +0000 (16:31 -0700)]
Refactor instruction flags

14 years agosse: Fix recently broken convsuslw rule
David Schleef [Sun, 8 Aug 2010 19:56:46 +0000 (12:56 -0700)]
sse: Fix recently broken convsuslw rule

14 years agoAdd low-level opcodes for compositing
David Schleef [Sat, 7 Aug 2010 01:43:41 +0000 (18:43 -0700)]
Add low-level opcodes for compositing

14 years agoAdd some 64-bit opcodes, and SSE rules
David Schleef [Sat, 7 Aug 2010 00:50:39 +0000 (17:50 -0700)]
Add some 64-bit opcodes, and SSE rules

14 years agoremove old style of opcode emulation
David Schleef [Fri, 6 Aug 2010 20:42:49 +0000 (13:42 -0700)]
remove old style of opcode emulation

14 years agoGenerate header file for opcode emulation
David Schleef [Fri, 6 Aug 2010 20:33:32 +0000 (13:33 -0700)]
Generate header file for opcode emulation

14 years agosse: better implementation of addssl
David Schleef [Fri, 6 Aug 2010 20:03:51 +0000 (13:03 -0700)]
sse: better implementation of addssl

14 years agosse: implement more rules
David Schleef [Fri, 6 Aug 2010 18:46:57 +0000 (11:46 -0700)]
sse: implement more rules

14 years agoc: Fix loadupib code
David Schleef [Fri, 6 Aug 2010 02:52:52 +0000 (19:52 -0700)]
c: Fix loadupib code

14 years agosse: Add more slow rules
David Schleef [Fri, 6 Aug 2010 01:08:25 +0000 (18:08 -0700)]
sse: Add more slow rules

14 years agotest.orc: Add a function with loadupdb
David Schleef [Thu, 5 Aug 2010 21:22:40 +0000 (14:22 -0700)]
test.orc: Add a function with loadupdb

14 years agotests: don't run compare programs
David Schleef [Thu, 5 Aug 2010 21:22:15 +0000 (14:22 -0700)]
tests: don't run compare programs

For MMX/SSE only.

14 years agosse: implement loadoff, loadup opcodes
David Schleef [Thu, 5 Aug 2010 21:21:34 +0000 (14:21 -0700)]
sse: implement loadoff, loadup opcodes

14 years agosse: implement mulhul
David Schleef [Thu, 5 Aug 2010 21:20:58 +0000 (14:20 -0700)]
sse: implement mulhul

14 years agoAdd loadoff[bwl], loadup[id]b opcodes
David Schleef [Thu, 5 Aug 2010 21:18:42 +0000 (14:18 -0700)]
Add loadoff[bwl], loadup[id]b opcodes

14 years agoemulation: Add offset to emulation functions
David Schleef [Thu, 5 Aug 2010 21:16:12 +0000 (14:16 -0700)]
emulation: Add offset to emulation functions

14 years agoAdd OrcCode structure
David Schleef [Thu, 5 Aug 2010 21:10:19 +0000 (14:10 -0700)]
Add OrcCode structure

14 years agoUpdate gitignore
Jan Schmidt [Sat, 31 Jul 2010 07:04:15 +0000 (17:04 +1000)]
Update gitignore

14 years agoUse AM_PROG_CC_C_O to support per-target compilation flags.
Jan Schmidt [Sat, 31 Jul 2010 06:51:21 +0000 (16:51 +1000)]
Use AM_PROG_CC_C_O to support per-target compilation flags.

Fixes an automake warning.

14 years agoFix dependencies of the generate-emulation binary.
Jan Schmidt [Sat, 31 Jul 2010 06:49:34 +0000 (16:49 +1000)]
Fix dependencies of the generate-emulation binary.

Makes parallel builds succeed.

14 years agoFix distcheck
Jan Schmidt [Sat, 31 Jul 2010 06:46:28 +0000 (16:46 +1000)]
Fix distcheck

Add orcemulateopcodes.h to the dist.
Fix gtk-doc.make copying version.entities to the srcdir.

14 years agoc: cleanup pointer updating
David Schleef [Tue, 3 Aug 2010 07:56:33 +0000 (00:56 -0700)]
c: cleanup pointer updating

14 years agosse: Fix accsadubl rule
David Schleef [Tue, 3 Aug 2010 07:45:25 +0000 (00:45 -0700)]
sse: Fix accsadubl rule

14 years agotest: Add disabled code for Cortex-A8 benchmarking
David Schleef [Tue, 3 Aug 2010 07:44:47 +0000 (00:44 -0700)]
test: Add disabled code for Cortex-A8 benchmarking

14 years agoc: convert to load/store opcodes
David Schleef [Tue, 3 Aug 2010 07:42:02 +0000 (00:42 -0700)]
c: convert to load/store opcodes

14 years agoaltivec: implement load/store opcodes
David Schleef [Tue, 3 Aug 2010 02:30:52 +0000 (19:30 -0700)]
altivec: implement load/store opcodes

14 years agoarm: Add runtime detection of EDSP
David Schleef [Tue, 3 Aug 2010 01:00:10 +0000 (18:00 -0700)]
arm: Add runtime detection of EDSP

14 years agoarm: Add load/store opcodes
David Schleef [Tue, 3 Aug 2010 00:59:54 +0000 (17:59 -0700)]
arm: Add load/store opcodes

14 years agoneon: improve select1wb/lw rules
David Schleef [Tue, 3 Aug 2010 00:04:58 +0000 (17:04 -0700)]
neon: improve select1wb/lw rules

14 years agoneon: Add more rules
David Schleef [Mon, 2 Aug 2010 23:09:46 +0000 (16:09 -0700)]
neon: Add more rules

14 years agoFix mulhul opcode and update generated code
David Schleef [Mon, 2 Aug 2010 23:09:02 +0000 (16:09 -0700)]
Fix mulhul opcode and update generated code

14 years agoneon: Add splitwb/splitlw
David Schleef [Mon, 2 Aug 2010 22:23:47 +0000 (15:23 -0700)]
neon: Add splitwb/splitlw

14 years agoneon: add load/store opcodes
David Schleef [Mon, 2 Aug 2010 21:59:15 +0000 (14:59 -0700)]
neon: add load/store opcodes

14 years agosse: Fix pmulld emission
David Schleef [Mon, 2 Aug 2010 19:31:47 +0000 (12:31 -0700)]
sse: Fix pmulld emission

14 years agosse: Fix mxcsr save/restore on x86-64
David Schleef [Mon, 2 Aug 2010 19:31:19 +0000 (12:31 -0700)]
sse: Fix mxcsr save/restore on x86-64

14 years agocompiler: increase number of temp variables
David Schleef [Mon, 2 Aug 2010 19:30:58 +0000 (12:30 -0700)]
compiler: increase number of temp variables

14 years agoconfigure: Add dragonflybsd to mmap code alloc
David Schleef [Mon, 2 Aug 2010 19:22:57 +0000 (12:22 -0700)]
configure: Add dragonflybsd to mmap code alloc

14 years agommx: Fix problems in recent commit
David Schleef [Mon, 2 Aug 2010 01:34:41 +0000 (18:34 -0700)]
mmx: Fix problems in recent commit

14 years agoAdd performance comparison tests
David Schleef [Mon, 2 Aug 2010 01:33:27 +0000 (18:33 -0700)]
Add performance comparison tests

14 years agotest: Fix perf_opcodes_sys for acc opcodes
David Schleef [Mon, 2 Aug 2010 01:02:48 +0000 (18:02 -0700)]
test: Fix perf_opcodes_sys for acc opcodes

14 years agommx: update from sse
David Schleef [Mon, 2 Aug 2010 00:36:30 +0000 (17:36 -0700)]
mmx: update from sse

14 years agoChanges to allow generation of mmx code from sse
David Schleef [Mon, 2 Aug 2010 00:35:48 +0000 (17:35 -0700)]
Changes to allow generation of mmx code from sse

14 years agoBetter handling of invariants
David Schleef [Sun, 1 Aug 2010 22:41:36 +0000 (15:41 -0700)]
Better handling of invariants

14 years agocompiler: add flag for allowing gp regs on stack
David Schleef [Sun, 1 Aug 2010 22:22:26 +0000 (15:22 -0700)]
compiler: add flag for allowing gp regs on stack

14 years agocompiler: don't load constants for scalar opcodes
David Schleef [Fri, 30 Jul 2010 23:19:08 +0000 (16:19 -0700)]
compiler: don't load constants for scalar opcodes

14 years agotests: handle scalar opcodes in perf test
David Schleef [Fri, 30 Jul 2010 23:17:01 +0000 (16:17 -0700)]
tests: handle scalar opcodes in perf test

14 years agosse: Add more fallback rules
David Schleef [Fri, 30 Jul 2010 23:16:31 +0000 (16:16 -0700)]
sse: Add more fallback rules

14 years agoDon't allocate registers for const and param
David Schleef [Fri, 30 Jul 2010 01:34:58 +0000 (18:34 -0700)]
Don't allocate registers for const and param

14 years agosse: implement faster permute rules
David Schleef [Fri, 30 Jul 2010 01:34:03 +0000 (18:34 -0700)]
sse: implement faster permute rules

14 years agotests: Add more test orc code
David Schleef [Fri, 30 Jul 2010 00:13:02 +0000 (17:13 -0700)]
tests: Add more test orc code

14 years agotests: fix program name
David Schleef [Thu, 29 Jul 2010 22:36:06 +0000 (15:36 -0700)]
tests: fix program name

14 years agoAdd loadpb/loadpw/loadpl instructions
David Schleef [Thu, 29 Jul 2010 22:35:33 +0000 (15:35 -0700)]
Add loadpb/loadpw/loadpl instructions

14 years agoAdd load/store opcodes
David Schleef [Thu, 29 Jul 2010 04:15:07 +0000 (21:15 -0700)]
Add load/store opcodes

Also rewrite programs to use them instead of having the
backends separately handle load/stores.  Breaks non-SSE
backends.

14 years agoAdd logging to orc_parse
David Schleef [Wed, 28 Jul 2010 07:57:23 +0000 (00:57 -0700)]
Add logging to orc_parse

And (finally) some error reporting in orcc.

14 years agoRemove constant folding, it's broken
David Schleef [Wed, 28 Jul 2010 00:22:53 +0000 (17:22 -0700)]
Remove constant folding, it's broken

14 years agosse: only set mxcsr if float opcodes are used
David Schleef [Wed, 28 Jul 2010 00:21:48 +0000 (17:21 -0700)]
sse: only set mxcsr if float opcodes are used

14 years agotests: quiet test output
David Schleef [Wed, 28 Jul 2010 00:21:08 +0000 (17:21 -0700)]
tests: quiet test output

14 years agoReimplement emulation
David Schleef [Wed, 28 Jul 2010 00:08:02 +0000 (17:08 -0700)]
Reimplement emulation

14 years agoupdate orcfunctions.c
David Schleef [Tue, 27 Jul 2010 23:55:42 +0000 (16:55 -0700)]
update orcfunctions.c

14 years agotest: quiet test_accsadubl
David Schleef [Tue, 27 Jul 2010 02:27:31 +0000 (19:27 -0700)]
test: quiet test_accsadubl