libfirm
18 years agoSkip Cats nodes in non_null check
Michael Beck [Fri, 27 Jan 2006 05:11:16 +0000 (05:11 +0000)]
Skip Cats nodes in non_null check

[r7275]

18 years agofixed hooking mechanism
Christian Würdig [Wed, 25 Jan 2006 14:47:34 +0000 (14:47 +0000)]
fixed hooking mechanism

[r7273]

18 years agolightweight DB() macro added
Michael Beck [Wed, 25 Jan 2006 13:08:28 +0000 (13:08 +0000)]
lightweight DB() macro added

[r7272]

18 years agoFully implemneted. Works fine with the two examples (including VanDrunen's original
Michael Beck [Tue, 24 Jan 2006 18:17:07 +0000 (18:17 +0000)]
Fully implemneted. Works fine with the two examples (including VanDrunen's original
one if constant folding is disabled). However, the Antic set is different form the GCC
generated. It is not clear yet is this is right ...

[r7270]

18 years agoAdded tags for ops
Sebastian Hack [Wed, 18 Jan 2006 15:49:52 +0000 (15:49 +0000)]
Added tags for ops

[r7258]

18 years agoRemoved Keep
Sebastian Hack [Wed, 18 Jan 2006 15:49:39 +0000 (15:49 +0000)]
Removed Keep

[r7257]

18 years agosome optimizations must be disabled while the reassociation runs
Michael Beck [Tue, 17 Jan 2006 14:30:22 +0000 (14:30 +0000)]
some optimizations must be disabled while the reassociation runs
indetify functions are global now

[r7256]

18 years agoirop_flag_keep flag added
Michael Beck [Tue, 17 Jan 2006 14:13:19 +0000 (14:13 +0000)]
irop_flag_keep flag added

[r7255]

18 years agoir/ir/irop_t.h added
Michael Beck [Tue, 17 Jan 2006 13:41:12 +0000 (13:41 +0000)]
ir/ir/irop_t.h added

[r7254]

18 years agoAdded the Keep node
Sebastian Hack [Mon, 16 Jan 2006 16:59:19 +0000 (16:59 +0000)]
Added the Keep node

[r7253]

18 years agoFlags support.
Sebastian Hack [Mon, 16 Jan 2006 16:58:46 +0000 (16:58 +0000)]
Flags support.

[r7252]

18 years agoadded pmap_count
Daniel Grund [Mon, 16 Jan 2006 16:20:00 +0000 (16:20 +0000)]
added pmap_count

[r7251]

18 years agoadded missing headers for install
Christian Würdig [Mon, 16 Jan 2006 10:11:29 +0000 (10:11 +0000)]
added missing headers for install

[r7250]

18 years agoLIBCORE is on per default now
Christian Würdig [Mon, 16 Jan 2006 10:10:00 +0000 (10:10 +0000)]
LIBCORE is on per default now

[r7249]

18 years agoremoved useless empty function
Michael Beck [Mon, 16 Jan 2006 03:01:21 +0000 (03:01 +0000)]
removed useless empty function

[r7248]

18 years agocharacter modes do not have modulo shift's
Michael Beck [Mon, 16 Jan 2006 03:00:26 +0000 (03:00 +0000)]
character modes do not have modulo shift's

[r7247]

18 years agoBugFix: get_opt_ldst_only_null_ptr_exceptions() was checked wrong
Michael Beck [Mon, 16 Jan 2006 02:59:25 +0000 (02:59 +0000)]
BugFix: get_opt_ldst_only_null_ptr_exceptions() was checked wrong

[r7246]

18 years agoopt_confirms.f added
Michael Beck [Sat, 14 Jan 2006 21:17:09 +0000 (21:17 +0000)]
opt_confirms.f added

[r7245]

18 years agoInstOf Node (high-level instanceof test with exception) reanimated
Michael Beck [Sat, 14 Jan 2006 21:15:05 +0000 (21:15 +0000)]
InstOf Node (high-level instanceof test with exception) reanimated

[r7244]

18 years agoDBG_OPT_EXC_REM() used, remove exception edges from Load and Store if it can be prove...
Michael Beck [Sat, 14 Jan 2006 21:04:47 +0000 (21:04 +0000)]
DBG_OPT_EXC_REM() used, remove exception edges from Load and Store if it can be proved that the address is non-null and no other exception exists

[r7243]

18 years agoDBG_OPT_EXC_REM() added (a exception edge was removed due to a comfirmation prove)
Michael Beck [Sat, 14 Jan 2006 21:02:45 +0000 (21:02 +0000)]
DBG_OPT_EXC_REM() added (a exception edge was removed due to a comfirmation prove)

[r7242]

18 years agoHOOK_OPT_EXC_REM added
Michael Beck [Sat, 14 Jan 2006 21:01:46 +0000 (21:01 +0000)]
HOOK_OPT_EXC_REM added

[r7241]

18 years agoldst_only_null_ptr_exceptions and sel_based_null_check_elim flags added
Michael Beck [Sat, 14 Jan 2006 21:00:11 +0000 (21:00 +0000)]
ldst_only_null_ptr_exceptions and sel_based_null_check_elim flags added

[r7240]

18 years agoopt_confirms.h is now global visible
Michael Beck [Sat, 14 Jan 2006 20:59:10 +0000 (20:59 +0000)]
opt_confirms.h is now global visible

[r7239]

18 years agovalue_not_null() improved, skips now Sel nodes if option is set
Michael Beck [Sat, 14 Jan 2006 20:57:43 +0000 (20:57 +0000)]
value_not_null() improved, skips now Sel nodes if option is set

[r7238]

18 years agorenamed all types 'type' to 'ir_type'
Michael Beck [Fri, 13 Jan 2006 22:58:52 +0000 (22:58 +0000)]
renamed all types 'type' to 'ir_type'

[r7237]

18 years agorenamed all types 'type' to 'ir_type'
Michael Beck [Fri, 13 Jan 2006 22:57:41 +0000 (22:57 +0000)]
renamed all types 'type' to 'ir_type'
used mode_is_reference instead of != mode_P test

[r7236]

18 years agorenamed all types 'type' to 'ir_type'
Michael Beck [Fri, 13 Jan 2006 22:49:17 +0000 (22:49 +0000)]
renamed all types 'type' to 'ir_type'
removed struct from firm types

[r7235]

18 years agoremoved unneeded includes
Michael Beck [Fri, 13 Jan 2006 22:39:33 +0000 (22:39 +0000)]
removed unneeded includes
renamed all types 'type' to 'ir_type'

[r7234]

18 years agorenamed all types 'type' to 'ir_type'
Michael Beck [Fri, 13 Jan 2006 22:35:47 +0000 (22:35 +0000)]
renamed all types 'type' to 'ir_type'

[r7233]

18 years agorenamed all types 'type' to 'ir_type'
Michael Beck [Fri, 13 Jan 2006 22:14:37 +0000 (22:14 +0000)]
renamed all types 'type' to 'ir_type'

[r7232]

18 years agorenamed all types 'type' to 'ir_type'
Michael Beck [Fri, 13 Jan 2006 22:00:15 +0000 (22:00 +0000)]
renamed all types 'type' to 'ir_type'

[r7231]

18 years agorenamed all types 'type' to 'ir_type'
Michael Beck [Fri, 13 Jan 2006 21:54:03 +0000 (21:54 +0000)]
renamed all types 'type' to 'ir_type'

[r7230]

18 years agoremoved unneeded includes
Michael Beck [Fri, 13 Jan 2006 21:51:02 +0000 (21:51 +0000)]
removed unneeded includes
renamed all types 'type' to 'ir_type'

[r7229]

18 years agoadded ifdef around irloop type
Michael Beck [Fri, 13 Jan 2006 21:49:08 +0000 (21:49 +0000)]
added ifdef around irloop type

[r7228]

18 years agoadd defined for verification enums
Michael Beck [Fri, 13 Jan 2006 21:45:38 +0000 (21:45 +0000)]
add defined for verification enums

[r7227]

18 years agomissing include added
Michael Beck [Fri, 13 Jan 2006 21:44:15 +0000 (21:44 +0000)]
missing include added
renamed all types 'type' to 'ir_type'

[r7226]

18 years agoir_loop type added
Michael Beck [Fri, 13 Jan 2006 21:43:28 +0000 (21:43 +0000)]
ir_loop type added

[r7225]

18 years agopleliminary version of VanDrunen's GVN_PRE for Firm
Michael Beck [Thu, 12 Jan 2006 13:25:38 +0000 (13:25 +0000)]
pleliminary version of VanDrunen's GVN_PRE for Firm

[r7220]

18 years agoSmall changes
Sebastian Hack [Thu, 12 Jan 2006 12:22:59 +0000 (12:22 +0000)]
Small changes

[r7218]

18 years agoDumper changed: a new edge class 'postdominator' added
FIRM Projekt Account [Thu, 12 Jan 2006 11:04:09 +0000 (11:04 +0000)]
Dumper changed: a new edge class 'postdominator' added

[r7217]

18 years ago2 new cases added
Michael Beck [Thu, 12 Jan 2006 01:06:44 +0000 (01:06 +0000)]
2 new cases added

[r7216]

18 years agoused pn_*_max constants in all turn_into_tuple
Michael Beck [Thu, 12 Jan 2006 01:05:42 +0000 (01:05 +0000)]
used pn_*_max constants in all turn_into_tuple
equivalent_node_Confirm() improved
transformations added:
a+a = 2*a
(a*x)-a  = a*(x-1)
preliminary version of equivalent_node_Bound() without Confirm support yet

[r7215]

18 years agoBound operation added:
Michael Beck [Thu, 12 Jan 2006 01:00:21 +0000 (01:00 +0000)]
Bound operation added:
 high level bounds check for Java, Pascal, Modula-3

[r7214]

18 years agorenamed all type 'type' to new ir_type
Michael Beck [Wed, 11 Jan 2006 00:51:06 +0000 (00:51 +0000)]
renamed all type 'type' to new ir_type
intrinsic method property added

[r7210]

18 years agoused new set_irg_doms_inconsistent() to invalidate dom and postdom
Michael Beck [Mon, 9 Jan 2006 12:37:32 +0000 (12:37 +0000)]
used new set_irg_doms_inconsistent() to invalidate dom and postdom

[r7209]

18 years agoused new set_irg_doms_inconsistent() to invalidate dom and postdom
Michael Beck [Mon, 9 Jan 2006 11:51:22 +0000 (11:51 +0000)]
used new set_irg_doms_inconsistent() to invalidate dom and postdom

[r7208]

18 years agoused new set_irg_doms_inconsistent() to invalidate dom and postdom
Michael Beck [Mon, 9 Jan 2006 11:48:32 +0000 (11:48 +0000)]
used new set_irg_doms_inconsistent() to invalidate dom and postdom
renamed type 'type' to newer 'ir_type'

[r7207]

18 years agoused new set_irg_doms_inconsistent() to invalidate dom and postdom
Michael Beck [Mon, 9 Jan 2006 11:44:19 +0000 (11:44 +0000)]
used new set_irg_doms_inconsistent() to invalidate dom and postdom
rename the type 'type' to newer 'ir_type'

[r7206]

18 years agoadded data for post-dominance
Michael Beck [Mon, 9 Jan 2006 11:38:16 +0000 (11:38 +0000)]
added data for post-dominance
used only types without 'struct'

[r7205]

18 years agoadded data and functions for post-dominance info
Michael Beck [Mon, 9 Jan 2006 11:36:05 +0000 (11:36 +0000)]
added data and functions for post-dominance info

[r7204]

18 years agoused new set_irg_doms_inconsistent() to invalidate dom and postdom
Michael Beck [Mon, 9 Jan 2006 11:34:58 +0000 (11:34 +0000)]
used new set_irg_doms_inconsistent() to invalidate dom and postdom

[r7203]

18 years agopost-dominators are dumped yet
Michael Beck [Mon, 9 Jan 2006 11:33:54 +0000 (11:33 +0000)]
post-dominators are dumped yet
removed #if 0 code

[r7202]

18 years agoadded post-dominator construction
Michael Beck [Mon, 9 Jan 2006 11:32:57 +0000 (11:32 +0000)]
added post-dominator construction

[r7201]

18 years agoused dbg_printf all over
Michael Beck [Mon, 9 Jan 2006 10:41:31 +0000 (10:41 +0000)]
used dbg_printf all over

[r7197]

18 years agonewent and newtype takes now either a number or a name
Michael Beck [Sat, 7 Jan 2006 23:50:41 +0000 (23:50 +0000)]
newent and newtype takes now either a number or a name

[r7196]

18 years agomore checks and diagnostic output added
Michael Beck [Sat, 7 Jan 2006 23:49:49 +0000 (23:49 +0000)]
more checks and diagnostic output added

[r7195]

18 years agouses firm type WITHOUT struct
Michael Beck [Thu, 5 Jan 2006 14:06:02 +0000 (14:06 +0000)]
uses firm type WITHOUT struct

[r7194]

18 years agoadded missing include
Michael Beck [Thu, 5 Jan 2006 13:51:36 +0000 (13:51 +0000)]
added missing include

[r7193]

18 years agomissing include added
Michael Beck [Thu, 5 Jan 2006 13:51:04 +0000 (13:51 +0000)]
missing include added

[r7192]

18 years agoloop unrolling currently buggy ...
Michael Beck [Mon, 2 Jan 2006 16:50:17 +0000 (16:50 +0000)]
loop unrolling currently buggy ...

[r7190]

18 years agoadded missing get_irn_type_attr() and get_irn_entity_attr()
Michael Beck [Mon, 2 Jan 2006 15:59:25 +0000 (15:59 +0000)]
added missing get_irn_type_attr() and get_irn_entity_attr()

[r7188]

18 years agoloop-unrolling did not write debug messages anymore
FIRM Projekt Account [Mon, 2 Jan 2006 15:55:17 +0000 (15:55 +0000)]
loop-unrolling did not write debug messages anymore

[r7187]

18 years agoremoved dumper call
Michael Beck [Mon, 2 Jan 2006 15:49:33 +0000 (15:49 +0000)]
removed dumper call

[r7186]

18 years agorenamed NODE_VERIFICATION_* to newer FIRM_VERIFICATION_*
FIRM Projekt Account [Mon, 2 Jan 2006 15:45:40 +0000 (15:45 +0000)]
renamed NODE_VERIFICATION_* to newer FIRM_VERIFICATION_*
renamed old type 'type' into ir_type

[r7185]

18 years agofixed inline definitions
Michael Beck [Mon, 2 Jan 2006 15:03:16 +0000 (15:03 +0000)]
fixed inline definitions

[r7183]

18 years agomake defines for identical enums (firmjni build process using recoder cannot cope...
Michael Beck [Mon, 2 Jan 2006 15:02:49 +0000 (15:02 +0000)]
make defines for identical enums (firmjni build process using recoder cannot cope with)

[r7182]

18 years agomissing include added
Michael Beck [Mon, 2 Jan 2006 15:01:16 +0000 (15:01 +0000)]
missing include added

[r7181]

18 years agoadded missing includes
Michael Beck [Sat, 31 Dec 2005 15:58:57 +0000 (15:58 +0000)]
added missing includes

[r7175]

18 years agotrvrfy uses now verification flags
Michael Beck [Sat, 31 Dec 2005 15:58:09 +0000 (15:58 +0000)]
trvrfy uses now verification flags

[r7174]

18 years agomoved verification flags from irvrfy to irflag
Michael Beck [Sat, 31 Dec 2005 15:57:03 +0000 (15:57 +0000)]
moved verification flags from irvrfy to irflag
verifications flags are now used by irvrfy and trvrfy
removed binary Cond test, failed in some optimizations

[r7173]

18 years agomoved verification flags from irvrfy to irflag
Michael Beck [Sat, 31 Dec 2005 15:54:14 +0000 (15:54 +0000)]
moved verification flags from irvrfy to irflag
verifications flags are now used by irvrfy and trvrfy

[r7172]

18 years agoextern "C" added
Michael Beck [Fri, 30 Dec 2005 15:29:21 +0000 (15:29 +0000)]
extern "C" added
renamed struct _ident to struct ident for better debugging

[r7171]

18 years agofixed doxygen comments
Michael Beck [Fri, 30 Dec 2005 15:27:39 +0000 (15:27 +0000)]
fixed doxygen comments

[r7170]

18 years agoextern "C" added
Michael Beck [Fri, 30 Dec 2005 15:25:46 +0000 (15:25 +0000)]
extern "C" added

[r7169]

18 years agofixed get_mode_size() define
Michael Beck [Fri, 30 Dec 2005 15:24:54 +0000 (15:24 +0000)]
fixed get_mode_size() define
added defines for subclass/superclass

[r7168]

18 years agorenamed all type * to ir_type *
Michael Beck [Fri, 30 Dec 2005 15:23:05 +0000 (15:23 +0000)]
renamed all type * to ir_type *
removed diagnostic output

[r7167]

18 years agorenamed all type * to ir_type *
Michael Beck [Fri, 30 Dec 2005 15:20:31 +0000 (15:20 +0000)]
renamed all type * to ir_type *
fixed dioxygen docu

[r7166]

18 years agochanged names of unknown and none tpop
Michael Beck [Fri, 30 Dec 2005 15:17:47 +0000 (15:17 +0000)]
changed names of unknown and none tpop

[r7165]

18 years agorenamed all type * to ir_type *
Michael Beck [Fri, 30 Dec 2005 15:16:40 +0000 (15:16 +0000)]
renamed all type * to ir_type *
typo fixed in doxygen docu

[r7164]

18 years agorenamed all type * to ir_type *
Michael Beck [Fri, 30 Dec 2005 15:11:08 +0000 (15:11 +0000)]
renamed all type * to ir_type *
used get_type_attr() and get_entity_attr() to remove to dependency of the type walker from the knowledge of nodes

[r7163]

18 years agorenamed all type * to ir_type *
Michael Beck [Fri, 30 Dec 2005 15:06:20 +0000 (15:06 +0000)]
renamed all type * to ir_type *
called firm_set_default_get_type_attr() and firm_set_default_get_entity_attr() to set new ops

[r7162]

18 years agotype_t.h include added
Michael Beck [Fri, 30 Dec 2005 15:03:55 +0000 (15:03 +0000)]
type_t.h include added
renamed all type * to ir_type *

[r7161]

18 years agolittle cleanup
Michael Beck [Fri, 30 Dec 2005 15:02:34 +0000 (15:02 +0000)]
little cleanup

[r7160]

18 years agorenamed all type * to ir_type *
Michael Beck [Fri, 30 Dec 2005 15:01:30 +0000 (15:01 +0000)]
renamed all type * to ir_type *
added two new operations, get_type_attr() and get_entity_attr()

[r7159]

18 years agorenamed all type * to ir_type *
Michael Beck [Fri, 30 Dec 2005 14:59:06 +0000 (14:59 +0000)]
renamed all type * to ir_type *
added firm_set_default_get_type_attr() and firm_set_default_get_entity_attr()
skip_Id() is hand-optimized and cannot switched off using get_opt_notmalize()

[r7158]

18 years agorenamed all type * to ir_type *
Michael Beck [Fri, 30 Dec 2005 14:53:39 +0000 (14:53 +0000)]
renamed all type * to ir_type *
added firm_set_default_get_type_attr() and firm_set_default_get_entity_attr()

[r7157]

18 years agorenamed all type* to ir_type *
Michael Beck [Fri, 30 Dec 2005 14:50:21 +0000 (14:50 +0000)]
renamed all type* to ir_type *
added get_irn_type_attr() and get_irn_entity_attr()

[r7156]

18 years agofirm_types.h included, to need to uses "hidden" types anymore
Michael Beck [Wed, 28 Dec 2005 17:53:42 +0000 (17:53 +0000)]
firm_types.h included, to need to uses "hidden" types anymore

[r7154]

18 years agostruct type renamed to struct ir_type
Michael Beck [Wed, 28 Dec 2005 17:52:08 +0000 (17:52 +0000)]
struct type renamed to struct ir_type

[r7153]

18 years agoincludes firm_types.h now
Michael Beck [Tue, 27 Dec 2005 17:13:55 +0000 (17:13 +0000)]
includes firm_types.h now

[r7152]

18 years agothe type 'type' is now called ir_type
Michael Beck [Tue, 27 Dec 2005 16:33:35 +0000 (16:33 +0000)]
the type 'type' is now called ir_type
The old 'type' still exists, but is deprecated from now and will be
removed in the next releases.

[r7149]

18 years agocrecoder cannot handle wchar_t type. As long as we do not need this functionality...
FIRM Projekt Account [Tue, 27 Dec 2005 11:31:57 +0000 (11:31 +0000)]
crecoder cannot handle wchar_t type. As long as we do not need this functionality, we simply
remove all lines containing wchar_t :-(

[r7147]

18 years agoworkaround for GCC's overflow bug
FIRM Projekt Account [Tue, 27 Dec 2005 11:11:38 +0000 (11:11 +0000)]
workaround for GCC's overflow bug

[r7146]

18 years agoadded C++ guards
Michael Beck [Tue, 27 Dec 2005 11:08:01 +0000 (11:08 +0000)]
added C++ guards
enhanced doxygen docu

[r7145]

18 years agorenamed is_subclass_of -> is_SubClasss_of
Michael Beck [Tue, 27 Dec 2005 10:15:36 +0000 (10:15 +0000)]
renamed is_subclass_of -> is_SubClasss_of

[r7144]

18 years agorenamed is_subclass* to is_SubClass*, is_superclass* to is_SuperClass*
Michael Beck [Sun, 25 Dec 2005 23:10:56 +0000 (23:10 +0000)]
renamed is_subclass* to is_SubClass*, is_superclass* to is_SuperClass*

[r7143]

18 years agorenamed is_subclass* to is_SubClass*, is_superclass* to is_SuperClass* as is newer...
Michael Beck [Sun, 25 Dec 2005 23:08:44 +0000 (23:08 +0000)]
renamed is_subclass* to is_SubClass*, is_superclass* to is_SuperClass*  as is newer libfirm
reorganized calling_convention bits

[r7142]

18 years agorenamed is_subclass* to is_SubClass*, is_superclass* to is_SuperClass* as is newer...
Michael Beck [Sun, 25 Dec 2005 23:05:09 +0000 (23:05 +0000)]
renamed is_subclass* to is_SubClass*, is_superclass* to is_SuperClass*  as is newer libfirm
removed two ?: constructions

[r7141]

18 years agoBugFix: apply (a-b)*c --> a*c - b*c only in the mode of a and b is integer, as Firm
Michael Beck [Fri, 23 Dec 2005 18:24:10 +0000 (18:24 +0000)]
BugFix: apply (a-b)*c --> a*c - b*c only in the mode of a and b is integer, as Firm
cannot handle MulP

[r7130]