libfirm
14 years ago- add pass for combo()
Michael Beck [Sun, 16 Aug 2009 01:33:42 +0000 (01:33 +0000)]
- add pass for combo()
- fixed pass generator for lower_intrinsics
- add irpass.h to firm.h header

[r26346]

14 years ago- add pass for lower_intrinsics()
Michael Beck [Sun, 16 Aug 2009 01:09:11 +0000 (01:09 +0000)]
- add pass for lower_intrinsics()

[r26345]

14 years ago- implemented a pass manager, so optimizations could be added in advance to "a pass...
Michael Beck [Sun, 16 Aug 2009 01:06:37 +0000 (01:06 +0000)]
- implemented a pass manager, so optimizations could be added in advance to "a pass" and run an once as a pipeline
- two managers yet: graph manager runs passes on all graphs of an irp, prog manager runs passes on all irp's (currently only one)

[r26344]

14 years agofree values again if we know we don't need them anymore
Matthias Braun [Fri, 14 Aug 2009 21:15:29 +0000 (21:15 +0000)]
free values again if we know we don't need them anymore

[r26343]

14 years agobenewalloc: fix live-in values without phis not getting set to their copies
Matthias Braun [Fri, 14 Aug 2009 20:48:31 +0000 (20:48 +0000)]
benewalloc: fix live-in values without phis not getting set to their copies

[r26342]

14 years agofix more bugs in new allocator
Matthias Braun [Fri, 14 Aug 2009 20:31:52 +0000 (20:31 +0000)]
fix more bugs in new allocator

[r26341]

14 years agofix block message in register allocator verifier
Matthias Braun [Fri, 14 Aug 2009 20:31:15 +0000 (20:31 +0000)]
fix block message in register allocator verifier

[r26340]

14 years agoDo not allocate backend info for Projs. Their tuple hold all info and asking the...
Christoph Mallon [Fri, 14 Aug 2009 18:13:07 +0000 (18:13 +0000)]
Do not allocate backend info for Projs. Their tuple hold all info and asking the Projs is plain wrong.

[r26337]

14 years agoSkip projs before getting backend flags.
Christoph Mallon [Fri, 14 Aug 2009 18:09:32 +0000 (18:09 +0000)]
Skip projs before getting backend flags.

[r26336]

14 years agofix a bug in constraint enforcement; improve phi handling and phi0 construction ...
Matthias Braun [Fri, 14 Aug 2009 13:16:29 +0000 (13:16 +0000)]
fix a bug in constraint enforcement; improve phi handling and phi0 construction (still not finished)

[r26335]

14 years agobenewalloc: cleanups; dump intermediate results; rework copy tracking logic; started...
Matthias Braun [Fri, 14 Aug 2009 08:39:05 +0000 (08:39 +0000)]
benewalloc: cleanups; dump intermediate results; rework copy tracking logic; started working on SSA construction

[r26334]

14 years ago- rework backend node dumping; add a dumper for Phi nodes
Matthias Braun [Thu, 13 Aug 2009 10:26:49 +0000 (10:26 +0000)]
- rework backend node dumping; add a dumper for Phi nodes
- make phi nodes use backend_info instead of phi_handler hashmaps

[r26332]

14 years agoMinor corrections.
Christoph Mallon [Wed, 12 Aug 2009 17:36:19 +0000 (17:36 +0000)]
Minor corrections.

[r26331]

14 years agoRemove unnecessary #include "phiclass.h".
Christoph Mallon [Wed, 12 Aug 2009 11:59:03 +0000 (11:59 +0000)]
Remove unnecessary #include "phiclass.h".

[r26330]

14 years agofix rbitset_is_empty; put opening brace of functions on an own line
Matthias Braun [Wed, 12 Aug 2009 09:14:55 +0000 (09:14 +0000)]
fix rbitset_is_empty; put opening brace of functions on an own line

[r26329]

