libfirm
18 years agoRenamed attribute names to more understandable names.
Michael Beck [Sun, 2 Jul 2006 16:24:26 +0000 (16:24 +0000)]
Renamed attribute names to more understandable names.
Add floating point model to ir_graph.
Make fp optimization dependent on the fp model.

[r7983]

18 years agoAdd strict flag to Conv attributes alloweing to mark those Conv's
Michael Beck [Sun, 2 Jul 2006 16:16:53 +0000 (16:16 +0000)]
Add strict flag to Conv attributes alloweing to mark those Conv's
that should remain due to strict fp rounding rules.
Removed unused Start attibutes.
Renamed attribute names to more understandable names.

[r7982]

18 years agoFixed indentation
Michael Beck [Sat, 1 Jul 2006 16:33:12 +0000 (16:33 +0000)]
Fixed indentation

[r7981]

18 years agohandle the new irg_inline_forced_no_body inline property
Michael Beck [Fri, 30 Jun 2006 12:31:05 +0000 (12:31 +0000)]
handle the new irg_inline_forced_no_body inline property

[r7975]

18 years agoirg_inline_forced_no_body inline property added
Michael Beck [Fri, 30 Jun 2006 12:30:35 +0000 (12:30 +0000)]
irg_inline_forced_no_body inline property added

[r7974]

18 years agoBugFix: Shl, Shr, Shrs had wrong Phi constant evaluation
Michael Beck [Fri, 30 Jun 2006 09:44:28 +0000 (09:44 +0000)]
BugFix: Shl, Shr, Shrs had wrong Phi constant evaluation

[r7973]

18 years agoHandle Constant folding through Phi nodes
Michael Beck [Fri, 30 Jun 2006 09:00:39 +0000 (09:00 +0000)]
Handle Constant folding through Phi nodes

[r7972]

18 years agoFS_OPT_CONST_PHI added
Michael Beck [Fri, 30 Jun 2006 08:58:45 +0000 (08:58 +0000)]
FS_OPT_CONST_PHI added

[r7971]

18 years agoBugFix: get correct in position at user node to determine block for smallest common...
Christian Würdig [Thu, 29 Jun 2006 16:00:32 +0000 (16:00 +0000)]
BugFix: get correct in position at user node to determine block for smallest common dominator

[r7970]

18 years agoif conversiopn currently cannot cope with Bad control flow predecessor
Michael Beck [Thu, 29 Jun 2006 13:20:41 +0000 (13:20 +0000)]
if conversiopn currently cannot cope with Bad control flow predecessor

[r7968]

18 years agoreformateed and some comments added
Michael Beck [Thu, 29 Jun 2006 13:04:12 +0000 (13:04 +0000)]
reformateed and some comments added

[r7966]

18 years agoBugFix:
Michael Beck [Thu, 29 Jun 2006 13:03:20 +0000 (13:03 +0000)]
BugFix:
 - when welding blocks, correctly handle the blockinfo

Removed all dumping functions

[r7965]

18 years agoFixed and enhanced movement of Store operation through a PhiM node
Michael Beck [Thu, 29 Jun 2006 11:32:11 +0000 (11:32 +0000)]
Fixed and enhanced movement of Store operation through a PhiM node

[r7964]

18 years agoprefer arithmethic over pointer constants
Michael Beck [Thu, 29 Jun 2006 09:50:59 +0000 (09:50 +0000)]
prefer arithmethic over pointer constants

[r7963]

18 years agoAdd Sub(Sub(x, y), b) -> Sub(x, Add(y,b)) Transformation
Michael Beck [Wed, 28 Jun 2006 15:21:40 +0000 (15:21 +0000)]
Add Sub(Sub(x, y), b) -> Sub(x, Add(y,b)) Transformation

[r7962]

18 years agoWhen checking PhiM's, ignore Bad predecessors
Michael Beck [Wed, 28 Jun 2006 15:19:17 +0000 (15:19 +0000)]
When checking PhiM's, ignore Bad predecessors

