Michael Beck [Wed, 5 Sep 2007 15:03:13 +0000 (15:03 +0000)]
fixed Add optimization
[r15679]
Michael Beck [Wed, 5 Sep 2007 13:49:44 +0000 (13:49 +0000)]
replaced the max macro
[r15677]
Michael Beck [Wed, 5 Sep 2007 13:42:44 +0000 (13:42 +0000)]
add generic architecture
[r15675]
Michael Beck [Wed, 5 Sep 2007 13:42:00 +0000 (13:42 +0000)]
changed parameters for new MulC
[r15674]
Michael Beck [Wed, 5 Sep 2007 13:41:02 +0000 (13:41 +0000)]
implement the Youfeng Wu algorithm for MulC
[r15673]
Michael Beck [Wed, 5 Sep 2007 13:40:13 +0000 (13:40 +0000)]
test the new mul with Const
[r15672]
Michael Beck [Wed, 5 Sep 2007 12:26:19 +0000 (12:26 +0000)]
disables a+a => 2*a
[r15671]
Michael Beck [Wed, 5 Sep 2007 12:24:42 +0000 (12:24 +0000)]
tarval_divmod added
[r15670]
Michael Beck [Wed, 5 Sep 2007 12:24:16 +0000 (12:24 +0000)]
tarval_divmod added
[r15669]
Matthias Braun [Tue, 4 Sep 2007 14:18:13 +0000 (14:18 +0000)]
fix is_Const_Minus_1 test
[r15668]
Matthias Braun [Tue, 4 Sep 2007 14:17:57 +0000 (14:17 +0000)]
fix TestSet emitter
[r15667]
Matthias Braun [Tue, 4 Sep 2007 14:13:59 +0000 (14:13 +0000)]
we can't negate ConstP
[r15666]
Christoph Mallon [Tue, 4 Sep 2007 13:41:43 +0000 (13:41 +0000)]
Handle nodes with block predecessors.
[r15665]
Christoph Mallon [Tue, 4 Sep 2007 13:14:03 +0000 (13:14 +0000)]
Fix normal scheduler
- actually use the calculated costs for scheduling
- calculate the register use of nodes
[r15664]
Matthias Braun [Mon, 3 Sep 2007 16:17:29 +0000 (16:17 +0000)]
remove Load when using Cmp source AM
[r15663]
Matthias Braun [Mon, 3 Sep 2007 16:16:36 +0000 (16:16 +0000)]
some fixes to profiling code (not enough to make it really working again)
[r15662]
Michael Beck [Mon, 3 Sep 2007 14:46:57 +0000 (14:46 +0000)]
fixed memory hole, typo
[r15661]
Matthias Braun [Mon, 3 Sep 2007 13:28:29 +0000 (13:28 +0000)]
Sub(x, Const) -> Add(x, -Const)
[r15660]
Matthias Braun [Mon, 3 Sep 2007 13:28:00 +0000 (13:28 +0000)]
don't create Inc/Dec in transform phase but delay that decision for the finish phase (of course we still create IncMem and DecMem nodes)
[r15659]
Michael Beck [Mon, 3 Sep 2007 13:28:46 +0000 (13:28 +0000)]
allow general conversions between reference and interegr modes
[r15658]
Matthias Braun [Mon, 3 Sep 2007 12:01:45 +0000 (12:01 +0000)]
missing handling for CmpSet8Bit and TestSet8Bit
[r15657]
Michael Beck [Fri, 31 Aug 2007 15:10:08 +0000 (15:10 +0000)]
made cost double
[r15651]
Michael Beck [Fri, 31 Aug 2007 15:09:39 +0000 (15:09 +0000)]
fixed use of uninitialised variable
[r15650]
Michael Beck [Fri, 31 Aug 2007 15:09:17 +0000 (15:09 +0000)]
fixed warning on VC build
[r15649]
Michael Beck [Fri, 31 Aug 2007 15:08:44 +0000 (15:08 +0000)]
fixed uninitialised variable
[r15648]
Michael Beck [Fri, 31 Aug 2007 14:58:13 +0000 (14:58 +0000)]
fixed uninitialised variable used
[r15646]
Michael Beck [Fri, 31 Aug 2007 14:57:34 +0000 (14:57 +0000)]
C99 featurs rmoved
[r15645]
Matthias Braun [Fri, 31 Aug 2007 14:53:11 +0000 (14:53 +0000)]
forgot these 2 files in my last committ
[r15644]
Matthias Braun [Fri, 31 Aug 2007 14:49:57 +0000 (14:49 +0000)]
make display of node idx configurable and disable it by default
[r15643]
Matthias Braun [Fri, 31 Aug 2007 14:49:22 +0000 (14:49 +0000)]
Changed handling of address mode:
- Source and Destination address mode are now constructed during the normal
transform phase and not as a separate phase
- Remove the old ImmOp stuff
- introduce 8, 16bit cmps, tests
- still some nodes miss SourceAM handling, but generally we should be as good/better than the old code, so I'm comitting now
[r15642]
Matthias Braun [Fri, 31 Aug 2007 14:45:48 +0000 (14:45 +0000)]
fix warning
[r15641]
Matthias Braun [Fri, 31 Aug 2007 14:45:30 +0000 (14:45 +0000)]
improve/fix fehler71
[r15640]
Matthias Braun [Fri, 31 Aug 2007 14:44:35 +0000 (14:44 +0000)]
improve address mode tests
[r15639]
Matthias Braun [Fri, 31 Aug 2007 14:44:11 +0000 (14:44 +0000)]
no need for StackParam transformation anymore
[r15638]
Matthias Braun [Fri, 31 Aug 2007 14:43:41 +0000 (14:43 +0000)]
improve register pressure statistics
[r15637]
Matthias Braun [Fri, 31 Aug 2007 14:43:25 +0000 (14:43 +0000)]
remove old be_get_IncSP_mem, improve be node dumping
[r15636]
Matthias Braun [Fri, 31 Aug 2007 14:42:45 +0000 (14:42 +0000)]
fix spillcosts calculation
[r15635]
Michael Beck [Fri, 31 Aug 2007 12:15:17 +0000 (12:15 +0000)]
removed unused arch_irn_class_const classification
[r15634]
Michael Beck [Fri, 31 Aug 2007 12:14:53 +0000 (12:14 +0000)]
- C99 features removed
- use xmalloc() instead of malloc
[r15633]
Matthias Braun [Thu, 30 Aug 2007 13:30:09 +0000 (13:30 +0000)]
add support to print some events in a human readable format to stderr
[r15628]
Matthias Braun [Thu, 30 Aug 2007 13:30:00 +0000 (13:30 +0000)]
add support to print some events in a human readable format to stderr
[r15627]
Matthias Braun [Thu, 30 Aug 2007 12:26:13 +0000 (12:26 +0000)]
remove arch_irn_class_const, not used and not usefull IMO
[r15625]
Matthias Braun [Thu, 30 Aug 2007 12:25:47 +0000 (12:25 +0000)]
fix warning
[r15624]
Matthias Braun [Thu, 30 Aug 2007 12:25:13 +0000 (12:25 +0000)]
add be_get_FrameAddr_entity
[r15623]
Matthias Braun [Thu, 30 Aug 2007 12:24:50 +0000 (12:24 +0000)]
fix Proj blocks in trans helper fix_loops phase
[r15622]
Michael Beck [Tue, 28 Aug 2007 13:07:17 +0000 (13:07 +0000)]
fixed lowering of signed 32x32=64 multiplication
[r15617]
Michael Beck [Tue, 28 Aug 2007 12:15:34 +0000 (12:15 +0000)]
fixed lowering of Conv from I->L (fixed fehler72.c)
[r15615]
Christoph Mallon [Tue, 28 Aug 2007 10:00:07 +0000 (10:00 +0000)]
fehler72: wrong conversion from unsigned int to long long.
[r15614]
Matthias Braun [Mon, 27 Aug 2007 12:28:38 +0000 (12:28 +0000)]
Simplify backends by removing unnecessary constructs:
- removed be_FrameLoad and be_FrameStore nodes which weren't used anymore
- removed be_StackParam and replace it with Load(be_FrameAddr) constructs
[r15610]
Matthias Braun [Mon, 27 Aug 2007 12:12:42 +0000 (12:12 +0000)]
remove unused be_FrameLoad and be_FrameStore
[r15609]
Christoph Mallon [Sat, 25 Aug 2007 19:50:16 +0000 (19:50 +0000)]
Drastically lower the runtime of the strong normal form theorem scheduler by not putting nodes, which are in the schedule list already, in the list again.
[r15608]
Matthias Braun [Sat, 25 Aug 2007 17:05:50 +0000 (17:05 +0000)]
more AM tests
[r15607]
Christoph Mallon [Sat, 25 Aug 2007 16:30:33 +0000 (16:30 +0000)]
Remove printf()s left over from debugging.
[r15606]
Christoph Mallon [Sat, 25 Aug 2007 16:28:56 +0000 (16:28 +0000)]
In smaller_mode() state that mode_b can be converted to every integer mode without loss.
[r15605]
Christoph Mallon [Sat, 25 Aug 2007 16:26:56 +0000 (16:26 +0000)]
Remove unnecessary conversions to wider modes as operands of Cmp.
Convert comparisons of boolean nodes to boolean expressions.
[r15604]
Christoph Mallon [Sat, 25 Aug 2007 16:23:45 +0000 (16:23 +0000)]
Allow mode_b as operand mode for Cmp as comments there suggest already.
[r15603]
Christoph Mallon [Sat, 25 Aug 2007 06:52:58 +0000 (06:52 +0000)]
Protect buffer[] by #ifdef FLTCALC_TRACE_CALC. It is only used when this macro is set.
[r15602]
Christoph Mallon [Sat, 25 Aug 2007 06:51:40 +0000 (06:51 +0000)]
Fix typos in comments.
[r15601]
Christoph Mallon [Sat, 25 Aug 2007 06:50:59 +0000 (06:50 +0000)]
Some more boolopt tests.
[r15600]
Matthias Braun [Fri, 24 Aug 2007 11:54:29 +0000 (11:54 +0000)]
extended boolopts test
[r15599]
Matthias Braun [Thu, 23 Aug 2007 17:40:37 +0000 (17:40 +0000)]
fix mode_b optimisation with compares
[r15598]
Matthias Braun [Thu, 23 Aug 2007 17:40:08 +0000 (17:40 +0000)]
optimize and,or,eor with Projs from same Cmp
[r15597]
Matthias Braun [Thu, 23 Aug 2007 17:39:27 +0000 (17:39 +0000)]
correctly handle cmps that can't be evaluated
[r15596]
Michael Beck [Thu, 23 Aug 2007 16:54:40 +0000 (16:54 +0000)]
improved shifting with constants
[r15595]
Matthias Braun [Thu, 23 Aug 2007 14:01:04 +0000 (14:01 +0000)]
handle bool as method argument and result correctly
[r15593]
Matthias Braun [Thu, 23 Aug 2007 13:57:14 +0000 (13:57 +0000)]
fix
[r15592]
Matthias Braun [Thu, 23 Aug 2007 13:55:43 +0000 (13:55 +0000)]
do Conv after Set command (instead of mov 0,) before the set, should be as fast as before but opens up other optimisation possibilities
[r15591]
Matthias Braun [Thu, 23 Aug 2007 13:53:58 +0000 (13:53 +0000)]
disable the initial-proj removal from beabi (transform phases do it themselfes now)
[r15590]
Michael Beck [Thu, 23 Aug 2007 13:12:40 +0000 (13:12 +0000)]
typo fixed
[r15589]
Michael Beck [Thu, 23 Aug 2007 13:11:05 +0000 (13:11 +0000)]
beware of pointer arithmetic with different integer modes
[r15588]
Michael Beck [Thu, 23 Aug 2007 11:49:57 +0000 (11:49 +0000)]
transform Shl(x,Const) into Muls for more normalization
[r15587]
Michael Beck [Thu, 23 Aug 2007 10:02:11 +0000 (10:02 +0000)]
improved constant movement AND reverse distributive law
[r15586]
Michael Beck [Wed, 22 Aug 2007 16:13:57 +0000 (16:13 +0000)]
first version with moving consts upwards
[r15584]
Michael Beck [Wed, 22 Aug 2007 14:42:33 +0000 (14:42 +0000)]
add a phase to reverse distributive law rules
[r15583]
Matthias Braun [Wed, 22 Aug 2007 12:30:04 +0000 (12:30 +0000)]
fix abs creation after recent reassoc changes
[r15582]
Matthias Braun [Wed, 22 Aug 2007 11:10:34 +0000 (11:10 +0000)]
am_test2
[r15581]
Matthias Braun [Wed, 22 Aug 2007 11:02:09 +0000 (11:02 +0000)]
improved version of fehler71
[r15580]
Matthias Braun [Wed, 22 Aug 2007 11:01:42 +0000 (11:01 +0000)]
fix sse/x87 fixup code added at wrong places
[r15579]
Michael Beck [Wed, 22 Aug 2007 09:38:14 +0000 (09:38 +0000)]
debug handle must be static
[r15578]
Michael Beck [Tue, 21 Aug 2007 13:57:31 +0000 (13:57 +0000)]
BugFix: handle the method initializer right
[r15577]
Michael Beck [Tue, 21 Aug 2007 13:49:16 +0000 (13:49 +0000)]
irg_block_edges_walk() implemented
[r15576]
Matthias Braun [Tue, 21 Aug 2007 13:24:27 +0000 (13:24 +0000)]
make fehler68 deterministic
[r15575]
Matthias Braun [Tue, 21 Aug 2007 12:55:50 +0000 (12:55 +0000)]
fix header installation
[r15571]
Michael Beck [Mon, 20 Aug 2007 12:10:49 +0000 (12:10 +0000)]
fixed optimize_conv_conv(): when the result is 8bit, we must change the opcode AND register constraints
[r15569]
Michael Beck [Mon, 20 Aug 2007 11:21:47 +0000 (11:21 +0000)]
Add - (a - b) = b - a transformation
[r15568]
Michael Beck [Mon, 20 Aug 2007 10:11:29 +0000 (10:11 +0000)]
C99 feature removed
[r15567]
Matthias Braun [Sun, 19 Aug 2007 19:55:49 +0000 (19:55 +0000)]
fix for barrier in mode_b lowering
[r15566]
Christoph Mallon [Sat, 18 Aug 2007 06:58:57 +0000 (06:58 +0000)]
Remove an unnecessary layer of indirection from the scheduler selectors.
[r15565]
Christoph Mallon [Sat, 18 Aug 2007 06:49:41 +0000 (06:49 +0000)]
Add a scheduler based on the strong normal form theorem. It seems to deliver good results for broad calculation trees/DAGs.
Caution: The implemententation is a cruel hack so far. Contents may be hot. Slippery when wet.
[r15564]
Sebastian Hack [Fri, 17 Aug 2007 11:55:39 +0000 (11:55 +0000)]
Minor changes
[r15563]
Sebastian Hack [Fri, 17 Aug 2007 11:47:23 +0000 (11:47 +0000)]
Small cosmetic
[r15562]
Sebastian Hack [Fri, 17 Aug 2007 11:46:36 +0000 (11:46 +0000)]
Added a new order for the blocks.
[r15561]
Sebastian Hack [Fri, 17 Aug 2007 11:45:54 +0000 (11:45 +0000)]
Changed API of liveness
It gets a beirg not an irg anymore
[r15560]
Sebastian Hack [Fri, 17 Aug 2007 11:41:46 +0000 (11:41 +0000)]
Changed API of listscheduler
init_graph now gets a birg not a arch_env/irg
[r15559]
Sebastian Hack [Fri, 17 Aug 2007 11:38:52 +0000 (11:38 +0000)]
Talk to sqlite3 directly
changed options
[r15558]
Sebastian Hack [Fri, 17 Aug 2007 11:38:17 +0000 (11:38 +0000)]
Dropped some consts
modified constructor of irlivechk
[r15557]
Sebastian Hack [Fri, 17 Aug 2007 11:37:26 +0000 (11:37 +0000)]
more on array sets
[r15556]
Sebastian Hack [Fri, 17 Aug 2007 11:26:57 +0000 (11:26 +0000)]
Removed old implementaion of fast liveness checks
[r15555]
Sebastian Hack [Thu, 16 Aug 2007 10:54:20 +0000 (10:54 +0000)]
Fixed help
[r15550]
Sebastian Hack [Thu, 16 Aug 2007 09:26:49 +0000 (09:26 +0000)]
Added computation of live sets
[r15549]