14 years ago- implement output constraint enforcement for new register allocator
Matthias Braun [Tue, 11 Aug 2009 11:46:32 +0000 (11:46 +0000)]
- implement output constraint enforcement for new register allocator
- rename bespilloptions.* to bespill.* and bespill.* to bespillutil.*

[r26327]

14 years agoSwitchJmp doesn't have 1 'none' output
Matthias Braun [Tue, 11 Aug 2009 11:45:44 +0000 (11:45 +0000)]
SwitchJmp doesn't have 1 'none' output

[r26326]

14 years agoadd rbitsets_have_common function
Matthias Braun [Tue, 11 Aug 2009 11:45:18 +0000 (11:45 +0000)]
add rbitsets_have_common function

[r26325]

14 years agofix
Matthias Braun [Thu, 6 Aug 2009 16:36:43 +0000 (16:36 +0000)]
fix

[r26321]

14 years ago- Rewrite internal backend logic for querying register constraints.
Matthias Braun [Thu, 6 Aug 2009 14:49:04 +0000 (14:49 +0000)]
- Rewrite internal backend logic for querying register constraints.
  (We have a separate get_input, and get_output callback for now).
  This should make the code faster for now and is a first step towards
  changing the interface to query register constraints on the mode_T node
  itself instead of the Proj nodes.
- Handle middleend node constraints and stuff in benode.c instead of in each
  backend
- Remove irn_class_branch we already had is_cfop in the middleend
- Fix a bunch of bugs/problems in the process

[r26320]

14 years agofix read from uninitialized memory
Matthias Braun [Wed, 5 Aug 2009 15:16:07 +0000 (15:16 +0000)]
fix read from uninitialized memory

[r26318]

14 years agoreorganize backend headers (kill some _t variants in favor of a be_types.h)
Matthias Braun [Wed, 5 Aug 2009 10:53:46 +0000 (10:53 +0000)]
reorganize backend headers (kill some _t variants in favor of a be_types.h)

[r26317]

14 years agofix register allocation verifier not checking output constraints for mode_T nodes
Matthias Braun [Tue, 4 Aug 2009 11:36:09 +0000 (11:36 +0000)]
fix register allocation verifier not checking output constraints for mode_T nodes

[r26315]

14 years agoinitial work for phi-nodes (ifs should work, loops not yet)
Matthias Braun [Mon, 3 Aug 2009 17:26:53 +0000 (17:26 +0000)]
initial work for phi-nodes (ifs should work, loops not yet)

[r26314]

14 years agomore work on permutate values (not finished yet)
Matthias Braun [Mon, 3 Aug 2009 12:40:06 +0000 (12:40 +0000)]
more work on permutate values (not finished yet)

[r26313]

14 years agofix warning and compilation error in optimized mode
Matthias Braun [Sun, 2 Aug 2009 18:09:24 +0000 (18:09 +0000)]
fix warning and compilation error in optimized mode

[r26311]

14 years agofix a few bugs in benewalloc, split codegen timer in 2
Matthias Braun [Sun, 2 Aug 2009 18:09:07 +0000 (18:09 +0000)]
fix a few bugs in benewalloc, split codegen timer in 2

[r26310]

14 years agocleanup backend: make pre_spill_prepare_constraint independent of chordal allocator...
Matthias Braun [Fri, 31 Jul 2009 12:39:52 +0000 (12:39 +0000)]
cleanup backend: make pre_spill_prepare_constraint independent of chordal allocator structures (and rework it a bit in the process)

[r26304]

14 years agounnecessary include
Matthias Braun [Fri, 31 Jul 2009 12:39:14 +0000 (12:39 +0000)]
unnecessary include

[r26303]

14 years agofix warning
Matthias Braun [Fri, 31 Jul 2009 12:39:02 +0000 (12:39 +0000)]
fix warning

[r26302]

14 years agofix warning
Matthias Braun [Fri, 31 Jul 2009 12:38:45 +0000 (12:38 +0000)]
fix warning

[r26301]

14 years agofix last commit
Matthias Braun [Fri, 31 Jul 2009 10:35:46 +0000 (10:35 +0000)]
fix last commit

