X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=Changes;h=40278f507e79c5edd081c0aabb6e030186327cdf;hb=159df4564ce78bfdb54d7e756b914549801e210f;hp=d71073e23dc1164457d948a4c594c8ca5b470032;hpb=73aba04481fc9b5982b5f61c44994ebd9b1d73cb;p=libfirm diff --git a/Changes b/Changes index d71073e23..40278f507 100644 --- a/Changes +++ b/Changes @@ -1,4 +1,182 @@ - 12.1.2001 Goetz + ... no more updated, see cvs entries. + + 7.8.02 Goetz + Implemented scc algorithm. Added datastructure to mark + backedges (ana/backedge.h) and to represent loops + (ana/irloop.h). The scc algorithm (ana/irscc.c) builds + both datastructures. + The algorithm does not yet work properly for interprocedural + graphs. Finds more loops than only recursions. + + Improved place_code: now moves nodes out of loops. + Fixed bug in iropt.c: wrong parameter in debug info: iropt_dbg.c + Now flag set_opt_control_flow can be set to 1 again. + + 11.7.2002 Goetz + Viele Aenderungen, + u.a. Zugrffsfkt normalisiert, + global, frame type nicht mehr in irp_types + interproz darstellung + mehr Zugriffsfkt bei entitaeten + u.v.a. + + 25.4.2002 Goetz + Added several constructors to tv. + Changed xgprintf so that full precision of double tvs is printed. + Fixed bug in irouts.c. + + 22.4.2002 Goetz + Added debug support, renamed stuff in ir/debug. + Optimizations still loose debug information. + + 19.3.2002 Goetz + Added flag "peculiarity" to entity.h, type.h. + + 15.3. Goetz + Bug: dominator construction aborts for BreakTest with flag 3.31 + Problem: optimization of many subsequent blocks (Jmp-chains) + where one is inlined (Tuple control flow) in a loop. Not all + nodes in merged blocks are moved to remaining block. + Fix: different calling order to optimize_in_place_2 from + optimize_in_place_wrapper. + Bug: dumping cfg when a block is Bad. Fix: Output Bad node. + Change: not only turn off cse but all optimizations during + inlining. + + 15.3. Goetz + Parted common.h into two files common_t.h. By this config.h + as well as the preprocessor flags are no more visible externaly. + Adapted include directives. + + 12.3. Goetz + Bugfix in inlining: problems in combination with cse. + + 8.3. Goetz + Implemented cf optimizations. + Checked compiler flags -- sorted better to fit optimizations. + + 4.3. Goetz + Bugfix in irdom. + Implemented code placement. + + 28.2 Goetz + block walk in irouts. + irdom implemented: dominator information. + + 25.2. Goetz + Bugfix Optmierung Binops mit mode Tupel. + + 22.2. Goetz + irgopt: inline_small_irgs implemented + + 30.1. - 20.2. Goetz + Bugfixes, some access functions ... + + 29.1.2002 Goetz + New directory: ana for analyses. Adapted configure/makefiles + implemented irout: backedges. Added one field to ir_graph, one to ir_node. + Implemented state management for irgraphs: see irgraph.h. + Must now call finalize_cons() after graph construction!! + + 24.1.2002 Goetz + Procedure global cse. + Flag pinned in irop, irgraph. + Global cse in irop, setting the irgraph flag. + Example programs: Endless_loop.c. global_cse.c. + Adapted irdump. + + 23.1.2002 Goetz + Implemented support for endless loops: + Adapted End node. + Adapted Phi constructors so that memory phis are added. + Adapted Cond optimization: add block to End. + Adapted dead node elimination: compation of Ends predecessors + Adapted inlineing: remember keepalives of inlined graph. + Added informative strings to asserts in irvrfy. + + 21.1.2002 Goetz + Added volatile flag to entity, order flag to array. + Added a set of assertions. + + 17.1.2002 Goetz + Added access function set_class_members() + + 21.12.2001 Goetz + Asserts in irvrfy that verify the mode of Proj nodes. For Start, + Call, Return they check the corresponding function type! Corrected + bugs in testprograms. + Some asserts for legal values of 'pos' arguments in type/entity + access routines. + + 20.12.2001 Goetz + Some access routines for visited flags in entity.h, irnode.h, + bug in oo_program_example. + + 17.12.2001 Boris + Removed all obsolete Makefiles + + 10.12.2001 Goetz + Added support for constant entities. A new example program illustrates + their use. Extended dumper routines to dump constant values. + + 30.11.2001 Goetz + Extendend "comfortable" construction interface by some methods + serving as simple shortcuts. + + 30.11.2001 Goetz + Added a class type to irgs. This class type is to be used as owner + for local entities of the procedure. This are all entities allocated + for each execution of the procedure. + The class type is allocated automatically by new_ir_graph(). Access + routines to get this type are in irgraph.h. + We chose a class type as this allows to represent "inner" procedures + as, e.g., in Pascal. + Adapted array-stack-example. + + 29.11.2001 Goetz + irdump outputs nodeids instead of pointers for labels of nodes. + With a preprocessor flag in common.h this can be turned off. + + 28.11.2001 Boris + Added an Id tag to every .c and .h file + + 20.11.2001 Goetz + Changed SSA constuction for exception control flow. + If PRECISE_EXC_CONTEXT is used Phi nodes will use the values + valid when the execption operation was allocated. This increases + the memory consuption of the construction algorithm by + n_loc * #fragile_ops. + + 19.11.2001 Goetz + Added method to replace in array of a node in irnode.c/h + Added functionality to irgmod: + * collect all Phi nodes as link-list in the Blocks link field + * collect all Proj nodes as link-list in node producing the tuple. + * Seperate a Block into two + Added inlining transformation in irgopt.h + Improved output of dump_ir_block_graph. Now also dumps nodes that + don't belong to a block. + Added flag opt_unreachable_code, opt_inline. + Changed irvrfy so that it accepts nodes with Bad predecessors. + + 19.10.2001 Boris + renamed get_type_nameid to get_type_ident + + 10.9.2001 Goetz + Bugfix: dead node elimination did not replace the hash table + for cse. + + 29.8.2001 Goetz + Added routine remove_irp_irg. + Changed comment to free_ir_graph. + + 29.8.2001 Goetz + Added routine to free irgraphs. + + 17.7.2001 Goetz + Improved add routines to sub, supertype in type.c + + 12.7.2001 Goetz Added implementation of overwrites stuff. 11.7.2001 Goetz