[poky] Bad ARM code with GCC 4.7.1
Martin Jansa
martin.jansa at gmail.com
Thu May 10 13:06:23 PDT 2012
On Thu, May 10, 2012 at 11:08:08AM -0600, Gary Thomas wrote:
> On 2012-05-10 10:30, Khem Raj wrote:
> > On Thu, May 10, 2012 at 9:17 AM, Gary Thomas<gary at mlbassoc.com> wrote:
> >>
> >> My board is DM3730, much like a BeagleBoard
> >> ARM architecture: armv7a
> >> Linux kernel 3.0
> >
> > hmmm that should be able to handle alignment faults in hardware
> >
> >>
> >>
> >>>
> >>> gcc generate unaligned accesses by default
> >>>
> >>> Does adding -mno-unaligned-access to cflags help ?
> >>
> >>
> >> I'll check.
>
> Using -mno-unaligned-access fixes this problem, but the kernel just dies a bit
> later on (kernel 3.0 + gcc 4.7.1 == bad owies...)
We had to use -mno-unaligned-access in kernel Makefile even with gcc-4.6
since gcc-4.6/linaro/gcc-4.6-linaro-r106827.patch was added in meta-oe.
And it was affecting
nokia900 (2.6.37 based kernel)
crespo - Samsung Nexus S (3.0.8 based kernel)
but with -mno-unaligned-access and gcc-4.7 we don't see any new issues.
Cheers,
>
> >
> > Its not entirely clear whats going on so post the complete function disassembly
> > so further context can be seen as well.
>
> Code dump attached - first with /m, then with /r
>
> --
> ------------------------------------------------------------
> Gary Thomas | Consulting for the
> MLB Associates | Embedded world
> ------------------------------------------------------------
> Dump of assembler code for function pcpu_dump_alloc_info:
> 1083 {
> 0xc03fb7dc <+4>: push {r4, r5, r6, r7, r8, r9, r10, r11, lr}
> 0xc03fb7e0 <+8>: sub sp, sp, #60 ; 0x3c
> 0xc03fb7e8 <+16>: str r0, [sp, #28]
> 0xc03fb7f8 <+32>: mov r4, r1
>
> 1084 int group_width = 1, cpu_width = 1, width;
> 0xc03fb808 <+48>: mov r7, #1
> 0xc03fb828 <+80>: mov r6, #1
>
> 1085 char empty_str[] = "--------";
> 0xc03fb7d8 <+0>: ldr r3, [pc, #552] ; 0xc03fba08 <pcpu_dump_alloc_info+560>
> 0xc03fb7e4 <+12>: ldr r2, [r3]
> 0xc03fb7ec <+20>: str r2, [sp, #47] ; 0x2f
> 0xc03fb7f0 <+24>: ldr r2, [r3, #4]
> 0xc03fb7f4 <+28>: ldrb r3, [r3, #8]
> 0xc03fb7fc <+36>: str r2, [sp, #51] ; 0x33
> 0xc03fb800 <+40>: strb r3, [sp, #55] ; 0x37
>
> 1086 int alloc = 0, alloc_end = 0;
> 0xc03fb8e0 <+264>: mov r8, r5
> 0xc03fb8f0 <+280>: str r5, [sp, #24]
>
> 1087 int group, v;
> 1088 int upa, apl; /* units per alloc, allocs per line */
> 1089
> 1090 v = ai->nr_groups;
> 0xc03fb804 <+44>: ldr r0, [r1, #28]
>
> 1091 while (v /= 10)
> 0xc03fb80c <+52>: b 0xc03fb814 <pcpu_dump_alloc_info+60>
> 0xc03fb814 <+60>: mov r1, #10
> 0xc03fb818 <+64>: bl 0xc02386b8 <__divsi3>
> 0xc03fb81c <+68>: cmp r0, #0
> 0xc03fb820 <+72>: bne 0xc03fb810 <pcpu_dump_alloc_info+56>
>
> 1092 group_width++;
> 0xc03fb810 <+56>: add r7, r7, #1
>
> 1093
> 1094 v = num_possible_cpus();
> 1095 while (v /= 10)
> 0xc03fb840 <+104>: b 0xc03fb848 <pcpu_dump_alloc_info+112>
> 0xc03fb848 <+112>: mov r0, r5
> 0xc03fb84c <+116>: mov r1, #10
> 0xc03fb850 <+120>: bl 0xc02386b8 <__divsi3>
> 0xc03fb854 <+124>: subs r5, r0, #0
> 0xc03fb858 <+128>: bne 0xc03fb844 <pcpu_dump_alloc_info+108>
>
> 1096 cpu_width++;
> 0xc03fb844 <+108>: add r6, r6, #1
>
> 1097 empty_str[min_t(int, cpu_width, sizeof(empty_str) - 1)] = '\0';
> 0xc03fb85c <+132>: add r1, sp, #56 ; 0x38
> 0xc03fb860 <+136>: cmp r6, #8
> 0xc03fb864 <+140>: movlt r3, r6
> 0xc03fb868 <+144>: movge r3, #8
> 0xc03fb86c <+148>: add r3, r1, r3
> 0xc03fb878 <+160>: strb r5, [r3, #-9]
>
> 1098
> 1099 upa = ai->alloc_size / ai->unit_size;
> 0xc03fb870 <+152>: ldr r9, [r4, #20]
> 0xc03fb874 <+156>: ldr r11, [r4, #12]
> 0xc03fb87c <+164>: mov r1, r11
> 0xc03fb880 <+168>: mov r0, r9
> 0xc03fb884 <+172>: bl 0xc023857c <__udivsi3>
> 0xc03fb890 <+184>: mov r10, r0
>
> 1100 width = upa * (cpu_width + 1) + group_width + 3;
> 0xc03fb888 <+176>: add r1, r6, #1
> 0xc03fb88c <+180>: mla r1, r1, r0, r7
>
> 1101 apl = rounddown_pow_of_two(max(60 / width, 1));
> 0xc03fb894 <+188>: add r1, r1, #3
> 0xc03fb898 <+192>: mov r0, #60 ; 0x3c
> 0xc03fb89c <+196>: bl 0xc02386b8 <__divsi3>
> 0xc03fb8ac <+212>: cmp r0, #1
> 0xc03fb8b0 <+216>: movlt r0, #1
>
> 1102
> 1103 printk("%spcpu-alloc: s%zu r%zu d%zu u%zu alloc=%zu*%zu",
> 0xc03fb8a8 <+208>: mov r1, r8
> 0xc03fb8bc <+228>: mov r0, r9
> 0xc03fb8c4 <+236>: ldr r3, [r4, #8]
> 0xc03fb8cc <+244>: stm sp, {r3, r11}
> 0xc03fb8d0 <+248>: bl 0xc023857c <__udivsi3>
> 0xc03fb8d4 <+252>: str r8, [sp, #12]
> 0xc03fb8d8 <+256>: ldr r1, [sp, #28]
> 0xc03fb8dc <+260>: ldm r4, {r2, r3}
> 0xc03fb8e4 <+268>: str r0, [sp, #8]
> 0xc03fb8e8 <+272>: ldr r0, [pc, #288] ; 0xc03fba10 <pcpu_dump_alloc_info+568>
> 0xc03fb8ec <+276>: bl 0xc03f9f48 <printk>
>
> 1104 lvl, ai->static_size, ai->reserved_size, ai->dyn_size,
> 1105 ai->unit_size, ai->alloc_size / ai->atom_size, ai->atom_size);
> 0xc03fb8a4 <+204>: ldr r8, [r4, #16]
>
> 1106
> 1107 for (group = 0; group < ai->nr_groups; group++) {
> 0xc03fb8f4 <+284>: b 0xc03fb9ec <pcpu_dump_alloc_info+532>
> 0xc03fb9e8 <+528>: add r5, r5, #1
> 0xc03fb9ec <+532>: ldr r3, [r4, #28]
> 0xc03fb9f0 <+536>: cmp r5, r3
> 0xc03fb9f4 <+540>: blt 0xc03fb8f8 <pcpu_dump_alloc_info+288>
>
> 1108 const struct pcpu_group_info *gi = &ai->groups[group];
> 0xc03fb8f8 <+288>: mov r3, #12
> 0xc03fb900 <+296>: mul r3, r3, r5
> 0xc03fb904 <+300>: add r3, r3, #32
> 0xc03fb908 <+304>: add r2, r4, r3
> 0xc03fb910 <+312>: str r2, [sp, #36] ; 0x24
>
> 1109 int unit = 0, unit_end = 0;
> 0xc03fb938 <+352>: mov r9, r11
>
> 1110
> 1111 BUG_ON(gi->nr_units % upa);
> 0xc03fb8fc <+292>: mov r1, r10
> 0xc03fb90c <+308>: ldr r9, [r4, r3]
> 0xc03fb914 <+316>: mov r0, r9
> 0xc03fb918 <+320>: bl 0xc0238854 <__aeabi_idivmod>
> 0xc03fb91c <+324>: subs r11, r1, #0
> 0xc03fb920 <+328>: beq 0xc03fb928 <pcpu_dump_alloc_info+336>
> 0xc03fb924 <+332>: b 0xc03fb924 <pcpu_dump_alloc_info+332>
>
> 1112 for (alloc_end += gi->nr_units / upa;
> 0xc03fb928 <+336>: mov r0, r9
> 0xc03fb92c <+340>: mov r1, r10
> 0xc03fb930 <+344>: bl 0xc02386b8 <__divsi3>
> 0xc03fb934 <+348>: ldr r3, [sp, #24]
> 0xc03fb93c <+356>: add r3, r3, r0
> 0xc03fb940 <+360>: str r3, [sp, #24]
> 0xc03fb944 <+364>: b 0xc03fb9dc <pcpu_dump_alloc_info+516>
> 0xc03fb9dc <+516>: ldr r3, [sp, #24]
> 0xc03fb9e0 <+520>: cmp r8, r3
> 0xc03fb9e4 <+524>: blt 0xc03fb948 <pcpu_dump_alloc_info+368>
>
> 1113 alloc < alloc_end; alloc++) {
> 0xc03fb9d8 <+512>: add r8, r8, #1
>
> 1114 if (!(alloc % apl)) {
> 0xc03fb948 <+368>: mov r0, r8
> 0xc03fb94c <+372>: ldr r1, [sp, #32]
> 0xc03fb950 <+376>: bl 0xc0238854 <__aeabi_idivmod>
> 0xc03fb954 <+380>: cmp r1, #0
> 0xc03fb958 <+384>: bne 0xc03fb970 <pcpu_dump_alloc_info+408>
>
> 1115 printk("\n");
> 0xc03fb95c <+388>: ldr r0, [pc, #176] ; 0xc03fba14 <pcpu_dump_alloc_info+572>
> 0xc03fb960 <+392>: bl 0xc03f9f48 <printk>
>
> 1116 printk("%spcpu-alloc: ", lvl);
> 0xc03fb964 <+396>: ldr r0, [pc, #172] ; 0xc03fba18 <pcpu_dump_alloc_info+576>
> 0xc03fb968 <+400>: ldr r1, [sp, #28]
> 0xc03fb96c <+404>: bl 0xc03f9f48 <printk>
>
> 1117 }
> 1118 printk("[%0*d] ", group_width, group);
> 0xc03fb970 <+408>: ldr r0, [pc, #164] ; 0xc03fba1c <pcpu_dump_alloc_info+580>
> 0xc03fb974 <+412>: mov r1, r7
> 0xc03fb978 <+416>: mov r2, r5
> 0xc03fb97c <+420>: bl 0xc03f9f48 <printk>
>
> 1119
> 1120 for (unit_end += upa; unit < unit_end; unit++)
> 0xc03fb980 <+424>: add r11, r11, r10
> 0xc03fb984 <+428>: lsl r3, r9, #2
> 0xc03fb988 <+432>: b 0xc03fb9d0 <pcpu_dump_alloc_info+504>
> 0xc03fb9c8 <+496>: add r9, r9, #1
> 0xc03fb9cc <+500>: add r3, r3, #4
> 0xc03fb9d0 <+504>: cmp r9, r11
> 0xc03fb9d4 <+508>: blt 0xc03fb98c <pcpu_dump_alloc_info+436>
>
> 1121 if (gi->cpu_map[unit] != NR_CPUS)
> 0xc03fb98c <+436>: ldr r1, [sp, #36] ; 0x24
> 0xc03fb990 <+440>: ldr r2, [r1, #8]
> 0xc03fb994 <+444>: ldr r2, [r2, r3]
> 0xc03fb998 <+448>: cmp r2, #2
> 0xc03fb99c <+452>: beq 0xc03fb9b4 <pcpu_dump_alloc_info+476>
>
> 1122 printk("%0*d ", cpu_width,
> 0xc03fb9a0 <+456>: mov r1, r6
> 0xc03fb9a4 <+460>: ldr r0, [pc, #116] ; 0xc03fba20 <pcpu_dump_alloc_info+584>
> 0xc03fb9a8 <+464>: str r3, [sp, #20]
> 0xc03fb9ac <+468>: bl 0xc03f9f48 <printk>
> 0xc03fb9b0 <+472>: b 0xc03fb9c4 <pcpu_dump_alloc_info+492>
>
> 1123 gi->cpu_map[unit]);
> 1124 else
> 1125 printk("%s ", empty_str);
> 0xc03fb9b4 <+476>: ldr r0, [pc, #104] ; 0xc03fba24 <pcpu_dump_alloc_info+588>
> 0xc03fb9b8 <+480>: add r1, sp, #47 ; 0x2f
> 0xc03fb9bc <+484>: str r3, [sp, #20]
> 0xc03fb9c0 <+488>: bl 0xc03f9f48 <printk>
> 0xc03fb9c4 <+492>: ldr r3, [sp, #20]
>
> 1126 }
> 1127 }
> 1128 printk("\n");
> 0xc03fb9f8 <+544>: ldr r0, [pc, #20] ; 0xc03fba14 <pcpu_dump_alloc_info+572>
> 0xc03fb9fc <+548>: bl 0xc03f9f48 <printk>
> 1129 }
> 0xc03fba00 <+552>: add sp, sp, #60 ; 0x3c
> 0xc03fba04 <+556>: pop {r4, r5, r6, r7, r8, r9, r10, r11, pc}
> 0xc03fba08 <+560>: subsgt r11, r0, r6, ror r1
> 0xc03fba0c <+564>: strdgt r12, [r0], #-144 ; 0xffffff70
> 0xc03fba10 <+568>: subsgt r11, r0, r9, lsr #2
> 0xc03fba14 <+572>: subsgt r4, r0, r1, ror r0
> 0xc03fba18 <+576>: subsgt r11, r0, r9, asr r1
> 0xc03fba1c <+580>: subsgt r11, r0, r8, ror #2
> 0xc03fba20 <+584>: subsgt r11, r0, r0, ror r1
> 0xc03fba24 <+588>: subsgt r9, r2, r4, asr #19
>
>
> ---------------------------------------------------------------------------------------------
> Dump of assembler code for function pcpu_dump_alloc_info:
> 0xc03fb7d8 <+0>: 28 32 9f e5 ldr r3, [pc, #552] ; 0xc03fba08 <pcpu_dump_alloc_info+560>
> 0xc03fb7dc <+4>: f0 4f 2d e9 push {r4, r5, r6, r7, r8, r9, r10, r11, lr}
> 0xc03fb7e0 <+8>: 3c d0 4d e2 sub sp, sp, #60 ; 0x3c
> 0xc03fb7e4 <+12>: 00 20 93 e5 ldr r2, [r3]
> 0xc03fb7e8 <+16>: 1c 00 8d e5 str r0, [sp, #28]
> 0xc03fb7ec <+20>: 2f 20 8d e5 str r2, [sp, #47] ; 0x2f
> 0xc03fb7f0 <+24>: 04 20 93 e5 ldr r2, [r3, #4]
> 0xc03fb7f4 <+28>: 08 30 d3 e5 ldrb r3, [r3, #8]
> 0xc03fb7f8 <+32>: 01 40 a0 e1 mov r4, r1
> 0xc03fb7fc <+36>: 33 20 8d e5 str r2, [sp, #51] ; 0x33
> 0xc03fb800 <+40>: 37 30 cd e5 strb r3, [sp, #55] ; 0x37
> 0xc03fb804 <+44>: 1c 00 91 e5 ldr r0, [r1, #28]
> 0xc03fb808 <+48>: 01 70 a0 e3 mov r7, #1
> 0xc03fb80c <+52>: 00 00 00 ea b 0xc03fb814 <pcpu_dump_alloc_info+60>
> 0xc03fb810 <+56>: 01 70 87 e2 add r7, r7, #1
> 0xc03fb814 <+60>: 0a 10 a0 e3 mov r1, #10
> 0xc03fb818 <+64>: a6 f3 f8 eb bl 0xc02386b8 <__divsi3>
> 0xc03fb81c <+68>: 00 00 50 e3 cmp r0, #0
> 0xc03fb820 <+72>: fa ff ff 1a bne 0xc03fb810 <pcpu_dump_alloc_info+56>
> 0xc03fb824 <+76>: e0 31 9f e5 ldr r3, [pc, #480] ; 0xc03fba0c <pcpu_dump_alloc_info+564>
> 0xc03fb828 <+80>: 01 60 a0 e3 mov r6, #1
> 0xc03fb82c <+84>: 00 30 93 e5 ldr r3, [r3]
> 0xc03fb830 <+88>: 00 00 93 e5 ldr r0, [r3]
> 0xc03fb834 <+92>: 03 00 00 e2 and r0, r0, #3
> 0xc03fb838 <+96>: c6 2b f9 eb bl 0xc0246758 <__sw_hweight32>
> 0xc03fb83c <+100>: 00 50 a0 e1 mov r5, r0
> 0xc03fb840 <+104>: 00 00 00 ea b 0xc03fb848 <pcpu_dump_alloc_info+112>
> 0xc03fb844 <+108>: 01 60 86 e2 add r6, r6, #1
> 0xc03fb848 <+112>: 05 00 a0 e1 mov r0, r5
> 0xc03fb84c <+116>: 0a 10 a0 e3 mov r1, #10
> 0xc03fb850 <+120>: 98 f3 f8 eb bl 0xc02386b8 <__divsi3>
> 0xc03fb854 <+124>: 00 50 50 e2 subs r5, r0, #0
> 0xc03fb858 <+128>: f9 ff ff 1a bne 0xc03fb844 <pcpu_dump_alloc_info+108>
> 0xc03fb85c <+132>: 38 10 8d e2 add r1, sp, #56 ; 0x38
> 0xc03fb860 <+136>: 08 00 56 e3 cmp r6, #8
> 0xc03fb864 <+140>: 06 30 a0 b1 movlt r3, r6
> 0xc03fb868 <+144>: 08 30 a0 a3 movge r3, #8
> 0xc03fb86c <+148>: 03 30 81 e0 add r3, r1, r3
> 0xc03fb870 <+152>: 14 90 94 e5 ldr r9, [r4, #20]
> 0xc03fb874 <+156>: 0c b0 94 e5 ldr r11, [r4, #12]
> 0xc03fb878 <+160>: 09 50 43 e5 strb r5, [r3, #-9]
> 0xc03fb87c <+164>: 0b 10 a0 e1 mov r1, r11
> 0xc03fb880 <+168>: 09 00 a0 e1 mov r0, r9
> 0xc03fb884 <+172>: 3c f3 f8 eb bl 0xc023857c <__udivsi3>
> 0xc03fb888 <+176>: 01 10 86 e2 add r1, r6, #1
> 0xc03fb88c <+180>: 91 70 21 e0 mla r1, r1, r0, r7
> 0xc03fb890 <+184>: 00 a0 a0 e1 mov r10, r0
> 0xc03fb894 <+188>: 03 10 81 e2 add r1, r1, #3
> 0xc03fb898 <+192>: 3c 00 a0 e3 mov r0, #60 ; 0x3c
> 0xc03fb89c <+196>: 85 f3 f8 eb bl 0xc02386b8 <__divsi3>
> 0xc03fb8a0 <+200>: 01 20 a0 e3 mov r2, #1
> 0xc03fb8a4 <+204>: 10 80 94 e5 ldr r8, [r4, #16]
> 0xc03fb8a8 <+208>: 08 10 a0 e1 mov r1, r8
> 0xc03fb8ac <+212>: 01 00 50 e3 cmp r0, #1
> 0xc03fb8b0 <+216>: 01 00 a0 b3 movlt r0, #1
> 0xc03fb8b4 <+220>: 10 3f 6f e1 clz r3, r0
> 0xc03fb8b8 <+224>: 1f 30 63 e2 rsb r3, r3, #31
> 0xc03fb8bc <+228>: 09 00 a0 e1 mov r0, r9
> 0xc03fb8c0 <+232>: 12 23 a0 e1 lsl r2, r2, r3
> 0xc03fb8c4 <+236>: 08 30 94 e5 ldr r3, [r4, #8]
> 0xc03fb8c8 <+240>: 20 20 8d e5 str r2, [sp, #32]
> 0xc03fb8cc <+244>: 08 08 8d e8 stm sp, {r3, r11}
> 0xc03fb8d0 <+248>: 29 f3 f8 eb bl 0xc023857c <__udivsi3>
> 0xc03fb8d4 <+252>: 0c 80 8d e5 str r8, [sp, #12]
> 0xc03fb8d8 <+256>: 1c 10 9d e5 ldr r1, [sp, #28]
> 0xc03fb8dc <+260>: 0c 00 94 e8 ldm r4, {r2, r3}
> 0xc03fb8e0 <+264>: 05 80 a0 e1 mov r8, r5
> 0xc03fb8e4 <+268>: 08 00 8d e5 str r0, [sp, #8]
> 0xc03fb8e8 <+272>: 20 01 9f e5 ldr r0, [pc, #288] ; 0xc03fba10 <pcpu_dump_alloc_info+568>
> 0xc03fb8ec <+276>: 95 f9 ff eb bl 0xc03f9f48 <printk>
> 0xc03fb8f0 <+280>: 18 50 8d e5 str r5, [sp, #24]
> 0xc03fb8f4 <+284>: 3c 00 00 ea b 0xc03fb9ec <pcpu_dump_alloc_info+532>
> 0xc03fb8f8 <+288>: 0c 30 a0 e3 mov r3, #12
> 0xc03fb8fc <+292>: 0a 10 a0 e1 mov r1, r10
> 0xc03fb900 <+296>: 93 05 03 e0 mul r3, r3, r5
> 0xc03fb904 <+300>: 20 30 83 e2 add r3, r3, #32
> 0xc03fb908 <+304>: 03 20 84 e0 add r2, r4, r3
> 0xc03fb90c <+308>: 03 90 94 e7 ldr r9, [r4, r3]
> 0xc03fb910 <+312>: 24 20 8d e5 str r2, [sp, #36] ; 0x24
> 0xc03fb914 <+316>: 09 00 a0 e1 mov r0, r9
> 0xc03fb918 <+320>: cd f3 f8 eb bl 0xc0238854 <__aeabi_idivmod>
> 0xc03fb91c <+324>: 00 b0 51 e2 subs r11, r1, #0
> 0xc03fb920 <+328>: 00 00 00 0a beq 0xc03fb928 <pcpu_dump_alloc_info+336>
> 0xc03fb924 <+332>: fe ff ff ea b 0xc03fb924 <pcpu_dump_alloc_info+332>
> 0xc03fb928 <+336>: 09 00 a0 e1 mov r0, r9
> 0xc03fb92c <+340>: 0a 10 a0 e1 mov r1, r10
> 0xc03fb930 <+344>: 60 f3 f8 eb bl 0xc02386b8 <__divsi3>
> 0xc03fb934 <+348>: 18 30 9d e5 ldr r3, [sp, #24]
> 0xc03fb938 <+352>: 0b 90 a0 e1 mov r9, r11
> 0xc03fb93c <+356>: 00 30 83 e0 add r3, r3, r0
> 0xc03fb940 <+360>: 18 30 8d e5 str r3, [sp, #24]
> 0xc03fb944 <+364>: 24 00 00 ea b 0xc03fb9dc <pcpu_dump_alloc_info+516>
> 0xc03fb948 <+368>: 08 00 a0 e1 mov r0, r8
> 0xc03fb94c <+372>: 20 10 9d e5 ldr r1, [sp, #32]
> 0xc03fb950 <+376>: bf f3 f8 eb bl 0xc0238854 <__aeabi_idivmod>
> 0xc03fb954 <+380>: 00 00 51 e3 cmp r1, #0
> 0xc03fb958 <+384>: 04 00 00 1a bne 0xc03fb970 <pcpu_dump_alloc_info+408>
> 0xc03fb95c <+388>: b0 00 9f e5 ldr r0, [pc, #176] ; 0xc03fba14 <pcpu_dump_alloc_info+572>
> 0xc03fb960 <+392>: 78 f9 ff eb bl 0xc03f9f48 <printk>
> 0xc03fb964 <+396>: ac 00 9f e5 ldr r0, [pc, #172] ; 0xc03fba18 <pcpu_dump_alloc_info+576>
> 0xc03fb968 <+400>: 1c 10 9d e5 ldr r1, [sp, #28]
> 0xc03fb96c <+404>: 75 f9 ff eb bl 0xc03f9f48 <printk>
> 0xc03fb970 <+408>: a4 00 9f e5 ldr r0, [pc, #164] ; 0xc03fba1c <pcpu_dump_alloc_info+580>
> 0xc03fb974 <+412>: 07 10 a0 e1 mov r1, r7
> 0xc03fb978 <+416>: 05 20 a0 e1 mov r2, r5
> 0xc03fb97c <+420>: 71 f9 ff eb bl 0xc03f9f48 <printk>
> 0xc03fb980 <+424>: 0a b0 8b e0 add r11, r11, r10
> 0xc03fb984 <+428>: 09 31 a0 e1 lsl r3, r9, #2
> 0xc03fb988 <+432>: 10 00 00 ea b 0xc03fb9d0 <pcpu_dump_alloc_info+504>
> 0xc03fb98c <+436>: 24 10 9d e5 ldr r1, [sp, #36] ; 0x24
> 0xc03fb990 <+440>: 08 20 91 e5 ldr r2, [r1, #8]
> 0xc03fb994 <+444>: 03 20 92 e7 ldr r2, [r2, r3]
> 0xc03fb998 <+448>: 02 00 52 e3 cmp r2, #2
> 0xc03fb99c <+452>: 04 00 00 0a beq 0xc03fb9b4 <pcpu_dump_alloc_info+476>
> 0xc03fb9a0 <+456>: 06 10 a0 e1 mov r1, r6
> 0xc03fb9a4 <+460>: 74 00 9f e5 ldr r0, [pc, #116] ; 0xc03fba20 <pcpu_dump_alloc_info+584>
> 0xc03fb9a8 <+464>: 14 30 8d e5 str r3, [sp, #20]
> 0xc03fb9ac <+468>: 65 f9 ff eb bl 0xc03f9f48 <printk>
> 0xc03fb9b0 <+472>: 03 00 00 ea b 0xc03fb9c4 <pcpu_dump_alloc_info+492>
> 0xc03fb9b4 <+476>: 68 00 9f e5 ldr r0, [pc, #104] ; 0xc03fba24 <pcpu_dump_alloc_info+588>
> 0xc03fb9b8 <+480>: 2f 10 8d e2 add r1, sp, #47 ; 0x2f
> 0xc03fb9bc <+484>: 14 30 8d e5 str r3, [sp, #20]
> 0xc03fb9c0 <+488>: 60 f9 ff eb bl 0xc03f9f48 <printk>
> 0xc03fb9c4 <+492>: 14 30 9d e5 ldr r3, [sp, #20]
> 0xc03fb9c8 <+496>: 01 90 89 e2 add r9, r9, #1
> 0xc03fb9cc <+500>: 04 30 83 e2 add r3, r3, #4
> 0xc03fb9d0 <+504>: 0b 00 59 e1 cmp r9, r11
> 0xc03fb9d4 <+508>: ec ff ff ba blt 0xc03fb98c <pcpu_dump_alloc_info+436>
> 0xc03fb9d8 <+512>: 01 80 88 e2 add r8, r8, #1
> 0xc03fb9dc <+516>: 18 30 9d e5 ldr r3, [sp, #24]
> 0xc03fb9e0 <+520>: 03 00 58 e1 cmp r8, r3
> 0xc03fb9e4 <+524>: d7 ff ff ba blt 0xc03fb948 <pcpu_dump_alloc_info+368>
> 0xc03fb9e8 <+528>: 01 50 85 e2 add r5, r5, #1
> 0xc03fb9ec <+532>: 1c 30 94 e5 ldr r3, [r4, #28]
> 0xc03fb9f0 <+536>: 03 00 55 e1 cmp r5, r3
> 0xc03fb9f4 <+540>: bf ff ff ba blt 0xc03fb8f8 <pcpu_dump_alloc_info+288>
> 0xc03fb9f8 <+544>: 14 00 9f e5 ldr r0, [pc, #20] ; 0xc03fba14 <pcpu_dump_alloc_info+572>
> 0xc03fb9fc <+548>: 51 f9 ff eb bl 0xc03f9f48 <printk>
> 0xc03fba00 <+552>: 3c d0 8d e2 add sp, sp, #60 ; 0x3c
> 0xc03fba04 <+556>: f0 8f bd e8 pop {r4, r5, r6, r7, r8, r9, r10, r11, pc}
> 0xc03fba08 <+560>: 76 b1 50 c0 subsgt r11, r0, r6, ror r1
> 0xc03fba0c <+564>: f0 c9 40 c0 strdgt r12, [r0], #-144 ; 0xffffff70
> 0xc03fba10 <+568>: 29 b1 50 c0 subsgt r11, r0, r9, lsr #2
> 0xc03fba14 <+572>: 71 40 50 c0 subsgt r4, r0, r1, ror r0
> 0xc03fba18 <+576>: 59 b1 50 c0 subsgt r11, r0, r9, asr r1
> 0xc03fba1c <+580>: 68 b1 50 c0 subsgt r11, r0, r8, ror #2
> 0xc03fba20 <+584>: 70 b1 50 c0 subsgt r11, r0, r0, ror r1
> 0xc03fba24 <+588>: c4 99 52 c0 subsgt r9, r2, r4, asr #19
> _______________________________________________
> poky mailing list
> poky at yoctoproject.org
> https://lists.yoctoproject.org/listinfo/poky
--
Martin 'JaMa' Jansa jabber: Martin.Jansa at gmail.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: Digital signature
URL: <http://lists.yoctoproject.org/pipermail/poky/attachments/20120510/eefd3982/attachment.pgp>
More information about the poky
mailing list