[r26299]

14 years agodeclare load/store alternative in iroptimize header
Matthias Braun [Fri, 31 Jul 2009 10:27:57 +0000 (10:27 +0000)]
declare load/store alternative in iroptimize header

[r26298]

14 years agoless abreviations: rebitset_cpy => rebitset_copy
Matthias Braun [Fri, 31 Jul 2009 10:22:42 +0000 (10:22 +0000)]
less abreviations: rebitset_cpy => rebitset_copy

[r26297]

14 years agocondeval is called jump threading now
Sebastian Buchwald [Wed, 15 Jul 2009 15:01:42 +0000 (15:01 +0000)]
condeval is called jump threading now

[r26280]

14 years agocondeval is called Jump Threading now
Matthias Braun [Fri, 10 Jul 2009 13:56:22 +0000 (13:56 +0000)]
condeval is called Jump Threading now

[r26260]

14 years ago- hopefully fixed the lftr now
Michael Beck [Mon, 6 Jul 2009 18:39:53 +0000 (18:39 +0000)]
- hopefully fixed the lftr now

[r26241]

14 years ago- fixed warnings regarding unused irg's
Michael Beck [Sun, 5 Jul 2009 17:38:32 +0000 (17:38 +0000)]
- fixed warnings regarding unused irg's

[r26239]

14 years ago- remove all irg parameter from node constructors having a block
Michael Beck [Sun, 5 Jul 2009 17:14:32 +0000 (17:14 +0000)]
- remove all irg parameter from node constructors having a block
- SymConst's are now ALWAYS placed in the start block

[r26236]

15 years agoremove unused common/firmwalk.* code
Matthias Braun [Mon, 29 Jun 2009 09:09:31 +0000 (09:09 +0000)]
remove unused common/firmwalk.* code

[r26224]

15 years agoremove pointless and unused common/statistics.* code
Matthias Braun [Mon, 29 Jun 2009 09:06:41 +0000 (09:06 +0000)]
remove pointless and unused common/statistics.* code

[r26223]

15 years agoCleanup: remove firm_common_t.h (and the PRECISE_EXC_CONTEXT define)
Matthias Braun [Mon, 29 Jun 2009 09:04:43 +0000 (09:04 +0000)]
Cleanup: remove firm_common_t.h (and the PRECISE_EXC_CONTEXT define)

[r26222]

15 years agofix bad merge in last commit
Matthias Braun [Mon, 29 Jun 2009 08:58:41 +0000 (08:58 +0000)]
fix bad merge in last commit

[r26221]

15 years agorework python generators: we can make use of the classes/inheritance language feature...
Matthias Braun [Mon, 29 Jun 2009 08:19:31 +0000 (08:19 +0000)]
rework python generators: we can make use of the classes/inheritance language features to nicely define our nodes

[r26220]

15 years agomark get_Block_irg inline to avoid warnings
Matthias Braun [Fri, 26 Jun 2009 08:41:09 +0000 (08:41 +0000)]
mark get_Block_irg inline to avoid warnings

[r26190]

15 years agoAdd an irg attribute the Bad nodes: so get_Block_irg() can operate on
Michael Beck [Thu, 25 Jun 2009 22:48:39 +0000 (22:48 +0000)]
Add an irg attribute the Bad nodes: so get_Block_irg() can operate on
Bad nodes just like on Block nodes.
This simplifies get_irn_irg() and implements the idea the the irg can
be retrieved from "the block" of a node.

[r26188]

15 years ago- fixed warning
Michael Beck [Wed, 24 Jun 2009 19:48:06 +0000 (19:48 +0000)]
- fixed warning

[r26181]

15 years ago- add an inline version of get_Block_irg()
Michael Beck [Wed, 24 Jun 2009 19:41:25 +0000 (19:41 +0000)]
- add an inline version of get_Block_irg()

[r26180]

