Christian Würdig [Thu, 2 Nov 2006 09:28:45 +0000 (09:28 +0000)]
added callback interfaces for abstract machine specification
Christian Würdig [Thu, 2 Nov 2006 09:28:17 +0000 (09:28 +0000)]
removed unnecessary extern
Christian Würdig [Thu, 2 Nov 2006 09:27:38 +0000 (09:27 +0000)]
added support for abstract machine specification
Christian Würdig [Thu, 2 Nov 2006 09:27:20 +0000 (09:27 +0000)]
added abstract machine specification
Christian Würdig [Thu, 2 Nov 2006 09:26:55 +0000 (09:26 +0000)]
added new attributes for abstract machine
added new getter/setter for abstract machine attributes
Christian Würdig [Thu, 2 Nov 2006 09:25:52 +0000 (09:25 +0000)]
removed unused function
Christian Würdig [Thu, 2 Nov 2006 09:25:06 +0000 (09:25 +0000)]
implemented callbacks for abstract machine
Matthias Braun [Fri, 27 Oct 2006 08:22:57 +0000 (08:22 +0000)]
improved docu of bespill.h
Matthias Braun [Thu, 26 Oct 2006 13:34:24 +0000 (13:34 +0000)]
littel fix for spillcosts
Matthias Braun [Thu, 26 Oct 2006 13:15:06 +0000 (13:15 +0000)]
output estimated cost statistics to statfile
Matthias Braun [Wed, 25 Oct 2006 17:44:56 +0000 (17:44 +0000)]
remove gp_NOREG from constained registers in spec again, this fixes some errors but also makes the verifier cry because of double registers...
Matthias Braun [Tue, 24 Oct 2006 20:28:30 +0000 (20:28 +0000)]
you can disable counting in quicksort now
Matthias Braun [Tue, 24 Oct 2006 20:23:56 +0000 (20:23 +0000)]
also output total backend time to statfile
Matthias Braun [Tue, 24 Oct 2006 14:06:19 +0000 (14:06 +0000)]
some more hacks/workarounds for blocks without jump at the end
Christian Würdig [Tue, 24 Oct 2006 14:00:02 +0000 (14:00 +0000)]
fixed C99 stuff
Matthias Braun [Tue, 24 Oct 2006 13:12:37 +0000 (13:12 +0000)]
don't kotz out timing info on stdout if statfile is active
Matthias Braun [Tue, 24 Oct 2006 12:55:23 +0000 (12:55 +0000)]
correctly fix get_reload_insertion_point problem
Christian Würdig [Tue, 24 Oct 2006 12:33:12 +0000 (12:33 +0000)]
generate backend specific machine variable
Christian Würdig [Tue, 24 Oct 2006 12:32:21 +0000 (12:32 +0000)]
fixed comments
Christian Würdig [Tue, 24 Oct 2006 12:31:59 +0000 (12:31 +0000)]
pass allowed execution units to node attribute initializer
Christian Würdig [Tue, 24 Oct 2006 12:31:21 +0000 (12:31 +0000)]
extended node attribute initializer for execution unit parameter
Christian Würdig [Tue, 24 Oct 2006 12:30:09 +0000 (12:30 +0000)]
generate real fprem node
fixed GetST0 node
Christian Würdig [Tue, 24 Oct 2006 12:29:07 +0000 (12:29 +0000)]
added fprem for simulation, FIXME: need own simulation implementation for fprem
Christian Würdig [Tue, 24 Oct 2006 12:28:15 +0000 (12:28 +0000)]
added new fprem node (for floating point reminder)
added cpu description for testing purposes
Christian Würdig [Tue, 24 Oct 2006 12:27:27 +0000 (12:27 +0000)]
add dependency Const -> StartBarrier only if Const is in Start block
Christian Würdig [Tue, 24 Oct 2006 12:26:50 +0000 (12:26 +0000)]
added new attributes and get/set functions for allowed execution units
Christian Würdig [Tue, 24 Oct 2006 12:26:00 +0000 (12:26 +0000)]
fixed some dependencies
fixed Div/Mod mapper
Christian Würdig [Tue, 24 Oct 2006 12:25:21 +0000 (12:25 +0000)]
always translate x87 FPU names from stx to st(x)
fixed callback for Psi creation
Christian Würdig [Tue, 24 Oct 2006 12:24:04 +0000 (12:24 +0000)]
added new machine generator
Christian Würdig [Tue, 24 Oct 2006 12:23:44 +0000 (12:23 +0000)]
added ilp scheduler
Christian Würdig [Tue, 24 Oct 2006 12:22:19 +0000 (12:22 +0000)]
initial checkin of abstract machine interface
Christian Würdig [Tue, 24 Oct 2006 12:21:53 +0000 (12:21 +0000)]
initial checkin of ILP scheduler, NOT FULLY IMPLEMENTED YET (but it compiles)
Christian Würdig [Tue, 24 Oct 2006 12:20:52 +0000 (12:20 +0000)]
added option to select between schedulers (list or ilp)
Christian Würdig [Tue, 24 Oct 2006 12:20:17 +0000 (12:20 +0000)]
moved options fomr group "sched" to group "listsched"
Christian Würdig [Tue, 24 Oct 2006 12:19:48 +0000 (12:19 +0000)]
added assertin to check out edges
Christian Würdig [Tue, 24 Oct 2006 12:19:24 +0000 (12:19 +0000)]
add dependency from be_RegParam to Start node
Christian Würdig [Tue, 24 Oct 2006 12:15:25 +0000 (12:15 +0000)]
added scheduler as backend option
Christian Würdig [Tue, 24 Oct 2006 12:14:59 +0000 (12:14 +0000)]
made variable const
Matthias Braun [Tue, 24 Oct 2006 12:10:51 +0000 (12:10 +0000)]
oops
Matthias Braun [Tue, 24 Oct 2006 12:08:02 +0000 (12:08 +0000)]
make statfile available to the whole backend, output timing results to statfile
Matthias Braun [Tue, 24 Oct 2006 12:03:05 +0000 (12:03 +0000)]
warnign fixes
Matthias Braun [Tue, 24 Oct 2006 12:02:18 +0000 (12:02 +0000)]
warnign fixes
Matthias Braun [Tue, 24 Oct 2006 12:01:21 +0000 (12:01 +0000)]
warning fix
Matthias Braun [Fri, 20 Oct 2006 09:29:04 +0000 (09:29 +0000)]
start block is allowed to have no cfop as last command
Christian Würdig [Thu, 19 Oct 2006 10:59:56 +0000 (10:59 +0000)]
do only 1024 iterations
Christian Würdig [Thu, 19 Oct 2006 09:45:58 +0000 (09:45 +0000)]
added additional directory
Christian Würdig [Wed, 18 Oct 2006 10:54:52 +0000 (10:54 +0000)]
do not omit compare for PsiCondSet, some note scheduled in between could destroy flags
Christoph Mallon [Wed, 18 Oct 2006 09:06:35 +0000 (09:06 +0000)]
Change the if conversion backend hook
Christian Würdig [Tue, 17 Oct 2006 15:43:43 +0000 (15:43 +0000)]
added ir/opt include
Christian Würdig [Tue, 17 Oct 2006 09:06:58 +0000 (09:06 +0000)]
added #ifdef __GNUC__
Christian Würdig [Tue, 17 Oct 2006 09:06:35 +0000 (09:06 +0000)]
removed some #if 0
Christian Würdig [Tue, 17 Oct 2006 09:04:56 +0000 (09:04 +0000)]
BugFix: return gcc-like names for st0-st7: %st, %st(1) - %st(7)
BugFix: test for parity on unordered compares
Christian Würdig [Tue, 17 Oct 2006 09:03:22 +0000 (09:03 +0000)]
Phi as consumer of normal node is out edge
Matthias Braun [Mon, 16 Oct 2006 12:24:50 +0000 (12:24 +0000)]
fewer runs for max
Christian Würdig [Mon, 16 Oct 2006 12:20:34 +0000 (12:20 +0000)]
BugFix: Phi as user of normal node is no descendant but an out-edge
Christian Würdig [Mon, 16 Oct 2006 11:59:32 +0000 (11:59 +0000)]
fixed transformation SSE2X87 nodes
Christian Würdig [Mon, 16 Oct 2006 11:59:13 +0000 (11:59 +0000)]
fixed intrinsic mapping (wrong entities were used sometimes)
Christian Würdig [Mon, 16 Oct 2006 11:58:34 +0000 (11:58 +0000)]
only create pushs if requested (default is on)
Christian Würdig [Mon, 16 Oct 2006 11:58:03 +0000 (11:58 +0000)]
added new option ia32-nopushargs
Christian Würdig [Fri, 13 Oct 2006 12:53:01 +0000 (12:53 +0000)]
added compile only flag to eccp (-c)
Christian Würdig [Fri, 13 Oct 2006 12:52:03 +0000 (12:52 +0000)]
fixed 64Bit intrinsic mapping
Christian Würdig [Fri, 13 Oct 2006 12:51:24 +0000 (12:51 +0000)]
fixed emitter (call printf foreach . line)
Christian Würdig [Fri, 13 Oct 2006 12:50:50 +0000 (12:50 +0000)]
fixed endless loop
added cbc verifier
Christian Würdig [Fri, 13 Oct 2006 12:50:26 +0000 (12:50 +0000)]
recompute edges before scheduling
Christian Würdig [Fri, 13 Oct 2006 12:48:39 +0000 (12:48 +0000)]
fixed constraint assurance
Christian Würdig [Fri, 13 Oct 2006 12:47:47 +0000 (12:47 +0000)]
slightly extended test
Matthias Braun [Thu, 12 Oct 2006 14:28:08 +0000 (14:28 +0000)]
put bespill options into separate file
Matthias Braun [Thu, 12 Oct 2006 11:31:51 +0000 (11:31 +0000)]
- Improved addressmode optimisation for conv nodes
Matthias Braun [Wed, 11 Oct 2006 18:08:02 +0000 (18:08 +0000)]
warning fixes
Matthias Braun [Wed, 11 Oct 2006 18:07:33 +0000 (18:07 +0000)]
warning fixes
Michael Beck [Wed, 11 Oct 2006 12:27:46 +0000 (12:27 +0000)]
Updated the x87 simulator:
- patching node inputs fool the register verifier, so fxch, fpop and fpush are now nodes
without in- and output. They are keeped and hold in the schedule.
- handle all possible constants in sim_Copy()
Michael Beck [Wed, 11 Oct 2006 12:25:11 +0000 (12:25 +0000)]
Allow empty requierements.
NEVER return st registers for a floating point node, or the x87 simulator fails
Michael Beck [Wed, 11 Oct 2006 12:18:59 +0000 (12:18 +0000)]
Allow empty in and out requierements for nodes
Christian Würdig [Wed, 11 Oct 2006 08:57:27 +0000 (08:57 +0000)]
added several bugfixed and code changes
Christian Würdig [Tue, 10 Oct 2006 20:44:34 +0000 (20:44 +0000)]
BugFix: crashed when gen_imm_Sub got SymConst instead of Const (broken tarval)
Christian Würdig [Tue, 10 Oct 2006 15:48:47 +0000 (15:48 +0000)]
Bugfix: add eax resp. edx proj for MulS if missing
Christian Würdig [Tue, 10 Oct 2006 14:10:10 +0000 (14:10 +0000)]
fixed assertion in Const emitter (tarval mode_P and Const mode_Iu is allowed)
emit block labels for switchjmp targets
Christian Würdig [Tue, 10 Oct 2006 13:14:39 +0000 (13:14 +0000)]
BugFix: retrieve Proj-based out flags only for datab Projs
Michael Beck [Mon, 9 Oct 2006 16:41:57 +0000 (16:41 +0000)]
BugFix:
- use of wrong (uninitialized) variable
- modes was fixed to mode_Iu, but must be the same mode as the other tarval
Christian Würdig [Mon, 9 Oct 2006 15:42:20 +0000 (15:42 +0000)]
added printf for better debugging
Christian Würdig [Mon, 9 Oct 2006 15:40:16 +0000 (15:40 +0000)]
added some testcases
Christian Würdig [Mon, 9 Oct 2006 13:43:38 +0000 (13:43 +0000)]
added another test case
Christian Würdig [Mon, 9 Oct 2006 13:38:32 +0000 (13:38 +0000)]
add dependency to barrieri if load is in start block
Christian Würdig [Mon, 9 Oct 2006 13:26:27 +0000 (13:26 +0000)]
removed memory input from consts
const are now placed in smallest common dominator block of all it's users
constants have dependency to barrier
Christian Würdig [Mon, 9 Oct 2006 13:25:12 +0000 (13:25 +0000)]
added attribute and function to retrieve barrier from start block
Christian Würdig [Mon, 9 Oct 2006 13:24:35 +0000 (13:24 +0000)]
do not schedule node having no users
Matthias Braun [Mon, 9 Oct 2006 12:15:39 +0000 (12:15 +0000)]
fix blocksched for blocks with arity==0
Christian Würdig [Mon, 9 Oct 2006 11:35:07 +0000 (11:35 +0000)]
omit copies from virtual registers
Christian Würdig [Mon, 9 Oct 2006 11:34:51 +0000 (11:34 +0000)]
added suppoprt for virtual registers
made UNKNW, NOREG and vfp registers virtual
Christian Würdig [Mon, 9 Oct 2006 11:34:06 +0000 (11:34 +0000)]
added new register type "virtual"
Christian Würdig [Mon, 9 Oct 2006 09:07:46 +0000 (09:07 +0000)]
fixed gen_Load (add Proj for unused volatile Loads before renumbering)
Christian Würdig [Mon, 9 Oct 2006 08:58:17 +0000 (08:58 +0000)]
fixed Proj renumbering
Christian Würdig [Sat, 7 Oct 2006 10:41:21 +0000 (10:41 +0000)]
changed printf to DBG output
made code more firm style :)
Christian Würdig [Fri, 6 Oct 2006 14:26:10 +0000 (14:26 +0000)]
fixed requirements for ShrD and ShlD
Christian Würdig [Fri, 6 Oct 2006 14:20:34 +0000 (14:20 +0000)]
added support for requirements: different from all in
Christian Würdig [Fri, 6 Oct 2006 12:22:40 +0000 (12:22 +0000)]
fixed n_res calculation
Christian Würdig [Fri, 6 Oct 2006 12:21:58 +0000 (12:21 +0000)]
fixed main structure init
Christian Würdig [Fri, 6 Oct 2006 12:21:31 +0000 (12:21 +0000)]
fixed constraint insn walker
Christian Würdig [Fri, 6 Oct 2006 12:20:57 +0000 (12:20 +0000)]
fixed sel entity collector
Christian Würdig [Fri, 6 Oct 2006 10:45:00 +0000 (10:45 +0000)]
removed redundant comment