libfirm
18 years agoBugFix: creation of Div/Mod nodes
Michael Beck [Fri, 21 Apr 2006 15:55:43 +0000 (15:55 +0000)]
BugFix: creation of Div/Mod nodes

18 years agoAdded new version of copy heuristic (still very alpha!)
Sebastian Hack [Fri, 21 Apr 2006 15:38:00 +0000 (15:38 +0000)]
Added new version of copy heuristic (still very alpha!)

18 years agocheck if load/store can cosume the lea before consuming it
Christian Würdig [Fri, 21 Apr 2006 15:21:45 +0000 (15:21 +0000)]
check if load/store can cosume the lea before consuming it

18 years agoadded new flag to indicate if node already consumed a lea
Christian Würdig [Fri, 21 Apr 2006 15:21:21 +0000 (15:21 +0000)]
added new flag to indicate if node already consumed a lea

18 years agolowercase modifiers
Michael Beck [Fri, 21 Apr 2006 14:38:46 +0000 (14:38 +0000)]
lowercase modifiers

18 years agoFixed some emitters
Michael Beck [Fri, 21 Apr 2006 14:37:59 +0000 (14:37 +0000)]
Fixed some emitters

18 years agouse arm_fprintf_format() in all emitter functions
Michael Beck [Fri, 21 Apr 2006 14:37:26 +0000 (14:37 +0000)]
use arm_fprintf_format() in all emitter functions

18 years agoswitched of address mode for CondJmp temporary
Christian Würdig [Fri, 21 Apr 2006 14:22:23 +0000 (14:22 +0000)]
switched of address mode for CondJmp temporary

18 years agofixed address mode optimization
Christian Würdig [Fri, 21 Apr 2006 14:19:05 +0000 (14:19 +0000)]
fixed address mode optimization

18 years agoBugFix: qsort compare function for soill slots
Michael Beck [Fri, 21 Apr 2006 13:14:00 +0000 (13:14 +0000)]
BugFix: qsort compare function for soill slots
PhiM is now constructed without Unknown nodes
added doxygen docu

18 years agofixed addressmode
Christian Würdig [Fri, 21 Apr 2006 13:02:05 +0000 (13:02 +0000)]
fixed addressmode

18 years agoremoved unnecessary header dependency
Michael Beck [Fri, 21 Apr 2006 12:39:33 +0000 (12:39 +0000)]
removed unnecessary header dependency

18 years agomade address mode optimizer more modular
Christian Würdig [Fri, 21 Apr 2006 11:50:26 +0000 (11:50 +0000)]
made address mode optimizer more modular

18 years agoadded nolea option to switch of LEA optimization
Christian Würdig [Fri, 21 Apr 2006 11:50:03 +0000 (11:50 +0000)]
added nolea option to switch of LEA optimization

18 years agoFixed creation of Copy before Call
Michael Beck [Fri, 21 Apr 2006 11:30:16 +0000 (11:30 +0000)]
Fixed creation of Copy before Call

18 years agoused foreach_pset() for clarification
Michael Beck [Fri, 21 Apr 2006 09:12:23 +0000 (09:12 +0000)]
used foreach_pset() for clarification

18 years agofixed mappings for Load and Store nodes
Michael Beck [Thu, 20 Apr 2006 16:42:24 +0000 (16:42 +0000)]
fixed mappings for Load and Store nodes

18 years agoremoved unnecessary functions handle the slots
Michael Beck [Thu, 20 Apr 2006 16:29:37 +0000 (16:29 +0000)]
removed unnecessary functions handle the slots
st registers are allocated by the x87 simulator and don't need a noreg

18 years agoenambled the BUGGY_REMAT simple rematerializer: only nodes with arity == 0
Michael Beck [Thu, 20 Apr 2006 16:27:04 +0000 (16:27 +0000)]
enambled the BUGGY_REMAT simple rematerializer: only nodes with arity == 0
are rematerialized ...