[r7961]

18 years agoAdd an additional PhiM check:
Michael Beck [Tue, 27 Jun 2006 14:14:19 +0000 (14:14 +0000)]
Add an additional PhiM check:
Predecessors of Phi M must be pairwise identical or from different blocks.

[r7960]

18 years agoBugFix:
Michael Beck [Tue, 27 Jun 2006 14:13:14 +0000 (14:13 +0000)]
BugFix:
 - when optimizing Phi(St, ST, ...) handle correctly the case that the Stores
   might be cascaded

[r7959]

18 years agoadded support for Psi node
Michael Beck [Tue, 27 Jun 2006 13:10:13 +0000 (13:10 +0000)]
added support for Psi node

[r7958]

18 years agomake sure a '\0' is at the end of an snprintf'ed string
Michael Beck [Wed, 21 Jun 2006 17:53:01 +0000 (17:53 +0000)]
make sure a '\0' is at the end of an snprintf'ed string

[r7954]

18 years agoadded missing new line at eof
Christian Würdig [Wed, 21 Jun 2006 10:40:24 +0000 (10:40 +0000)]
added missing new line at eof

[r7950]

18 years agochange array containing indeces from double to int
Michael Beck [Mon, 19 Jun 2006 11:20:21 +0000 (11:20 +0000)]
change array containing indeces from double to int

[r7942]

18 years agoget_Proj_type() must return firm_unknown_type instead of NULL.
Michael Beck [Fri, 16 Jun 2006 13:12:35 +0000 (13:12 +0000)]
get_Proj_type() must return firm_unknown_type instead of NULL.

[r7940]

18 years agosigned/unsigned bug
Adam Szalkowski [Fri, 16 Jun 2006 09:08:22 +0000 (09:08 +0000)]
signed/unsigned bug

[r7937]

18 years agoBugFix:
Michael Beck [Wed, 14 Jun 2006 16:15:25 +0000 (16:15 +0000)]
BugFix:
 - finally using edges to handle the use-counts rights

[r7931]

18 years agoDo not tell about debug mask if no changes were done
Michael Beck [Wed, 14 Jun 2006 16:13:56 +0000 (16:13 +0000)]
Do not tell about debug mask if no changes were done

[r7930]

18 years agoBugFix: SubI(P,P) cannot be transformed into an Add
Michael Beck [Wed, 14 Jun 2006 15:06:47 +0000 (15:06 +0000)]
BugFix: SubI(P,P) cannot be transformed into an Add
removed old CGGG backend based restriction

[r7928]

18 years agodoxygen docu improved
Michael Beck [Tue, 13 Jun 2006 16:53:30 +0000 (16:53 +0000)]
doxygen docu improved

[r7927]

18 years agoImprovement: Do NOT do OSR of nodes that are not inside
Michael Beck [Tue, 13 Jun 2006 16:52:06 +0000 (16:52 +0000)]
Improvement: Do NOT do OSR of nodes that are not inside
a loop.
Do not count LFT is no changes where done

LFR currently disabled. More checks are needed to avoid overflow.

[r7926]

18 years agoBugFix: dead node elimination keeps keep-alive blocks
Michael Beck [Tue, 13 Jun 2006 16:46:22 +0000 (16:46 +0000)]
BugFix: dead node elimination keeps keep-alive blocks

[r7925]

18 years agoadded inline functions
Michael Beck [Tue, 13 Jun 2006 16:40:34 +0000 (16:40 +0000)]
added inline functions

[r7924]

18 years agoadd inline functions
Michael Beck [Tue, 13 Jun 2006 15:17:05 +0000 (15:17 +0000)]
add inline functions
document destroyed link fields

[r7923]

18 years agoFixed return type of _set_entity_ident()
Michael Beck [Mon, 12 Jun 2006 19:15:44 +0000 (19:15 +0000)]
Fixed return type of _set_entity_ident()

