remove #ifdef HAVE_CONFIG_Hs
[libfirm] / ir / ana / rta.c
index 9fad784..7964fa8 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 1995-2007 University of Karlsruhe.  All right reserved.
+ * Copyright (C) 1995-2008 University of Karlsruhe.  All right reserved.
  *
  * This file is part of libFirm.
  *
@@ -24,9 +24,7 @@
  * @version  09.06.2002
  * @version  $Id$
  */
-#ifdef HAVE_CONFIG_H
-# include "config.h"
-#endif
+#include "config.h"
 
 #include "rta.h"
 
@@ -244,9 +242,11 @@ static int rta_fill_incremental (void)
   int i;
   int n_runs = 0;
   int rerun  = TRUE;
+#ifdef INTERPROCEDURAL_VIEW
   int old_ip_view = get_interprocedural_view();
 
   set_interprocedural_view(0);     /* save this for later */
+#endif
 
   /* init_tables has added main_irg to _live_graphs */
 
@@ -296,7 +296,9 @@ static int rta_fill_incremental (void)
     n_runs ++;
   }
 
+#ifdef INTERPROCEDURAL_VIEW
   set_interprocedural_view(old_ip_view); /* cover up our traces */
+#endif
 
   return (n_runs);
 }
@@ -349,7 +351,7 @@ static void force_description (ir_entity *ent, ir_entity *addr)
       ir_node *f_addr = get_atomic_ent_value (over);
       ir_entity *impl_ent = get_SymConst_entity (f_addr);
 
