Added 'Changes' files to archive
authorChristian Schäfer <schaefer@ipd.info.uni-karlsruhe.de>
Wed, 31 May 2000 11:43:28 +0000 (11:43 +0000)
committerChristian Schäfer <schaefer@ipd.info.uni-karlsruhe.de>
Wed, 31 May 2000 11:43:28 +0000 (11:43 +0000)
[r10]

Changes [new file with mode: 0644]
ir/adt/array.h

diff --git a/Changes b/Changes
new file mode 100644 (file)
index 0000000..a9f63ce
--- /dev/null
+++ b/Changes
@@ -0,0 +1,184 @@
+  15.2.2000 Goetz
+  Added access routine to attribute link of irnode in irnode.ch.
+  Added get_negated_pnc to irnode.ch.
+
+  14.2.2000 Goetz
+  Added an iterator in iropt that calls the optimization for all nodes.
+  Copied optimize's code to optimize_in_place and removed deallocations.
+  Made set_irn_n in irnode.c public.
+  Added Bad as possible cfg predecessor in is_cfg_node in irnode.  Bads
+  are allowded as cfgpredecessors to represent dead "incoming" control
+  flow.
+  Added call to optimize_in_place in mature_block. Is this useful?
+
+  10.2.2000 Goetz
+  Changed tests from comparing enums to comparing pointers. This is more
+  efficient and reads better.  e.g., instead get_irn_opcode == irm_And
+  now get_irn_op == op_And
+
+  10.2.2000 Goetz
+  Compared equivalent_value to the one in the original fiasco.
+  Added a test in case iro_And.
+  Changed implementation of iro_Div. Added routines turn_into_tuple
+    and set_irn_op() in irgmod/irnode.
+  Changed implementation of irn_Minus (although commented out).
+  Now all features are ported or documented for this function.
+
+  10.2.2000 Goetz
+  Compared computed_value to the one in the original fiasco.
+  Added one further optimization in case iro_Proj.
+  Now all features are ported for this function.
+
+  9.2.2000 Goetz
+  Updated comments in ircons.h.
+
+  9.2.2000 Goetz
+  Changed possible attribute of SymConst from type_class to type.
+  SymConst size could be the size of a union, array, ...
+
+  9.2.2000 Goetz
+  Implemented two dumpers that dump type information and a graph with
+  type information.
+
+  9.2.2000 Goetz
+  Implemented a walker that walks over the type informatin that can
+  be reached from an ir node.
+  Added routine get_kind(firm_thing) in common.h, Added file common.c.
+  Added files typewalk.ch and routines to irdump.
+  Added visited flags and initialization to entity and all types.
+  Implemented some of the missing access routines in type.c, entity.c
+
+  9.2.2000 Goetz
+  Implemented constructor for ShrA.
+  Added type struct.
+  Added routine that iterates the graph and verifies all nodes.
+  Added Phi_in stack to irgraph.  This allows to build several
+    graphs at once with respect to the Phi building algorithm.
+
+  9.2.2000 Goetz
+  Implemented dumper for control flow graphs.  Changed irr_* and dead_*
+  examples to dump cfg.
+
+  8.2.2000 Goetz
+  Implemeted explicit stack for the Phi node generation.  See ircons.c.
+
+  8.2.2000 Goetz
+  added include string.h in xoprintf.c to get rid of warning:
+  implicit declaration of function `bcopy'
+
+  7.2.2000 Goetz
+  Worked on iropt.c:
+  Added more cases to equivalent_node.
+  Portet gigo, identify, identify_remember.
+  The set/pset library can not handle several hash tables.  At least,
+  compiling several procedures causes a segmentation fault during access
+  to the tables (oo_program_example).  Need to work on this.
+  transform_node still needs to be ported.
+  some cases in equivalent_node are still missing.
+
+  To get it running I had to remove the call to optimize in the
+  new_Block constructor. It can only be called when the Block is
+  mature.
+
+  7.2.2000 Goetz
+  Introduced a walker that walks only over blocks.  The asserts
+  might be too strict for general graphs, but so far it works.
+  For the walker I introduced an additional flag in the attribute
+  of Blocks, an a global block_visited variable (in irgraph.h).
+  Furhter I modularized dump_ir_node, implemented dump_ir_graph
+  with the existing walker, and added new routines to output a
+  basic block graph.
+  Changed the examples to call the new dump routine.
+
+  7.2.2000 Goetz
+  Added auxiliary routines to ir_node:
+  skip_Proj, skip_Nop, is_Bad ...
+  Changed access routines to use get_irn_n instead of explicit array
+  accesses. Changed get_irn_n to call skip_Id, so that the access routines
+  never will return Id nodes.
+
+  3.2.2000 Goetz
+  Repaired Phi computation, changed new_r_Phi_in.  Added test program to
+  test irregular controlflow.
+
+  2.2.2000 Goetz
+  Updated optimizations computed_value and equivalent_node to new
+  Syntax of FIRM nodes and to use access routines.
+  Added routine skip_Proj in irnode.
+
+  2.2.2000 Boris Boesler
+  Added files irgwalk.c and irgwalk.h. They include a simple function to
+  traverse an ir graph and execute pre and post functions to current node.
+
+  1.2.2000 Goetz
+  Added arrays with parameters and result types to the type informtion
+  of a procedure.  This is needed for the code generation.  Also added
+  the corresponding access routines.
+  Adapted the testprograms.
+
+  1.2.2000 Goetz
+  Found a bug / complication:  the call order
+    get_value   (makes Phi0, put's it into graph_arr)
+    set_value   (overwrites Phi0 in graph_arr)
+    mature_block (upgrades Phi0, puts it again into graph_arr, overwriting
+                  the proper value.)
+  fails.  Added test wether graph_arr is already set in phi_merge.
+
+  Added tons of comments to explain Phi generation -- the stack hack.
+
+
+  27.1.2000 Goetz
+  irdump now outputs the pnc_number for projs of Cmp nodes.
+  Added routine to access the pnc_string.
+
+  27.1.2000 Goetz
+  Added result "dataseg" to Start node, with all it's consequences.
+  We need this for the compiler lab to translate global variables.
+  Now they can be selected from the data segment, and the start
+  node supplies the pointer to this segment.
+  These changes are guarded by preprocessor variable UEBPRAKT in
+  common.h
+  Changed files: common.h, irgraph.ch, irnode.h
+
+  26.1.2000 Goetz
+  Testprograms:
+  removed array_example, added array-heap_example and
+  array-stack_example and adapted makefile.
+  ir_lib:
+  Entity now also allows type_method as owner. This is to model
+  the stack, Sel nodes that select a variable (array) from the
+  stack need an entity that describes what they select.  This
+  entity gets the type of the enclosing procedure as owner.
+
+  24.1.2000 Chris
+  Added future access routines in `irmode.[ch]' as comments,
+    that all attributes in the ir_mode struct can be user-defined.
+  Added access routines in `irgraph.[ch]', for all attributes.
+
+  22.1.2000 Chris
+  Moved verify routines from `irgraph.[ch]' to own files `irvrfy.[ch]'.
+  Added `irvrfy.[ch]' to MAKEFILE
+  Added "inline" before access routines in `irnode.h', that no warnings
+    will appear furthermore.
+  Added three more access routines in `irmode.[ch]':
+       struct tarval *get_min_of_mode (ir_mode *mode);
+       struct tarval *get_max_of_mode (ir_mode *mode);
+       struct tarval *get_null_of_mode (ir_mode *mode);
+
+  21.1.2000 Goetz
+  Adaption of Alloc, Sel and Entity to new types:
+    Changed array_example to use type instead of type_class.
+    Changed entity to allow all types as owner instead of
+      only type_class.  Added routine "assert_legal_owner_of_ent(type* type)".
+    Changed alloc to allow allocating variables of any type instead of
+      only type_class.
+    Adapted all testprograms to avoid warnings.
+
+  removed dtest ... from Makefile, replaced by test.
+
+  20.1.2000 Goetz
+  Added "run" to makefile, added array_example to makefile of testprograms.
+  Corrected testprogram array
+  Changed assert in irvrfy -- Conv.
+  Started Change log.
+  Started TODO log.
index 11c0be6..2deb93e 100644 (file)
 #endif
 
 
-/* Private */
-/* Don't try this at home, kids, we're trained professionals ;-> */
-
-// ... or at the IPD, either.
+/* Private !!!
+   Don't try this at home, kids, we're trained professionals ;->
+   ... or at the IPD, either. */
 #ifdef NDEBUG
 # define _ARR_DBGINF_DECL
 # define _ARR_SET_DBGINF(descr, co, es) ((co), (es))