[r7916]

18 years agolocal_optimize_df():
Michael Beck [Mon, 12 Jun 2006 14:48:44 +0000 (14:48 +0000)]
local_optimize_df():
when running the wait queue, check if a node is already dead before optimizing it ...
This is needed due to the changes of the exchange() semantics, which now kills
the old node in both (ir_edges enabled and not) modes.

[r7915]

18 years agoexchange() now kill the old node when running when ir_edges enabled
Michael Beck [Mon, 12 Jun 2006 14:46:08 +0000 (14:46 +0000)]
exchange() now kill the old node when running when ir_edges enabled
by:
 - releasing all of it's inputs
 - replacing op with op_Bad

[r7914]

18 years agoBugFix: Keep-alives had a wrong position in ir_edge objects
Michael Beck [Mon, 12 Jun 2006 14:21:22 +0000 (14:21 +0000)]
BugFix: Keep-alives had a wrong position in ir_edge objects

[r7913]

18 years agoaet_entity_ident() added
Michael Beck [Mon, 12 Jun 2006 12:46:51 +0000 (12:46 +0000)]
aet_entity_ident() added

[r7912]

18 years agodoxygen docu updated
Michael Beck [Mon, 12 Jun 2006 12:18:34 +0000 (12:18 +0000)]
doxygen docu updated

[r7911]

18 years agoBugFix: get_dummy_sel() only the dummy entity can be cached, the Sel node must be...
Michael Beck [Fri, 9 Jun 2006 15:03:49 +0000 (15:03 +0000)]
BugFix: get_dummy_sel() only the dummy entity can be cached, the Sel node must be created every time
(other wise must be placed into the first block ... unneeded)

[r7907]

