libfirm
17 years agoAllow the Bad node to be set in set_store(). This is neccessary, because Bad might...
Michael Beck [Tue, 21 Nov 2006 14:21:52 +0000 (14:21 +0000)]
Allow the Bad node to be set in set_store(). This is neccessary, because Bad might happen as a result of optimization.

[r8410]

17 years agofixed CRLF
Christian Würdig [Sun, 19 Nov 2006 16:18:14 +0000 (16:18 +0000)]
fixed CRLF

[r8404]

17 years agoadded firm_ycomp header include
Christian Würdig [Fri, 17 Nov 2006 15:51:30 +0000 (15:51 +0000)]
added firm_ycomp header include

[r8400]

17 years agomoved ycomp debugger extension init to edg frontend
Christian Würdig [Fri, 17 Nov 2006 15:51:15 +0000 (15:51 +0000)]
moved ycomp debugger extension init to edg frontend

[r8399]

17 years agoremoved debug output
Christian Würdig [Fri, 17 Nov 2006 15:50:31 +0000 (15:50 +0000)]
removed debug output

[r8398]

17 years agofixed set_irn_n hook
Christian Würdig [Fri, 17 Nov 2006 15:18:31 +0000 (15:18 +0000)]
fixed set_irn_n hook

[r8396]

17 years agoadded ir/net directory
Christian Würdig [Fri, 17 Nov 2006 12:53:54 +0000 (12:53 +0000)]
added ir/net directory
added firm_ycomp debugger extension

[r8391]

17 years agoadded sta backend
Christian Würdig [Fri, 17 Nov 2006 12:53:12 +0000 (12:53 +0000)]
added sta backend
added firm_ycomp debugger extension
added ir/net directory

[r8390]

17 years agoadded firm_ycomp debugger extension
Christian Würdig [Fri, 17 Nov 2006 12:51:24 +0000 (12:51 +0000)]
added firm_ycomp debugger extension

[r8389]

17 years agoadded ir/net directory
Christian Würdig [Fri, 17 Nov 2006 12:50:24 +0000 (12:50 +0000)]
added ir/net directory

[r8388]

17 years agoadded firm_ycomp
Christian Würdig [Fri, 17 Nov 2006 12:49:13 +0000 (12:49 +0000)]
added firm_ycomp
added ir/net to includes

[r8387]

17 years agoinitial checkin of firm ycomp debugger
Christian Würdig [Fri, 17 Nov 2006 12:48:37 +0000 (12:48 +0000)]
initial checkin of firm ycomp debugger

[r8386]

17 years agoinitial checkin of network communication
Christian Würdig [Fri, 17 Nov 2006 12:48:03 +0000 (12:48 +0000)]
initial checkin of network communication

[r8385]

17 years agowarning fix
Matthias Braun [Fri, 17 Nov 2006 12:12:23 +0000 (12:12 +0000)]
warning fix

[r8384]

17 years agoCheck for division by zero before convert a division operation
Michael Beck [Thu, 16 Nov 2006 15:53:30 +0000 (15:53 +0000)]
Check for division by zero before convert a division operation

[r8382]

17 years agoadded missing function return type
Christian Würdig [Wed, 15 Nov 2006 12:14:48 +0000 (12:14 +0000)]
added missing function return type

[r8381]

17 years agoUse is_Bad() where appropriate
Michael Beck [Mon, 13 Nov 2006 14:16:53 +0000 (14:16 +0000)]
Use is_Bad() where appropriate

[r8377]

17 years agodump node index in label
Christian Würdig [Thu, 2 Nov 2006 09:30:50 +0000 (09:30 +0000)]
dump node index in label

[r8371]

17 years agoadd missing is_Jmp()
Michael Beck [Wed, 25 Oct 2006 16:04:34 +0000 (16:04 +0000)]
add missing is_Jmp()
add is_Raise()
skip_Proj() is not const anymore (can skip Id nodes)

[r8370]

17 years agoadded additional walker following depedency edges
Christian Würdig [Wed, 25 Oct 2006 09:38:57 +0000 (09:38 +0000)]
added additional walker following depedency edges

[r8368]

17 years agoinstall condeval.h
Christian Würdig [Tue, 24 Oct 2006 12:39:47 +0000 (12:39 +0000)]
install condeval.h

[r8367]

17 years agodefine WITH_JVM
Christian Würdig [Tue, 24 Oct 2006 12:39:30 +0000 (12:39 +0000)]
define WITH_JVM

[r8366]