18 years agoused foreach_pset() for clearness
Michael Beck [Thu, 20 Apr 2006 16:25:45 +0000 (16:25 +0000)]
used foreach_pset() for clearness

18 years agoput the debug module into a DEBUG_ONLY()
Michael Beck [Thu, 20 Apr 2006 16:24:45 +0000 (16:24 +0000)]
put the debug module into a DEBUG_ONLY()

18 years agosubstituted copymin ilp option with ilp1 and ilp2
Christian Würdig [Thu, 20 Apr 2006 16:06:32 +0000 (16:06 +0000)]
substituted copymin ilp option with ilp1 and ilp2
use copymin ilp when specified on command line

18 years agocommented out DEBUG line
Christian Würdig [Thu, 20 Apr 2006 16:05:26 +0000 (16:05 +0000)]
commented out DEBUG line

18 years agoregister slots are now automatically allocated together with the $ARCH_attribute
Michael Beck [Thu, 20 Apr 2006 15:37:16 +0000 (15:37 +0000)]
register slots are now automatically allocated together with the $ARCH_attribute
No more extra allocation needed, but must be last in the attribute structure

18 years agoImplemented basic FPA support
Michael Beck [Thu, 20 Apr 2006 13:40:30 +0000 (13:40 +0000)]
Implemented basic FPA support

18 years agoimproved documentation
Michael Beck [Thu, 20 Apr 2006 13:39:03 +0000 (13:39 +0000)]
improved documentation

18 years agoadded option to set the GAS mode
Michael Beck [Thu, 20 Apr 2006 08:22:22 +0000 (08:22 +0000)]
added option to set the GAS mode

18 years agoBugFix:
Michael Beck [Wed, 19 Apr 2006 15:46:08 +0000 (15:46 +0000)]
BugFix:
 - Phi nodes are not in-block users of a node
 - return result 0 if a node is not schedules in the verifier

18 years agofixed output for local uninitialized entities in MinGW mode
Michael Beck [Wed, 19 Apr 2006 12:20:30 +0000 (12:20 +0000)]
fixed output for local uninitialized entities in MinGW mode

18 years agoadded additional option for copymin (can be switched off now)
Christian Würdig [Wed, 19 Apr 2006 12:09:25 +0000 (12:09 +0000)]
added additional option for copymin (can be switched off now)

18 years agoremoved paramter for perm lowering
Christian Würdig [Wed, 19 Apr 2006 11:52:48 +0000 (11:52 +0000)]
removed paramter for perm lowering

18 years agomoved statitics to bestat
Christian Würdig [Wed, 19 Apr 2006 11:44:42 +0000 (11:44 +0000)]
moved statitics to bestat
perm statistics is now done by firmstat module

18 years agoHandle CondJmp' with memory Proj's right
Michael Beck [Wed, 19 Apr 2006 11:40:32 +0000 (11:40 +0000)]
Handle CondJmp' with memory Proj's right

18 years agotypo fixed
Michael Beck [Wed, 19 Apr 2006 11:19:36 +0000 (11:19 +0000)]
typo fixed

18 years agoMerged
Sebastian Hack [Wed, 19 Apr 2006 11:14:26 +0000 (11:14 +0000)]
Merged

18 years agoSmall changes
Sebastian Hack [Wed, 19 Apr 2006 11:14:11 +0000 (11:14 +0000)]
Small changes

18 years agoremoved MIN/MAX macros (in irtools.h now)
Christian Würdig [Tue, 18 Apr 2006 17:10:05 +0000 (17:10 +0000)]
removed MIN/MAX macros (in irtools.h now)

18 years agocopy result mode on final transformations (lea->add and sub->neg-add)
Christian Würdig [Fri, 14 Apr 2006 21:04:42 +0000 (21:04 +0000)]
copy result mode on final transformations (lea->add and sub->neg-add)

18 years agofixed mode suffix emitter
Christian Würdig [Fri, 14 Apr 2006 21:04:02 +0000 (21:04 +0000)]
fixed mode suffix emitter