18 years agoBugFix: The mode of new induction variables created must always be
Michael Beck [Fri, 9 Jun 2006 12:14:21 +0000 (12:14 +0000)]
BugFix: The mode of new induction variables created must always be
adjusted
Detect useless Phi loops (but don't remove them yet)

[r7904]

18 years agoFixed doxygen errors
Michael Beck [Fri, 9 Jun 2006 12:10:08 +0000 (12:10 +0000)]
Fixed doxygen errors

[r7903]

18 years agomake osr_flag_default a define, because "simple-minded" CRecoder cannot handle this
Michael Beck [Fri, 9 Jun 2006 11:37:49 +0000 (11:37 +0000)]
make osr_flag_default a define, because "simple-minded" CRecoder cannot handle this

[r7902]

18 years agoBugFix: Phi node node correctly split into low and high
Michael Beck [Fri, 9 Jun 2006 11:28:59 +0000 (11:28 +0000)]
BugFix: Phi node node correctly split into low and high
removed unused variable

[r7901]

18 years agorenamed type to ir_type
FIRM Projekt Account [Fri, 9 Jun 2006 11:26:35 +0000 (11:26 +0000)]
renamed type to ir_type

[r7900]

18 years agoFixed output of mode_P constants
Michael Beck [Thu, 8 Jun 2006 16:03:19 +0000 (16:03 +0000)]
Fixed output of mode_P constants

[r7897]

18 years agoadded a resid to the reserved tarvals to allow the firmEvaluator to detect this ones
Michael Beck [Thu, 8 Jun 2006 14:53:24 +0000 (14:53 +0000)]
added a resid to the reserved tarvals to allow the firmEvaluator to detect this ones

[r7896]

18 years agoBugFix: nodes that failed verification are colored read again
Michael Beck [Thu, 8 Jun 2006 14:09:36 +0000 (14:09 +0000)]
BugFix: nodes that failed verification are colored read again

[r7895]

18 years agorenamed type to ir_type
Michael Beck [Thu, 8 Jun 2006 10:49:07 +0000 (10:49 +0000)]
renamed type to ir_type

[r7892]

18 years agorenamed type to ir_typrenamed type to ir_type
Michael Beck [Thu, 8 Jun 2006 10:47:13 +0000 (10:47 +0000)]
renamed type to ir_typrenamed type to ir_type

[r7891]

18 years agoFinally removed obsolete type "type", use ir_type instead
Michael Beck [Thu, 8 Jun 2006 02:44:13 +0000 (02:44 +0000)]
Finally removed obsolete type "type", use ir_type instead

[r7890]

18 years agorenamed all type to ir_type
Michael Beck [Thu, 8 Jun 2006 02:43:49 +0000 (02:43 +0000)]
renamed all type to ir_type

[r7889]

18 years agocreated anchor for the value base pointer
Michael Beck [Thu, 8 Jun 2006 02:38:54 +0000 (02:38 +0000)]
created anchor for the value base pointer
get_irg_value_param_base() & set_irg_value_param_base() added

[r7887]

18 years agovalue parameter types have now a flag to distinguish from others
Michael Beck [Wed, 7 Jun 2006 15:18:04 +0000 (15:18 +0000)]
value parameter types have now a flag to distinguish from others
entities of value parameter types havy allovation "parameter"

[r7883]

18 years agoLitte bugfix form older errors: use irg instead of current_ir_graph
Michael Beck [Wed, 7 Jun 2006 13:12:25 +0000 (13:12 +0000)]
Litte bugfix form older errors: use irg instead of current_ir_graph

[r7881]

18 years agomake the Load/Store Optimization more greedy: if a Load or Store is removed,
Michael Beck [Wed, 7 Jun 2006 13:06:37 +0000 (13:06 +0000)]
make the Load/Store Optimization more greedy: if a Load or Store is removed,
reduce, a previous Load serving the address might get unused. Remove it.

[r7880]

18 years agoadd missing del_waitq()
Michael Beck [Tue, 6 Jun 2006 13:37:15 +0000 (13:37 +0000)]
add missing del_waitq()

[r7879]

18 years agouse xmalloc instead of malloc
Michael Beck [Tue, 6 Jun 2006 12:07:01 +0000 (12:07 +0000)]
use xmalloc instead of malloc

[r7878]

18 years agoUse xmalloc instead of malloc
Michael Beck [Tue, 6 Jun 2006 11:59:43 +0000 (11:59 +0000)]
Use xmalloc instead of malloc

[r7877]

18 years agodoxygen docu added
Michael Beck [Mon, 5 Jun 2006 16:00:43 +0000 (16:00 +0000)]
doxygen docu added

[r7875]

18 years agoadded support for Thread local storage
Michael Beck [Mon, 5 Jun 2006 15:58:12 +0000 (15:58 +0000)]
added support for Thread local storage
added more doxygen docu

[r7874]

18 years agoadded support for Thread local storage
Michael Beck [Mon, 5 Jun 2006 15:56:37 +0000 (15:56 +0000)]
added support for Thread local storage
handle Psi, Bound, Confirm and Conv nodes

[r7873]

18 years agomore doxygen docu added
Michael Beck [Mon, 5 Jun 2006 15:54:12 +0000 (15:54 +0000)]
more doxygen docu added

[r7872]

18 years agospeed up by useing pmap_find() instead of pmap_contains()/pmap_get() combination
Michael Beck [Mon, 5 Jun 2006 15:52:54 +0000 (15:52 +0000)]
speed up by useing pmap_find() instead of pmap_contains()/pmap_get() combination

[r7871]

18 years agoadded prototype for mangle_dot()
Michael Beck [Mon, 5 Jun 2006 15:50:42 +0000 (15:50 +0000)]
added prototype for mangle_dot()

[r7870]

18 years agoFixed type of _get_tpop_attr_size()
Michael Beck [Mon, 5 Jun 2006 15:49:51 +0000 (15:49 +0000)]
Fixed type of _get_tpop_attr_size()

[r7869]

18 years agoupdated doxygen docu
Michael Beck [Mon, 5 Jun 2006 15:48:53 +0000 (15:48 +0000)]
updated doxygen docu

[r7868]

18 years agoadded support for Thread local storage
Michael Beck [Mon, 5 Jun 2006 15:46:48 +0000 (15:46 +0000)]
added support for Thread local storage

[r7867]

18 years agoFixed inlining: pn_Start_P_value_arg_base must get a value, so create a lesser tuple
Michael Beck [Mon, 5 Jun 2006 15:45:37 +0000 (15:45 +0000)]
Fixed inlining: pn_Start_P_value_arg_base must get a value, so create a lesser tuple

[r7866]

18 years agodo not remove volatile entities
Michael Beck [Mon, 5 Jun 2006 15:44:06 +0000 (15:44 +0000)]
do not remove volatile entities

[r7865]

18 years agoadded support for Thread local storage
Michael Beck [Sat, 3 Jun 2006 02:11:07 +0000 (02:11 +0000)]
added support for Thread local storage

[r7863]

18 years agoadded the auto_create_sync flag to disable/enable the automatic Sync construction
Michael Beck [Fri, 2 Jun 2006 16:36:43 +0000 (16:36 +0000)]
added the auto_create_sync flag to disable/enable the automatic Sync construction
and fix the code (Syncs were not extended)

[r7862]

18 years agoFixed transform_Phi() code
Michael Beck [Fri, 2 Jun 2006 16:35:30 +0000 (16:35 +0000)]
Fixed transform_Phi() code

[r7861]

18 years agoFinally fixed the ConstCodeIrg problem ;-)
Michael Beck [Fri, 2 Jun 2006 16:34:16 +0000 (16:34 +0000)]
Finally fixed the ConstCodeIrg problem ;-)