17 years agoadded files and additional generator script to project
Christian Würdig [Tue, 24 Oct 2006 12:36:07 +0000 (12:36 +0000)]
added files and additional generator script to project

[r8365]

17 years agoadded function reinit all irn data belonging to a certain block
Christian Würdig [Tue, 24 Oct 2006 12:14:21 +0000 (12:14 +0000)]
added function reinit all irn data belonging to a certain block
made reinit_single_irn_data INLINE

[r8364]

17 years agoadded is_NoMem function
Christian Würdig [Tue, 24 Oct 2006 12:13:48 +0000 (12:13 +0000)]
added is_NoMem function

[r8363]

17 years agosign_extend() did NOT expect all upper bits cleared but clear it
Michael Beck [Wed, 18 Oct 2006 14:42:38 +0000 (14:42 +0000)]
sign_extend() did NOT expect all upper bits cleared but clear it
sign_extend does zero extension for unsigned integer modes

[r8359]

17 years agochanged comment
Christian Würdig [Wed, 18 Oct 2006 09:20:06 +0000 (09:20 +0000)]
changed comment

[r8358]

17 years agoChange the if conversion backend hook
Christoph Mallon [Wed, 18 Oct 2006 09:06:27 +0000 (09:06 +0000)]
Change the if conversion backend hook

[r8357]

17 years agofixed src dir
Christian Würdig [Tue, 17 Oct 2006 15:46:21 +0000 (15:46 +0000)]
fixed src dir

[r8355]

17 years agoonly create Psi if allowed by backend
Christian Würdig [Tue, 17 Oct 2006 15:46:12 +0000 (15:46 +0000)]
only create Psi if allowed by backend

[r8354]

17 years agoadded some comments
Christian Würdig [Tue, 17 Oct 2006 15:45:58 +0000 (15:45 +0000)]
added some comments

[r8353]

17 years agoFixed more problems due to hidden conversion in Store/Load:
Michael Beck [Tue, 17 Oct 2006 12:15:37 +0000 (12:15 +0000)]
Fixed more problems due to hidden conversion in Store/Load:
 - allow only hidden conversion if the size and the mode sort is equal
   and two-complements arithmetic is used: practically this allows only
   signed/unsigned conversion
 - all other conversions (which are reinterpret cast) are forbidden yet

[r8352]

17 years agodo not place projs late
Christian Würdig [Tue, 17 Oct 2006 09:02:44 +0000 (09:02 +0000)]
do not place projs late

[r8351]

17 years agoDo not convert Sub(P, P) into a simple Minus ...
Michael Beck [Mon, 16 Oct 2006 11:50:06 +0000 (11:50 +0000)]
Do not convert Sub(P, P) into a simple Minus ...

[r8350]

17 years agoHandle a bad case: Load nodes can contain a hidden type conversion, handle that ...
Michael Beck [Mon, 16 Oct 2006 11:38:11 +0000 (11:38 +0000)]
Handle a bad case: Load nodes can contain a hidden type conversion, handle that ...

[r8349]

17 years agoused is_final_ent() instead of *_n_overwrites == 0
Michael Beck [Mon, 16 Oct 2006 11:01:38 +0000 (11:01 +0000)]
used is_final_ent() instead of *_n_overwrites == 0

[r8348]

17 years agoadded functions and macro to iterate over all node in the phase, having some data...
Christian Würdig [Fri, 13 Oct 2006 08:01:38 +0000 (08:01 +0000)]
added functions and macro to iterate over all node in the phase, having some data assigned

[r8345]

17 years agooptimize graphs that got calls inlined
Michael Beck [Thu, 12 Oct 2006 21:22:57 +0000 (21:22 +0000)]
optimize graphs that got calls inlined

[r8344]

17 years agoset current_ir_graph
Michael Beck [Thu, 12 Oct 2006 21:19:26 +0000 (21:19 +0000)]
set current_ir_graph

[r8343]

17 years agowhen doing cf_opt, automatically optimize Blocks
Michael Beck [Thu, 12 Oct 2006 21:18:35 +0000 (21:18 +0000)]
when doing cf_opt, automatically optimize Blocks
some code cleanup

[r8342]

17 years agoresolve_ent_polymorphy() now can handle non-flat inheritance again ...
Michael Beck [Thu, 12 Oct 2006 09:24:47 +0000 (09:24 +0000)]
resolve_ent_polymorphy() now can handle non-flat inheritance again ...

[r8340]

