Matthias Braun [Mon, 11 Apr 2011 11:47:48 +0000 (13:47 +0200)]
add another out-edges hack to avoid finding dead code
Sebastian Buchwald [Tue, 12 Apr 2011 08:51:17 +0000 (10:51 +0200)]
Added missing proj nr.
Sebastian Buchwald [Mon, 11 Apr 2011 13:35:50 +0000 (15:35 +0200)]
Both memory projs are involved in the transformation.
This fixes opt/fehler183.c.
Sebastian Buchwald [Mon, 11 Apr 2011 09:08:15 +0000 (11:08 +0200)]
Fixed warning.
Sebastian Buchwald [Mon, 11 Apr 2011 09:10:51 +0000 (11:10 +0200)]
Fixed some whitespaces.
Andreas Zwinkau [Mon, 11 Apr 2011 08:56:38 +0000 (10:56 +0200)]
Simplify code
Michael Beck [Sat, 9 Apr 2011 01:04:25 +0000 (03:04 +0200)]
C99 features removed.
Michael Beck [Sat, 9 Apr 2011 00:59:05 +0000 (02:59 +0200)]
BugFix: fixed type name.
Andreas Zwinkau [Fri, 8 Apr 2011 14:21:07 +0000 (16:21 +0200)]
Remove superfluous asserts
Matthias Braun [Fri, 8 Apr 2011 13:34:21 +0000 (15:34 +0200)]
more aggressive node-killing to avoid dangling edges
Andreas Zwinkau [Fri, 8 Apr 2011 13:43:15 +0000 (15:43 +0200)]
Merge branch 'kaps-included' into master
Matthias Braun [Fri, 1 Apr 2011 08:17:03 +0000 (10:17 +0200)]
Another rewrite of prolog/epilog handling: Delay their creation until after register allocation
Andreas Zwinkau [Fri, 8 Apr 2011 12:44:11 +0000 (14:44 +0200)]
Remove ifdef FIRM_KAPS
Always make pbqp coloring available
Andreas Zwinkau [Fri, 8 Apr 2011 12:14:10 +0000 (14:14 +0200)]
Include kaps into build
Andreas Zwinkau [Fri, 8 Apr 2011 12:10:06 +0000 (14:10 +0200)]
merge kaps
Sebastian Buchwald [Tue, 22 Mar 2011 18:31:38 +0000 (19:31 +0100)]
Revived grgen dumper for TTC 2011.
Matthias Braun [Thu, 31 Mar 2011 17:47:52 +0000 (19:47 +0200)]
no conservative recalculation of everything in irlivechk
Matthias Braun [Tue, 5 Apr 2011 14:59:36 +0000 (16:59 +0200)]
all backends have decreasing stack
Matthias Braun [Thu, 31 Mar 2011 17:17:35 +0000 (19:17 +0200)]
change get_ignore_irn API to take irg instead of abi
Matthias Braun [Thu, 31 Mar 2011 11:40:12 +0000 (13:40 +0200)]
rename be_pos_XXX to n_be_XXX to be consistent with the architecture specific constants
Matthias Braun [Thu, 31 Mar 2011 07:57:30 +0000 (09:57 +0200)]
cleanup iredges API a bit
Matthias Braun [Wed, 30 Mar 2011 16:49:33 +0000 (18:49 +0200)]
identify bitfield types based on whether they have a base_type set (maybe should introduce a real type for bitfield types?)
Sebastian Buchwald [Thu, 17 Mar 2011 17:56:08 +0000 (18:56 +0100)]
Use a more scalable algorithm for SSA reconstruction.
The algorithm now processes a block at most once,
instead of |uses| times.
Sebastian Buchwald [Fri, 8 Apr 2011 09:03:17 +0000 (11:03 +0200)]
Revert "Prepared for diff."
This reverts commit
0a8187425d279eb16ba56f5f04465653a9dfb26a.
Sebastian Buchwald [Thu, 17 Mar 2011 17:56:08 +0000 (18:56 +0100)]
Prepared for diff.
Sebastian Buchwald [Wed, 9 Mar 2011 15:07:01 +0000 (16:07 +0100)]
Fixed some typos.
Christoph Mallon [Thu, 7 Apr 2011 11:43:00 +0000 (13:43 +0200)]
Remove stale ENUM_BITSET(pn_Cmp).
Michael Beck [Thu, 7 Apr 2011 07:28:36 +0000 (09:28 +0200)]
irg_verify() now runs on unpinned graphs without asserting.
Christoph Mallon [Wed, 6 Apr 2011 13:27:06 +0000 (15:27 +0200)]
Fix regression: Allow setting the current block to NULL.
Michael Beck [Sun, 3 Apr 2011 16:44:25 +0000 (18:44 +0200)]
Fixed tail recursion optimization.
- use get_r/set_r instead of get_/set_* functions, so we
can operate without current_ir_graph set
- set current_ir_graph, but only for debugging now
- fixed wrong usage of indexes for local SSA variables
- placed resorce checking at the right plaace
- removed #if 0'ed debug code and replace it by DB()
- fixed doxygen comments
Michael Beck [Sun, 3 Apr 2011 16:36:47 +0000 (18:36 +0200)]
Add assertions if set_cur_block() is tried for a block on a wrong irg.
Fixed typo.
Michael Beck [Sun, 3 Apr 2011 15:09:10 +0000 (17:09 +0200)]
C99 feature removed.
Matthias Braun [Wed, 30 Mar 2011 14:46:12 +0000 (16:46 +0200)]
Revert "merge gcse into place_code (a better solution would be having it always on until the backend scheduler)"
This reverts commit
bdddae273a9cd497dc79c2f90726482620d3c8d4.
Matthias Braun [Wed, 23 Mar 2011 13:20:34 +0000 (14:20 +0100)]
simplify Sel lowering code
Matthias Braun [Wed, 23 Mar 2011 13:19:33 +0000 (14:19 +0100)]
amend to tls_chagnes
Matthias Braun [Wed, 23 Mar 2011 13:01:42 +0000 (14:01 +0100)]
remove get_irg_tls() concept, simply use SymConst and let the backend figure it out
Matthias Braun [Thu, 17 Mar 2011 17:59:05 +0000 (18:59 +0100)]
remove the deprecated and unused construct of a value_res_base entities in method-types
Matthias Braun [Thu, 17 Mar 2011 15:30:47 +0000 (16:30 +0100)]
remove names from parameters of method_types - it is pure debug info and should already be contained in type_dbg_info if available
Matthias Braun [Thu, 17 Mar 2011 15:09:52 +0000 (16:09 +0100)]
remove pointless first_variadic_param attribute from method types
Matthias Braun [Thu, 17 Mar 2011 10:19:16 +0000 (11:19 +0100)]
rename Store_align/Load_align to XXX_unaligned and correctly put it into the spec file
Matthias Braun [Wed, 30 Mar 2011 12:48:42 +0000 (14:48 +0200)]
simplify opt_funccall interface
Matthias Braun [Wed, 30 Mar 2011 13:10:30 +0000 (15:10 +0200)]
merge gcse into place_code (a better solution would be having it always on until the backend scheduler)
Matthias Braun [Fri, 25 Mar 2011 16:31:51 +0000 (17:31 +0100)]
fix wrong usage of inverted vs negated condition codes
Matthias Braun [Fri, 25 Mar 2011 15:05:27 +0000 (16:05 +0100)]
fix ir_is_equality_cmp_0 returning true for signed_var > 0
Matthias Braun [Fri, 25 Mar 2011 15:05:07 +0000 (16:05 +0100)]
fix firm producing invalid code for return a > 0 with a being an int
Michael Beck [Thu, 24 Mar 2011 23:32:07 +0000 (00:32 +0100)]
Updated comment.
Michael Beck [Thu, 24 Mar 2011 23:30:05 +0000 (00:30 +0100)]
Fix typos in comments: s/wether/whether/ and related corrections.
Michael Beck [Thu, 24 Mar 2011 23:16:08 +0000 (00:16 +0100)]
C99 feature removed.
Michael Beck [Thu, 24 Mar 2011 23:01:28 +0000 (00:01 +0100)]
Use debug printer instead direct output, fix some size_t related warnings.
Matthias Braun [Thu, 24 Mar 2011 19:28:16 +0000 (20:28 +0100)]
fix and(cmp,cmp) optimisation rule, loosen verify to allow and/or/xor for reference modes
Matthias Braun [Thu, 24 Mar 2011 17:29:23 +0000 (18:29 +0100)]
implement some localopt rules for And(Cmp(a,0), Cmp(b,0))
Matthias Braun [Thu, 24 Mar 2011 16:48:24 +0000 (17:48 +0100)]
fix lower_d lowering Cmps too realy resulting in unnecessary 0/1 production
Matthias Braun [Tue, 22 Mar 2011 19:01:54 +0000 (20:01 +0100)]
pin prolog/epilog nodes
Matthias Braun [Tue, 22 Mar 2011 19:00:50 +0000 (20:00 +0100)]
add exc_attr to all be_nodes so you can dynamically pin/unpin them
Christoph Mallon [Thu, 17 Mar 2011 13:01:38 +0000 (14:01 +0100)]
Move macro constant into the only file, which uses it.
Christoph Mallon [Thu, 17 Mar 2011 13:01:05 +0000 (14:01 +0100)]
Remove dead assignment und subsequently unused macro constant.
Christoph Mallon [Thu, 17 Mar 2011 13:00:12 +0000 (14:00 +0100)]
s/keeped/kept/.
Matthias Braun [Thu, 17 Mar 2011 13:34:38 +0000 (14:34 +0100)]
ia32: get_eip and fpu_trunc_mode are not always NULL before transformation
Michael Beck [Thu, 17 Mar 2011 12:20:01 +0000 (13:20 +0100)]
Removed unused variables.
Matthias Braun [Wed, 16 Mar 2011 17:40:35 +0000 (18:40 +0100)]
load-after-load and load-after-store with different mode was implemented in a little-endian way, disable on big-endian (until we have a real implementation)
Matthias Braun [Wed, 16 Mar 2011 17:28:53 +0000 (18:28 +0100)]
remove unused cacheopt code
Matthias Braun [Wed, 16 Mar 2011 09:23:51 +0000 (10:23 +0100)]
sparc: abort when encountering (non-lowered) 64bit code
Matthias Braun [Tue, 15 Mar 2011 16:03:15 +0000 (17:03 +0100)]
emit global asms in all backends
Matthias Braun [Tue, 15 Mar 2011 15:58:53 +0000 (16:58 +0100)]
bestabs: move stabs but not backend specific text0: code into stabs
Matthias Braun [Tue, 15 Mar 2011 15:52:26 +0000 (16:52 +0100)]
bedbgout: improve function names, ensure that the end of compilation unit thing is actually called
Matthias Braun [Mon, 14 Mar 2011 17:56:59 +0000 (18:56 +0100)]
fix bug in switch lowerer (introduced when Cmp changed)
Matthias Braun [Mon, 7 Mar 2011 19:04:07 +0000 (20:04 +0100)]
sparc: to avoid trouble, move all nodes before sparc_Restore
Matthias Braun [Mon, 7 Mar 2011 19:01:17 +0000 (20:01 +0100)]
avoid verifier warnings in sparc by explicitely modeling RestoreZero using the frame pointer
Matthias Braun [Mon, 7 Mar 2011 13:47:07 +0000 (14:47 +0100)]
bestack: remove unnecessary keep edges from IncSP nodes
Matthias Braun [Mon, 7 Mar 2011 13:46:34 +0000 (14:46 +0100)]
bestack: add support for nodes resetting the stack
Matthias Braun [Wed, 16 Mar 2011 09:12:38 +0000 (10:12 +0100)]
fix sparc_finish missing Ldf/Stf
Eduard Frank [Tue, 15 Mar 2011 14:46:33 +0000 (15:46 +0100)]
methods need no offset
Matthias Braun [Mon, 14 Mar 2011 15:15:00 +0000 (16:15 +0100)]
don't emit .space with 0 bytes
Matthias Braun [Tue, 8 Mar 2011 12:38:11 +0000 (13:38 +0100)]
betranshlp: avoid current_ir_graph, fix missing node_elimination hook
Matthias Braun [Mon, 7 Mar 2011 19:05:11 +0000 (20:05 +0100)]
allocate spillslots at beginning/end of stackframe depending on omit_fp mode
Matthias Braun [Mon, 7 Mar 2011 18:56:37 +0000 (19:56 +0100)]
remove old spillslot coalescing API
Matthias Braun [Mon, 7 Mar 2011 19:02:13 +0000 (20:02 +0100)]
betranshlp: cleanup, pretransform end node so keep_alive works in transformers
Matthias Braun [Mon, 7 Mar 2011 15:46:37 +0000 (16:46 +0100)]
dumper now dumps all generic backend flags
Matthias Braun [Mon, 7 Mar 2011 13:15:00 +0000 (14:15 +0100)]
fix missing keep walker missing some cases
Matthias Braun [Mon, 7 Mar 2011 12:47:04 +0000 (13:47 +0100)]
remove more barrier handling code
Matthias Braun [Tue, 8 Mar 2011 16:00:56 +0000 (17:00 +0100)]
ia32: add some asserts for the pre_transform step
Matthias Braun [Tue, 8 Mar 2011 14:58:08 +0000 (15:58 +0100)]
replace and kill survive_dce stuff
Andreas Zwinkau [Wed, 16 Mar 2011 14:19:31 +0000 (15:19 +0100)]
Adding some comments to ifconv.c
Andreas Zwinkau [Wed, 16 Mar 2011 12:30:36 +0000 (13:30 +0100)]
Adapt documentation to implementation
Depending on definitions there is 0,1, or many immediate postdominators
in an endless loop. Our implementation also walks Keep edges, so there
is 1 postdominator.
Christoph Mallon [Wed, 16 Mar 2011 14:40:01 +0000 (15:40 +0100)]
Handle if-conversion within endless loops properly by stopping the recursion when reaching the block with the conditional jump.
Andreas Zwinkau [Tue, 15 Mar 2011 15:58:45 +0000 (16:58 +0100)]
Skip self-dependencies in ifconv
Fixes C/unkept_loop.c and opt/fehler159.c
Andreas Zwinkau [Tue, 15 Mar 2011 15:39:55 +0000 (16:39 +0100)]
typo
Michael Beck [Tue, 15 Mar 2011 02:56:15 +0000 (03:56 +0100)]
Make remove_compound_member() an official API method.
Needed by edgjfe.
Michael Beck [Tue, 15 Mar 2011 02:55:28 +0000 (03:55 +0100)]
Improved
21ff67fb03f6a597f78ea76b77af206d8ad17e1a.
Make an if instead of a #if 0 on "broken" code and add an comment
that explains why the non-wroken code is not used now.
Michael Beck [Tue, 15 Mar 2011 02:53:20 +0000 (03:53 +0100)]
Handle unoptimized end block smoothly.
Allow Bad predecessors of the end block. These are typically artifacts
of non-optimized control flow.
Julian Oppermann [Mon, 14 Mar 2011 14:56:00 +0000 (15:56 +0100)]
Fix polymorphic entity lookup in case method entities are not duplicated in every subclass.
Julian Oppermann [Mon, 14 Mar 2011 13:35:32 +0000 (14:35 +0100)]
Disabled broken check on the inheritance representation.
Michael Beck [Fri, 11 Mar 2011 22:03:12 +0000 (23:03 +0100)]
fixed size_t printing
Christoph Mallon [Wed, 9 Mar 2011 14:17:15 +0000 (15:17 +0100)]
Fix typos in comments: s/it's/its/ and related corrections.
Sebastian Buchwald [Wed, 9 Mar 2011 09:53:00 +0000 (10:53 +0100)]
Fixed compile error in optimize build.
Sebastian Buchwald [Wed, 9 Mar 2011 09:42:44 +0000 (10:42 +0100)]
Fixed some typos.
Michael Beck [Tue, 8 Mar 2011 23:49:31 +0000 (00:49 +0100)]
C99 feature removed.
Matthias Braun [Tue, 8 Mar 2011 11:53:12 +0000 (12:53 +0100)]
fix bestate code not respecting prolog/epilog
Matthias Braun [Mon, 7 Mar 2011 11:51:34 +0000 (12:51 +0100)]
remove some more code mentioning the Barrier
Michael Beck [Sun, 6 Mar 2011 00:34:36 +0000 (01:34 +0100)]
Fixed size_t related warnings.