[r7860]

18 years agotype fixed
Michael Beck [Fri, 2 Jun 2006 11:39:58 +0000 (11:39 +0000)]
type fixed

[r7859]

18 years agoHandle const code irg
Michael Beck [Fri, 2 Jun 2006 11:37:24 +0000 (11:37 +0000)]
Handle const code irg

[r7858]

18 years agohandle Sync nodes
Michael Beck [Thu, 1 Jun 2006 17:04:22 +0000 (17:04 +0000)]
handle Sync nodes

[r7857]

18 years agotypo fixed
Michael Beck [Thu, 1 Jun 2006 16:29:50 +0000 (16:29 +0000)]
typo fixed

[r7856]

18 years agoBugFix: all flags where deleted when layout state was set
Michael Beck [Thu, 1 Jun 2006 14:00:08 +0000 (14:00 +0000)]
BugFix: all flags where deleted when layout state was set

[r7852]

18 years agoremoved C99 style
Christian Würdig [Thu, 1 Jun 2006 11:20:57 +0000 (11:20 +0000)]
removed C99 style
fixed indent
removed const param

[r7848]

18 years agomissing case for pn_CopyB_X_except added
Michael Beck [Thu, 1 Jun 2006 09:56:47 +0000 (09:56 +0000)]
missing case for pn_CopyB_X_except added

[r7847]

18 years agodoxygen docu added
Michael Beck [Wed, 31 May 2006 19:20:33 +0000 (19:20 +0000)]
doxygen docu added

[r7845]

18 years agodebug ir_fprintf commented out
Adam Szalkowski [Wed, 31 May 2006 18:54:09 +0000 (18:54 +0000)]
debug ir_fprintf commented out

[r7844]

18 years agoadded a routine to solve a system of linear equations using Gauss-Jordan elimination
Adam Szalkowski [Wed, 31 May 2006 18:39:11 +0000 (18:39 +0000)]
added a routine to solve a system of linear equations using Gauss-Jordan elimination

[r7843]

