fixed be_Return gen
[libfirm] / ir / be / ia32 / ia32_gen_decls.c
index 7754ff7..08608e7 100644 (file)
@@ -141,7 +141,7 @@ static void do_dump_atomic_init(struct obstack *obst, ir_node *init)
                tv = get_Const_tarval(init);
 
                /* beware of old stuff */
-               assert(! mode_is_reference(mode));
+               //assert(! mode_is_reference(mode));
 
                /* it's a arithmetic value */
                dump_arith_tarval(obst, tv, bytes);
@@ -157,10 +157,14 @@ 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_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");
                }
@@ -308,6 +312,7 @@ static void dump_string_cst(struct obstack *obst, entity *ent)
                case '\n': obstack_printf(obst, "\\n"); break;
                case '\r': obstack_printf(obst, "\\r"); break;
                case '\t': obstack_printf(obst, "\\t"); break;
+               case '\\': obstack_printf(obst, "\\\\"); break;
                default  :
                        if (isprint(c))
                                obstack_printf(obst, "%c", c);