15 years ago- add some doxygen comments laying around
Michael Beck [Wed, 24 Jun 2009 19:37:01 +0000 (19:37 +0000)]
- add some doxygen comments laying around

[r26179]

15 years agoanother instance of wrong block in new_Proj
Matthias Braun [Fri, 19 Jun 2009 15:08:39 +0000 (15:08 +0000)]
another instance of wrong block in new_Proj

[r26164]

15 years agoverify that Projs are in the same Block as their predecessors (and fix bugs in firm...
Matthias Braun [Fri, 19 Jun 2009 13:44:10 +0000 (13:44 +0000)]
verify that Projs are in the same Block as their predecessors (and fix bugs in firm where this wasn't the case)

[r26163]

15 years ago- Get rid of the infamous Start->ProjX->Start backedge
Matthias Braun [Fri, 19 Jun 2009 12:10:54 +0000 (12:10 +0000)]
- Get rid of the infamous Start->ProjX->Start backedge

[r26162]

15 years agotransform assert to an if, as some students tend to hit it
Matthias Braun [Thu, 18 Jun 2009 14:47:25 +0000 (14:47 +0000)]
transform assert to an if, as some students tend to hit it

[r26157]

15 years agofix wrong assert, expor copy_node_attr function to public API
Matthias Braun [Thu, 18 Jun 2009 11:34:52 +0000 (11:34 +0000)]
fix wrong assert, expor copy_node_attr function to public API

[r26153]

15 years agosmall fixes
Matthias Braun [Thu, 18 Jun 2009 11:34:27 +0000 (11:34 +0000)]
small fixes

[r26152]

15 years ago- remove modecode concept which is pointless nowadays
Matthias Braun [Wed, 3 Jun 2009 09:10:04 +0000 (09:10 +0000)]
- remove modecode concept which is pointless nowadays

[r26093]

15 years ago- svn properties added
Michael Beck [Tue, 2 Jun 2009 22:38:55 +0000 (22:38 +0000)]
- svn properties added
- typos fixed
- C99 features removed

[r26089]

15 years ago- C99 features removed
Michael Beck [Tue, 2 Jun 2009 22:31:52 +0000 (22:31 +0000)]
- C99 features removed

[r26088]

15 years ago- fixed Win32 build after r26081
Michael Beck [Tue, 2 Jun 2009 22:26:36 +0000 (22:26 +0000)]
- fixed Win32 build after r26081

[r26087]

15 years agoadd note/error message about critical edge splitting and IJmps
Matthias Braun [Mon, 1 Jun 2009 09:53:40 +0000 (09:53 +0000)]
add note/error message about critical edge splitting and IJmps

[r26084]

15 years agofix a bunch of bugs in my last commit (no idea why I didn't see them on my mac)
Matthias Braun [Mon, 1 Jun 2009 08:53:20 +0000 (08:53 +0000)]
fix a bunch of bugs in my last commit (no idea why I didn't see them on my mac)

[r26082]

15 years agorework architecture specific timer code
Matthias Braun [Mon, 1 Jun 2009 08:52:55 +0000 (08:52 +0000)]
rework architecture specific timer code

[r26081]

15 years agoRework Block labels: They are entities now so we don't need a special symconst type...
Matthias Braun [Mon, 1 Jun 2009 08:34:19 +0000 (08:34 +0000)]
Rework Block labels: They are entities now so we don't need a special symconst type for them

[r26080]

15 years agosmall fixes and improvements to mysql support
Matthias Braun [Mon, 1 Jun 2009 08:29:57 +0000 (08:29 +0000)]
small fixes and improvements to mysql support

[r26079]

15 years ago- fixed warning
Michael Beck [Sat, 30 May 2009 15:30:16 +0000 (15:30 +0000)]
- fixed warning

[r26075]

15 years ago- lftr() is still buggy
Michael Beck [Sat, 30 May 2009 15:29:03 +0000 (15:29 +0000)]
- lftr() is still buggy

[r26074]

15 years ago- removed permanent debug output
Michael Beck [Sat, 30 May 2009 13:28:18 +0000 (13:28 +0000)]
- removed permanent debug output
- try to fix linear-function-test-replacement

[r26073]

15 years ago- BugFix: when a P<->I conversion for an induction variable took place, run a post...
Michael Beck [Sat, 30 May 2009 12:14:20 +0000 (12:14 +0000)]
- BugFix: when a P<->I conversion for an induction variable took place, run a post pass that fixes probably generated AddI(Iu,Is), SubI(IuIs).
- this fixes fehler169.c

[r26072]

15 years agoremoved unnecessary test
Johannes Franz [Fri, 29 May 2009 14:56:42 +0000 (14:56 +0000)]
removed unnecessary test

[r26070]

15 years agoremove double declarataion spotted by cparser
Matthias Braun [Fri, 29 May 2009 09:17:32 +0000 (09:17 +0000)]
remove double declarataion spotted by cparser

[r26065]

15 years ago- implemented i_mapper_bswap()
Michael Beck [Fri, 29 May 2009 01:53:01 +0000 (01:53 +0000)]
- implemented i_mapper_bswap()

[r26062]

15 years agohacky workaround for some builtin_return_address deficiencies (make gcc testsuite...
Matthias Braun [Thu, 28 May 2009 18:31:38 +0000 (18:31 +0000)]
hacky workaround for some builtin_return_address deficiencies (make gcc testsuite work...)

[r26061]

15 years agolibtool adjust to improve win32 support
Matthias Braun [Wed, 27 May 2009 08:12:25 +0000 (08:12 +0000)]
libtool adjust to improve win32 support

[r26057]

15 years agoremove firmnet and ycomp remote support (avoid unnecesary/complicated dependencies...
Matthias Braun [Wed, 27 May 2009 08:11:37 +0000 (08:11 +0000)]
remove firmnet and ycomp remote support (avoid unnecesary/complicated dependencies for something noone uses)

[r26056]

15 years agowe don't depend on libcore anymore
Matthias Braun [Wed, 20 May 2009 13:33:30 +0000 (13:33 +0000)]
we don't depend on libcore anymore

[r26012]

15 years ago- BugFix: add missing check for frame entities. This fixes testsuite/opt/20001212-1.c
Michael Beck [Tue, 19 May 2009 11:51:32 +0000 (11:51 +0000)]
- BugFix: add missing check for frame entities. This fixes testsuite/opt/20001212-1.c

[r26007]

15 years agoremove bogus assert
Matthias Braun [Tue, 19 May 2009 09:08:45 +0000 (09:08 +0000)]
remove bogus assert

[r26004]

15 years agofix my last commit
Matthias Braun [Sun, 17 May 2009 10:19:56 +0000 (10:19 +0000)]
fix my last commit

[r25998]

15 years agochange livense to LGPL
Matthias Braun [Sun, 17 May 2009 10:13:54 +0000 (10:13 +0000)]
change livense to LGPL

[r25997]

15 years ago- newer gcc warned me about errors in our strncat usage - this function is very
Matthias Braun [Sun, 17 May 2009 10:13:21 +0000 (10:13 +0000)]
- newer gcc warned me about errors in our strncat usage - this function is very
  unintuitive as it writes up to n+1 bytes, so you have to do:
   strncat(buf, X, sizeof(buf)-1);
- fixed a bunch of other warnings in release mode

[r25996]

15 years ago- more docu added
Michael Beck [Fri, 15 May 2009 23:52:56 +0000 (23:52 +0000)]
- more docu added

[r25986]

15 years ago- removed useless space
Michael Beck [Fri, 15 May 2009 23:52:29 +0000 (23:52 +0000)]
- removed useless space

[r25985]

15 years ago- make errors and warnings more understandable
Michael Beck [Fri, 15 May 2009 23:51:40 +0000 (23:51 +0000)]
- make errors and warnings more understandable

[r25984]

15 years agoimprove sched_info datastructure, saving space and making it more efficient
Matthias Braun [Fri, 15 May 2009 22:09:38 +0000 (22:09 +0000)]
improve sched_info datastructure, saving space and making it more efficient

[r25982]

15 years agoupdate filelist script
Matthias Braun [Fri, 15 May 2009 22:08:43 +0000 (22:08 +0000)]
update filelist script

[r25981]

15 years agoupdate configure, Makefile.am
Matthias Braun [Fri, 15 May 2009 22:08:34 +0000 (22:08 +0000)]
update configure, Makefile.am

[r25980]

15 years agoadd helper script for updating Makefile.am, update Makefile.am
Matthias Braun [Fri, 15 May 2009 11:59:42 +0000 (11:59 +0000)]
add helper script for updating Makefile.am, update Makefile.am

[r25972]

15 years agofix mode querying for mode_T div nodes
Matthias Braun [Fri, 15 May 2009 11:20:44 +0000 (11:20 +0000)]
fix mode querying for mode_T div nodes

[r25967]

15 years agogenerate a few more things automatically
Matthias Braun [Fri, 15 May 2009 08:53:39 +0000 (08:53 +0000)]
generate a few more things automatically

[r25965]

15 years agoNEWS udpate
Matthias Braun [Fri, 15 May 2009 08:53:30 +0000 (08:53 +0000)]
NEWS udpate

[r25964]

15 years agowhen inlining and return types of method-type/call-type don't match create a conv...
Matthias Braun [Thu, 14 May 2009 22:23:11 +0000 (22:23 +0000)]
when inlining and return types of method-type/call-type don't match create a conv (or give up)

[r25962]

15 years ago- fix r25941
Michael Beck [Thu, 14 May 2009 18:18:11 +0000 (18:18 +0000)]
- fix r25941

[r25956]

15 years agoFix compile errors.
Christoph Mallon [Thu, 14 May 2009 13:13:59 +0000 (13:13 +0000)]
Fix compile errors.

[r25950]

15 years agoeclipse C project is out of date and unmaintained
Matthias Braun [Thu, 14 May 2009 11:09:23 +0000 (11:09 +0000)]
eclipse C project is out of date and unmaintained

[r25945]

15 years agoadd some hacks that fixes register pressure faithfullness of Asm nodes in common...
Matthias Braun [Thu, 14 May 2009 11:04:26 +0000 (11:04 +0000)]
add some hacks that fixes register pressure faithfullness of Asm nodes in common cases (fixes asm_test6.c)

[r25944]

15 years ago- removed unused header attribute from node_entry
Michael Beck [Thu, 14 May 2009 09:20:17 +0000 (09:20 +0000)]
- removed unused header attribute from node_entry
- improved move_loads_out_of_loops() by calculating the avail set

[r25942]

15 years ago- cleaned up irp functions a bit
Michael Beck [Thu, 14 May 2009 09:17:29 +0000 (09:17 +0000)]
- cleaned up irp functions a bit

[r25941]

15 years agoalways set graph state to KEEP_MUX in lower_mode_b
Matthias Braun [Thu, 14 May 2009 08:07:40 +0000 (08:07 +0000)]
always set graph state to KEEP_MUX in lower_mode_b

[r25939]

15 years ago- Introduce the concept of the graph state bitset: This is a set of flags that indica...
Matthias Braun [Wed, 13 May 2009 11:44:51 +0000 (11:44 +0000)]
- Introduce the concept of the graph state bitset: This is a set of flags that indicate the current "state" of a graph.
  (Used so far to indicate wether muxes are lowered and should not be touched anymore and wether architecture dependent mul and div with constant implementations are used)
  We should use this to indicate dom/loop/... consistency in the fututure
- fixed a bug where lower_mode_b was creating a "set" instruction with the help of a Mux. (Maybe we should create a new Node for this and not use a 0/1 mux?)

[r25937]

15 years agoimprove comments, remove unnecessary test
Matthias Braun [Tue, 12 May 2009 13:54:05 +0000 (13:54 +0000)]
improve comments, remove unnecessary test

[r25931]