libfirm
14 years agoSummary is not a doxygen tag
Sebastian Buchwald [Mon, 24 Aug 2009 14:32:39 +0000 (14:32 +0000)]
Summary is not a doxygen tag

[r26408]

14 years agoSummary is not a doxygen tag
Sebastian Buchwald [Mon, 24 Aug 2009 14:31:26 +0000 (14:31 +0000)]
Summary is not a doxygen tag

[r26407]

14 years ago- First version of optimistic splitting
Matthias Braun [Mon, 24 Aug 2009 14:18:03 +0000 (14:18 +0000)]
- First version of optimistic splitting
- Local rule to not propagate preferences on should_be_same for non-dying values
- Don't prefer phi-inputs for blocks which are not assigned yet

[r26406]

14 years agofix daemel spiller accessing flags of Proj nodes
Matthias Braun [Mon, 24 Aug 2009 14:16:25 +0000 (14:16 +0000)]
fix daemel spiller accessing flags of Proj nodes

[r26405]

14 years agotypo
Sebastian Buchwald [Mon, 24 Aug 2009 14:14:46 +0000 (14:14 +0000)]
typo

[r26404]

14 years agotypo
Sebastian Buchwald [Mon, 24 Aug 2009 14:03:39 +0000 (14:03 +0000)]
typo

[r26402]

14 years agotypo
Sebastian Buchwald [Mon, 24 Aug 2009 13:23:31 +0000 (13:23 +0000)]
typo

[r26401]

14 years ago- add missing prototype
Michael Beck [Sun, 23 Aug 2009 02:59:08 +0000 (02:59 +0000)]
- add missing prototype
- fixed pass number

[r26397]

14 years ago- fixed typo
Michael Beck [Sun, 23 Aug 2009 02:27:49 +0000 (02:27 +0000)]
- fixed typo

[r26396]

14 years ago- fixed pass manager
Michael Beck [Sun, 23 Aug 2009 01:59:23 +0000 (01:59 +0000)]
- fixed pass manager
- add more passes

[r26395]

14 years agoa first try to propagate phi preferences upwards
Matthias Braun [Thu, 20 Aug 2009 13:34:44 +0000 (13:34 +0000)]
a first try to propagate phi preferences upwards

[r26388]

14 years agoAdd passes for inlining, private methods.
Michael Beck [Thu, 20 Aug 2009 06:43:03 +0000 (06:43 +0000)]
Add passes for inlining, private methods.

[r26387]

14 years agoNext iteration for resolving warnings.
Christoph Mallon [Wed, 19 Aug 2009 08:48:15 +0000 (08:48 +0000)]
Next iteration for resolving warnings.

[r26385]

14 years agoRemove ununsed parameter.
Christoph Mallon [Wed, 19 Aug 2009 08:41:05 +0000 (08:41 +0000)]
Remove ununsed parameter.

[r26384]

14 years agoRemove the pointless function firm_init_hooks(). Its only purpose seems to be to...
Christoph Mallon [Wed, 19 Aug 2009 08:31:48 +0000 (08:31 +0000)]
Remove the pointless function firm_init_hooks(). Its only purpose seems to be to generate a warning on 64bit architectures.

[r26382]

14 years agoUndo r26380, another copy of the comment is still present where struct ir_prog is...
Christoph Mallon [Wed, 19 Aug 2009 08:22:51 +0000 (08:22 +0000)]
Undo r26380, another copy of the comment is still present where struct ir_prog is defined.

[r26381]

14 years agoRestore comment, which was lost in r26362.
Christoph Mallon [Wed, 19 Aug 2009 08:18:50 +0000 (08:18 +0000)]
Restore comment, which was lost in r26362.

[r26380]

14 years agoCorrect comments (indentation, typos).
Christoph Mallon [Wed, 19 Aug 2009 08:03:06 +0000 (08:03 +0000)]
Correct comments (indentation, typos).

[r26379]

14 years agoUse correct return type (void) for pass wrapper callbacks.
Christoph Mallon [Wed, 19 Aug 2009 08:02:02 +0000 (08:02 +0000)]
Use correct return type (void) for pass wrapper callbacks.

[r26378]

14 years agotypos
Sebastian Buchwald [Tue, 18 Aug 2009 13:58:48 +0000 (13:58 +0000)]
typos

[r26377]

