start register allocator again, fix typo
[libfirm] / ir / be / TEMPLATE / TEMPLATE_gen_decls.c
index d2a636e..2c5b003 100644 (file)
@@ -4,6 +4,10 @@
  * @version $Id$
  */
 
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
 #include <stdlib.h>
 #include <string.h>
 #include <ctype.h>
@@ -184,10 +188,18 @@ static void do_dump_atomic_init(struct obstack *obst, ir_node *init)
       obstack_printf(obst, "%s", get_entity_ld_name(get_SymConst_entity(init)));
       break;
 
-    case symconst_size:
+    case symconst_ofs_ent:
+      obstack_printf(obst, "%d", get_entity_offset_bytes(get_SymConst_entity(init)));
+      break;
+
+    case symconst_type_size:
       obstack_printf(obst, "%d", get_type_size_bytes(get_SymConst_type(init)));
       break;
 
+    case symconst_type_align:
+      obstack_printf(obst, "%d", get_type_alignment_bytes(get_SymConst_type(init)));
+      break;
+
     default:
       assert(0 && "dump_atomic_init(): don't know how to init from this SymConst");
     }
@@ -339,7 +351,7 @@ static void dump_string_cst(struct obstack *obst, entity *ent)
       if (isprint(c))
        obstack_printf(obst, "%c", c);
       else
-       obstack_printf(obst, "%O", c);
+       obstack_printf(obst, "\\%o", c);
       break;
     }
   }
@@ -367,8 +379,8 @@ static void dump_global(struct obstack *rdata_obstack, struct obstack *data_obst
    * FIXME: did NOT work for partly constant values
    */
   if (! is_Method_type(ty)) {
-    ent_variability variability = get_entity_variability(ent);
-    visibility visibility = get_entity_visibility(ent);
+    ir_variability variability = get_entity_variability(ent);
+    ir_visibility visibility = get_entity_visibility(ent);
 
     if (variability == variability_constant) {
       /* a constant entity, put it on the rdata */