Comment 27 for bug 674146

Revision history for this message
Matthias Klose (doko) wrote :

with the backport of PR44768, this looks better:

--- parsehelp.s 2010-11-26 15:19:47.000000000 +0000
+++ ../parsehelp.s 2010-11-26 15:08:31.000000000 +0000
@@ -208,16 +208,15 @@
        .thumb_func
        .type parse_error_msg.clone.1, %function
 parse_error_msg.clone.1:
- @ Volatile: function does not return.
        @ args = 4, pretend = 0, frame = 0
        @ frame_needed = 0, uses_anonymous_args = 0
- push {r7, lr}
+ push {r4, r5, r6, r7, r8, lr}
        sub sp, sp, #8
        mov r4, r2
        mov r6, r0
        mov r5, r1
        mov r7, r3
- ldr r8, [sp, #16]
+ ldr r8, [sp, #32]
        cbz r2, .L41
        ldr r3, [r2, #4]
        cbz r3, .L41
@@ -236,7 +235,7 @@
        mov r0, r8
        bl sprintf
        add sp, sp, #8
- pop {r7, pc}
+ pop {r4, r5, r6, r7, r8, pc}
 .L41:
        movw r1, #:lower16:.LC10
        movs r2, #5
@@ -246,11 +245,11 @@
        ldr r4, [r5, #0]
        ldr r3, [r6, #0]
        mov r2, r7
- str r4, [sp, #16]
+ str r4, [sp, #32]
        mov r1, r0
        mov r0, r8
        add sp, sp, #8
- pop {r7, lr}
+ pop {r4, r5, r6, r7, r8, lr}
        b sprintf
        .size parse_error_msg.clone.1, .-parse_error_msg.clone.1
        .align 2