17 years agoreport removed cycles
Michael Beck [Wed, 11 Oct 2006 11:42:25 +0000 (11:42 +0000)]
report removed cycles

[r8338]

17 years agomoved -dw dump to edg/firm_opt.c
Christian Würdig [Wed, 11 Oct 2006 07:42:46 +0000 (07:42 +0000)]
moved -dw dump to edg/firm_opt.c

[r8336]

17 years agoFixed boolean value of Proj(Cmp) againm, old version did not work as expected ...
Michael Beck [Tue, 10 Oct 2006 10:15:46 +0000 (10:15 +0000)]
Fixed boolean value of Proj(Cmp) againm, old version did not work as expected ...

[r8332]

17 years agoNew inliner:
Michael Beck [Tue, 10 Oct 2006 09:58:20 +0000 (09:58 +0000)]
New inliner:
 - use lists instead of sets
 - correctly handle multipli inline (fixed the "nodes are on wrong graph" problem)
 - BugFix: correctly detect arg_based nodes
 - can ignore runtime functions in leaf count

[r8331]

17 years agoBugfix: - lower_Proj is also called for call-result- or function-param-projs
Christian Würdig [Tue, 10 Oct 2006 08:48:13 +0000 (08:48 +0000)]
Bugfix: - lower_Proj is also called for call-result- or function-param-projs

[r8330]

17 years agouse the final flag to remove polymorphic calls
Michael Beck [Mon, 9 Oct 2006 23:49:58 +0000 (23:49 +0000)]
use the final flag to remove polymorphic calls

[r8327]

17 years agoAdd code to remove useless Phi cycles using the osr framework ...
Michael Beck [Mon, 9 Oct 2006 23:48:11 +0000 (23:48 +0000)]
Add code to remove useless Phi cycles using the osr framework ...

[r8326]

17 years agoSet the final flag for the global type.
Michael Beck [Mon, 9 Oct 2006 16:24:25 +0000 (16:24 +0000)]
Set the final flag for the global type.

[r8325]

17 years ago- Lower Minus ops directly instead of using an intrinsic call
Michael Beck [Mon, 9 Oct 2006 16:20:37 +0000 (16:20 +0000)]
- Lower Minus ops directly instead of using an intrinsic call
- Fixed Cond nodes lowering: =   must be removed from comparasion of high parts
- Add support for Psi nodes

[r8324]

17 years agodirty hack to make execfreqs work with endless apps
Matthias Braun [Mon, 9 Oct 2006 12:07:59 +0000 (12:07 +0000)]
dirty hack to make execfreqs work with endless apps

[r8323]

17 years agoadded is_div, is_mod and is_DivMod functions
Christian Würdig [Mon, 9 Oct 2006 08:57:48 +0000 (08:57 +0000)]
added is_div, is_mod and is_DivMod functions

[r8322]

17 years agowhen checking Bound nodes, ignore ones which a Bad predecessor
Michael Beck [Sun, 8 Oct 2006 18:01:32 +0000 (18:01 +0000)]
when checking Bound nodes, ignore ones which a Bad predecessor

[r8320]

17 years agoMade frame types final classes.
Michael Beck [Thu, 5 Oct 2006 13:41:16 +0000 (13:41 +0000)]
Made frame types final classes.

[r8317]

17 years agofirm_init_options() is now a separate function that reads the firm.ini and might...
Michael Beck [Thu, 5 Oct 2006 13:08:13 +0000 (13:08 +0000)]
firm_init_options() is now a separate function that reads the firm.ini and might parse command line parameters.
This is NOT anymore done in init_firm()

[r8315]

17 years agoAdd the final property to entities
Michael Beck [Mon, 2 Oct 2006 08:14:29 +0000 (08:14 +0000)]
Add the final property to entities

[r8313]

17 years agoset the global type and tls type flags on the globat/tls type
Michael Beck [Fri, 29 Sep 2006 19:00:12 +0000 (19:00 +0000)]
set the global type and tls type flags on the globat/tls type

[r8312]

17 years agoirop_flag_start_block flag added
Michael Beck [Fri, 29 Sep 2006 18:57:27 +0000 (18:57 +0000)]
irop_flag_start_block flag added

[r8311]

17 years agois_irn_start_block_placed() added\nconst added to skip_Proj()
Michael Beck [Fri, 29 Sep 2006 18:56:12 +0000 (18:56 +0000)]
is_irn_start_block_placed() added\nconst added to skip_Proj()

[r8310]

17 years agoadded numbers for the base/upper types
Michael Beck [Fri, 29 Sep 2006 18:52:23 +0000 (18:52 +0000)]
added numbers for the base/upper types

