X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fbe%2Farm%2Farm_emitter.c;h=57add004071d654379ee12d475833f170d4a28d3;hb=3c3425a50a1d721b74a015c6812257e32feeac85;hp=c504abccdf00c0a8a5636e8e719047c024cb0663;hpb=60b3885b0fd1600baa9cd9b27fd6dba212221baa;p=libfirm diff --git a/ir/be/arm/arm_emitter.c b/ir/be/arm/arm_emitter.c index c504abccd..57add0040 100644 --- a/ir/be/arm/arm_emitter.c +++ b/ir/be/arm/arm_emitter.c @@ -275,11 +275,21 @@ void arm_emitf(const ir_node *node, const char *format, ...) be_emit_char('\t'); for (;;) { const char *start = format; - while (*format != '%' && *format != '\0') + while (*format != '%' && *format != '\n' && *format != '\0') ++format; - be_emit_string_len(start, format-start); + be_emit_string_len(start, format - start); + if (*format == '\0') break; + + if (*format == '\n') { + ++format; + be_emit_char('\n'); + be_emit_write_line(); + be_emit_char('\t'); + continue; + } + ++format; switch (*format++) { @@ -375,15 +385,9 @@ void arm_emitf(const ir_node *node, const char *format, ...) break; } - case '\n': - be_emit_char('\n'); - be_emit_write_line(); - be_emit_char('\t'); - break; - default: unknown: - panic("unknown format conversion in arm_emitf()"); + panic("unknown format conversion"); } } va_end(ap); @@ -619,12 +623,12 @@ static void emit_be_Copy(const ir_node *irn) if (USE_FPA(isa)) { arm_emitf(irn, "mvf %D0, %S0"); } else { - panic("emit_be_Copy: move not supported for this mode"); + panic("move not supported for this mode"); } } else if (mode_is_data(mode)) { arm_emitf(irn, "mov %D0, %S0"); } else { - panic("emit_be_Copy: move not supported for this mode"); + panic("move not supported for this mode"); } }