18 years agoexecution frequency based on Kirchhoff's current law
Adam Szalkowski [Wed, 31 May 2006 18:37:08 +0000 (18:37 +0000)]
execution frequency based on Kirchhoff's current law

[r7842]

18 years agoremoved pn_Bound_M_except, Bound now have only one memory output
Michael Beck [Wed, 31 May 2006 16:36:23 +0000 (16:36 +0000)]
removed pn_Bound_M_except, Bound now have only one memory output

[r7837]

18 years agorenamed get_peculiarity_string() to get_peculiarity_name()
Michael Beck [Wed, 31 May 2006 12:56:15 +0000 (12:56 +0000)]
renamed get_peculiarity_string() to get_peculiarity_name()
dumping now dumps the additional class flags
some cleanup

[r7836]

18 years agorenamed get_peculiarity_string() to get_peculiarity_name()
Michael Beck [Wed, 31 May 2006 12:55:56 +0000 (12:55 +0000)]
renamed get_peculiarity_string() to get_peculiarity_name()
dumping now dumps the additional class flags

[r7835]

18 years agoAdd interface and abstract flags to class types.
Michael Beck [Wed, 31 May 2006 11:48:46 +0000 (11:48 +0000)]
Add interface and abstract flags to class types.
Improved doxygen docu.

[r7833]

18 years agoBugFix: Predecessors of blocks can be even Jmp and Raise nodes if exceptions are...
FIRM Projekt Account [Tue, 30 May 2006 14:13:09 +0000 (14:13 +0000)]
BugFix: Predecessors of blocks can be even Jmp and Raise nodes if exceptions are used, handle this

[r7831]

18 years agoBugFix: added forgotten typedef
Michael Beck [Tue, 30 May 2006 13:22:51 +0000 (13:22 +0000)]
BugFix: added forgotten typedef

[r7830]

18 years agoadded missing header for firmjni
Michael Beck [Tue, 30 May 2006 13:03:37 +0000 (13:03 +0000)]
added missing header for firmjni

[r7829]

18 years agoremoved copy_irn() declaration, not supported anymore
Michael Beck [Tue, 30 May 2006 13:03:00 +0000 (13:03 +0000)]
removed copy_irn() declaration, not supported anymore

[r7828]

18 years agoIrcons.irgFinalizeCons() not supported anymore, use Irgraph.setIrgPhaseState()
FIRM Projekt Account [Tue, 30 May 2006 13:02:08 +0000 (13:02 +0000)]
Ircons.irgFinalizeCons() not supported anymore, use Irgraph.setIrgPhaseState()

[r7827]

18 years agoadded missing include directory
Michael Beck [Mon, 29 May 2006 13:53:32 +0000 (13:53 +0000)]
added missing include directory

[r7818]

18 years agorenamed symconst_size to symconst_type_size
Michael Beck [Mon, 29 May 2006 13:41:33 +0000 (13:41 +0000)]
renamed symconst_size to symconst_type_size

[r7816]

18 years agosupress GCC warnings
Michael Beck [Mon, 29 May 2006 13:38:40 +0000 (13:38 +0000)]
supress GCC warnings

[r7815]

18 years agorenamed symconst_size to symconst_type_size
Michael Beck [Mon, 29 May 2006 13:35:58 +0000 (13:35 +0000)]
renamed symconst_size to symconst_type_size
added symconst_type_align

[r7814]

18 years agoAdd macros to use a pdeq as a stack
Michael Beck [Mon, 29 May 2006 13:33:26 +0000 (13:33 +0000)]
Add macros to use a pdeq as a stack

[r7813]

18 years agomake two local variables static
Michael Beck [Mon, 29 May 2006 13:33:02 +0000 (13:33 +0000)]
make two local variables static

[r7812]

18 years agoadded xmalloc.h include
Michael Beck [Mon, 29 May 2006 13:31:45 +0000 (13:31 +0000)]
added xmalloc.h include

[r7811]