[r8309]

17 years agoBugFix:
Michael Beck [Thu, 28 Sep 2006 22:33:49 +0000 (22:33 +0000)]
BugFix:
 - inlining erronously could not inline functions containing a Proj(x, 6) includes
   functions with more than 5 parameters and <> operator ...

[r8308]

17 years agoImproved doxygen docu
Michael Beck [Thu, 28 Sep 2006 22:30:38 +0000 (22:30 +0000)]
Improved doxygen docu

[r8307]

17 years agoAdd shortcut to speed up gc_irgs()
Michael Beck [Thu, 28 Sep 2006 22:29:39 +0000 (22:29 +0000)]
Add shortcut to speed up gc_irgs()

[r8306]

17 years agorenamed exec_freq_t to ir_exec_freq
Michael Beck [Wed, 27 Sep 2006 23:27:01 +0000 (23:27 +0000)]
renamed exec_freq_t to ir_exec_freq

[r8303]

17 years agorestructured to allow easier debug
Michael Beck [Wed, 27 Sep 2006 23:25:48 +0000 (23:25 +0000)]
restructured to allow easier debug

[r8302]

17 years agoAdd ir_*_ptr types.
Michael Beck [Wed, 27 Sep 2006 23:24:10 +0000 (23:24 +0000)]
Add ir_*_ptr types.
renamed exec_freq_t to ir_exec_freq
removed old ir_block_edge_t type

[r8301]

17 years agoadded function to remove a keepalive edge
Christian Würdig [Tue, 26 Sep 2006 14:57:59 +0000 (14:57 +0000)]
added function to remove a keepalive edge

[r8298]

17 years agofix broken remove_critical_cf
Matthias Braun [Tue, 26 Sep 2006 12:56:57 +0000 (12:56 +0000)]
fix broken remove_critical_cf

[r8296]

17 years agoFixed remove_critical_cf_edges():
Michael Beck [Tue, 26 Sep 2006 11:29:13 +0000 (11:29 +0000)]
Fixed remove_critical_cf_edges():
 - use irg_block_walk_graph() to speed up
 - build block only at critical edges: curretn block has more than 1 predecessor
  and the predecessor is a forking op
 - ignore ALL exception edges

[r8294]

17 years agochanged api
Christian Würdig [Mon, 25 Sep 2006 11:29:15 +0000 (11:29 +0000)]
changed api

[r8292]

17 years agoadded is_Start function
Christian Würdig [Thu, 21 Sep 2006 13:41:08 +0000 (13:41 +0000)]
added is_Start function

[r8291]

17 years agoadded additional parameter and assert to tmp dom info walker, to check valid list...
Christian Würdig [Thu, 21 Sep 2006 12:14:38 +0000 (12:14 +0000)]
added additional parameter and assert to tmp dom info walker, to check valid list access

[r8288]

17 years agowarning fix
Matthias Braun [Wed, 20 Sep 2006 15:23:45 +0000 (15:23 +0000)]
warning fix

[r8286]

17 years agoadded get_opt_closed_world() where appropriate
Michael Beck [Wed, 20 Sep 2006 15:22:22 +0000 (15:22 +0000)]
added get_opt_closed_world() where appropriate

[r8285]

17 years agoadded get_opt_closed_world() where appropriate
Michael Beck [Wed, 20 Sep 2006 15:19:58 +0000 (15:19 +0000)]
added get_opt_closed_world() where appropriate
added callback to detect Object allocation

[r8284]

17 years agoget_entity_repr_class() added, needed to get a class from a type info entity
Michael Beck [Wed, 20 Sep 2006 15:18:38 +0000 (15:18 +0000)]
get_entity_repr_class() added, needed to get a class from a type info entity
mtp_property_runtime added

[r8283]

17 years agoadded phase reinit data per irn
Christian Würdig [Wed, 20 Sep 2006 15:02:21 +0000 (15:02 +0000)]
added phase reinit data per irn

[r8282]

17 years agoadded weighted bipartite matching with hungarian method
Christian Würdig [Wed, 20 Sep 2006 15:00:55 +0000 (15:00 +0000)]
added weighted bipartite matching with hungarian method

[r8281]

17 years agoadded block recomputation
Christian Würdig [Wed, 20 Sep 2006 15:00:31 +0000 (15:00 +0000)]
added block recomputation
removed sink list

[r8280]

