Michael Beck [Wed, 19 Oct 2005 09:45:33 +0000 (09:45 +0000)]
refactored ir_op_ops
[r6744]
Michael Beck [Wed, 19 Oct 2005 09:43:39 +0000 (09:43 +0000)]
more ir_op operations to public interface
[r6743]
Michael Beck [Wed, 19 Oct 2005 09:42:56 +0000 (09:42 +0000)]
refactored ir_op_ops
new public interface for new_ir_op()
[r6742]
Michael Beck [Wed, 19 Oct 2005 09:40:05 +0000 (09:40 +0000)]
used new firm_types.h
[r6741]
Michael Beck [Wed, 19 Oct 2005 09:39:20 +0000 (09:39 +0000)]
put all opaque firm types here
[r6740]
Michael Beck [Wed, 19 Oct 2005 09:38:39 +0000 (09:38 +0000)]
firm_types.h added
[r6739]
Michael Beck [Wed, 19 Oct 2005 09:37:56 +0000 (09:37 +0000)]
use new public interface to build new ir_op
[r6738]
Michael Beck [Wed, 19 Oct 2005 09:36:37 +0000 (09:36 +0000)]
always build the mulh op in init
[r6737]
Michael Beck [Wed, 19 Oct 2005 08:52:13 +0000 (08:52 +0000)]
fixed info1 output for ir_graphs
add debug info for ir_graphs
[r6735]
FIRM Projekt Account [Tue, 18 Oct 2005 16:50:46 +0000 (16:50 +0000)]
Optimization name is now printed instead of code number
[r6734]
Michael Beck [Tue, 18 Oct 2005 16:49:31 +0000 (16:49 +0000)]
add dbg_dead_code case
[r6733]
FIRM Projekt Account [Tue, 18 Oct 2005 16:49:02 +0000 (16:49 +0000)]
added dbgActionToString()
[r6732]
FIRM Projekt Account [Tue, 18 Oct 2005 15:25:00 +0000 (15:25 +0000)]
new optimizer detects more dead blocks earlier
[r6731]
Michael Beck [Tue, 18 Oct 2005 15:23:32 +0000 (15:23 +0000)]
doxygen docu fixed
[r6730]
Michael Beck [Tue, 18 Oct 2005 15:18:15 +0000 (15:18 +0000)]
doxygen docu fixed
typo fixed
[r6729]
Michael Beck [Tue, 18 Oct 2005 15:16:11 +0000 (15:16 +0000)]
moved dbg_action_2_str() to .c file
[r6728]
FIRM Projekt Account [Tue, 18 Oct 2005 14:52:43 +0000 (14:52 +0000)]
not implemented copy_irn() deleted
[r6727]
Michael Beck [Tue, 18 Oct 2005 13:31:00 +0000 (13:31 +0000)]
used the new IS_CDECL() and IS_STDCALL() macros
[r6723]
Michael Beck [Tue, 18 Oct 2005 13:30:12 +0000 (13:30 +0000)]
define new macros for the MS cdecl, stdcall calling conventions
[r6722]
Michael Beck [Tue, 18 Oct 2005 13:28:50 +0000 (13:28 +0000)]
Doxygen docu added
[r6721]
Michael Beck [Tue, 18 Oct 2005 12:11:32 +0000 (12:11 +0000)]
irg_cc_callee_clear_stk added, needed for perfect stdcall/cdecl/fastcall representation
[r6714]
Michael Beck [Tue, 18 Oct 2005 12:10:11 +0000 (12:10 +0000)]
Dump calling conventions for entities
add info1 for ir_graphs
[r6713]
Michael Beck [Mon, 17 Oct 2005 17:04:04 +0000 (17:04 +0000)]
added default calling convention
used new names
[r6712]
Michael Beck [Mon, 17 Oct 2005 17:02:58 +0000 (17:02 +0000)]
added calling conventions to entities
renamed init_entity() into firm_init_entity()
[r6711]
Michael Beck [Mon, 17 Oct 2005 17:01:48 +0000 (17:01 +0000)]
added colling conventions
renamed init_graph() into firm_init_graph()
[r6710]
Michael Beck [Mon, 17 Oct 2005 13:04:58 +0000 (13:04 +0000)]
typos fixed
[r6708]
Michael Beck [Mon, 17 Oct 2005 12:46:21 +0000 (12:46 +0000)]
fixed .enable/.disable, added .lower
[r6707]
Michael Beck [Wed, 12 Oct 2005 15:01:17 +0000 (15:01 +0000)]
BugFix: a var hides another
[r6695]
Michael Beck [Wed, 12 Oct 2005 14:34:34 +0000 (14:34 +0000)]
added visited flag to detect endless memory loops in unreachable code,
else the optimizer would fall into an endless loop...
[r6694]
Michael Beck [Wed, 12 Oct 2005 14:33:09 +0000 (14:33 +0000)]
CopyB verifyer added
[r6693]
Michael Beck [Wed, 12 Oct 2005 14:32:29 +0000 (14:32 +0000)]
optimizations for CopyB node added
call DBG_ macro if block gets dead
[r6692]
Michael Beck [Wed, 12 Oct 2005 14:31:33 +0000 (14:31 +0000)]
iro_CopyB added
[r6691]
Michael Beck [Wed, 12 Oct 2005 14:31:06 +0000 (14:31 +0000)]
op_CopyB added, op_Sub flags fixed
[r6690]
Michael Beck [Wed, 12 Oct 2005 14:30:19 +0000 (14:30 +0000)]
CopyB attributes added
[r6689]
Michael Beck [Wed, 12 Oct 2005 14:29:13 +0000 (14:29 +0000)]
added support functions for CopyB node
[r6688]
Michael Beck [Wed, 12 Oct 2005 14:25:44 +0000 (14:25 +0000)]
local_optimize() now kills unrteachable code if dominance info is available.
[r6687]
Michael Beck [Wed, 12 Oct 2005 14:24:32 +0000 (14:24 +0000)]
Added support code for CopyB node
[r6686]
Michael Beck [Wed, 12 Oct 2005 14:22:53 +0000 (14:22 +0000)]
CopyB node constructors added
[r6685]
Michael Beck [Wed, 12 Oct 2005 14:20:51 +0000 (14:20 +0000)]
added code to detect loops in unreachable code, these would cause
endless loops else :-(
[r6684]
Michael Beck [Wed, 12 Oct 2005 12:05:13 +0000 (12:05 +0000)]
added missing header
added better support for ia32/x86_64
[r6683]
Michael Beck [Wed, 12 Oct 2005 11:42:39 +0000 (11:42 +0000)]
debugger extension added
[r6682]
Michael Beck [Wed, 12 Oct 2005 11:26:56 +0000 (11:26 +0000)]
debugger extension added
[r6681]
Michael Beck [Wed, 12 Oct 2005 11:26:37 +0000 (11:26 +0000)]
a debugger extension for Firm
[r6680]
Michael Beck [Tue, 11 Oct 2005 15:21:36 +0000 (15:21 +0000)]
DBG_OPT_DEAD_BLOCK() macro uses now merge_pair
[r6679]
Michael Beck [Tue, 11 Oct 2005 15:20:59 +0000 (15:20 +0000)]
use INT_TO_PTR( macros for clean 64 bit compile
[r6678]
Michael Beck [Tue, 11 Oct 2005 15:03:47 +0000 (15:03 +0000)]
made is_address_taken() public
[r6677]
Michael Beck [Tue, 11 Oct 2005 09:36:16 +0000 (09:36 +0000)]
Added check_lifetime_of_locals().
Tail-recursion removement can only be done in it can be prove that
all lifetimes of locals can be ended before the recursion. We do that by simply
checking that there addresses are not stored. This sorryly
reduces the possibility of this optimization.
[r6676]
Michael Beck [Tue, 11 Oct 2005 09:09:47 +0000 (09:09 +0000)]
before called default_initialize_local_variable() set the block which must
contain the initialization code as default
[r6675]
Rubino Geiß [Mon, 10 Oct 2005 15:18:12 +0000 (15:18 +0000)]
typo
[r6674]
Rubino Geiß [Mon, 10 Oct 2005 15:16:27 +0000 (15:16 +0000)]
added missing pn_Div_max
[r6673]
Michael Beck [Mon, 10 Oct 2005 14:16:02 +0000 (14:16 +0000)]
BugFix: get the rigth block in equivalent_node_block()
Confirm: optimize two identical Confirms
gigo(): handles Unknowns
[r6671]
Gernot Veit Batz [Mon, 10 Oct 2005 13:42:30 +0000 (13:42 +0000)]
added two more hooks to the ir graph dumper
[r6668]
Gernot Veit Batz [Mon, 10 Oct 2005 13:41:40 +0000 (13:41 +0000)]
added missing edges_notify_edge() to set_irn_in()
[r6667]
Michael Beck [Mon, 10 Oct 2005 11:54:33 +0000 (11:54 +0000)]
Don't check nunber of Proj's for dead blocks
[r6666]
Michael Beck [Mon, 10 Oct 2005 11:07:56 +0000 (11:07 +0000)]
Fixed code placement: nodes in dead block are now moved
into live blocks ...
[r6665]
Michael Beck [Fri, 7 Oct 2005 15:56:00 +0000 (15:56 +0000)]
typos fixed
dumped dead blocks in orange
add attribute info to blocks
[r6664]
Michael Beck [Fri, 7 Oct 2005 13:23:05 +0000 (13:23 +0000)]
Check that binary Cond has two successors if outs are available
[r6663]
Michael Beck [Thu, 6 Oct 2005 12:02:33 +0000 (12:02 +0000)]
BugFix: the recalc_cnts obstack must reside in a graph entry, else
ALL data from all graphs are deleted!
[r6660]
Michael Beck [Thu, 6 Oct 2005 10:37:29 +0000 (10:37 +0000)]
Beyhan's fixes included
[r6659]
Michael Beck [Thu, 6 Oct 2005 10:28:04 +0000 (10:28 +0000)]
use get_irn_n(*, -1) instead od get_nodes_block() so the extbb info
is availabe even if the grph is floating (but then may be invalid)
[r6658]
Gernot Veit Batz [Wed, 5 Oct 2005 09:42:14 +0000 (09:42 +0000)]
added macro foreach_out_edges_safe(), which allows an iteration over a
nodes outgoing edges, which is safe against alteration of an edge while
iterating.
[r6656]
Michael Beck [Wed, 5 Oct 2005 09:29:27 +0000 (09:29 +0000)]
fix_backedges() can now cope with NULL backedge array
[r6655]
Michael Beck [Tue, 4 Oct 2005 15:50:45 +0000 (15:50 +0000)]
added configure stuff
[r6654]
Gernot Veit Batz [Fri, 23 Sep 2005 17:32:54 +0000 (17:32 +0000)]
Fixed a bug concerning sizes of edge
[r6650]
Daniel Grund [Tue, 20 Sep 2005 14:08:13 +0000 (14:08 +0000)]
removed gforce
[r6647]
Michael Beck [Tue, 20 Sep 2005 14:03:08 +0000 (14:03 +0000)]
force_run parameter added
now honors the additional entity/graph properties
[r6646]
Michael Beck [Mon, 19 Sep 2005 15:24:06 +0000 (15:24 +0000)]
removed old (non-functional) Not(Proj(Cmp)) and Eor(Proj(Cmp)) code
[r6645]
Michael Beck [Mon, 19 Sep 2005 15:22:34 +0000 (15:22 +0000)]
removed buggy firm_copy_node() and restorted old copy_node()
[r6644]
Michael Beck [Sat, 17 Sep 2005 14:21:09 +0000 (14:21 +0000)]
tarval_not() han now handle tarval_b_true and tarval_b_false
[r6638]
Michael Beck [Fri, 16 Sep 2005 14:05:10 +0000 (14:05 +0000)]
updated
[r6632]
Michael Beck [Thu, 15 Sep 2005 12:14:54 +0000 (12:14 +0000)]
added function for convertion jump prediction into human readable names
[r6626]
Michael Beck [Thu, 15 Sep 2005 12:14:23 +0000 (12:14 +0000)]
dump now jump prediction, Free place (stack/heap)
[r6625]
Michael Beck [Thu, 15 Sep 2005 11:03:15 +0000 (11:03 +0000)]
added a generic function pointer to an opcode
[r6624]
Michael Beck [Thu, 15 Sep 2005 10:01:28 +0000 (10:01 +0000)]
cond_jmp_predicate to Cond nodes added
[r6623]
Michael Beck [Thu, 15 Sep 2005 10:01:14 +0000 (10:01 +0000)]
cond_jmp_predicate type and access function for Cond nodes added
[r6622]
Michael Beck [Wed, 14 Sep 2005 14:43:26 +0000 (14:43 +0000)]
irg_malloc_function added
[r6618]
Michael Beck [Wed, 14 Sep 2005 11:11:34 +0000 (11:11 +0000)]
renamed is_forking_op() to is_irn_forking()
cleaned up the comments
fixed typos
[r6617]
Michael Beck [Wed, 14 Sep 2005 11:08:14 +0000 (11:08 +0000)]
is_irn_constlike() added
renamed is_forking_op() to is_irn_forking()
[r6616]
Michael Beck [Wed, 14 Sep 2005 10:17:24 +0000 (10:17 +0000)]
irop_flag_constlike flag and is_op_constlike() function added
[r6615]
Michael Beck [Mon, 12 Sep 2005 14:07:54 +0000 (14:07 +0000)]
Added extended block statistic
[r6610]
Michael Beck [Mon, 12 Sep 2005 14:06:30 +0000 (14:06 +0000)]
uses new get_extbb_leader() function
[r6609]
Michael Beck [Mon, 12 Sep 2005 14:05:47 +0000 (14:05 +0000)]
ensure that the leader is the first one in the extended block block list
[r6608]
Michael Beck [Thu, 8 Sep 2005 14:45:21 +0000 (14:45 +0000)]
BugFix: Unreachable Blocks are always leader blocks
[r6604]
Michael Beck [Thu, 8 Sep 2005 14:19:28 +0000 (14:19 +0000)]
get_extbb_leader() and get_extbb_node_nr() added
[r6603]
Michael Beck [Thu, 8 Sep 2005 12:06:32 +0000 (12:06 +0000)]
added additional graph properties, these can be set in the entity
for external allocated entities.
fixed some typos
added more comments
[r6602]
Michael Beck [Thu, 8 Sep 2005 12:04:44 +0000 (12:04 +0000)]
when doing CSE of Proj-Nodes, places Proj's into the right block, this
prevents SSA-violations in irg_verify()
tracks now dataflow and control flow changes to correctly invalidate
analysis info
[r6601]
Michael Beck [Thu, 8 Sep 2005 12:01:55 +0000 (12:01 +0000)]
additional graph properties added
[r6600]
Michael Beck [Thu, 8 Sep 2005 12:00:43 +0000 (12:00 +0000)]
dump additional graph properties for method entities
[r6599]
Michael Beck [Thu, 8 Sep 2005 09:59:37 +0000 (09:59 +0000)]
C99 construct removed
[r6598]
FIRM Projekt Account [Thu, 8 Sep 2005 08:08:43 +0000 (08:08 +0000)]
Make a typedef to generate JNI constants
[r6596]
FIRM Projekt Account [Thu, 8 Sep 2005 08:07:35 +0000 (08:07 +0000)]
renamed old IrgVrfy() into new IrgVerify()
[r6595]
Michael Beck [Wed, 7 Sep 2005 16:16:33 +0000 (16:16 +0000)]
Handle dead blocks hopefully right ...
[r6593]
Michael Beck [Wed, 7 Sep 2005 08:31:30 +0000 (08:31 +0000)]
moved get_irn_generic_attr() to public i/f
[r6587]
Michael Beck [Tue, 6 Sep 2005 11:56:26 +0000 (11:56 +0000)]
fixed SH's dominance checker, can now handle dead blocks
ir_vrfy() renamed to ir_verify() with new flag argument:
dominance checking can now be enforced
[r6579]
Michael Beck [Tue, 6 Sep 2005 08:04:25 +0000 (08:04 +0000)]
BugFix:
We cannot replace old Phi nodes with current one BEFORE we
have handled all Phi's in the current block, else we might
generate wrong references between Phi nodes of a block
clean up is_despensible: uses goto's now, but more readable
[r6578]
Michael Beck [Mon, 5 Sep 2005 09:41:24 +0000 (09:41 +0000)]
backported from irargs.c
[r6577]
Michael Beck [Fri, 2 Sep 2005 15:44:09 +0000 (15:44 +0000)]
removed SLOOOWWW call to is_in_irgs_obstack()
should only be needed for debugging
[r6576]
Michael Beck [Fri, 2 Sep 2005 13:56:10 +0000 (13:56 +0000)]
creates libfirm_xmalloc.a if DISABLE_LIBIBERTY is enabled
[r6573]
Michael Beck [Fri, 2 Sep 2005 12:31:25 +0000 (12:31 +0000)]
irtools.h removed from public header
[r6569]
Daniel Grund [Thu, 1 Sep 2005 15:35:34 +0000 (15:35 +0000)]
checked for dead blocks before getting dom depht.
[r6567]