14 years ago- add more pass constructors
Michael Beck [Mon, 17 Aug 2009 22:58:24 +0000 (22:58 +0000)]
- add more pass constructors

[r26376]

14 years ago- properties changed
Michael Beck [Mon, 17 Aug 2009 21:57:39 +0000 (21:57 +0000)]
- properties changed

[r26375]

14 years ago- moved pass constructors from irtools to irpass
Michael Beck [Mon, 17 Aug 2009 21:53:48 +0000 (21:53 +0000)]
- moved pass constructors from irtools to irpass
- add an irg_verify_pass()

[r26374]

14 years agobenewalloc: more special casing of unknowns as phi-inputs needed
Matthias Braun [Mon, 17 Aug 2009 08:23:02 +0000 (08:23 +0000)]
benewalloc: more special casing of unknowns as phi-inputs needed

[r26371]

14 years agobenewalloc: fix unknowns being used at phi inputs
Matthias Braun [Mon, 17 Aug 2009 08:17:54 +0000 (08:17 +0000)]
benewalloc: fix unknowns being used at phi inputs

[r26370]

14 years agobenewalloc: fix assert hitting when dying value was used at 2 inputs
Matthias Braun [Mon, 17 Aug 2009 08:11:04 +0000 (08:11 +0000)]
benewalloc: fix assert hitting when dying value was used at 2 inputs

[r26369]

14 years agogenerally rewire inputs before enforce_constraints, this fixes more bugs and makes...
Matthias Braun [Mon, 17 Aug 2009 08:06:08 +0000 (08:06 +0000)]
generally rewire inputs before enforce_constraints, this fixes more bugs and makes the fixes from last commit easier

[r26368]

14 years agofix a few errors and warnings in the new pass code; improve some comments
Matthias Braun [Mon, 17 Aug 2009 07:44:45 +0000 (07:44 +0000)]
fix a few errors and warnings in the new pass code; improve some comments

[r26367]

14 years ago- removed verify and dump parameters from passes
Michael Beck [Mon, 17 Aug 2009 00:19:59 +0000 (00:19 +0000)]
- removed verify and dump parameters from passes
- add more passes

[r26366]

14 years agobenewalloc: fix enforce_constraints sometimes looking at the original value instead...
Matthias Braun [Sun, 16 Aug 2009 22:23:59 +0000 (22:23 +0000)]
benewalloc: fix enforce_constraints sometimes looking at the original value instead of the current copy of a value

[r26365]

14 years agofix output constraints not always being respected
Matthias Braun [Sun, 16 Aug 2009 20:15:09 +0000 (20:15 +0000)]
fix output constraints not always being respected

[r26364]

14 years agocleanup and fix permutate_values (3-cycles and values being used 2 times with 1 being...
Matthias Braun [Sun, 16 Aug 2009 19:36:25 +0000 (19:36 +0000)]
cleanup and fix permutate_values (3-cycles and values being used 2 times with 1 being a fixpoint were broken)

[r26363]

14 years agofix double typedef of ir_prog
Matthias Braun [Sun, 16 Aug 2009 17:31:05 +0000 (17:31 +0000)]
fix double typedef of ir_prog

[r26362]

14 years ago- graph passes can be added to prog managers now
Michael Beck [Sun, 16 Aug 2009 13:19:09 +0000 (13:19 +0000)]
- graph passes can be added to prog managers now
- more passes implemented
- small fixes

[r26356]

14 years ago- add more passes
Michael Beck [Sun, 16 Aug 2009 03:48:44 +0000 (03:48 +0000)]
- add more passes

[r26351]

14 years ago- Put typical case of pass construction into irtools
Michael Beck [Sun, 16 Aug 2009 03:20:04 +0000 (03:20 +0000)]
- Put typical case of pass construction into irtools
- add more passes

[r26350]

14 years ago- removed C99 features
Michael Beck [Sun, 16 Aug 2009 02:06:00 +0000 (02:06 +0000)]
- removed C99 features
- typos fixed

[r26349]

14 years ago- add pass for optimize_graph_df()
Michael Beck [Sun, 16 Aug 2009 01:47:41 +0000 (01:47 +0000)]
- add pass for optimize_graph_df()

[r26348]

14 years ago- removed useless spaces
Michael Beck [Sun, 16 Aug 2009 01:34:39 +0000 (01:34 +0000)]
- removed useless spaces

[r26347]

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]