17 years agochanged solve function, return now 0 or negative on number, cost are pointer param
Christian Würdig [Wed, 20 Sep 2006 14:59:21 +0000 (14:59 +0000)]
changed solve function, return now 0 or negative on number, cost are pointer param

[r8279]

17 years agoextended dumper
Christian Würdig [Wed, 20 Sep 2006 14:58:43 +0000 (14:58 +0000)]
extended dumper

[r8278]

17 years agoFixed the type of the visit number
Michael Beck [Sun, 17 Sep 2006 21:12:39 +0000 (21:12 +0000)]
Fixed the type of the visit number

[r8265]

17 years agomake the comment more useful
Michael Beck [Sun, 17 Sep 2006 21:11:31 +0000 (21:11 +0000)]
make the comment more useful

[r8264]

17 years agoAdded support for SymConst(ofs_ent)
Michael Beck [Sun, 17 Sep 2006 21:09:37 +0000 (21:09 +0000)]
Added support for SymConst(ofs_ent)

[r8263]

17 years agoSymConst(ofs_ent) added to represent the offset of an entity.
Michael Beck [Sun, 17 Sep 2006 21:07:48 +0000 (21:07 +0000)]
SymConst(ofs_ent) added to represent the offset of an entity.
fixed SymConst handling

[r8262]

17 years agoSymConst(ofs_ent) added to represent the offset of an entity.
Michael Beck [Sun, 17 Sep 2006 21:05:59 +0000 (21:05 +0000)]
SymConst(ofs_ent) added to represent the offset of an entity.

[r8261]

17 years agoRemoved some depencies from current_ir_graph
Michael Beck [Fri, 15 Sep 2006 19:39:21 +0000 (19:39 +0000)]
Removed some depencies from current_ir_graph

[r8260]

17 years agoremoved some redundant assertions
Michael Beck [Fri, 15 Sep 2006 19:31:34 +0000 (19:31 +0000)]
removed some redundant assertions
speed up add_compound_ent_value()

[r8259]

17 years agoAdd a performance warning to the add_compound_ent_value() funtion
Michael Beck [Fri, 15 Sep 2006 19:28:45 +0000 (19:28 +0000)]
Add a performance warning to the  add_compound_ent_value() funtion

[r8258]

17 years agoadd docu and prototype for find_value()
Michael Beck [Fri, 15 Sep 2006 08:05:34 +0000 (08:05 +0000)]
add docu and prototype for find_value()
remove some depencies from current_ir_graph

[r8257]

17 years agorename fucntion due to a name clash
Michael Beck [Fri, 15 Sep 2006 08:04:16 +0000 (08:04 +0000)]
rename fucntion due to a name clash

[r8256]

17 years agorenamed function due to a name clash
Michael Beck [Fri, 15 Sep 2006 08:02:56 +0000 (08:02 +0000)]
renamed function due to a name clash

[r8255]

17 years agoBugFix:
Michael Beck [Fri, 15 Sep 2006 07:41:30 +0000 (07:41 +0000)]
BugFix:
 - current_ir_graph must be set because of out walker use
 - ignore only Muls in x86 mode

[r8254]

17 years agoBugFix:
Michael Beck [Thu, 14 Sep 2006 19:11:11 +0000 (19:11 +0000)]
BugFix:
 - post-dominance did not restore current_ir_graph, but set local var wrong

[r8253]

17 years agocondeval can evaluate phis on phis on constants now
Matthias Braun [Thu, 14 Sep 2006 16:37:59 +0000 (16:37 +0000)]
condeval can evaluate phis on phis on constants now

[r8252]

17 years agooptimize_graph_df():
Michael Beck [Thu, 14 Sep 2006 15:31:51 +0000 (15:31 +0000)]
optimize_graph_df():
 - when a mode_T node is enqueued, enqueue it's Projs. This
   is needed because most optimizations run on the Proj

[r8251]

17 years agowarning fix
Matthias Braun [Thu, 14 Sep 2006 08:26:39 +0000 (08:26 +0000)]
warning fix

[r8249]

17 years agoforgot this
Matthias Braun [Wed, 13 Sep 2006 16:31:32 +0000 (16:31 +0000)]
forgot this

[r8248]

17 years agocondeval.h added
Michael Beck [Wed, 13 Sep 2006 14:40:50 +0000 (14:40 +0000)]
condeval.h added

[r8245]

17 years agoadded find_value and has_value functions
Christian Würdig [Wed, 13 Sep 2006 14:17:53 +0000 (14:17 +0000)]
added find_value and has_value functions

[r8244]