18 years agoMB fixed HeapSort algorithm
Christian Würdig [Wed, 12 Apr 2006 13:50:35 +0000 (13:50 +0000)]
MB fixed HeapSort algorithm

18 years agoignore .txt
Christian Würdig [Wed, 12 Apr 2006 13:49:32 +0000 (13:49 +0000)]
ignore .txt

18 years agofactor out: ia32_emit_align()
Michael Beck [Wed, 12 Apr 2006 13:16:11 +0000 (13:16 +0000)]
factor out: ia32_emit_align()

18 years agodeactivate IncSP peephole optimization, crashes HeapSort
Michael Beck [Wed, 12 Apr 2006 12:10:12 +0000 (12:10 +0000)]
deactivate IncSP peephole optimization, crashes HeapSort

18 years agodefine IS_P6_ARCH
Michael Beck [Wed, 12 Apr 2006 12:09:14 +0000 (12:09 +0000)]
define IS_P6_ARCH

18 years agouse push for CPU's older that P6, always use leave
Michael Beck [Wed, 12 Apr 2006 12:08:53 +0000 (12:08 +0000)]
use push for CPU's older that P6, always use leave

18 years agofixed define
Christian Würdig [Wed, 12 Apr 2006 08:59:34 +0000 (08:59 +0000)]
fixed define

18 years agoadd processor specific gas alignment instructions for Labels and Functions
Christian Würdig [Tue, 11 Apr 2006 19:28:59 +0000 (19:28 +0000)]
add processor specific gas alignment instructions for Labels and Functions

18 years agoadded missing source files
Christian Würdig [Tue, 11 Apr 2006 18:42:34 +0000 (18:42 +0000)]
added missing source files

18 years agoremoved MIN marc
Christian Würdig [Tue, 11 Apr 2006 18:30:35 +0000 (18:30 +0000)]
removed MIN marc

18 years agoadded missing include
Christian Würdig [Tue, 11 Apr 2006 17:18:25 +0000 (17:18 +0000)]
added missing include

18 years agoremoved MIN/MAX macros (in irtools.h now)
Christian Würdig [Tue, 11 Apr 2006 17:18:05 +0000 (17:18 +0000)]
removed MIN/MAX macros (in irtools.h now)

18 years agofixed inc generation/emitter
Christian Würdig [Tue, 11 Apr 2006 17:17:26 +0000 (17:17 +0000)]
fixed inc generation/emitter

18 years agoadded blank lines
Christian Würdig [Tue, 11 Apr 2006 17:17:14 +0000 (17:17 +0000)]
added blank lines

18 years agoInc (a misused Add :-) is not commutative
Michael Beck [Tue, 11 Apr 2006 16:44:33 +0000 (16:44 +0000)]
Inc (a misused Add :-) is not commutative

18 years agoFixed Push with immediate creation
Michael Beck [Tue, 11 Apr 2006 16:43:33 +0000 (16:43 +0000)]
Fixed Push with immediate creation
enabled Push peephole optimization

18 years agoMIN is now in irtools.h
Michael Beck [Tue, 11 Apr 2006 16:41:37 +0000 (16:41 +0000)]
MIN is now in irtools.h

18 years agofixed missing include/crash if not scheduled
Michael Beck [Tue, 11 Apr 2006 16:40:16 +0000 (16:40 +0000)]
fixed missing include/crash if not scheduled

18 years agoadd -b help option
Michael Beck [Tue, 11 Apr 2006 16:39:26 +0000 (16:39 +0000)]
add -b help option