-      assert ((get_irn_op(f_addr) == op_SymConst) && "can't do complex addrs");
+      assert(is_SymConst(f_addr) && "can't do complex addrs");
       if (impl_ent == addr) {
         assert (0 && "gibt's denn sowas");
         force_description (over, addr);
@@ -447,9 +449,10 @@ void rta_init (int do_verbose)
  * Changes the peculiarity of entities that represents
  * dead graphs to peculiarity_description.
  */
-static void make_entity_to_description(type_or_ent *tore, void *env) {
-  if (get_kind(tore) == k_entity) {
-    ir_entity *ent = (ir_entity *)tore;
+static void make_entity_to_description(type_or_ent tore, void *env) {
+  (void) env;
+  if (is_entity(tore.ent)) {
+    ir_entity *ent = tore.ent;
 
     if ((is_Method_type(get_entity_type(ent)))                        &&
         (get_entity_peculiarity(ent) != peculiarity_description)      &&
@@ -477,9 +480,7 @@ void rta_delete_dead_graphs (void)
   int rem_vpi = get_visit_pseudo_irgs();
   set_visit_pseudo_irgs(1);
 
-  if (!get_optimize() || !get_opt_dead_method_elimination()) return;
-
-  dead_graphs = xmalloc(sizeof(*dead_graphs) * get_irp_n_irgs());
+  dead_graphs = XMALLOCN(ir_graph*, get_irp_n_irgs());
 
   for (i = 0; i < n_graphs; i++) {
     graph = get_irp_irg(i);
@@ -563,136 +564,3 @@ void rta_report (void)
     }
   }
 }
-
-
-/*
- * $Log$
- * Revision 1.41  2007/03/22 10:39:33  matze
- * a bunch of fixes to make firm work with NDEBUG and without DEBUG_libfirm
- *
- * Revision 1.40  2007/01/16 15:45:15  beck
- * renamed type opcode to ir_opcode
- *
- * Revision 1.39  2006/12/13 13:15:12  beck
- * renamed entity -> ir_entity
- *
- * Revision 1.38  2006/12/12 16:12:05  beck
- * Fixed missing initialization
- *
- * Revision 1.37  2006/12/11 15:28:48  matze
- * - Several warning fixes
- * - Fixes for compilation without DEBUG_libfirm
- * - Fixed for compilation without WITH_LIBCORE (but it's still broken)
- *
- * Revision 1.36  2006/06/05 15:58:12  beck
- * added support for Thread local storage
- * added more doxygen docu
- *
- * Revision 1.35  2006/01/13 21:51:59  beck
- * renamed all types 'type' to 'ir_type'
- *
- * Revision 1.34  2006/01/02 15:01:16  beck
- * missing include added
- *
- * Revision 1.33  2005/11/17 17:26:57  beck
- * removed bool type and depency from stdbool.h (not C89)
- *
- * Revision 1.32  2005/01/05 14:24:52  beck
- * renames all is_x*_type() functions to is_X*_type() to prevent name clash with EDG frontend
- *
- * Revision 1.31  2004/12/21 13:45:14  beck
- * removed C99 constructs
- *
- * Revision 1.30  2004/12/02 16:16:11  beck
- * fixed config.h include
- * used xmalloc instead of malloc
- *
- * Revision 1.29  2004/11/11 13:28:08  goetz
- * made pseudo irg aware
- *
- * Revision 1.28  2004/11/03 14:47:18  beck
- * removed gloval intraprocedural_view variable and replaced by get_*() set_*() functions
- *
- * Revision 1.27  2004/10/21 07:23:34  goetz
- * comments
- *
- * Revision 1.26  2004/10/20 14:59:27  liekweg
- * Removed ecg
- *
- * Revision 1.25  2004/10/18 12:47:08  liekweg
- * avoid warning
- *
- * Revision 1.24  2004/09/24 13:59:04  beck
- * fixed doxygen comments, removed initialization for description entities
- *
- * Revision 1.23  2004/08/19 16:51:02  goetz
- * fixed some errors, pushed closer to inteded firm semantics
- *
- * Revision 1.22  2004/08/13 08:57:15  beyhan
- * normalized names of functions, enums ...
- * added suffix as argument to dumpers, removed global variable
- * removed support for tarval/Const
- *
- * Revision 1.21  2004/07/08 15:50:56  goetz
- * firmstat added
- *
- * Revision 1.20  2004/07/08 11:17:40  goetz
- * *** empty log message ***
- *
- * Revision 1.19  2004/07/06 12:30:37  beyhan
- * new SymConst semantics
- *
- * Revision 1.18  2004/06/27 21:17:41  liekweg
- * Added comment
- *
- * Revision 1.17  2004/06/25 13:45:13  liekweg
- * observe stickyness; minor refactoring
- *
- * Revision 1.16  2004/06/24 06:42:14  goetz
- * test of firm flags
- *
- * Revision 1.15  2004/06/18 15:47:19  liekweg
- * minor bug fix (go forward, not backward) --flo
- *
- * Revision 1.14  2004/06/18 13:12:43  liekweg
- * final bug fix (calls via consts)
- *
- * Revision 1.13  2004/06/17 16:34:33  liekweg
- * removed DD*s
- *
- * Revision 1.12  2004/06/17 16:33:33  liekweg
- * minor bug fix
- *
- * Revision 1.11  2004/06/17 14:21:13  liekweg
- * major bugfix
- *
- * Revision 1.10  2004/06/17 10:31:41  goetz
- * irscc: bugfix, can now deal with loops not reachable from start
- * cgana: bugfix, skip_Tuple
- * rta: improved
- *
- * Revision 1.9  2004/06/17 08:56:03  liekweg
- * Fixed typos in comments
- *
- * Revision 1.8  2004/06/17 08:33:01  liekweg
- * Added comments; added remove_irg
- *
- * Revision 1.6  2004/06/14 13:02:03  goetz
- * bugfixesbug
- *
- * Revision 1.5  2004/06/13 15:03:45  liekweg
- * RTA auf Iterative RTA aufgebohrt --flo
- *
- * Revision 1.4  2004/06/12 19:35:04  liekweg
- * Kommentare eingef"ugt --flo
- *
- * Revision 1.3  2004/06/12 17:09:46  liekweg
- * RTA works, outedges breaks.  "Yay." --flo
- *
- * Revision 1.2  2004/06/11 18:25:39  liekweg
- * Added todo
- *
- * Revision 1.1  2004/06/11 18:24:18  liekweg
- * Added RTA --flo
- *
- */