[Bug 705689] Re: unity-2d-launcher crashes with segfault error on armel (natty only)
Michael Casadevall
705689 at bugs.launchpad.net
Mon Jan 31 13:22:32 UTC 2011
Test code on maverick (no explicate it block):
mcasadevall at risingsun:/srv/chroots/maverick-armel$ cat test.c
#include <stdio.h>
int _q_value = 10;
inline bool testAndSetOrdered(int expectedValue, int newValue)
{
register int result;
asm volatile("0:\n"
"ldrex %[result], [%[_q_value]]\n"
"eors %[result], %[result], %[expectedValue]\n"
"strexeq %[result], %[newValue], [%[_q_value]]\n"
"teqeq %[result], #1\n"
"beq 0b\n"
: [result] "=&r" (result),
"+m" (_q_value)
: [expectedValue] "r" (expectedValue),
[newValue] "r" (newValue),
[_q_value] "r" (&_q_value)
: "cc", "memory");
return result == 0;
}
int main() {
return testAndSetOrdered(1, 1);
}
Relevant disassembly from objdump:
00008378 <_Z17testAndSetOrderedii>:
8378: b490 push {r4, r7}
837a: b082 sub sp, #8
837c: af00 add r7, sp, #0
837e: 6078 str r0, [r7, #4]
8380: 6039 str r1, [r7, #0]
8382: f241 0124 movw r1, #4132 ; 0x1024
8386: f2c0 0101 movt r1, #1
838a: 6878 ldr r0, [r7, #4]
838c: f8d7 c000 ldr.w ip, [r7]
8390: f241 0324 movw r3, #4132 ; 0x1024
8394: f2c0 0301 movt r3, #1
8398: f241 0224 movw r2, #4132 ; 0x1024
839c: f2c0 0201 movt r2, #1
83a0: e853 4f00 ldrex r4, [r3]
83a4: 4044 eors r4, r0
83a6: bf02 ittt eq
83a8: e843 c400 strexeq r4, ip, [r3]
83ac: f094 0f01 teqeq r4, #1
83b0: e7f6 beq.n 83a0 <_Z17testAndSetOrderedii+0x28>
83b2: 2c00 cmp r4, #0
83b4: bf14 ite ne
83b6: 2300 movne r3, #0
83b8: 2301 moveq r3, #1
83ba: b2db uxtb r3, r3
83bc: 4618 mov r0, r3
83be: f107 0708 add.w r7, r7, #8
83c2: 46bd mov sp, r7
83c4: bc90 pop {r4, r7}
83c6: 4770 bx lr
--
You received this bug notification because you are a member of Kubuntu
Bugs, which is subscribed to qt4-x11 in ubuntu.
https://bugs.launchpad.net/bugs/705689
Title:
unity-2d-launcher crashes with segfault error on armel (natty only)
More information about the kubuntu-bugs
mailing list