18 years agofixed creation of sequential stores (again :-( )
Michael Beck [Tue, 11 Apr 2006 16:37:37 +0000 (16:37 +0000)]
fixed creation of sequential stores (again :-( )

18 years agofixed am optimizer
Christian Würdig [Tue, 11 Apr 2006 15:44:47 +0000 (15:44 +0000)]
fixed am optimizer

18 years agofixed gen_Store: take immediate addresses
Christian Würdig [Tue, 11 Apr 2006 15:44:38 +0000 (15:44 +0000)]
fixed gen_Store: take immediate addresses

18 years agofixed dumper
Christian Würdig [Tue, 11 Apr 2006 15:44:12 +0000 (15:44 +0000)]
fixed dumper

18 years agoAdded MRIS flag
Sebastian Hack [Tue, 11 Apr 2006 15:21:25 +0000 (15:21 +0000)]
Added MRIS flag

18 years agoChanged interface
Sebastian Hack [Tue, 11 Apr 2006 15:21:06 +0000 (15:21 +0000)]
Changed interface

18 years agoAdded MRIS scheduling preprocessor
Sebastian Hack [Tue, 11 Apr 2006 15:20:55 +0000 (15:20 +0000)]
Added MRIS scheduling preprocessor

18 years agoMinor changes
Sebastian Hack [Tue, 11 Apr 2006 15:20:34 +0000 (15:20 +0000)]
Minor changes

18 years agoBugFixes:
Michael Beck [Tue, 11 Apr 2006 14:49:37 +0000 (14:49 +0000)]
BugFixes:
 - replace the pnc code by its R^-1 one
 - fixed CJmpAM optmization

18 years agoset add with immediate commutative
Christian Würdig [Tue, 11 Apr 2006 13:48:51 +0000 (13:48 +0000)]
set add with immediate commutative

18 years agofixed am optimizer
Christian Würdig [Tue, 11 Apr 2006 13:48:25 +0000 (13:48 +0000)]
fixed am optimizer

18 years agoadded cast to avoid warning
Christian Würdig [Tue, 11 Apr 2006 13:48:07 +0000 (13:48 +0000)]
added cast to avoid warning

18 years agofixed copy insertion
Christian Würdig [Tue, 11 Apr 2006 13:47:50 +0000 (13:47 +0000)]
fixed copy insertion

18 years agofixed Source AM
Christian Würdig [Tue, 11 Apr 2006 12:41:56 +0000 (12:41 +0000)]
fixed Source AM

18 years agoremoved ident stuff
Christian Würdig [Tue, 11 Apr 2006 12:31:27 +0000 (12:31 +0000)]
removed ident stuff

18 years agofixed statistic calls
Christian Würdig [Tue, 11 Apr 2006 12:31:08 +0000 (12:31 +0000)]
fixed statistic calls

18 years agoadd a memory input to all constants, needed for the optimized scheduler
Michael Beck [Tue, 11 Apr 2006 11:41:29 +0000 (11:41 +0000)]
add a memory input to all constants, needed for the optimized scheduler

18 years agoremoved warnings
Michael Beck [Tue, 11 Apr 2006 11:40:31 +0000 (11:40 +0000)]
removed warnings

18 years agodirectly call stat_be_block_regpressure() and stat_be_block_sched_ready()
Michael Beck [Tue, 11 Apr 2006 11:20:31 +0000 (11:20 +0000)]
directly call stat_be_block_regpressure() and stat_be_block_sched_ready()

18 years agoImplemented full list scheduler using delay and earliest time ...
Michael Beck [Mon, 10 Apr 2006 16:53:02 +0000 (16:53 +0000)]
Implemented full list scheduler using delay and earliest time ...

18 years agoadded permutation lowering statistics
Christian Würdig [Mon, 10 Apr 2006 15:23:34 +0000 (15:23 +0000)]
added permutation lowering statistics

18 years agobestat is only compiled if FIRMSTAT is defined
Michael Beck [Mon, 10 Apr 2006 15:00:45 +0000 (15:00 +0000)]
bestat is only compiled if FIRMSTAT is defined

18 years agoadd a Keep of the vfCom eax output
Michael Beck [Mon, 10 Apr 2006 13:06:43 +0000 (13:06 +0000)]
add a Keep of the vfCom eax output
This is needed or no EAX will be allocated.

18 years agoFixed be_Return simulation: pop the stack only if floating point values are returned
Michael Beck [Mon, 10 Apr 2006 13:04:41 +0000 (13:04 +0000)]
Fixed be_Return simulation: pop the stack only if floating point values are returned

18 years agoforeach_nodeset() ideom added
Michael Beck [Mon, 10 Apr 2006 13:03:24 +0000 (13:03 +0000)]
foreach_nodeset() ideom added

18 years agobe_Return nodes now have an attribute telling the number of "real" return values
Michael Beck [Mon, 10 Apr 2006 13:03:01 +0000 (13:03 +0000)]
be_Return nodes now have an attribute telling the number of "real" return values

18 years agoFixed a typo
Sebastian Hack [Mon, 10 Apr 2006 11:40:09 +0000 (11:40 +0000)]
Fixed a typo

18 years agochanged function variables type
Christian Würdig [Mon, 10 Apr 2006 11:36:50 +0000 (11:36 +0000)]
changed function variables type

18 years agochanged labels back to block number instead of lokal index
Christian Würdig [Mon, 10 Apr 2006 11:11:22 +0000 (11:11 +0000)]
changed labels back to block number instead of lokal index

18 years agoMake keep nodes in return blocks dead if there are any
Sebastian Hack [Mon, 10 Apr 2006 10:40:31 +0000 (10:40 +0000)]
Make keep nodes in return blocks dead if there are any

18 years agofixed be_sched_ready statistics
Christian Würdig [Mon, 10 Apr 2006 09:24:16 +0000 (09:24 +0000)]
fixed be_sched_ready statistics

18 years agoAdd floating point compares
Michael Beck [Sun, 9 Apr 2006 11:12:51 +0000 (11:12 +0000)]
Add floating point compares
handle binops with two identical operands
add simulation for be_Return
fixed simulation for be_Copy
add register killing code at begin of every block
use node index as block number
create only labels for block that are jump targets

18 years agoadded scheduling statistics for number of ready nodes
Christian Würdig [Sat, 8 Apr 2006 21:04:31 +0000 (21:04 +0000)]
added scheduling statistics for number of ready nodes

18 years agorenamed register classes
Michael Beck [Sat, 8 Apr 2006 00:57:42 +0000 (00:57 +0000)]
renamed register classes
fixed empty comments

18 years agoused new outs feature
Michael Beck [Sat, 8 Apr 2006 00:55:55 +0000 (00:55 +0000)]
used new outs feature
renamed register classes

18 years agohandle empty comments in automatic emitters right
Michael Beck [Sat, 8 Apr 2006 00:53:28 +0000 (00:53 +0000)]
handle empty comments in automatic emitters right

18 years agoadd comment for new outs feature
Michael Beck [Sat, 8 Apr 2006 00:52:29 +0000 (00:52 +0000)]
add comment for new outs feature

18 years agoused new outs feature
Michael Beck [Sat, 8 Apr 2006 00:51:19 +0000 (00:51 +0000)]
used new outs feature
removed unused XXX registers

18 years agoUsed new node index so hash node sets ... convert the to node bitset next ...
Michael Beck [Sat, 8 Apr 2006 00:49:43 +0000 (00:49 +0000)]
Used new node index so hash node sets ... convert the to node bitset next ...

18 years agoAdded an assertion to find next time wrong compare functions faster ;-)
Michael Beck [Sat, 8 Apr 2006 00:48:46 +0000 (00:48 +0000)]
Added an assertion to find next time wrong compare functions faster ;-)

18 years agoFixed a nasty bug: wrong compare function was used
Michael Beck [Sat, 8 Apr 2006 00:47:18 +0000 (00:47 +0000)]
Fixed a nasty bug: wrong compare function was used

18 years agoused new "outs" feature
Michael Beck [Fri, 7 Apr 2006 21:43:13 +0000 (21:43 +0000)]
used new "outs" feature