* [Suggestion] powerpc: xmon: about 'longjmp' related warning. @ 2013-07-22 7:02 Chen Gang 2013-07-23 13:58 ` Michael Ellerman 0 siblings, 1 reply; 7+ messages in thread From: Chen Gang @ 2013-07-22 7:02 UTC (permalink / raw) To: Benjamin Herrenschmidt, paulus@samba.org Cc: Michael Neuling, linuxppc-dev@lists.ozlabs.org, Andrew Morton, jovi.zhangwei Hello Maintainers: With allmodconfig and EXTRA_CFLAGS=-W", it reports warnings below: arch/powerpc/xmon/xmon.c:3027:6: warning: variable ‘i’ might be clobbered by ‘longjmp’ or ‘vfork’ [-Wclobbered] arch/powerpc/xmon/xmon.c:3068:6: warning: variable ‘i’ might be clobbered by ‘longjmp’ or ‘vfork’ [-Wclobbered] arch/powerpc/xmon/xmon.c:352:48: warning: argument ‘fromipi’ might be clobbered by ‘longjmp’ or ‘vfork’ [-Wclobbered] Excuse me, I am not quite sure about it whether can cause issue or not. Welcome any members' suggestions or completions for it. Thanks. -- Chen Gang ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Suggestion] powerpc: xmon: about 'longjmp' related warning. 2013-07-22 7:02 [Suggestion] powerpc: xmon: about 'longjmp' related warning Chen Gang @ 2013-07-23 13:58 ` Michael Ellerman 2013-07-24 0:38 ` Chen Gang 0 siblings, 1 reply; 7+ messages in thread From: Michael Ellerman @ 2013-07-23 13:58 UTC (permalink / raw) To: Chen Gang Cc: Michael Neuling, paulus@samba.org, Andrew Morton, linuxppc-dev@lists.ozlabs.org, jovi.zhangwei On Mon, Jul 22, 2013 at 03:02:53PM +0800, Chen Gang wrote: > Hello Maintainers: > > With allmodconfig and EXTRA_CFLAGS=-W", it reports warnings below: > > arch/powerpc/xmon/xmon.c:3027:6: warning: variable ‘i’ might be clobbered by ‘longjmp’ or ‘vfork’ [-Wclobbered] > arch/powerpc/xmon/xmon.c:3068:6: warning: variable ‘i’ might be clobbered by ‘longjmp’ or ‘vfork’ [-Wclobbered] In both these cases we are inside the body of a for loop and we do a if (setjmp) / else block. Although looking at the source the value of i is not modified by the setjmp, I guess it's possible that the compiler might reorder the increment of i inside the setjmp and loose the value when we longjmp. > arch/powerpc/xmon/xmon.c:352:48: warning: argument ‘fromipi’ might be clobbered by ‘longjmp’ or ‘vfork’ [-Wclobbered] This one I can't see, but I assume it's a similar case. > Excuse me, I am not quite sure about it whether can cause issue or not. I've never seen it get stuck in those loops or anything, but I guess it's possible. The first thing to do would be to analyse the generated assembler code to determine if there really is any possiblity of the value being clobbered, or if it's just a theoretical bug. cheers ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Suggestion] powerpc: xmon: about 'longjmp' related warning. 2013-07-23 13:58 ` Michael Ellerman @ 2013-07-24 0:38 ` Chen Gang 2013-07-26 4:11 ` Chen Gang 0 siblings, 1 reply; 7+ messages in thread From: Chen Gang @ 2013-07-24 0:38 UTC (permalink / raw) To: Michael Ellerman Cc: Michael Neuling, paulus@samba.org, Andrew Morton, linuxppc-dev@lists.ozlabs.org, jovi.zhangwei On 07/23/2013 09:58 PM, Michael Ellerman wrote: > On Mon, Jul 22, 2013 at 03:02:53PM +0800, Chen Gang wrote: >> Hello Maintainers: >> >> With allmodconfig and EXTRA_CFLAGS=-W", it reports warnings below: > >> >> arch/powerpc/xmon/xmon.c:3027:6: warning: variable ‘i’ might be clobbered by ‘longjmp’ or ‘vfork’ [-Wclobbered] >> arch/powerpc/xmon/xmon.c:3068:6: warning: variable ‘i’ might be clobbered by ‘longjmp’ or ‘vfork’ [-Wclobbered] > > In both these cases we are inside the body of a for loop and we do a > if (setjmp) / else block. Although looking at the source the value of i > is not modified by the setjmp, I guess it's possible that the compiler > might reorder the increment of i inside the setjmp and loose the value > when we longjmp. > I should continue to confirm the details based on your valuable information, thanks. >> arch/powerpc/xmon/xmon.c:352:48: warning: argument ‘fromipi’ might be clobbered by ‘longjmp’ or ‘vfork’ [-Wclobbered] > > This one I can't see, but I assume it's a similar case. > OK, I should continue for it. >> Excuse me, I am not quite sure about it whether can cause issue or not. > > I've never seen it get stuck in those loops or anything, but I guess > it's possible. > OK, I should make the confirmation. > The first thing to do would be to analyse the generated assembler code > to determine if there really is any possiblity of the value being > clobbered, or if it's just a theoretical bug. > Thank you for your valuable information again. Excuse me, I have to do another things within this month, so I should provide the confirmation within next month (2013-08-31), is it OK (no reply means OK). Welcome any suggestions or completions. Thanks. -- Chen Gang ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Suggestion] powerpc: xmon: about 'longjmp' related warning. 2013-07-24 0:38 ` Chen Gang @ 2013-07-26 4:11 ` Chen Gang 2013-07-26 11:45 ` Chen Gang 0 siblings, 1 reply; 7+ messages in thread From: Chen Gang @ 2013-07-26 4:11 UTC (permalink / raw) To: Michael Ellerman Cc: Michael Neuling, paulus@samba.org, Andrew Morton, linuxppc-dev@lists.ozlabs.org, jovi.zhangwei On 07/24/2013 08:38 AM, Chen Gang wrote: > On 07/23/2013 09:58 PM, Michael Ellerman wrote: >> On Mon, Jul 22, 2013 at 03:02:53PM +0800, Chen Gang wrote: >>> Hello Maintainers: >>> >>> With allmodconfig and EXTRA_CFLAGS=-W", it reports warnings below: >> >>> >>> arch/powerpc/xmon/xmon.c:3027:6: warning: variable ‘i’ might be clobbered by ‘longjmp’ or ‘vfork’ [-Wclobbered] >>> arch/powerpc/xmon/xmon.c:3068:6: warning: variable ‘i’ might be clobbered by ‘longjmp’ or ‘vfork’ [-Wclobbered] >> >> In both these cases we are inside the body of a for loop and we do a >> if (setjmp) / else block. Although looking at the source the value of i >> is not modified by the setjmp, I guess it's possible that the compiler >> might reorder the increment of i inside the setjmp and loose the value >> when we longjmp. >> > > I should continue to confirm the details based on your valuable > information, thanks. > > For stop_spus() and restart_spus(), at least now, the related warnings are not issue: the variable 'i' is stored in stack "120(r1)". The related warning: arch/powerpc/xmon/xmon.c:3027:6: warning: variable ‘i’ might be clobbered by ‘longjmp’ or ‘vfork’ [-Wclobbered] arch/powerpc/xmon/xmon.c:3068:6: warning: variable ‘i’ might be clobbered by ‘longjmp’ or ‘vfork’ [-Wclobbered] The related source code: 3024 static void stop_spus(void) 3025 { 3026 struct spu *spu; 3027 int i; 3028 u64 tmp; 3029 3030 for (i = 0; i < XMON_NUM_SPUS; i++) { /* XMON_NUM_SPUS == 16 */ 3031 if (!spu_info[i].spu) 3032 continue; 3033 3034 if (setjmp(bus_error_jmp) == 0) { 3035 catch_memory_errors = 1; 3036 sync(); 3037 3038 spu = spu_info[i].spu; 3039 3040 spu_info[i].saved_spu_runcntl_RW = 3041 in_be32(&spu->problem->spu_runcntl_RW); 3042 3043 tmp = spu_mfc_sr1_get(spu); 3044 spu_info[i].saved_mfc_sr1_RW = tmp; 3045 3046 tmp &= ~MFC_STATE1_MASTER_RUN_CONTROL_MASK; 3047 spu_mfc_sr1_set(spu, tmp); 3048 3049 sync(); 3050 __delay(200); 3051 3052 spu_info[i].stopped_ok = 1; 3053 3054 printf("Stopped spu %.2d (was %s)\n", i, 3055 spu_info[i].saved_spu_runcntl_RW ? 3056 "running" : "stopped"); 3057 } else { 3058 catch_memory_errors = 0; 3059 printf("*** Error stopping spu %.2d\n", i); 3060 } 3061 catch_memory_errors = 0; 3062 } 3063 } 3064 The related disassembly code: "make ARCH=powerpc EXTRA_CFLAGS=-W" "powerpc64-linux-gnu-objdump -d vmlinux.o > vmlinux.S" "gcc version 4.7.1 20120606 (Red Hat 4.7.1-0.1.20120606) (GCC)" "GNU objdump version 2.23.51.0.3-1.fc16 20120918" c00000000007cfd0 <.stop_spus>: /* { */ c00000000007cfd0: 7c 08 02 a6 mflr r0 c00000000007cfd4: fb c1 ff f0 std r30,-16(r1) c00000000007cfd8: fb e1 ff f8 std r31,-8(r1) c00000000007cfdc: 3d 22 00 0f addis r9,r2,15 c00000000007cfe0: 39 29 3e 10 addi r9,r9,15888 c00000000007cfe4: 3d 02 ff d4 addis r8,r2,-44 c00000000007cfe8: 39 29 21 50 addi r9,r9,8528 c00000000007cfec: 3d 42 ff d4 addis r10,r2,-44 c00000000007cff0: 39 08 83 f8 addi r8,r8,-31752 c00000000007cff4: 39 4a 83 d8 addi r10,r10,-31784 c00000000007cff8: f8 01 00 10 std r0,16(r1) c00000000007cffc: f8 21 ff 51 stdu r1,-176(r1) c00000000007d000: f9 21 00 70 std r9,112(r1) c00000000007d004: 39 20 00 00 li r9,0 c00000000007d008: f9 21 00 78 std r9,120(r1) ; i = 0; c00000000007d00c: f9 01 00 88 std r8,136(r1) c00000000007d010: f9 41 00 90 std r10,144(r1) c00000000007d014: 48 00 01 28 b c00000000007d13c <.stop_spus+0x16c> c00000000007d018: 60 00 00 00 nop c00000000007d01c: 60 00 00 00 nop /* if (setjmp(bus_error_jmp) == 0) { */ c00000000007d020: 3d 22 00 0f addis r9,r2,15 c00000000007d024: 39 40 00 01 li r10,1 c00000000007d028: 39 29 3e 10 addi r9,r9,15888 c00000000007d02c: 91 49 20 c0 stw r10,8384(r9) c00000000007d030: 7c 00 04 ac sync c00000000007d034: 4c 00 01 2c isync c00000000007d038: e9 01 00 80 ld r8,128(r1) c00000000007d03c: eb e8 00 00 ld r31,0(r8) c00000000007d040: e9 3f 00 20 ld r9,32(r31) c00000000007d044: 7c 00 04 ac sync c00000000007d048: 81 29 40 1c lwz r9,16412(r9) c00000000007d04c: 0c 09 00 00 twi 0,r9,0 c00000000007d050: 4c 00 01 2c isync c00000000007d054: 91 28 00 10 stw r9,16(r8) c00000000007d058: 3d 22 00 0f addis r9,r2,15 c00000000007d05c: 3b c9 f5 e8 addi r30,r9,-2584 c00000000007d060: 7f e3 fb 78 mr r3,r31 c00000000007d064: e9 3e 00 00 ld r9,0(r30) c00000000007d068: e9 29 00 60 ld r9,96(r9) c00000000007d06c: e9 49 00 00 ld r10,0(r9) c00000000007d070: f8 41 00 28 std r2,40(r1) c00000000007d074: 7d 49 03 a6 mtctr r10 c00000000007d078: e8 49 00 08 ld r2,8(r9) c00000000007d07c: 4e 80 04 21 bctrl c00000000007d080: e8 41 00 28 ld r2,40(r1) c00000000007d084: e9 01 00 80 ld r8,128(r1) c00000000007d088: e9 3e 00 00 ld r9,0(r30) c00000000007d08c: f8 68 00 08 std r3,8(r8) c00000000007d090: 7c 64 1b 78 mr r4,r3 c00000000007d094: 78 84 d0 42 rldicl r4,r4,58,1 c00000000007d098: 7f e3 fb 78 mr r3,r31 c00000000007d09c: 78 84 30 00 rotldi r4,r4,6 c00000000007d0a0: e9 29 00 58 ld r9,88(r9) c00000000007d0a4: e9 49 00 00 ld r10,0(r9) c00000000007d0a8: f8 41 00 28 std r2,40(r1) c00000000007d0ac: 7d 49 03 a6 mtctr r10 c00000000007d0b0: e8 49 00 08 ld r2,8(r9) c00000000007d0b4: 4e 80 04 21 bctrl c00000000007d0b8: e8 41 00 28 ld r2,40(r1) c00000000007d0bc: 7c 00 04 ac sync c00000000007d0c0: 4c 00 01 2c isync c00000000007d0c4: 38 60 00 c8 li r3,200 c00000000007d0c8: 4b fa 01 e9 bl c00000000001d2b0 <.__delay> ; __delay(200) c00000000007d0cc: 60 00 00 00 nop c00000000007d0d0: e9 01 00 80 ld r8,128(r1) c00000000007d0d4: 39 40 00 01 li r10,1 c00000000007d0d8: 81 28 00 10 lwz r9,16(r8) c00000000007d0dc: 99 48 00 20 stb r10,32(r8) c00000000007d0e0: 3d 02 ff d4 addis r8,r2,-44 c00000000007d0e4: 38 a8 83 c8 addi r5,r8,-31800 c00000000007d0e8: 2f 89 00 00 cmpwi cr7,r9,0 c00000000007d0ec: 40 9e 00 0c bne- cr7,c00000000007d0f8 <.stop_spus+0x128> c00000000007d0f0: 3d 22 ff d4 addis r9,r2,-44 c00000000007d0f4: 38 a9 83 d0 addi r5,r9,-31792 c00000000007d0f8: e8 61 00 90 ld r3,144(r1) c00000000007d0fc: e8 81 00 78 ld r4,120(r1) ; 120(r1) = i c00000000007d100: 48 00 67 41 bl c000000000083840 <.xmon_printf> c00000000007d104: 60 00 00 00 nop /* catch_memory_errors = 0; */ c00000000007d108: 3d 22 00 0f addis r9,r2,15 c00000000007d10c: 39 40 00 00 li r10,0 c00000000007d110: 39 29 3e 10 addi r9,r9,15888 c00000000007d114: 91 49 20 c0 stw r10,8384(r9) /* for (i = 0; i < XMON_NUM_SPUS; i++) { */ c00000000007d118: e9 01 00 78 ld r8,120(r1) ; 120(r1) = i; c00000000007d11c: 39 28 00 01 addi r9,r8,1 ; i++ c00000000007d120: 2f 89 00 10 cmpwi cr7,r9,16 ; i < XMON_NUM_SPUS c00000000007d124: 7d 29 07 b4 extsw r9,r9 c00000000007d128: f9 21 00 78 std r9,120(r1) ; 120(r1) = i; c00000000007d12c: e9 21 00 70 ld r9,112(r1) ; c00000000007d130: 39 29 00 28 addi r9,r9,40 ; 112(r1) = [i] for spu_info; c00000000007d134: f9 21 00 70 std r9,112(r1) ; c00000000007d138: 41 9e 00 58 beq- cr7,c00000000007d190 <.stop_spus+0x1c0> /* if (!spu_info[i].spu) */ /* continue; */ c00000000007d13c: e9 01 00 70 ld r8,112(r1) c00000000007d140: 3d 42 00 0f addis r10,r2,15 c00000000007d144: 38 6a 5e 18 addi r3,r10,24088 c00000000007d148: e9 28 00 00 ld r9,0(r8) c00000000007d14c: f9 01 00 80 std r8,128(r1) c00000000007d150: 2f a9 00 00 cmpdi cr7,r9,0 c00000000007d154: 41 9e ff c4 beq+ cr7,c00000000007d118 <.stop_spus+0x148> /* if (setjmp(bus_error_jmp) == 0) { */ c00000000007d158: 4b fa 44 99 bl c0000000000215f0 <.setjmp> c00000000007d15c: 60 00 00 00 nop c00000000007d160: 2f a3 00 00 cmpdi cr7,r3,0 c00000000007d164: e8 81 00 78 ld r4,120(r1) ; 120(r1) = i for 2nd param of printf in exception processing after setjmp. c00000000007d168: e8 61 00 88 ld r3,136(r1) c00000000007d16c: 41 9e fe b4 beq+ cr7,c00000000007d020 <.stop_spus+0x50> /* } else { */ c00000000007d170: 3d 42 00 0f addis r10,r2,15 c00000000007d174: 39 00 00 00 li r8,0 c00000000007d178: 39 4a 3e 10 addi r10,r10,15888 c00000000007d17c: 91 0a 20 c0 stw r8,8384(r10) /* catch_memory_errors = 0; */ c00000000007d180: 48 00 66 c1 bl c000000000083840 <.xmon_printf> /* called with correct i */ c00000000007d184: 60 00 00 00 nop c00000000007d188: 4b ff ff 80 b c00000000007d108 <.stop_spus+0x138> c00000000007d18c: 60 00 00 00 nop /* } */ c00000000007d190: 38 21 00 b0 addi r1,r1,176 c00000000007d194: e8 01 00 10 ld r0,16(r1) c00000000007d198: eb c1 ff f0 ld r30,-16(r1) c00000000007d19c: eb e1 ff f8 ld r31,-8(r1) c00000000007d1a0: 7c 08 03 a6 mtlr r0 c00000000007d1a4: 4e 80 00 20 blr c00000000007d1a8: 60 00 00 00 nop c00000000007d1ac: 60 00 00 00 nop /* } */ The related assembly code (they really save and restore 'r1'): _GLOBAL(setjmp) mflr r0 PPC_STL r0,0(r3) PPC_STL r1,SZL(r3) PPC_STL r2,2*SZL(r3) mfcr r0 PPC_STL r0,3*SZL(r3) PPC_STL r13,4*SZL(r3) PPC_STL r14,5*SZL(r3) PPC_STL r15,6*SZL(r3) PPC_STL r16,7*SZL(r3) PPC_STL r17,8*SZL(r3) PPC_STL r18,9*SZL(r3) PPC_STL r19,10*SZL(r3) PPC_STL r20,11*SZL(r3) PPC_STL r21,12*SZL(r3) PPC_STL r22,13*SZL(r3) PPC_STL r23,14*SZL(r3) PPC_STL r24,15*SZL(r3) PPC_STL r25,16*SZL(r3) PPC_STL r26,17*SZL(r3) PPC_STL r27,18*SZL(r3) PPC_STL r28,19*SZL(r3) PPC_STL r29,20*SZL(r3) PPC_STL r30,21*SZL(r3) PPC_STL r31,22*SZL(r3) li r3,0 blr _GLOBAL(longjmp) PPC_LCMPI r4,0 bne 1f li r4,1 1: PPC_LL r13,4*SZL(r3) PPC_LL r14,5*SZL(r3) PPC_LL r15,6*SZL(r3) PPC_LL r16,7*SZL(r3) PPC_LL r17,8*SZL(r3) PPC_LL r18,9*SZL(r3) PPC_LL r19,10*SZL(r3) PPC_LL r20,11*SZL(r3) PPC_LL r21,12*SZL(r3) PPC_LL r22,13*SZL(r3) PPC_LL r23,14*SZL(r3) PPC_LL r24,15*SZL(r3) PPC_LL r25,16*SZL(r3) PPC_LL r26,17*SZL(r3) PPC_LL r27,18*SZL(r3) PPC_LL r28,19*SZL(r3) PPC_LL r29,20*SZL(r3) PPC_LL r30,21*SZL(r3) PPC_LL r31,22*SZL(r3) PPC_LL r0,3*SZL(r3) mtcrf 0x38,r0 PPC_LL r0,0(r3) PPC_LL r1,SZL(r3) PPC_LL r2,2*SZL(r3) mtlr r0 mr r3,r4 blr The same to resetart_spus() 3065 static void restart_spus(void) 3066 { 3067 struct spu *spu; 3068 int i; 3069 3070 for (i = 0; i < XMON_NUM_SPUS; i++) { 3071 if (!spu_info[i].spu) 3072 continue; 3073 3074 if (!spu_info[i].stopped_ok) { 3075 printf("*** Error, spu %d was not successfully stopped" 3076 ", not restarting\n", i); 3077 continue; 3078 } 3079 3080 if (setjmp(bus_error_jmp) == 0) { 3081 catch_memory_errors = 1; 3082 sync(); 3083 3084 spu = spu_info[i].spu; 3085 spu_mfc_sr1_set(spu, spu_info[i].saved_mfc_sr1_RW); 3086 out_be32(&spu->problem->spu_runcntl_RW, 3087 spu_info[i].saved_spu_runcntl_RW); 3088 3089 sync(); 3090 __delay(200); 3091 3092 printf("Restarted spu %.2d\n", i); 3093 } else { 3094 catch_memory_errors = 0; 3095 printf("*** Error restarting spu %.2d\n", i); 3096 } 3097 catch_memory_errors = 0; 3098 } 3099 } 3100 c00000000007d1b0 <.restart_spus>: /* { */ c00000000007d1b0: 7c 08 02 a6 mflr r0 c00000000007d1b4: fb e1 ff f8 std r31,-8(r1) c00000000007d1b8: 3d 22 00 0f addis r9,r2,15 c00000000007d1bc: 3c e2 ff d4 addis r7,r2,-44 c00000000007d1c0: 39 29 3e 10 addi r9,r9,15888 c00000000007d1c4: 3d 02 ff d4 addis r8,r2,-44 c00000000007d1c8: 39 29 21 50 addi r9,r9,8528 c00000000007d1cc: 3d 42 ff d4 addis r10,r2,-44 c00000000007d1d0: 38 e7 84 70 addi r7,r7,-31632 c00000000007d1d4: 39 08 84 58 addi r8,r8,-31656 c00000000007d1d8: f8 01 00 10 std r0,16(r1) c00000000007d1dc: 39 4a 84 18 addi r10,r10,-31720 c00000000007d1e0: f8 21 ff 51 stdu r1,-176(r1) c00000000007d1e4: f9 21 00 70 std r9,112(r1) c00000000007d1e8: 39 20 00 00 li r9,0 c00000000007d1ec: f9 21 00 78 std r9,120(r1) ; i = 0; c00000000007d1f0: f8 e1 00 88 std r7,136(r1) c00000000007d1f4: f9 01 00 98 std r8,152(r1) c00000000007d1f8: f9 41 00 90 std r10,144(r1) c00000000007d1fc: 48 00 00 34 b c00000000007d230 <.restart_spus+0x80> /* if (!spu_info[i].stopped_ok) { */ /* printf(....); */ /* continue; */ c00000000007d200: e8 61 00 90 ld r3,144(r1) c00000000007d204: 48 00 66 3d bl c000000000083840 <.xmon_printf> c00000000007d208: 60 00 00 00 nop /* for (i = 0; i < XMON_NUM_SPUS; i++) { */ c00000000007d20c: e9 01 00 78 ld r8,120(r1) c00000000007d210: 39 28 00 01 addi r9,r8,1 ; i++ c00000000007d214: 2f 89 00 10 cmpwi cr7,r9,16 ; i < XMON_NUM_SPUS c00000000007d218: 7d 29 07 b4 extsw r9,r9 c00000000007d21c: f9 21 00 78 std r9,120(r1) c00000000007d220: e9 21 00 70 ld r9,112(r1) c00000000007d224: 39 29 00 28 addi r9,r9,40 c00000000007d228: f9 21 00 70 std r9,112(r1) c00000000007d22c: 41 9e 01 0c beq- cr7,c00000000007d338 <.restart_spus+0x188> /* if (!spu_info[i].spu) */ /* continue; */ c00000000007d230: e9 01 00 70 ld r8,112(r1) c00000000007d234: 3d 42 00 0f addis r10,r2,15 c00000000007d238: e8 81 00 78 ld r4,120(r1) ; i as 2nd parameter for xmon_printf(). c00000000007d23c: 38 6a 5e 18 addi r3,r10,24088 c00000000007d240: e9 28 00 00 ld r9,0(r8) c00000000007d244: f9 01 00 80 std r8,128(r1) c00000000007d248: 2f a9 00 00 cmpdi cr7,r9,0 c00000000007d24c: 41 9e ff c0 beq+ cr7,c00000000007d20c <.restart_spus+0x5c> /* if (!spu_info[i].stopped_ok) { */ c00000000007d250: 89 28 00 20 lbz r9,32(r8) c00000000007d254: 2f 89 00 00 cmpwi cr7,r9,0 c00000000007d258: 41 9e ff a8 beq+ cr7,c00000000007d200 <.restart_spus+0x50> /* } */ /* if (setjmp(bus_error_jmp) == 0) { */ c00000000007d25c: 4b fa 43 95 bl c0000000000215f0 <.setjmp> c00000000007d260: 60 00 00 00 nop c00000000007d264: 2f a3 00 00 cmpdi cr7,r3,0 c00000000007d268: e8 81 00 78 ld r4,120(r1) ; i as 2nd parameter for xmon_printf() after setjmp(). c00000000007d26c: e8 61 00 88 ld r3,136(r1) c00000000007d270: 40 9e 00 e0 bne- cr7,c00000000007d350 <.restart_spus+0x1a0> c00000000007d274: 3d 22 00 0f addis r9,r2,15 c00000000007d278: 39 40 00 01 li r10,1 c00000000007d27c: 39 29 3e 10 addi r9,r9,15888 c00000000007d280: 91 49 20 c0 stw r10,8384(r9) c00000000007d284: 7c 00 04 ac sync c00000000007d288: 4c 00 01 2c isync c00000000007d28c: 3d 02 00 0f addis r8,r2,15 c00000000007d290: e9 41 00 80 ld r10,128(r1) c00000000007d294: 39 28 f5 e8 addi r9,r8,-2584 c00000000007d298: eb ea 00 00 ld r31,0(r10) c00000000007d29c: e8 8a 00 08 ld r4,8(r10) c00000000007d2a0: e9 29 00 00 ld r9,0(r9) c00000000007d2a4: 7f e3 fb 78 mr r3,r31 c00000000007d2a8: e9 29 00 58 ld r9,88(r9) c00000000007d2ac: e9 49 00 00 ld r10,0(r9) c00000000007d2b0: f8 41 00 28 std r2,40(r1) c00000000007d2b4: 7d 49 03 a6 mtctr r10 c00000000007d2b8: e8 49 00 08 ld r2,8(r9) c00000000007d2bc: 4e 80 04 21 bctrl c00000000007d2c0: e8 41 00 28 ld r2,40(r1) c00000000007d2c4: e9 01 00 80 ld r8,128(r1) c00000000007d2c8: e9 3f 00 20 ld r9,32(r31) c00000000007d2cc: 81 48 00 10 lwz r10,16(r8) c00000000007d2d0: 7c 00 04 ac sync c00000000007d2d4: 91 49 40 1c stw r10,16412(r9) c00000000007d2d8: 39 20 00 01 li r9,1 c00000000007d2dc: 99 2d 02 74 stb r9,628(r13) c00000000007d2e0: 7c 00 04 ac sync c00000000007d2e4: 4c 00 01 2c isync c00000000007d2e8: 38 60 00 c8 li r3,200 c00000000007d2ec: 4b f9 ff c5 bl c00000000001d2b0 <.__delay> c00000000007d2f0: 60 00 00 00 nop c00000000007d2f4: e8 61 00 98 ld r3,152(r1) c00000000007d2f8: e8 81 00 78 ld r4,120(r1) c00000000007d2fc: 48 00 65 45 bl c000000000083840 <.xmon_printf> c00000000007d300: 60 00 00 00 nop /* } */ /* for (i = 0; i < XMON_NUM_SPUS; i++) { */ c00000000007d304: e9 01 00 78 ld r8,120(r1) c00000000007d308: 3d 22 00 0f addis r9,r2,15 c00000000007d30c: 39 40 00 00 li r10,0 c00000000007d310: 39 29 3e 10 addi r9,r9,15888 c00000000007d314: 91 49 20 c0 stw r10,8384(r9) ; catch_memory_errors = 0; c00000000007d318: 39 28 00 01 addi r9,r8,1 c00000000007d31c: 2f 89 00 10 cmpwi cr7,r9,16 ; i < XMON_NUM_SPUS c00000000007d320: 7d 29 07 b4 extsw r9,r9 c00000000007d324: f9 21 00 78 std r9,120(r1) ; i++; c00000000007d328: e9 21 00 70 ld r9,112(r1) c00000000007d32c: 39 29 00 28 addi r9,r9,40 ; [i] for spu_info c00000000007d330: f9 21 00 70 std r9,112(r1) c00000000007d334: 40 9e fe fc bne+ cr7,c00000000007d230 <.restart_spus+0x80> /* } */ c00000000007d338: 38 21 00 b0 addi r1,r1,176 c00000000007d33c: e8 01 00 10 ld r0,16(r1) c00000000007d340: eb e1 ff f8 ld r31,-8(r1) c00000000007d344: 7c 08 03 a6 mtlr r0 c00000000007d348: 4e 80 00 20 blr c00000000007d34c: 60 00 00 00 nop /* } */ /* } else { */ c00000000007d350: 3d 42 00 0f addis r10,r2,15 c00000000007d354: 39 00 00 00 li r8,0 c00000000007d358: 39 4a 3e 10 addi r10,r10,15888 c00000000007d35c: 91 0a 20 c0 stw r8,8384(r10) ; catch_memory_errors = 0; c00000000007d360: 48 00 64 e1 bl c000000000083840 <.xmon_printf> c00000000007d364: 60 00 00 00 nop c00000000007d368: 4b ff ff 9c b c00000000007d304 <.restart_spus+0x154> c00000000007d36c: 60 00 00 00 nop >>> arch/powerpc/xmon/xmon.c:352:48: warning: argument ‘fromipi’ might be clobbered by ‘longjmp’ or ‘vfork’ [-Wclobbered] >> >> This one I can't see, but I assume it's a similar case. >> > > OK, I should continue for it. > > >>> Excuse me, I am not quite sure about it whether can cause issue or not. >> >> I've never seen it get stuck in those loops or anything, but I guess >> it's possible. >> > > OK, I should make the confirmation. > >> The first thing to do would be to analyse the generated assembler code >> to determine if there really is any possiblity of the value being >> clobbered, or if it's just a theoretical bug. >> > > Thank you for your valuable information again. > > Excuse me, I have to do another things within this month, so I should > provide the confirmation within next month (2013-08-31), is it OK (no > reply means OK). > > Welcome any suggestions or completions. > > > Thanks. > -- Chen Gang ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Suggestion] powerpc: xmon: about 'longjmp' related warning. 2013-07-26 4:11 ` Chen Gang @ 2013-07-26 11:45 ` Chen Gang 2013-07-26 11:47 ` Chen Gang 2013-07-26 11:55 ` Chen Gang 0 siblings, 2 replies; 7+ messages in thread From: Chen Gang @ 2013-07-26 11:45 UTC (permalink / raw) To: Michael Ellerman Cc: Michael Neuling, paulus@samba.org, Andrew Morton, linuxppc-dev@lists.ozlabs.org, jovi.zhangwei Hello Maintainers: This reply is the analyzing result for the warning: arch/powerpc/xmon/xmon.c:352:48: warning: argument ‘fromipi’ might be clobbered by ‘longjmp’ or ‘vfork’ [-Wclobbered] I assume: for CONFIG_SMP, the thread within the function can not switch to another cpus (between local_irq_save and local_irq_restore). If my assumption is incorrect, please tell me, thanks. If my assumption is correct, the source code for setjmp() and longjmp() looks OK to me: they are for checking recurse call, if it finds, it will jump to outside with the jump buffer which lay on the stack. For the related warning about 'fromipi' and 'longjmp', it is issue: 'fromipi' is saved in stack '680(r1)'. The details may be a little complex by compiler's optimization, and 'fromipi' has 3 areas which each is optimized much, need read related reconstructed code to understand (at least for me, these optimization are correct). And the disassembly code below is really a little longer, but they are still simple enough for understanding (I have given some comments for them, but not quite in details). Welcome any additional suggestions or completions. Thanks. The related source code (!CONFIG_BOOKE, CONFIG_SMP): 352 static int xmon_core(struct pt_regs *regs, int fromipi) 353 { 354 int cmd = 0; 355 struct bpt *bp; 356 long recurse_jmp[JMP_BUF_LEN]; 357 unsigned long offset; 358 unsigned long flags; 359 #ifdef CONFIG_SMP 360 int cpu; 361 int secondary; 362 unsigned long timeout; 363 #endif 364 365 local_irq_save(flags); 366 367 bp = in_breakpoint_table(regs->nip, &offset); 368 if (bp != NULL) { 369 regs->nip = bp->address + offset; 370 atomic_dec(&bp->ref_count); 371 } 372 373 remove_cpu_bpts(); 374 375 #ifdef CONFIG_SMP 376 cpu = smp_processor_id(); 377 if (cpumask_test_cpu(cpu, &cpus_in_xmon)) { 378 get_output_lock(); 379 excprint(regs); 380 printf("cpu 0x%x: Exception %lx %s in xmon, " 381 "returning to main loop\n", 382 cpu, regs->trap, getvecname(TRAP(regs))); 383 release_output_lock(); 384 longjmp(xmon_fault_jmp[cpu], 1); 385 } 386 387 if (setjmp(recurse_jmp) != 0) { 388 if (!in_xmon || !xmon_gate) { 389 get_output_lock(); 390 printf("xmon: WARNING: bad recursive fault " 391 "on cpu 0x%x\n", cpu); 392 release_output_lock(); 393 goto waiting; 394 } 395 secondary = !(xmon_taken && cpu == xmon_owner); 396 goto cmdloop; 397 } 398 399 xmon_fault_jmp[cpu] = recurse_jmp; 400 cpumask_set_cpu(cpu, &cpus_in_xmon); 401 402 bp = NULL; 403 if ((regs->msr & (MSR_IR|MSR_PR|MSR_64BIT)) == (MSR_IR|MSR_64BIT)) 404 bp = at_breakpoint(regs->nip); 405 if (bp || unrecoverable_excp(regs)) 406 fromipi = 0; 407 408 if (!fromipi) { 409 get_output_lock(); 410 excprint(regs); 411 if (bp) { 412 printf("cpu 0x%x stopped at breakpoint 0x%x (", 413 cpu, BP_NUM(bp)); 414 xmon_print_symbol(regs->nip, " ", ")\n"); 415 } 416 if (unrecoverable_excp(regs)) 417 printf("WARNING: exception is not recoverable, " 418 "can't continue\n"); 419 release_output_lock(); 420 } 421 422 waiting: 423 secondary = 1; 424 while (secondary && !xmon_gate) { 425 if (in_xmon == 0) { 426 if (fromipi) 427 goto leave; 428 secondary = test_and_set_bit(0, &in_xmon); 429 } 430 barrier(); 431 } 432 433 if (!secondary && !xmon_gate) { 434 /* we are the first cpu to come in */ 435 /* interrupt other cpu(s) */ 436 int ncpus = num_online_cpus(); 437 438 xmon_owner = cpu; 439 mb(); 440 if (ncpus > 1) { 441 smp_send_debugger_break(); 442 /* wait for other cpus to come in */ 443 for (timeout = 100000000; timeout != 0; --timeout) { 444 if (cpumask_weight(&cpus_in_xmon) >= ncpus) 445 break; 446 barrier(); 447 } 448 } 449 remove_bpts(); 450 disable_surveillance(); 451 /* for breakpoint or single step, print the current instr. */ 452 if (bp || TRAP(regs) == 0xd00) 453 ppc_inst_dump(regs->nip, 1, 0); 454 printf("enter ? for help\n"); 455 mb(); 456 xmon_gate = 1; 457 barrier(); 458 } 459 460 cmdloop: 461 while (in_xmon) { 462 if (secondary) { 463 if (cpu == xmon_owner) { 464 if (!test_and_set_bit(0, &xmon_taken)) { 465 secondary = 0; 466 continue; 467 } 468 /* missed it */ 469 while (cpu == xmon_owner) 470 barrier(); 471 } 472 barrier(); 473 } else { 474 cmd = cmds(regs); 475 if (cmd != 0) { 476 /* exiting xmon */ 477 insert_bpts(); 478 xmon_gate = 0; 479 wmb(); 480 in_xmon = 0; 481 break; 482 } 483 /* have switched to some other cpu */ 484 secondary = 1; 485 } 486 } 487 leave: 488 cpumask_clear_cpu(cpu, &cpus_in_xmon); 489 xmon_fault_jmp[cpu] = NULL; 490 #else 491 /* UP is simple... */ 492 if (in_xmon) { 493 printf("Exception %lx %s in xmon, returning to main loop\n", 494 regs->trap, getvecname(TRAP(regs))); 495 longjmp(xmon_fault_jmp[0], 1); 496 } 497 if (setjmp(recurse_jmp) == 0) { 498 xmon_fault_jmp[0] = recurse_jmp; 499 in_xmon = 1; 500 501 excprint(regs); 502 bp = at_breakpoint(regs->nip); 503 if (bp) { 504 printf("Stopped at breakpoint %x (", BP_NUM(bp)); 505 xmon_print_symbol(regs->nip, " ", ")\n"); 506 } 507 if (unrecoverable_excp(regs)) 508 printf("WARNING: exception is not recoverable, " 509 "can't continue\n"); 510 remove_bpts(); 511 disable_surveillance(); 512 /* for breakpoint or single step, print the current instr. */ 513 if (bp || TRAP(regs) == 0xd00) 514 ppc_inst_dump(regs->nip, 1, 0); 515 printf("enter ? for help\n"); 516 } 517 518 cmd = cmds(regs); 519 520 insert_bpts(); 521 in_xmon = 0; 522 #endif 523 524 #ifdef CONFIG_BOOKE 525 if (regs->msr & MSR_DE) { 526 bp = at_breakpoint(regs->nip); 527 if (bp != NULL) { 528 regs->nip = (unsigned long) &bp->instr[0]; 529 atomic_inc(&bp->ref_count); 530 } 531 } 532 #else 533 if ((regs->msr & (MSR_IR|MSR_PR|MSR_64BIT)) == (MSR_IR|MSR_64BIT)) { 534 bp = at_breakpoint(regs->nip); 535 if (bp != NULL) { 536 int stepped = emulate_step(regs, bp->instr[0]); 537 if (stepped == 0) { 538 regs->nip = (unsigned long) &bp->instr[0]; 539 atomic_inc(&bp->ref_count); 540 } else if (stepped < 0) { 541 printf("Couldn't single-step %s instruction\n", 542 (IS_RFID(bp->instr[0])? "rfid": "mtmsrd")); 543 } 544 } 545 } 546 #endif 547 insert_cpu_bpts(); 548 549 local_irq_restore(flags); 550 551 return cmd != 'X' && cmd != EOF; 552 } The related disassembly code: "make ARCH=powerpc EXTRA_CFLAGS=-W" "powerpc64-linux-gnu-objdump -d vmlinux.o > vmlinux.S" "gcc version 4.7.1 20120606 (Red Hat 4.7.1-0.1.20120606) (GCC)" "GNU objdump version 2.23.51.0.3-1.fc16 20120918" c0000000000804b0 <.xmon_core>: c0000000000804b0: 7c 08 02 a6 mflr r0 c0000000000804b4: f9 c1 ff 70 std r14,-144(r1) c0000000000804b8: f9 e1 ff 78 std r15,-136(r1) c0000000000804bc: fa 01 ff 80 std r16,-128(r1) c0000000000804c0: fa 21 ff 88 std r17,-120(r1) c0000000000804c4: fa 41 ff 90 std r18,-112(r1) c0000000000804c8: fa 61 ff 98 std r19,-104(r1) c0000000000804cc: fa 81 ff a0 std r20,-96(r1) c0000000000804d0: fa a1 ff a8 std r21,-88(r1) c0000000000804d4: fa c1 ff b0 std r22,-80(r1) c0000000000804d8: f8 01 00 10 std r0,16(r1) c0000000000804dc: fa e1 ff b8 std r23,-72(r1) c0000000000804e0: fb 01 ff c0 std r24,-64(r1) c0000000000804e4: fb 21 ff c8 std r25,-56(r1) c0000000000804e8: fb 41 ff d0 std r26,-48(r1) c0000000000804ec: fb 61 ff d8 std r27,-40(r1) c0000000000804f0: fb 81 ff e0 std r28,-32(r1) c0000000000804f4: fb a1 ff e8 std r29,-24(r1) c0000000000804f8: fb c1 ff f0 std r30,-16(r1) c0000000000804fc: fb e1 ff f8 std r31,-8(r1) c000000000080500: f8 21 fd 91 stdu r1,-624(r1) c000000000080504: f8 61 02 a0 std r3,672(r1) ; 672(r1) = parameter regs c000000000080508: f8 81 02 a8 std r4,680(r1) ; 680(r1) = parameter fromipi c00000000008050c: 39 20 00 00 li r9,0 c000000000080510: 88 cd 02 72 lbz r6,626(r13) c000000000080514: 99 2d 02 72 stb r9,626(r13) c000000000080518: 3d 22 00 0f addis r9,r2,15 c00000000008051c: 39 00 00 00 li r8,0 c000000000080520: 39 29 3e 10 addi r9,r9,15888 c000000000080524: f8 c1 01 a8 std r6,424(r1) c000000000080528: 39 29 00 08 addi r9,r9,8 c00000000008052c: f9 01 01 70 std r8,368(r1) c000000000080530: e8 e1 02 a0 ld r7,672(r1) c000000000080534: e9 47 01 00 ld r10,256(r7) c000000000080538: 7d 29 50 50 subf r9,r9,r10 c00000000008053c: 2b a9 1f ff cmpldi cr7,r9,8191 c000000000080540: 41 9d 00 20 bgt- cr7,c000000000080560 <.xmon_core+0xb0> c000000000080544: 79 29 06 e0 clrldi r9,r9,59 c000000000080548: 2f a9 00 08 cmpdi cr7,r9,8 c00000000008054c: 41 9e 03 f4 beq- cr7,c000000000080940 <.xmon_core+0x490> c000000000080550: 2f a9 00 0c cmpdi cr7,r9,12 c000000000080554: 41 9e 03 ec beq- cr7,c000000000080940 <.xmon_core+0x490> c000000000080558: 60 00 00 00 nop c00000000008055c: 60 00 00 00 nop /* remove_cpu_bpts() */ c000000000080560: 39 20 00 00 li r9,0 c000000000080564: 38 61 00 70 addi r3,r1,112 c000000000080568: f9 21 00 70 std r9,112(r1) c00000000008056c: b1 21 00 78 sth r9,120(r1) c000000000080570: b1 21 00 7a sth r9,122(r1) c000000000080574: 4b f9 3a 0d bl c000000000013f80 <.set_breakpoint> c000000000080578: 60 00 00 00 nop c00000000008057c: 3d 22 00 0b addis r9,r2,11 c000000000080580: 39 29 69 18 addi r9,r9,26904 c000000000080584: e9 29 00 00 ld r9,0(r9) c000000000080588: e9 29 00 10 ld r9,16(r9) c00000000008058c: 79 28 e7 e1 rldicl. r8,r9,28,63 c000000000080590: 41 82 00 0c beq- c00000000008059c <.xmon_core+0xec> c000000000080594: 39 20 00 00 li r9,0 c000000000080598: 7d 32 fb a6 mtspr 1010,r9 /* cpu = smp_processor_id(); */ /* if (cpumask_test_cpu(cpu, &cpus_in_xmon)) { */ c00000000008059c: a1 2d 00 0a lhz r9,10(r13) c0000000000805a0: 3f e2 00 0f addis r31,r2,15 c0000000000805a4: 3b df 3e 10 addi r30,r31,15888 c0000000000805a8: 7d 2a 07 b4 extsw r10,r9 c0000000000805ac: 39 1e 24 e8 addi r8,r30,9448 c0000000000805b0: 79 46 d1 82 rldicl r6,r10,58,6 c0000000000805b4: f9 41 01 78 std r10,376(r1) c0000000000805b8: 78 ca 1f 24 rldicr r10,r6,3,60 c0000000000805bc: 55 27 06 be clrlwi r7,r9,26 c0000000000805c0: 7d 48 50 2a ldx r10,r8,r10 c0000000000805c4: f8 c1 01 88 std r6,392(r1) c0000000000805c8: 90 e1 01 90 stw r7,400(r1) c0000000000805cc: 7d 49 3c 36 srd r9,r10,r7 c0000000000805d0: 79 28 07 e1 clrldi. r8,r9,63 c0000000000805d4: 40 82 2a 6c bne- c000000000083040 <.xmon_core+0x2b90> ; cpumask_test_cpu(cpu, &cpus_in_xmon) == true /* 387 if (setjmp(recurse_jmp) != 0) { 388 if (!in_xmon || !xmon_gate) { 389 get_output_lock(); 390 printf("xmon: WARNING: bad recursive fault " 391 "on cpu 0x%x\n", cpu); 392 release_output_lock(); 393 goto waiting; 394 } 395 secondary = !(xmon_taken && cpu == xmon_owner); 396 goto cmdloop; 397 } */ c0000000000805d8: 38 61 00 70 addi r3,r1,112 c0000000000805dc: 4b fa 10 15 bl c0000000000215f0 <.setjmp> c0000000000805e0: 60 00 00 00 nop c0000000000805e4: 2f a3 00 00 cmpdi cr7,r3,0 c0000000000805e8: 41 9e 02 b8 beq- cr7,c0000000000808a0 <.xmon_core+0x3f0>a c0000000000805ec: 3d 22 00 09 addis r9,r2,9 c0000000000805f0: e9 29 2f 00 ld r9,12032(r9) c0000000000805f4: 2f a9 00 00 cmpdi cr7,r9,0 c0000000000805f8: 41 9e 00 18 beq- cr7,c000000000080610 <.xmon_core+0x160> c0000000000805fc: 3d 42 00 0f addis r10,r2,15 c000000000080600: 39 4a 3e 10 addi r10,r10,15888 c000000000080604: 81 0a 66 50 lwz r8,26192(r10) c000000000080608: 2f 88 00 00 cmpwi cr7,r8,0 c00000000008060c: 40 9e 22 b0 bne- cr7,c0000000000828bc <.xmon_core+0x240c> c000000000080610: 4b ff b2 51 bl c00000000007b860 <.get_output_lock> c000000000080614: 3c 62 ff d4 addis r3,r2,-44 c000000000080618: e8 81 01 78 ld r4,376(r1) ; 376(r1) = cpu c00000000008061c: 38 63 8a e8 addi r3,r3,-29976 c000000000080620: 48 00 32 21 bl c000000000083840 <.xmon_printf> c000000000080624: 60 00 00 00 nop c000000000080628: 3d 22 00 0f addis r9,r2,15 c00000000008062c: 39 40 00 00 li r10,0 c000000000080630: 80 c1 01 90 lwz r6,400(r1) c000000000080634: 91 49 3e 10 stw r10,15888(r9) c000000000080638: 39 20 00 01 li r9,1 c00000000008063c: 7d 29 30 36 sld r9,r9,r6 c000000000080640: f9 21 01 80 std r9,384(r1) /* 426 if (fromipi) 427 goto leave; */ c000000000080644: e9 21 02 a8 ld r9,680(r1) c000000000080648: 3d 42 00 09 addis r10,r2,9 c00000000008064c: 3c e2 00 0f addis r7,r2,15 c000000000080650: 39 4a 2f 00 addi r10,r10,12032 c000000000080654: 39 00 00 01 li r8,1 c000000000080658: 2f 29 00 00 cmpdi cr6,r9,0 c00000000008065c: 48 00 00 2c b c000000000080688 <.xmon_core+0x1d8> c000000000080660: 40 9a 00 ec bne- cr6,c00000000008074c <.xmon_core+0x29c> c000000000080664: 7c 20 04 ac lwsync c000000000080668: 7f 80 50 a8 ldarx r28,0,r10 c00000000008066c: 7f 89 43 78 or r9,r28,r8 c000000000080670: 7d 20 51 ad stdcx. r9,0,r10 c000000000080674: 40 a2 ff f4 bne- c000000000080668 <.xmon_core+0x1b8> c000000000080678: 7c 00 04 ac sync c00000000008067c: 7b 9c 07 e0 clrldi r28,r28,63 c000000000080680: 2f bc 00 00 cmpdi cr7,r28,0 c000000000080684: 41 9e 00 2c beq- cr7,c0000000000806b0 <.xmon_core+0x200> c000000000080688: 39 27 3e 10 addi r9,r7,15888 c00000000008068c: 81 29 66 50 lwz r9,26192(r9) c000000000080690: 2f 89 00 00 cmpwi cr7,r9,0 c000000000080694: 40 9e 20 0c bne- cr7,c0000000000826a0 <.xmon_core+0x21f0> c000000000080698: e9 2a 00 00 ld r9,0(r10) c00000000008069c: 2f a9 00 00 cmpdi cr7,r9,0 c0000000000806a0: 41 9e ff c0 beq+ cr7,c000000000080660 <.xmon_core+0x1b0> c0000000000806a4: 7d 1c 43 78 mr r28,r8 c0000000000806a8: 2f bc 00 00 cmpdi cr7,r28,0 c0000000000806ac: 40 9e ff dc bne+ cr7,c000000000080688 <.xmon_core+0x1d8> c0000000000806b0: 3f a2 00 0f addis r29,r2,15 c0000000000806b4: 3b bd 3e 10 addi r29,r29,15888 c0000000000806b8: 81 3d 66 50 lwz r9,26192(r29) c0000000000806bc: 2f 89 00 00 cmpwi cr7,r9,0 c0000000000806c0: 41 9e 25 c8 beq- cr7,c000000000082c88 <.xmon_core+0x27d8> c0000000000806c4: 3d 22 00 09 addis r9,r2,9 c0000000000806c8: e9 29 2f 00 ld r9,12032(r9) c0000000000806cc: 2f a9 00 00 cmpdi cr7,r9,0 c0000000000806d0: 3c c2 ff d4 addis r6,r2,-44 c0000000000806d4: eb 61 01 78 ld r27,376(r1) c0000000000806d8: 3c e2 ff d4 addis r7,r2,-44 c0000000000806dc: 3d 02 ff d4 addis r8,r2,-44 c0000000000806e0: 3d 42 ff d4 addis r10,r2,-44 c0000000000806e4: 39 e7 99 68 addi r15,r7,-26264 c0000000000806e8: 3a 28 99 70 addi r17,r8,-26256 c0000000000806ec: 3f a2 ff d4 addis r29,r2,-44 c0000000000806f0: 3f c2 ff d4 addis r30,r2,-44 c0000000000806f4: 38 c6 99 50 addi r6,r6,-26288 c0000000000806f8: 39 4a 99 30 addi r10,r10,-26320 c0000000000806fc: fa 21 01 a0 std r17,416(r1) c000000000080700: 3f e2 00 0f addis r31,r2,15 c000000000080704: 7d f1 7b 78 mr r17,r15 c000000000080708: e9 e1 02 a0 ld r15,672(r1) c00000000008070c: 3b bd 8b b8 addi r29,r29,-29768 c000000000080710: 3b de 8b c0 addi r30,r30,-29760 c000000000080714: f8 c1 01 98 std r6,408(r1) c000000000080718: f9 41 01 b0 std r10,432(r1) c00000000008071c: 41 9e 00 30 beq- cr7,c00000000008074c <.xmon_core+0x29c> c000000000080720: 2f bc 00 00 cmpdi cr7,r28,0 c000000000080724: 39 3f 3e 10 addi r9,r31,15888 c000000000080728: 41 9e 02 c8 beq- cr7,c0000000000809f0 <.xmon_core+0x540> c00000000008072c: 81 49 66 54 lwz r10,26196(r9) c000000000080730: 7f 8a d8 00 cmpw cr7,r10,r27 c000000000080734: 41 9e 02 5c beq- cr7,c000000000080990 <.xmon_core+0x4e0> c000000000080738: 3b 80 00 01 li r28,1 c00000000008073c: 3d 22 00 09 addis r9,r2,9 c000000000080740: e9 29 2f 00 ld r9,12032(r9) c000000000080744: 2f a9 00 00 cmpdi cr7,r9,0 c000000000080748: 40 9e ff d8 bne+ cr7,c000000000080720 <.xmon_core+0x270> /* 487 leave: 488 cpumask_clear_cpu(cpu, &cpus_in_xmon); 489 xmon_fault_jmp[cpu] = NULL; */ c00000000008074c: 3b 80 00 00 li r28,0 c000000000080750: e8 c1 01 88 ld r6,392(r1) c000000000080754: 3d 42 00 0f addis r10,r2,15 c000000000080758: e8 e1 01 80 ld r7,384(r1) c00000000008075c: 39 4a 3e 10 addi r10,r10,15888 c000000000080760: 39 0a 24 e8 addi r8,r10,9448 c000000000080764: 78 c9 1f 24 rldicr r9,r6,3,60 c000000000080768: 7d 28 4a 14 add r9,r8,r9 c00000000008076c: 7d 00 48 a8 ldarx r8,0,r9 c000000000080770: 7d 08 38 78 andc r8,r8,r7 c000000000080774: 7d 00 49 ad stdcx. r8,0,r9 c000000000080778: 40 a2 ff f4 bne- c00000000008076c <.xmon_core+0x2bc> c00000000008077c: e9 21 02 a0 ld r9,672(r1) c000000000080780: 3d 00 80 00 lis r8,-32768 c000000000080784: e8 c1 01 78 ld r6,376(r1) c000000000080788: 79 08 07 c6 rldicr r8,r8,32,31 c00000000008078c: e8 e9 01 08 ld r7,264(r9) c000000000080790: 3d 20 80 00 lis r9,-32768 c000000000080794: 61 08 40 20 ori r8,r8,16416 c000000000080798: 79 29 07 c6 rldicr r9,r9,32,31 c00000000008079c: 7c e8 40 38 and r8,r7,r8 c0000000000807a0: 61 29 00 20 ori r9,r9,32 c0000000000807a4: 7f a8 48 00 cmpd cr7,r8,r9 c0000000000807a8: 78 c7 1f 24 rldicr r7,r6,3,60 c0000000000807ac: 7c ea 3a 14 add r7,r10,r7 c0000000000807b0: 38 c0 00 00 li r6,0 c0000000000807b4: f8 c7 26 50 std r6,9808(r7) ; xmon_fault_jmp[cpu] = NULL; /* 533 if ((regs->msr & (MSR_IR|MSR_PR|MSR_64BIT)) == (MSR_IR|MSR_64BIT)) { */ c0000000000807b8: 41 9e 1f 34 beq- cr7,c0000000000826ec <.xmon_core+0x223c> /* 547 insert_cpu_bpts(); */ c0000000000807bc: 3d 42 00 0f addis r10,r2,15 c0000000000807c0: 39 4a 3e 10 addi r10,r10,15888 c0000000000807c4: 81 2a 66 fc lwz r9,26364(r10) c0000000000807c8: 2f 89 00 00 cmpwi cr7,r9,0 c0000000000807cc: 40 9e 1e f4 bne- cr7,c0000000000826c0 <.xmon_core+0x2210> c0000000000807d0: 3d 22 00 0f addis r9,r2,15 c0000000000807d4: 39 29 3e 10 addi r9,r9,15888 c0000000000807d8: e9 29 67 08 ld r9,26376(r9) c0000000000807dc: 2f a9 00 00 cmpdi cr7,r9,0 c0000000000807e0: 41 9e 00 30 beq- cr7,c000000000080810 <.xmon_core+0x360> c0000000000807e4: 3d 42 00 0b addis r10,r2,11 c0000000000807e8: 39 4a 69 18 addi r10,r10,26904 c0000000000807ec: e9 4a 00 00 ld r10,0(r10) c0000000000807f0: e9 4a 00 10 ld r10,16(r10) c0000000000807f4: 79 46 e7 e1 rldicl. r6,r10,28,63 c0000000000807f8: 41 82 00 18 beq- c000000000080810 <.xmon_core+0x360> c0000000000807fc: 81 49 00 14 lwz r10,20(r9) c000000000080800: e9 29 00 00 ld r9,0(r9) c000000000080804: 79 4a 07 a0 clrldi r10,r10,62 c000000000080808: 7d 49 4b 78 or r9,r10,r9 c00000000008080c: 7d 32 fb a6 mtspr 1010,r9 /* 549 local_irq_restore(flags); */ c000000000080810: e8 e1 01 a8 ld r7,424(r1) c000000000080814: 2f a7 00 00 cmpdi cr7,r7,0 c000000000080818: 40 9e 01 60 bne- cr7,c000000000080978 <.xmon_core+0x4c8> c00000000008081c: 38 60 00 00 li r3,0 c000000000080820: 4b f8 f3 81 bl c00000000000fba0 <.arch_local_irq_restore> c000000000080824: 60 00 00 00 nop c000000000080828: 2f 9c 00 58 cmpwi cr7,r28,88 c00000000008082c: 38 60 00 00 li r3,0 c000000000080830: 41 9e 00 18 beq- cr7,c000000000080848 <.xmon_core+0x398> c000000000080834: 3b 9c 00 01 addi r28,r28,1 c000000000080838: 7f 9c 00 34 cntlzw r28,r28 c00000000008083c: 57 9c d9 7e rlwinm r28,r28,27,5,31 c000000000080840: 6b 83 00 01 xori r3,r28,1 c000000000080844: 7c 63 07 b4 extsw r3,r3 c000000000080848: 38 21 02 70 addi r1,r1,624 c00000000008084c: e8 01 00 10 ld r0,16(r1) c000000000080850: e9 c1 ff 70 ld r14,-144(r1) c000000000080854: e9 e1 ff 78 ld r15,-136(r1) c000000000080858: ea 01 ff 80 ld r16,-128(r1) c00000000008085c: 7c 08 03 a6 mtlr r0 c000000000080860: ea 21 ff 88 ld r17,-120(r1) c000000000080864: ea 41 ff 90 ld r18,-112(r1) c000000000080868: ea 61 ff 98 ld r19,-104(r1) c00000000008086c: ea 81 ff a0 ld r20,-96(r1) c000000000080870: ea a1 ff a8 ld r21,-88(r1) c000000000080874: ea c1 ff b0 ld r22,-80(r1) c000000000080878: ea e1 ff b8 ld r23,-72(r1) c00000000008087c: eb 01 ff c0 ld r24,-64(r1) c000000000080880: eb 21 ff c8 ld r25,-56(r1) c000000000080884: eb 41 ff d0 ld r26,-48(r1) c000000000080888: eb 61 ff d8 ld r27,-40(r1) c00000000008088c: eb 81 ff e0 ld r28,-32(r1) c000000000080890: eb a1 ff e8 ld r29,-24(r1) c000000000080894: eb c1 ff f0 ld r30,-16(r1) c000000000080898: eb e1 ff f8 ld r31,-8(r1) c00000000008089c: 4e 80 00 20 blr /* } // Function end */ /* 399 xmon_fault_jmp[cpu] = recurse_jmp; 400 cpumask_set_cpu(cpu, &cpus_in_xmon); 401 402 bp = NULL; 403 if ((regs->msr & (MSR_IR|MSR_PR|MSR_64BIT)) == (MSR_IR|MSR_64BIT)) 404 bp = at_breakpoint(regs->nip); 405 if (bp || unrecoverable_excp(regs)) 406 fromipi = 0; */ c0000000000808a0: e9 01 01 78 ld r8,376(r1) ; 376(r1) = cpu c0000000000808a4: e8 c1 01 88 ld r6,392(r1) c0000000000808a8: 3d 42 00 0f addis r10,r2,15 c0000000000808ac: 39 4a 3e 10 addi r10,r10,15888 c0000000000808b0: 79 07 1f 24 rldicr r7,r8,3,60 c0000000000808b4: 78 c9 1f 24 rldicr r9,r6,3,60 c0000000000808b8: 7c ea 3a 14 add r7,r10,r7 c0000000000808bc: 38 c1 00 70 addi r6,r1,112 c0000000000808c0: f8 c7 26 50 std r6,9808(r7) ; xmon_fault_jmp[cpu] = recurse_jmp; c0000000000808c4: 80 c1 01 90 lwz r6,400(r1) c0000000000808c8: 38 e0 00 01 li r7,1 c0000000000808cc: 39 0a 24 e8 addi r8,r10,9448 c0000000000808d0: 7c e7 30 36 sld r7,r7,r6 c0000000000808d4: 7d 28 4a 14 add r9,r8,r9 c0000000000808d8: f8 e1 01 80 std r7,384(r1) c0000000000808dc: 7d 00 48 a8 ldarx r8,0,r9 c0000000000808e0: 7d 08 3b 78 or r8,r8,r7 c0000000000808e4: 7d 00 49 ad stdcx. r8,0,r9 c0000000000808e8: 40 a2 ff f4 bne- c0000000000808dc <.xmon_core+0x42c> c0000000000808ec: e9 21 02 a0 ld r9,672(r1) c0000000000808f0: 3d 00 80 00 lis r8,-32768 c0000000000808f4: 38 c0 00 00 li r6,0 c0000000000808f8: 79 08 07 c6 rldicr r8,r8,32,31 c0000000000808fc: f8 c1 01 70 std r6,368(r1) c000000000080900: e8 e9 01 08 ld r7,264(r9) c000000000080904: 3d 20 80 00 lis r9,-32768 c000000000080908: 61 08 40 20 ori r8,r8,16416 c00000000008090c: 79 29 07 c6 rldicr r9,r9,32,31 c000000000080910: 7c e8 40 38 and r8,r7,r8 c000000000080914: 61 29 00 20 ori r9,r9,32 c000000000080918: 7f a8 48 00 cmpd cr7,r8,r9 c00000000008091c: 41 9e 1f cc beq- cr7,c0000000000828e8 <.xmon_core+0x2438> ; call bp = at_breakpoint(regs->nip); c000000000080920: 78 e9 ff e3 rldicl. r9,r7,63,63 c000000000080924: 41 82 20 1c beq- c000000000082940 <.xmon_core+0x2490> /* 408 if (!fromipi) { */ c000000000080928: e9 41 02 a8 ld r10,680(r1) c00000000008092c: 2f aa 00 00 cmpdi cr7,r10,0 c000000000080930: 40 9e fd 14 bne+ cr7,c000000000080644 <.xmon_core+0x194> c000000000080934: 48 00 20 0c b c000000000082940 <.xmon_core+0x2490> c000000000080938: 60 00 00 00 nop c00000000008093c: 60 00 00 00 nop /* 671 static struct bpt *in_breakpoint_table(unsigned long nip, unsigned long *offp) */ c000000000080940: 7c c9 50 51 subf. r6,r9,r10 c000000000080944: f8 c1 01 70 std r6,368(r1) c000000000080948: 41 a2 fc 18 beq- c000000000080560 <.xmon_core+0xb0> c00000000008094c: e9 06 00 00 ld r8,0(r6) c000000000080950: e8 e1 02 a0 ld r7,672(r1) c000000000080954: 39 46 00 10 addi r10,r6,16 c000000000080958: 39 08 ff f8 addi r8,r8,-8 c00000000008095c: 7d 28 4a 14 add r9,r8,r9 c000000000080960: f9 27 01 00 std r9,256(r7) c000000000080964: 7d 20 50 28 lwarx r9,0,r10 c000000000080968: 31 29 ff ff addic r9,r9,-1 c00000000008096c: 7d 20 51 2d stwcx. r9,0,r10 c000000000080970: 40 a2 ff f4 bne- c000000000080964 <.xmon_core+0x4b4> c000000000080974: 4b ff fb ec b c000000000080560 <.xmon_core+0xb0> /* 549 local_irq_restore(flags); */ c000000000080978: e8 61 01 a8 ld r3,424(r1) c00000000008097c: 4b f8 f2 25 bl c00000000000fba0 <.arch_local_irq_restore> c000000000080980: 60 00 00 00 nop c000000000080984: 4b ff fe a4 b c000000000080828 <.xmon_core+0x378> c000000000080988: 60 00 00 00 nop c00000000008098c: 60 00 00 00 nop c000000000080990: 3d 02 ff ed addis r8,r2,-19 c000000000080994: 39 40 00 01 li r10,1 c000000000080998: 39 08 44 e8 addi r8,r8,17640 c00000000008099c: 39 08 00 28 addi r8,r8,40 c0000000000809a0: 7c 20 04 ac lwsync c0000000000809a4: 7c e0 40 a8 ldarx r7,0,r8 c0000000000809a8: 7c e6 53 78 or r6,r7,r10 c0000000000809ac: 7c c0 41 ad stdcx. r6,0,r8 c0000000000809b0: 40 a2 ff f4 bne- c0000000000809a4 <.xmon_core+0x4f4> c0000000000809b4: 7c 00 04 ac sync c0000000000809b8: 78 ea 07 e1 clrldi. r10,r7,63 c0000000000809bc: 3b 80 00 00 li r28,0 c0000000000809c0: 41 82 fd 7c beq+ c00000000008073c <.xmon_core+0x28c> c0000000000809c4: 48 00 00 10 b c0000000000809d4 <.xmon_core+0x524> c0000000000809c8: 60 00 00 00 nop c0000000000809cc: 60 00 00 00 nop c0000000000809d0: 39 3f 3e 10 addi r9,r31,15888 c0000000000809d4: 81 29 66 54 lwz r9,26196(r9) c0000000000809d8: 7f 89 d8 00 cmpw cr7,r9,r27 c0000000000809dc: 41 9e ff f4 beq+ cr7,c0000000000809d0 <.xmon_core+0x520> c0000000000809e0: 4b ff fd 58 b c000000000080738 <.xmon_core+0x288> c0000000000809e4: 60 00 00 00 nop c0000000000809e8: 60 00 00 00 nop c0000000000809ec: 60 00 00 00 nop /* 787 static int 788 cmds(struct pt_regs *excp) 789 { */ c0000000000809f0: 81 49 24 e0 lwz r10,9440(r9) c0000000000809f4: fb 89 26 38 std r28,9784(r9) c0000000000809f8: f9 e9 25 e8 std r15,9704(r9) c0000000000809fc: 2f 8a 00 00 cmpwi cr7,r10,0 c000000000080a00: 41 9e 0f b0 beq- cr7,c0000000000819b0 <.xmon_core+0x1500> c000000000080a04: 3d 22 ff d4 addis r9,r2,-44 c000000000080a08: 3a 49 99 18 addi r18,r9,-26344 c000000000080a0c: 60 00 00 00 nop /* 800 for(;;) { */ /* 801 #ifdef CONFIG_SMP 802 printf("%x:", smp_processor_id()); 803 #endif \* CONFIG_SMP *\ 804 printf("mon> "); 805 flush_input(); 806 termch = 0; 807 cmd = skipbl(); */ c000000000080a10: a0 8d 00 0a lhz r4,10(r13) c000000000080a14: 7f a3 eb 78 mr r3,r29 c000000000080a18: 3b 5f 3e 10 addi r26,r31,15888 c000000000080a1c: 3b 20 00 00 li r25,0 c000000000080a20: 48 00 2e 21 bl c000000000083840 <.xmon_printf> c000000000080a24: 60 00 00 00 nop c000000000080a28: 7f c3 f3 78 mr r3,r30 c000000000080a2c: 48 00 2e 15 bl c000000000083840 <.xmon_printf> c000000000080a30: 60 00 00 00 nop c000000000080a34: fb 3a 24 d0 std r25,9424(r26) c000000000080a38: 93 3a 24 d8 stw r25,9432(r26) c000000000080a3c: 4b ff e9 25 bl c00000000007f360 <.skipbl> /* 808 if( cmd == '\n' ) { */ c000000000080a40: 2f 83 00 0a cmpwi cr7,r3,10 c000000000080a44: 7c 7c 1b 78 mr r28,r3 c000000000080a48: 41 9e 00 b8 beq- cr7,c000000000080b00 <.xmon_core+0x650> c000000000080a4c: 39 3c 00 01 addi r9,r28,1 c000000000080a50: 2b 89 00 7b cmplwi cr7,r9,123 c000000000080a54: 40 9d 00 d4 ble- cr7,c000000000080b28 <.xmon_core+0x678> /* 904 default: 905 printf("Unrecognized command: "); 906 do { 907 if (' ' < cmd && cmd <= '~') 908 putchar(cmd); 909 else 910 printf("\\x%x", cmd); 911 cmd = inchar(); 912 } while (cmd != '\n'); 913 printf(" (type ? for help)\n"); 914 break; 915 } */ c000000000080a58: e8 61 01 98 ld r3,408(r1) c000000000080a5c: 48 00 2d e5 bl c000000000083840 <.xmon_printf> c000000000080a60: 60 00 00 00 nop c000000000080a64: 7f 84 e3 78 mr r4,r28 c000000000080a68: 48 00 00 24 b c000000000080a8c <.xmon_core+0x5dc> c000000000080a6c: 60 00 00 00 nop c000000000080a70: 7c 83 23 78 mr r3,r4 c000000000080a74: 48 00 2a dd bl c000000000083550 <.xmon_putchar> c000000000080a78: 60 00 00 00 nop c000000000080a7c: 4b ff e2 75 bl c00000000007ecf0 <.inchar> c000000000080a80: 2f 83 00 0a cmpwi cr7,r3,10 c000000000080a84: 7c 64 1b 78 mr r4,r3 c000000000080a88: 41 9e 00 2c beq- cr7,c000000000080ab4 <.xmon_core+0x604> c000000000080a8c: 39 24 ff df addi r9,r4,-33 c000000000080a90: 2b 89 00 5d cmplwi cr7,r9,93 c000000000080a94: 40 9d ff dc ble+ cr7,c000000000080a70 <.xmon_core+0x5c0> c000000000080a98: 7e 23 8b 78 mr r3,r17 c000000000080a9c: 48 00 2d a5 bl c000000000083840 <.xmon_printf> c000000000080aa0: 60 00 00 00 nop c000000000080aa4: 4b ff e2 4d bl c00000000007ecf0 <.inchar> c000000000080aa8: 2f 83 00 0a cmpwi cr7,r3,10 c000000000080aac: 7c 64 1b 78 mr r4,r3 c000000000080ab0: 40 9e ff dc bne+ cr7,c000000000080a8c <.xmon_core+0x5dc> c000000000080ab4: e8 61 01 a0 ld r3,416(r1) c000000000080ab8: 3b 5f 3e 10 addi r26,r31,15888 c000000000080abc: 3b 20 00 00 li r25,0 c000000000080ac0: 48 00 2d 81 bl c000000000083840 <.xmon_printf> c000000000080ac4: 60 00 00 00 nop /* 801 #ifdef CONFIG_SMP 802 printf("%x:", smp_processor_id()); 803 #endif \* CONFIG_SMP *\ 804 printf("mon> "); 805 flush_input(); 806 termch = 0; 807 cmd = skipbl(); 808 if( cmd == '\n' ) { */ c000000000080ac8: 7f a3 eb 78 mr r3,r29 c000000000080acc: a0 8d 00 0a lhz r4,10(r13) c000000000080ad0: 48 00 2d 71 bl c000000000083840 <.xmon_printf> c000000000080ad4: 60 00 00 00 nop c000000000080ad8: 7f c3 f3 78 mr r3,r30 c000000000080adc: 48 00 2d 65 bl c000000000083840 <.xmon_printf> c000000000080ae0: 60 00 00 00 nop c000000000080ae4: fb 3a 24 d0 std r25,9424(r26) c000000000080ae8: 93 3a 24 d8 stw r25,9432(r26) c000000000080aec: 4b ff e8 75 bl c00000000007f360 <.skipbl> c000000000080af0: 2f 83 00 0a cmpwi cr7,r3,10 c000000000080af4: 7c 7c 1b 78 mr r28,r3 c000000000080af8: 40 9e ff 54 bne+ cr7,c000000000080a4c <.xmon_core+0x59c> c000000000080afc: 60 00 00 00 nop /* 809 if (last_cmd == NULL) 810 continue; 811 take_input(last_cmd); 812 last_cmd = NULL; 813 cmd = inchar(); 814 } */ c000000000080b00: e9 3a 26 38 ld r9,9784(r26) c000000000080b04: 2f a9 00 00 cmpdi cr7,r9,0 c000000000080b08: 41 9e ff 08 beq+ cr7,c000000000080a10 <.xmon_core+0x560> c000000000080b0c: f9 3a 24 d0 std r9,9424(r26) c000000000080b10: fb 3a 26 38 std r25,9784(r26) c000000000080b14: 4b ff e1 dd bl c00000000007ecf0 <.inchar> /* 815 switch (cmd) { */ c000000000080b18: 7c 7c 1b 78 mr r28,r3 c000000000080b1c: 39 3c 00 01 addi r9,r28,1 c000000000080b20: 2b 89 00 7b cmplwi cr7,r9,123 c000000000080b24: 41 9d ff 34 bgt+ cr7,c000000000080a58 <.xmon_core+0x5a8> c000000000080b28: 3d 42 ff 33 addis r10,r2,-205 c000000000080b2c: 79 29 17 88 rldic r9,r9,2,30 c000000000080b30: 39 4a f2 5c addi r10,r10,-3492 c000000000080b34: 7d 2a 4a aa lwax r9,r10,r9 c000000000080b38: 7d 49 52 14 add r10,r9,r10 c000000000080b3c: 7d 49 03 a6 mtctr r10 c000000000080b40: 4e 80 04 20 bctr c000000000080b44: 00 00 03 8c .long 0x38c c000000000080b48: ff ff ff 14 .long 0xffffff14 c000000000080b4c: ff ff ff 14 .long 0xffffff14 c000000000080b50: ff ff ff 14 .long 0xffffff14 c000000000080b54: ff ff ff 14 .long 0xffffff14 c000000000080b58: ff ff ff 14 .long 0xffffff14 c000000000080b5c: ff ff ff 14 .long 0xffffff14 c000000000080b60: ff ff ff 14 .long 0xffffff14 c000000000080b64: ff ff ff 14 .long 0xffffff14 c000000000080b68: ff ff ff 14 .long 0xffffff14 c000000000080b6c: ff ff ff 14 .long 0xffffff14 c000000000080b70: ff ff ff 14 .long 0xffffff14 c000000000080b74: ff ff ff 14 .long 0xffffff14 c000000000080b78: ff ff ff 14 .long 0xffffff14 c000000000080b7c: ff ff ff 14 .long 0xffffff14 c000000000080b80: ff ff ff 14 .long 0xffffff14 c000000000080b84: ff ff ff 14 .long 0xffffff14 c000000000080b88: ff ff ff 14 .long 0xffffff14 c000000000080b8c: ff ff ff 14 .long 0xffffff14 c000000000080b90: ff ff ff 14 .long 0xffffff14 c000000000080b94: ff ff ff 14 .long 0xffffff14 c000000000080b98: ff ff ff 14 .long 0xffffff14 c000000000080b9c: ff ff ff 14 .long 0xffffff14 c000000000080ba0: ff ff ff 14 .long 0xffffff14 c000000000080ba4: ff ff ff 14 .long 0xffffff14 c000000000080ba8: ff ff ff 14 .long 0xffffff14 c000000000080bac: ff ff ff 14 .long 0xffffff14 c000000000080bb0: ff ff ff 14 .long 0xffffff14 c000000000080bb4: ff ff ff 14 .long 0xffffff14 c000000000080bb8: ff ff ff 14 .long 0xffffff14 c000000000080bbc: ff ff ff 14 .long 0xffffff14 c000000000080bc0: ff ff ff 14 .long 0xffffff14 c000000000080bc4: ff ff ff 14 .long 0xffffff14 c000000000080bc8: ff ff ff 14 .long 0xffffff14 c000000000080bcc: ff ff ff 14 .long 0xffffff14 c000000000080bd0: ff ff ff 14 .long 0xffffff14 c000000000080bd4: ff ff ff 14 .long 0xffffff14 c000000000080bd8: ff ff ff 14 .long 0xffffff14 c000000000080bdc: ff ff ff 14 .long 0xffffff14 c000000000080be0: ff ff ff 14 .long 0xffffff14 c000000000080be4: ff ff ff 14 .long 0xffffff14 c000000000080be8: ff ff ff 14 .long 0xffffff14 c000000000080bec: ff ff ff 14 .long 0xffffff14 c000000000080bf0: ff ff ff 14 .long 0xffffff14 c000000000080bf4: ff ff ff 14 .long 0xffffff14 c000000000080bf8: ff ff ff 14 .long 0xffffff14 c000000000080bfc: ff ff ff 14 .long 0xffffff14 c000000000080c00: ff ff ff 14 .long 0xffffff14 c000000000080c04: ff ff ff 14 .long 0xffffff14 c000000000080c08: ff ff ff 14 .long 0xffffff14 c000000000080c0c: ff ff ff 14 .long 0xffffff14 c000000000080c10: ff ff ff 14 .long 0xffffff14 c000000000080c14: ff ff ff 14 .long 0xffffff14 c000000000080c18: ff ff ff 14 .long 0xffffff14 c000000000080c1c: ff ff ff 14 .long 0xffffff14 c000000000080c20: ff ff ff 14 .long 0xffffff14 c000000000080c24: ff ff ff 14 .long 0xffffff14 c000000000080c28: ff ff ff 14 .long 0xffffff14 c000000000080c2c: ff ff ff 14 .long 0xffffff14 c000000000080c30: ff ff ff 14 .long 0xffffff14 c000000000080c34: ff ff ff 14 .long 0xffffff14 c000000000080c38: ff ff ff 14 .long 0xffffff14 c000000000080c3c: ff ff ff 14 .long 0xffffff14 c000000000080c40: ff ff ff 14 .long 0xffffff14 c000000000080c44: 00 00 03 6c .long 0x36c c000000000080c48: ff ff ff 14 .long 0xffffff14 c000000000080c4c: ff ff ff 14 .long 0xffffff14 c000000000080c50: ff ff ff 14 .long 0xffffff14 c000000000080c54: 00 00 03 bc .long 0x3bc c000000000080c58: ff ff ff 14 .long 0xffffff14 c000000000080c5c: ff ff ff 14 .long 0xffffff14 c000000000080c60: ff ff ff 14 .long 0xffffff14 c000000000080c64: ff ff ff 14 .long 0xffffff14 c000000000080c68: ff ff ff 14 .long 0xffffff14 c000000000080c6c: ff ff ff 14 .long 0xffffff14 c000000000080c70: ff ff ff 14 .long 0xffffff14 c000000000080c74: ff ff ff 14 .long 0xffffff14 c000000000080c78: ff ff ff 14 .long 0xffffff14 c000000000080c7c: ff ff ff 14 .long 0xffffff14 c000000000080c80: ff ff ff 14 .long 0xffffff14 c000000000080c84: ff ff ff 14 .long 0xffffff14 c000000000080c88: ff ff ff 14 .long 0xffffff14 c000000000080c8c: ff ff ff 14 .long 0xffffff14 c000000000080c90: ff ff ff 14 .long 0xffffff14 c000000000080c94: 00 00 03 2c .long 0x32c c000000000080c98: ff ff ff 14 .long 0xffffff14 c000000000080c9c: ff ff ff 14 .long 0xffffff14 c000000000080ca0: ff ff ff 14 .long 0xffffff14 c000000000080ca4: ff ff ff 14 .long 0xffffff14 c000000000080ca8: 00 00 02 4c .long 0x24c c000000000080cac: ff ff ff 14 .long 0xffffff14 c000000000080cb0: ff ff ff 14 .long 0xffffff14 c000000000080cb4: ff ff ff 14 .long 0xffffff14 c000000000080cb8: ff ff ff 14 .long 0xffffff14 c000000000080cbc: ff ff ff 14 .long 0xffffff14 c000000000080cc0: ff ff ff 14 .long 0xffffff14 c000000000080cc4: ff ff ff 14 .long 0xffffff14 c000000000080cc8: ff ff ff 14 .long 0xffffff14 c000000000080ccc: ff ff ff 14 .long 0xffffff14 c000000000080cd0: 00 00 0b 8c .long 0xb8c c000000000080cd4: 00 00 0a ec .long 0xaec c000000000080cd8: 00 00 0a 0c .long 0xa0c c000000000080cdc: 00 00 09 fc .long 0x9fc c000000000080ce0: 00 00 09 ec .long 0x9ec c000000000080ce4: ff ff ff 14 .long 0xffffff14 c000000000080ce8: ff ff ff 14 .long 0xffffff14 c000000000080cec: ff ff ff 14 .long 0xffffff14 c000000000080cf0: ff ff ff 14 .long 0xffffff14 c000000000080cf4: ff ff ff 14 .long 0xffffff14 c000000000080cf8: 00 00 09 dc .long 0x9dc c000000000080cfc: 00 00 05 1c .long 0x51c c000000000080d00: ff ff ff 14 .long 0xffffff14 c000000000080d04: ff ff ff 14 .long 0xffffff14 c000000000080d08: 00 00 05 0c .long 0x50c c000000000080d0c: ff ff ff 14 .long 0xffffff14 c000000000080d10: 00 00 0c fc .long 0xcfc c000000000080d14: 00 00 01 fc .long 0x1fc c000000000080d18: 00 00 0c cc .long 0xccc c000000000080d1c: 00 00 04 fc .long 0x4fc c000000000080d20: ff ff ff 14 .long 0xffffff14 c000000000080d24: ff ff ff 14 .long 0xffffff14 c000000000080d28: 00 00 02 4c .long 0x24c c000000000080d2c: ff ff ff 14 .long 0xffffff14 c000000000080d30: 00 00 04 ac .long 0x4ac c000000000080d34: 60 00 00 00 nop c000000000080d38: 60 00 00 00 nop c000000000080d3c: 60 00 00 00 nop 816 case 'm': 817 cmd = inchar(); 818 switch (cmd) { 819 case 'm': 820 case 's': 821 case 'd': 822 memops(cmd); 823 break; 824 case 'l': 825 memlocate(); 826 break; 827 case 'z': 828 memzcan(); 829 break; 830 case 'i': 831 show_mem(0); 832 break; 833 default: 834 termch = cmd; 835 memex(); 836 } 837 break; c000000000080d40: 4b ff df b1 bl c00000000007ecf0 <.inchar> c000000000080d44: 2f 83 00 66 cmpwi cr7,r3,102 c000000000080d48: 7c 7a 1b 78 mr r26,r3 c000000000080d4c: 41 9e 15 50 beq- cr7,c00000000008229c <.xmon_core+0x1dec> c000000000080d50: 41 9d 10 f0 bgt- cr7,c000000000081e40 <.xmon_core+0x1990> c000000000080d54: 2f 83 00 64 cmpwi cr7,r3,100 c000000000080d58: 41 9e 16 10 beq- cr7,c000000000082368 <.xmon_core+0x1eb8> c000000000080d5c: 3d 40 80 00 lis r10,-32768 c000000000080d60: e9 0f 01 08 ld r8,264(r15) c000000000080d64: 3d 20 80 00 lis r9,-32768 c000000000080d68: 79 4a 07 c6 rldicr r10,r10,32,31 c000000000080d6c: 79 29 07 c6 rldicr r9,r9,32,31 c000000000080d70: 61 4a 40 20 ori r10,r10,16416 c000000000080d74: 61 29 00 20 ori r9,r9,32 c000000000080d78: 7d 0a 50 38 and r10,r8,r10 c000000000080d7c: 7f aa 48 00 cmpd cr7,r10,r9 c000000000080d80: 41 9e 21 4c beq- cr7,c000000000082ecc <.xmon_core+0x2a1c> c000000000080d84: e9 41 02 a0 ld r10,672(r1) c000000000080d88: 61 08 04 00 ori r8,r8,1024 c000000000080d8c: f9 0a 01 08 std r8,264(r10) c000000000080d90: 3c e2 ff d4 addis r7,r2,-44 c000000000080d94: 3f e2 00 0f addis r31,r2,15 c000000000080d98: 3b ff 3e 10 addi r31,r31,15888 c000000000080d9c: 3c c0 fc 00 lis r6,-1024 c000000000080da0: 3b 07 99 c8 addi r24,r7,-26168 c000000000080da4: 3c e0 fc 00 lis r7,-1024 c000000000080da8: 7f fb fb 78 mr r27,r31 c000000000080dac: 3d 02 ff ed addis r8,r2,-19 c000000000080db0: 3d 42 ff d4 addis r10,r2,-44 c000000000080db4: 3d 22 ff d4 addis r9,r2,-44 c000000000080db8: 60 da 07 be ori r26,r6,1982 c000000000080dbc: 60 f7 07 fe ori r23,r7,2046 c000000000080dc0: 3c c0 7c 00 lis r6,31744 c000000000080dc4: 3c e0 4c 00 lis r7,19456 c000000000080dc8: 3b ff 00 08 addi r31,r31,8 c000000000080dcc: 60 d9 01 24 ori r25,r6,292 c000000000080dd0: 60 f6 00 24 ori r22,r7,36 c000000000080dd4: 3a a8 44 e8 addi r21,r8,17640 c000000000080dd8: 3a 8a 9a 10 addi r20,r10,-26096 c000000000080ddc: 3a 69 99 88 addi r19,r9,-26232 c000000000080de0: 3b db 20 08 addi r30,r27,8200 c000000000080de4: 48 00 00 18 b c000000000080dfc <.xmon_core+0x94c> c000000000080de8: 60 00 00 00 nop c000000000080dec: 60 00 00 00 nop c000000000080df0: 3b ff 00 20 addi r31,r31,32 c000000000080df4: 7f bf f0 00 cmpd cr7,r31,r30 c000000000080df8: 41 9e 00 50 beq- cr7,c000000000080e48 <.xmon_core+0x998> c000000000080dfc: 81 3f 00 14 lwz r9,20(r31) c000000000080e00: 71 26 00 0a andi. r6,r9,10 c000000000080e04: 41 82 ff ec beq+ c000000000080df0 <.xmon_core+0x940> c000000000080e08: 3b bf 00 08 addi r29,r31,8 c000000000080e0c: e8 7f 00 00 ld r3,0(r31) c000000000080e10: 38 a0 00 04 li r5,4 c000000000080e14: 7f a4 eb 78 mr r4,r29 c000000000080e18: 4b ff b5 a9 bl c00000000007c3c0 <.mread> c000000000080e1c: 2f 83 00 04 cmpwi cr7,r3,4 c000000000080e20: 41 9e 0a b0 beq- cr7,c0000000000818d0 <.xmon_core+0x1420> c000000000080e24: e8 9f 00 00 ld r4,0(r31) c000000000080e28: 7e 63 9b 78 mr r3,r19 c000000000080e2c: 48 00 2a 15 bl c000000000083840 <.xmon_printf> c000000000080e30: 60 00 00 00 nop c000000000080e34: 39 20 00 00 li r9,0 c000000000080e38: 91 3f 00 14 stw r9,20(r31) c000000000080e3c: 3b ff 00 20 addi r31,r31,32 c000000000080e40: 7f bf f0 00 cmpd cr7,r31,r30 c000000000080e44: 40 9e ff b8 bne+ cr7,c000000000080dfc <.xmon_core+0x94c> c000000000080e48: 39 20 00 00 li r9,0 c000000000080e4c: 91 3b 66 50 stw r9,26192(r27) c000000000080e50: 7c 00 04 ac sync c000000000080e54: 3d 22 00 09 addis r9,r2,9 c000000000080e58: 39 40 00 00 li r10,0 c000000000080e5c: f9 49 2f 00 std r10,12032(r9) c000000000080e60: 4b ff f8 f0 b c000000000080750 <.xmon_core+0x2a0> c000000000080e64: 60 00 00 00 nop c000000000080e68: 60 00 00 00 nop c000000000080e6c: 60 00 00 00 nop /* 1620 static void super_regs(void) 1621 { 1622 int cmd; 1623 unsigned long val; 1624 1625 cmd = skipbl(); 1626 if (cmd == '\n') { 1627 unsigned long sp, toc; 1628 asm("mr %0,1" : "=r" (sp) :); 1629 asm("mr %0,2" : "=r" (toc) :); 1630 1631 printf("msr = "REG" sprg0= "REG"\n", 1632 mfmsr(), mfspr(SPRN_SPRG0)); 1633 printf("pvr = "REG" sprg1= "REG"\n", 1634 mfspr(SPRN_PVR), mfspr(SPRN_SPRG1)); 1635 printf("dec = "REG" sprg2= "REG"\n", 1636 mfspr(SPRN_DEC), mfspr(SPRN_SPRG2)); 1637 printf("sp = "REG" sprg3= "REG"\n", sp, mfspr(SPRN_SPRG3)); 1638 printf("toc = "REG" dar = "REG"\n", toc, mfspr(SPRN_DAR)); 1639 1640 return; 1641 } 1642 1643 scanhex(®no); 1644 switch (cmd) { */ c000000000080e70: 4b ff e4 f1 bl c00000000007f360 <.skipbl> c000000000080e74: 2f 83 00 0a cmpwi cr7,r3,10 c000000000080e78: 7c 7c 1b 78 mr r28,r3 c000000000080e7c: 41 9e 14 68 beq- cr7,c0000000000822e4 <.xmon_core+0x1e34> c000000000080e80: 3b 5f 3e 10 addi r26,r31,15888 c000000000080e84: 38 7a 66 d8 addi r3,r26,26328 c000000000080e88: 4b ff e5 39 bl c00000000007f3c0 <.scanhex> c000000000080e8c: 2f 9c 00 72 cmpwi cr7,r28,114 c000000000080e90: 41 9e 09 e0 beq- cr7,c000000000081870 <.xmon_core+0x13c0> c000000000080e94: 2f 9c 00 77 cmpwi cr7,r28,119 c000000000080e98: 41 9e 09 b4 beq- cr7,c00000000008184c <.xmon_core+0x139c> c000000000080e9c: 4b ff de e5 bl c00000000007ed80 <.scannl> c000000000080ea0: 4b ff fb 70 b c000000000080a10 <.xmon_core+0x560> c000000000080ea4: 60 00 00 00 nop c000000000080ea8: 60 00 00 00 nop c000000000080eac: 60 00 00 00 nop c000000000080eb0: 3c 62 ff d4 addis r3,r2,-44 c000000000080eb4: 38 63 92 48 addi r3,r3,-28088 c000000000080eb8: 48 00 2a 29 bl c0000000000838e0 <.xmon_puts> c000000000080ebc: 60 00 00 00 nop c000000000080ec0: 4b ff fb 50 b c000000000080a10 <.xmon_core+0x560> c000000000080ec4: 60 00 00 00 nop c000000000080ec8: 60 00 00 00 nop c000000000080ecc: 60 00 00 00 nop c000000000080ed0: 3c 62 ff d4 addis r3,r2,-44 c000000000080ed4: 38 63 92 30 addi r3,r3,-28112 c000000000080ed8: 48 00 29 69 bl c000000000083840 <.xmon_printf> c000000000080edc: 60 00 00 00 nop c000000000080ee0: 3c 60 00 1e lis r3,30 c000000000080ee4: 60 63 84 80 ori r3,r3,33920 c000000000080ee8: 4b f9 c4 29 bl c00000000001d310 <.udelay> c000000000080eec: 60 00 00 00 nop c000000000080ef0: 4b ff fe a0 b c000000000080d90 <.xmon_core+0x8e0> c000000000080ef4: 60 00 00 00 nop c000000000080ef8: 60 00 00 00 nop c000000000080efc: 60 00 00 00 nop c000000000080f00: 38 7f 3e 10 addi r3,r31,15888 c000000000080f04: 38 63 25 f0 addi r3,r3,9712 c000000000080f08: 4b ff e4 b9 bl c00000000007f3c0 <.scanhex> c000000000080f0c: 2f a3 00 00 cmpdi cr7,r3,0 c000000000080f10: 41 9e fb 00 beq+ cr7,c000000000080a10 <.xmon_core+0x560> c000000000080f14: 3e e2 ff ed addis r23,r2,-19 c000000000080f18: 3b 97 44 e8 addi r28,r23,17640 c000000000080f1c: 38 7c 00 58 addi r3,r28,88 c000000000080f20: 4b ff e4 a1 bl c00000000007f3c0 <.scanhex> c000000000080f24: 2f a3 00 00 cmpdi cr7,r3,0 c000000000080f28: 41 9e fa e8 beq+ cr7,c000000000080a10 <.xmon_core+0x560> c000000000080f2c: e9 3c 00 58 ld r9,88(r28) c000000000080f30: 2f a9 00 00 cmpdi cr7,r9,0 c000000000080f34: 41 9e 20 ac beq- cr7,c000000000082fe0 <.xmon_core+0x2b30> c000000000080f38: 3b 40 ff ff li r26,-1 c000000000080f3c: 3e c2 ff b1 addis r22,r2,-79 c000000000080f40: 3b 80 00 00 li r28,0 c000000000080f44: 7b 5a 04 20 clrldi r26,r26,48 c000000000080f48: 3b 20 00 00 li r25,0 c000000000080f4c: 3a d6 08 f0 addi r22,r22,2288 c000000000080f50: 48 00 00 48 b c000000000080f98 <.xmon_core+0xae8> c000000000080f54: 60 00 00 00 nop c000000000080f58: 60 00 00 00 nop c000000000080f5c: 60 00 00 00 nop c000000000080f60: 89 21 01 60 lbz r9,352(r1) c000000000080f64: 39 57 44 e8 addi r10,r23,17640 c000000000080f68: 3b 9c 00 01 addi r28,r28,1 c000000000080f6c: e9 4a 00 58 ld r10,88(r10) c000000000080f70: 7b 9c 00 20 clrldi r28,r28,32 c000000000080f74: 7d 29 d2 78 xor r9,r9,r26 c000000000080f78: 7b 5a c2 02 rldicl r26,r26,56,8 c000000000080f7c: 79 29 0d e8 rldic r9,r9,1,55 c000000000080f80: 7f bc 50 40 cmpld cr7,r28,r10 c000000000080f84: 7d 36 4a 14 add r9,r22,r9 c000000000080f88: 7f 99 e3 78 mr r25,r28 c000000000080f8c: a1 29 01 78 lhz r9,376(r9) c000000000080f90: 7d 3a d2 78 xor r26,r9,r26 c000000000080f94: 40 9c 1c 14 bge- cr7,c000000000082ba8 <.xmon_core+0x26f8> c000000000080f98: 3b 1f 3e 10 addi r24,r31,15888 c000000000080f9c: 38 81 01 60 addi r4,r1,352 c000000000080fa0: e8 78 25 f0 ld r3,9712(r24) c000000000080fa4: 38 a0 00 01 li r5,1 c000000000080fa8: 7c 79 1a 14 add r3,r25,r3 c000000000080fac: 4b ff b4 15 bl c00000000007c3c0 <.mread> c000000000080fb0: 2f a3 00 00 cmpdi cr7,r3,0 c000000000080fb4: 40 9e ff ac bne+ cr7,c000000000080f60 <.xmon_core+0xab0> c000000000080fb8: e8 98 25 f0 ld r4,9712(r24) c000000000080fbc: 3c 62 ff d4 addis r3,r2,-44 c000000000080fc0: 38 63 98 f0 addi r3,r3,-26384 c000000000080fc4: 7c 99 22 14 add r4,r25,r4 c000000000080fc8: 48 00 28 79 bl c000000000083840 <.xmon_printf> c000000000080fcc: 60 00 00 00 nop c000000000080fd0: 7f 44 07 b4 extsw r4,r26 c000000000080fd4: 3c 62 ff d3 addis r3,r2,-45 c000000000080fd8: 38 63 8a b8 addi r3,r3,-30024 c000000000080fdc: 48 00 28 65 bl c000000000083840 <.xmon_printf> c000000000080fe0: 60 00 00 00 nop c000000000080fe4: 4b ff fa 2c b c000000000080a10 <.xmon_core+0x560> c000000000080fe8: 60 00 00 00 nop c000000000080fec: 60 00 00 00 nop c000000000080ff0: 4b ff dd 01 bl c00000000007ecf0 <.inchar> c000000000080ff4: 2f 83 00 72 cmpwi cr7,r3,114 c000000000080ff8: 41 9e 1a e4 beq- cr7,c000000000082adc <.xmon_core+0x262c> c000000000080ffc: 2f 83 00 68 cmpwi cr7,r3,104 c000000000081000: 41 9e 1b 3c beq- cr7,c000000000082b3c <.xmon_core+0x268c> c000000000081004: 2f 83 00 70 cmpwi cr7,r3,112 c000000000081008: 40 9e fa 08 bne+ cr7,c000000000080a10 <.xmon_core+0x560> c00000000008100c: 3d 22 00 0b addis r9,r2,11 c000000000081010: 39 29 6a 30 addi r9,r9,27184 c000000000081014: e9 29 01 30 ld r9,304(r9) c000000000081018: e9 49 00 00 ld r10,0(r9) c00000000008101c: f8 41 00 28 std r2,40(r1) c000000000081020: 7d 49 03 a6 mtctr r10 c000000000081024: e8 49 00 08 ld r2,8(r9) c000000000081028: 4e 80 04 21 bctrl c00000000008102c: e8 41 00 28 ld r2,40(r1) c000000000081030: 4b ff f9 e0 b c000000000080a10 <.xmon_core+0x560> c000000000081034: 60 00 00 00 nop c000000000081038: 60 00 00 00 nop c00000000008103c: 60 00 00 00 nop c000000000081040: 4b ff ef e1 bl c000000000080020 <.dump_segments> c000000000081044: 4b ff f9 cc b c000000000080a10 <.xmon_core+0x560> c000000000081048: 60 00 00 00 nop c00000000008104c: 60 00 00 00 nop c000000000081050: 4b ff ec 31 bl c00000000007fc80 <.proccall> c000000000081054: 4b ff f9 bc b c000000000080a10 <.xmon_core+0x560> c000000000081058: 60 00 00 00 nop c00000000008105c: 60 00 00 00 nop c000000000081060: 4b ff dc 91 bl c00000000007ecf0 <.inchar> c000000000081064: 39 23 ff 9c addi r9,r3,-100 c000000000081068: 7c 7c 1b 78 mr r28,r3 c00000000008106c: 2b 89 00 16 cmplwi cr7,r9,22 c000000000081070: 40 9d 09 80 ble- cr7,c0000000000819f0 <.xmon_core+0x1540> c000000000081074: 3b 5f 3e 10 addi r26,r31,15888 c000000000081078: 38 7a 25 f0 addi r3,r26,9712 c00000000008107c: 93 9a 24 d8 stw r28,9432(r26) c000000000081080: 4b ff e3 41 bl c00000000007f3c0 <.scanhex> c000000000081084: 4b ff e2 dd bl c00000000007f360 <.skipbl> c000000000081088: 2f 83 00 3f cmpwi cr7,r3,63 c00000000008108c: 41 9e 1e fc beq- cr7,c000000000082f88 <.xmon_core+0x2ad8> c000000000081090: 3d 22 ff d4 addis r9,r2,-44 c000000000081094: 90 7a 24 d8 stw r3,9432(r26) c000000000081098: 39 29 8d f8 addi r9,r9,-29192 c00000000008109c: 3f 82 ff ed addis r28,r2,-19 c0000000000810a0: f9 3a 26 38 std r9,9784(r26) c0000000000810a4: 3a c0 00 04 li r22,4 c0000000000810a8: 3a e0 00 02 li r23,2 c0000000000810ac: 3b 40 00 01 li r26,1 c0000000000810b0: 3b 00 00 08 li r24,8 c0000000000810b4: 3b 20 00 00 li r25,0 c0000000000810b8: 60 00 00 00 nop c0000000000810bc: 60 00 00 00 nop c0000000000810c0: 4b ff e2 a1 bl c00000000007f360 <.skipbl> c0000000000810c4: 2f 83 00 0a cmpwi cr7,r3,10 c0000000000810c8: 41 9e 00 3c beq- cr7,c000000000081104 <.xmon_core+0xc54> c0000000000810cc: 2f 83 00 6c cmpwi cr7,r3,108 c0000000000810d0: 41 9e 08 80 beq- cr7,c000000000081950 <.xmon_core+0x14a0> c0000000000810d4: 41 9d 07 cc bgt- cr7,c0000000000818a0 <.xmon_core+0x13f0> c0000000000810d8: 2f 83 00 62 cmpwi cr7,r3,98 c0000000000810dc: 41 9e 08 94 beq- cr7,c000000000081970 <.xmon_core+0x14c0> c0000000000810e0: 2f 83 00 64 cmpwi cr7,r3,100 c0000000000810e4: 41 9e 08 7c beq- cr7,c000000000081960 <.xmon_core+0x14b0> c0000000000810e8: 2f 83 00 2e cmpwi cr7,r3,46 c0000000000810ec: 40 9e ff d4 bne+ cr7,c0000000000810c0 <.xmon_core+0xc10> c0000000000810f0: 39 3f 3e 10 addi r9,r31,15888 c0000000000810f4: 93 29 66 d4 stw r25,26324(r9) c0000000000810f8: 4b ff e2 69 bl c00000000007f360 <.skipbl> c0000000000810fc: 2f 83 00 0a cmpwi cr7,r3,10 c000000000081100: 40 9e ff cc bne+ cr7,c0000000000810cc <.xmon_core+0xc1c> c000000000081104: 3d 42 ff ed addis r10,r2,-19 c000000000081108: 39 4a 44 e8 addi r10,r10,17640 c00000000008110c: 81 2a 00 40 lwz r9,64(r10) c000000000081110: 2f 89 00 00 cmpwi cr7,r9,0 c000000000081114: 40 9d 1b 28 ble- cr7,c000000000082c3c <.xmon_core+0x278c> c000000000081118: 2f 89 00 08 cmpwi cr7,r9,8 c00000000008111c: 41 9d 18 ac bgt- cr7,c0000000000829c8 <.xmon_core+0x2518> c000000000081120: 3d 42 ff d4 addis r10,r2,-44 c000000000081124: fb 61 01 c0 std r27,448(r1) c000000000081128: 39 4a 8e 10 addi r10,r10,-29168 c00000000008112c: fb c1 01 c8 std r30,456(r1) c000000000081130: f9 41 01 b8 std r10,440(r1) c000000000081134: 39 3f 3e 10 addi r9,r31,15888 c000000000081138: 3c e2 ff d4 addis r7,r2,-44 c00000000008113c: 3e c2 ff d5 addis r22,r2,-43 c000000000081140: e8 89 25 f0 ld r4,9712(r9) c000000000081144: 3d 02 ff b1 addis r8,r2,-79 c000000000081148: 3f 02 ff d4 addis r24,r2,-44 c00000000008114c: 7d 3c 4b 78 mr r28,r9 c000000000081150: 3f 42 ff ed addis r26,r2,-19 c000000000081154: 39 c7 8e 00 addi r14,r7,-29184 c000000000081158: 3a d6 f5 50 addi r22,r22,-2736 c00000000008115c: 3a 68 08 f0 addi r19,r8,2288 c000000000081160: 3b 18 86 58 addi r24,r24,-31144 c000000000081164: 3e e2 ff 33 addis r23,r2,-205 c000000000081168: 81 3c 66 d4 lwz r9,26324(r28) c00000000008116c: 2f 89 00 00 cmpwi cr7,r9,0 c000000000081170: 41 9e 1a 00 beq- cr7,c000000000082b70 <.xmon_core+0x26c0> c000000000081174: 80 bc 66 d0 lwz r5,26320(r28) c000000000081178: 39 20 ff ae li r9,-82 c00000000008117c: 7d c3 73 78 mr r3,r14 c000000000081180: 7c a5 00 34 cntlzw r5,r5 c000000000081184: 54 a5 d9 7e rlwinm r5,r5,27,5,31 c000000000081188: 78 a5 00 20 clrldi r5,r5,32 c00000000008118c: 7c a5 00 d0 neg r5,r5 c000000000081190: 7c a5 48 38 and r5,r5,r9 c000000000081194: 38 a5 00 72 addi r5,r5,114 c000000000081198: 48 00 26 a9 bl c000000000083840 <.xmon_printf> c00000000008119c: 60 00 00 00 nop c0000000000811a0: 81 3c 66 d4 lwz r9,26324(r28) c0000000000811a4: 2f 89 00 00 cmpwi cr7,r9,0 c0000000000811a8: 40 9e 00 a8 bne- cr7,c000000000081250 <.xmon_core+0xda0> c0000000000811ac: 81 3c 66 d0 lwz r9,26320(r28) c0000000000811b0: 2f 89 00 00 cmpwi cr7,r9,0 c0000000000811b4: 40 9e 18 88 bne- cr7,c000000000082a3c <.xmon_core+0x258c> c0000000000811b8: 38 60 00 20 li r3,32 c0000000000811bc: 48 00 23 95 bl c000000000083550 <.xmon_putchar> c0000000000811c0: 60 00 00 00 nop c0000000000811c4: e9 21 01 60 ld r9,352(r1) c0000000000811c8: 2f a9 00 00 cmpdi cr7,r9,0 c0000000000811cc: 41 9e 1e 20 beq- cr7,c000000000082fec <.xmon_core+0x2b3c> c0000000000811d0: 3a a1 01 27 addi r21,r1,295 c0000000000811d4: 3b 60 00 01 li r27,1 c0000000000811d8: 60 00 00 00 nop c0000000000811dc: 60 00 00 00 nop c0000000000811e0: 8c 95 00 01 lbzu r4,1(r21) c0000000000811e4: 7f 03 c3 78 mr r3,r24 c0000000000811e8: 7f 79 07 b4 extsw r25,r27 c0000000000811ec: 48 00 26 55 bl c000000000083840 <.xmon_printf> c0000000000811f0: 60 00 00 00 nop c0000000000811f4: e9 21 01 60 ld r9,352(r1) c0000000000811f8: 7f a9 d8 40 cmpld cr7,r9,r27 c0000000000811fc: 3b 7b 00 01 addi r27,r27,1 c000000000081200: 41 9d ff e0 bgt+ cr7,c0000000000811e0 <.xmon_core+0xd30> c000000000081204: 39 3a 44 e8 addi r9,r26,17640 c000000000081208: 81 29 00 40 lwz r9,64(r9) c00000000008120c: 7f 89 c8 00 cmpw cr7,r9,r25 c000000000081210: 40 9d 00 40 ble- cr7,c000000000081250 <.xmon_core+0xda0> c000000000081214: 60 00 00 00 nop c000000000081218: 60 00 00 00 nop c00000000008121c: 60 00 00 00 nop c000000000081220: e9 3c 21 4a lwa r9,8520(r28) c000000000081224: 7e c3 b3 78 mr r3,r22 c000000000081228: 79 29 1f 24 rldicr r9,r9,3,60 c00000000008122c: 7c 93 48 2a ldx r4,r19,r9 c000000000081230: 48 00 26 11 bl c000000000083840 <.xmon_printf> c000000000081234: 60 00 00 00 nop c000000000081238: 39 3a 44 e8 addi r9,r26,17640 c00000000008123c: 81 49 00 40 lwz r10,64(r9) c000000000081240: 39 39 00 01 addi r9,r25,1 c000000000081244: 7d 39 07 b4 extsw r25,r9 c000000000081248: 7f 8a 48 00 cmpw cr7,r10,r9 c00000000008124c: 41 9d ff d4 bgt+ cr7,c000000000081220 <.xmon_core+0xd70> c000000000081250: 38 60 00 20 li r3,32 c000000000081254: 3b 20 00 00 li r25,0 c000000000081258: 48 00 22 f9 bl c000000000083550 <.xmon_putchar> c00000000008125c: 60 00 00 00 nop c000000000081260: 39 3a 44 e8 addi r9,r26,17640 c000000000081264: 3b 60 00 00 li r27,0 c000000000081268: ea 89 00 42 lwa r20,64(r9) c00000000008126c: 3a a0 00 0a li r21,10 c000000000081270: 3b c0 00 0d li r30,13 c000000000081274: 60 00 00 00 nop c000000000081278: 60 00 00 00 nop c00000000008127c: 60 00 00 00 nop c000000000081280: 38 61 01 60 addi r3,r1,352 c000000000081284: 4b ff e1 3d bl c00000000007f3c0 <.scanhex> c000000000081288: 2f a3 00 00 cmpdi cr7,r3,0 c00000000008128c: 41 9e 00 6c beq- cr7,c0000000000812f8 <.xmon_core+0xe48> c000000000081290: 39 3a 44 e8 addi r9,r26,17640 c000000000081294: 80 e9 00 40 lwz r7,64(r9) c000000000081298: 2f 87 00 00 cmpwi cr7,r7,0 c00000000008129c: 7c e5 07 b4 extsw r5,r7 c0000000000812a0: 40 9d 00 38 ble- cr7,c0000000000812d8 <.xmon_core+0xe28> c0000000000812a4: e8 c1 01 60 ld r6,352(r1) c0000000000812a8: 39 01 01 27 addi r8,r1,295 c0000000000812ac: 78 e7 18 28 rldic r7,r7,3,32 c0000000000812b0: 7f 69 db 78 mr r9,r27 c0000000000812b4: 60 00 00 00 nop c0000000000812b8: 60 00 00 00 nop c0000000000812bc: 60 00 00 00 nop c0000000000812c0: 39 49 00 08 addi r10,r9,8 c0000000000812c4: 7c c9 4c 36 srd r9,r6,r9 c0000000000812c8: 7f 8a 38 40 cmplw cr7,r10,r7 c0000000000812cc: 9d 28 00 01 stbu r9,1(r8) c0000000000812d0: 79 49 00 20 clrldi r9,r10,32 c0000000000812d4: 40 9e ff ec bne+ cr7,c0000000000812c0 <.xmon_core+0xe10> c0000000000812d8: 81 3c 66 d0 lwz r9,26320(r28) c0000000000812dc: 2f 89 00 00 cmpwi cr7,r9,0 c0000000000812e0: 41 9e 13 90 beq- cr7,c000000000082670 <.xmon_core+0x21c0> c0000000000812e4: e8 7c 25 f0 ld r3,9712(r28) c0000000000812e8: 38 81 01 28 addi r4,r1,296 c0000000000812ec: 4b ff b9 35 bl c00000000007cc20 <.mwrite> c0000000000812f0: 39 3a 44 e8 addi r9,r26,17640 c0000000000812f4: ea 89 00 42 lwa r20,64(r9) c0000000000812f8: 4b ff e0 69 bl c00000000007f360 <.skipbl> c0000000000812fc: 2f 83 00 0a cmpwi cr7,r3,10 c000000000081300: 41 9e 18 98 beq- cr7,c000000000082b98 <.xmon_core+0x26e8> c000000000081304: 38 63 00 01 addi r3,r3,1 c000000000081308: 7f 74 db 78 mr r20,r27 c00000000008130c: 2b 83 00 79 cmplwi cr7,r3,121 c000000000081310: 41 9d ff 70 bgt+ cr7,c000000000081280 <.xmon_core+0xdd0> c000000000081314: 39 37 fa 44 addi r9,r23,-1468 c000000000081318: 78 63 17 88 rldic r3,r3,2,30 c00000000008131c: 7d 49 1a aa lwax r10,r9,r3 c000000000081320: 7d 2a 4a 14 add r9,r10,r9 c000000000081324: 7d 29 03 a6 mtctr r9 c000000000081328: 4e 80 04 20 bctr c00000000008132c: 00 00 13 14 .long 0x1314 c000000000081330: ff ff ff 54 .long 0xffffff54 c000000000081334: ff ff ff 54 .long 0xffffff54 c000000000081338: ff ff ff 54 .long 0xffffff54 c00000000008133c: ff ff ff 54 .long 0xffffff54 c000000000081340: ff ff ff 54 .long 0xffffff54 c000000000081344: ff ff ff 54 .long 0xffffff54 c000000000081348: ff ff ff 54 .long 0xffffff54 c00000000008134c: ff ff ff 54 .long 0xffffff54 c000000000081350: ff ff ff 54 .long 0xffffff54 c000000000081354: ff ff ff 54 .long 0xffffff54 c000000000081358: ff ff ff 54 .long 0xffffff54 c00000000008135c: ff ff ff 54 .long 0xffffff54 c000000000081360: ff ff ff 54 .long 0xffffff54 c000000000081364: ff ff ff 54 .long 0xffffff54 c000000000081368: ff ff ff 54 .long 0xffffff54 c00000000008136c: ff ff ff 54 .long 0xffffff54 c000000000081370: ff ff ff 54 .long 0xffffff54 c000000000081374: ff ff ff 54 .long 0xffffff54 c000000000081378: ff ff ff 54 .long 0xffffff54 c00000000008137c: ff ff ff 54 .long 0xffffff54 c000000000081380: ff ff ff 54 .long 0xffffff54 c000000000081384: ff ff ff 54 .long 0xffffff54 c000000000081388: ff ff ff 54 .long 0xffffff54 c00000000008138c: ff ff ff 54 .long 0xffffff54 c000000000081390: ff ff ff 54 .long 0xffffff54 c000000000081394: ff ff ff 54 .long 0xffffff54 c000000000081398: ff ff ff 54 .long 0xffffff54 c00000000008139c: ff ff ff 54 .long 0xffffff54 c0000000000813a0: ff ff ff 54 .long 0xffffff54 c0000000000813a4: ff ff ff 54 .long 0xffffff54 c0000000000813a8: ff ff ff 54 .long 0xffffff54 c0000000000813ac: ff ff ff 54 .long 0xffffff54 c0000000000813b0: ff ff ff 54 .long 0xffffff54 c0000000000813b4: ff ff ff 54 .long 0xffffff54 c0000000000813b8: ff ff ff 54 .long 0xffffff54 c0000000000813bc: ff ff ff 54 .long 0xffffff54 c0000000000813c0: ff ff ff 54 .long 0xffffff54 c0000000000813c4: ff ff ff 54 .long 0xffffff54 c0000000000813c8: ff ff ff 54 .long 0xffffff54 c0000000000813cc: 00 00 12 48 .long 0x1248 c0000000000813d0: ff ff ff 54 .long 0xffffff54 c0000000000813d4: ff ff ff 54 .long 0xffffff54 c0000000000813d8: ff ff ff 54 .long 0xffffff54 c0000000000813dc: ff ff ff 54 .long 0xffffff54 c0000000000813e0: 00 00 12 2c .long 0x122c c0000000000813e4: ff ff ff 54 .long 0xffffff54 c0000000000813e8: 00 00 12 1c .long 0x121c c0000000000813ec: 00 00 11 e0 .long 0x11e0 c0000000000813f0: ff ff ff 54 .long 0xffffff54 c0000000000813f4: ff ff ff 54 .long 0xffffff54 c0000000000813f8: ff ff ff 54 .long 0xffffff54 c0000000000813fc: ff ff ff 54 .long 0xffffff54 c000000000081400: ff ff ff 54 .long 0xffffff54 c000000000081404: ff ff ff 54 .long 0xffffff54 c000000000081408: ff ff ff 54 .long 0xffffff54 c00000000008140c: ff ff ff 54 .long 0xffffff54 c000000000081410: ff ff ff 54 .long 0xffffff54 c000000000081414: ff ff ff 54 .long 0xffffff54 c000000000081418: ff ff ff 54 .long 0xffffff54 c00000000008141c: ff ff ff 54 .long 0xffffff54 c000000000081420: 00 00 11 a0 .long 0x11a0 c000000000081424: ff ff ff 54 .long 0xffffff54 c000000000081428: 00 00 11 74 .long 0x1174 c00000000008142c: 00 00 11 60 .long 0x1160 c000000000081430: ff ff ff 54 .long 0xffffff54 c000000000081434: ff ff ff 54 .long 0xffffff54 c000000000081438: ff ff ff 54 .long 0xffffff54 c00000000008143c: ff ff ff 54 .long 0xffffff54 c000000000081440: ff ff ff 54 .long 0xffffff54 c000000000081444: ff ff ff 54 .long 0xffffff54 c000000000081448: ff ff ff 54 .long 0xffffff54 c00000000008144c: ff ff ff 54 .long 0xffffff54 c000000000081450: ff ff ff 54 .long 0xffffff54 c000000000081454: ff ff ff 54 .long 0xffffff54 c000000000081458: ff ff ff 54 .long 0xffffff54 c00000000008145c: ff ff ff 54 .long 0xffffff54 c000000000081460: ff ff ff 54 .long 0xffffff54 c000000000081464: ff ff ff 54 .long 0xffffff54 c000000000081468: ff ff ff 54 .long 0xffffff54 c00000000008146c: ff ff ff 54 .long 0xffffff54 c000000000081470: ff ff ff 54 .long 0xffffff54 c000000000081474: ff ff ff 54 .long 0xffffff54 c000000000081478: ff ff ff 54 .long 0xffffff54 c00000000008147c: ff ff ff 54 .long 0xffffff54 c000000000081480: ff ff ff 54 .long 0xffffff54 c000000000081484: ff ff ff 54 .long 0xffffff54 c000000000081488: ff ff ff 54 .long 0xffffff54 c00000000008148c: ff ff ff 54 .long 0xffffff54 c000000000081490: ff ff ff 54 .long 0xffffff54 c000000000081494: ff ff ff 54 .long 0xffffff54 c000000000081498: ff ff ff 54 .long 0xffffff54 c00000000008149c: ff ff ff 54 .long 0xffffff54 c0000000000814a0: 00 00 11 3c .long 0x113c c0000000000814a4: ff ff ff 54 .long 0xffffff54 c0000000000814a8: 00 00 11 20 .long 0x1120 c0000000000814ac: ff ff ff 54 .long 0xffffff54 c0000000000814b0: ff ff ff 54 .long 0xffffff54 c0000000000814b4: ff ff ff 54 .long 0xffffff54 c0000000000814b8: 00 00 11 0c .long 0x110c c0000000000814bc: ff ff ff 54 .long 0xffffff54 c0000000000814c0: ff ff ff 54 .long 0xffffff54 c0000000000814c4: ff ff ff 54 .long 0xffffff54 c0000000000814c8: ff ff ff 54 .long 0xffffff54 c0000000000814cc: ff ff ff 54 .long 0xffffff54 c0000000000814d0: ff ff ff 54 .long 0xffffff54 c0000000000814d4: ff ff ff 54 .long 0xffffff54 c0000000000814d8: ff ff ff 54 .long 0xffffff54 c0000000000814dc: ff ff ff 54 .long 0xffffff54 c0000000000814e0: 00 00 10 f8 .long 0x10f8 c0000000000814e4: 00 00 10 e4 .long 0x10e4 c0000000000814e8: 00 00 10 d4 .long 0x10d4 c0000000000814ec: ff ff ff 54 .long 0xffffff54 c0000000000814f0: ff ff ff 54 .long 0xffffff54 c0000000000814f4: ff ff ff 54 .long 0xffffff54 c0000000000814f8: 00 00 10 bc .long 0x10bc c0000000000814fc: ff ff ff 54 .long 0xffffff54 c000000000081500: ff ff ff 54 .long 0xffffff54 c000000000081504: 00 00 10 a8 .long 0x10a8 c000000000081508: 00 00 11 0c .long 0x110c c00000000008150c: 00 00 11 cc .long 0x11cc c000000000081510: 00 00 13 14 .long 0x1314 c000000000081514: 60 00 00 00 nop c000000000081518: 60 00 00 00 nop c00000000008151c: 60 00 00 00 nop c000000000081520: 4b ff e9 a1 bl c00000000007fec0 <.symbol_lookup> c000000000081524: 4b ff f4 ec b c000000000080a10 <.xmon_core+0x560> c000000000081528: 60 00 00 00 nop c00000000008152c: 60 00 00 00 nop c000000000081530: 4b ff e5 d1 bl c00000000007fb00 <.cacheflush> c000000000081534: 4b ff f4 dc b c000000000080a10 <.xmon_core+0x560> c000000000081538: 60 00 00 00 nop c00000000008153c: 60 00 00 00 nop c000000000081540: 7d e3 7b 78 mr r3,r15 c000000000081544: 4b ff db 1d bl c00000000007f060 <.excprint> c000000000081548: 4b ff f4 c8 b c000000000080a10 <.xmon_core+0x560> c00000000008154c: 60 00 00 00 nop c000000000081550: 4b ff d7 a1 bl c00000000007ecf0 <.inchar> c000000000081554: 2f 83 00 70 cmpwi cr7,r3,112 c000000000081558: 7c 7c 1b 78 mr r28,r3 c00000000008155c: 41 9e 15 ac beq- cr7,c000000000082b08 <.xmon_core+0x2658> c000000000081560: 78 69 00 20 clrldi r9,r3,32 c000000000081564: 39 49 ff d0 addi r10,r9,-48 c000000000081568: 2b 8a 00 09 cmplwi cr7,r10,9 c00000000008156c: 40 9d 04 74 ble- cr7,c0000000000819e0 <.xmon_core+0x1530> c000000000081570: 39 49 ff 9f addi r10,r9,-97 c000000000081574: 2b 8a 00 05 cmplwi cr7,r10,5 c000000000081578: 40 9d 0b e8 ble- cr7,c000000000082160 <.xmon_core+0x1cb0> c00000000008157c: 39 29 ff bf addi r9,r9,-65 c000000000081580: 2b 89 00 05 cmplwi cr7,r9,5 c000000000081584: 41 9d 04 48 bgt- cr7,c0000000000819cc <.xmon_core+0x151c> c000000000081588: 2f 9c 00 64 cmpwi cr7,r28,100 c00000000008158c: 40 9e 04 54 bne- cr7,c0000000000819e0 <.xmon_core+0x1530> c000000000081590: 3b 5f 3e 10 addi r26,r31,15888 c000000000081594: 38 7a 25 f0 addi r3,r26,9712 c000000000081598: 4b ff de 29 bl c00000000007f3c0 <.scanhex> c00000000008159c: 81 3a 24 d8 lwz r9,9432(r26) c0000000000815a0: 2f 89 00 0a cmpwi cr7,r9,10 c0000000000815a4: 41 9e 00 0c beq- cr7,c0000000000815b0 <.xmon_core+0x1100> c0000000000815a8: 39 20 00 00 li r9,0 c0000000000815ac: 91 3a 24 d8 stw r9,9432(r26) c0000000000815b0: 2f 9c 00 69 cmpwi cr7,r28,105 c0000000000815b4: 41 9e 12 30 beq- cr7,c0000000000827e4 <.xmon_core+0x2334> c0000000000815b8: 2f 9c 00 6c cmpwi cr7,r28,108 c0000000000815bc: 41 9e 15 d4 beq- cr7,c000000000082b90 <.xmon_core+0x26e0> c0000000000815c0: 2f 9c 00 72 cmpwi cr7,r28,114 c0000000000815c4: 3f 82 ff ed addis r28,r2,-19 c0000000000815c8: 3b 9c 44 e8 addi r28,r28,17640 c0000000000815cc: 38 7c 00 50 addi r3,r28,80 c0000000000815d0: 41 9e 0b a8 beq- cr7,c000000000082178 <.xmon_core+0x1cc8> c0000000000815d4: 4b ff dd ed bl c00000000007f3c0 <.scanhex> c0000000000815d8: e8 9c 00 50 ld r4,80(r28) c0000000000815dc: 2f a4 00 00 cmpdi cr7,r4,0 c0000000000815e0: 40 9e 0a 10 bne- cr7,c000000000081ff0 <.xmon_core+0x1b40> c0000000000815e4: 39 20 00 40 li r9,64 c0000000000815e8: 38 80 00 40 li r4,64 c0000000000815ec: f9 3c 00 50 std r9,80(r28) c0000000000815f0: 3b 9f 3e 10 addi r28,r31,15888 c0000000000815f4: e8 7c 25 f0 ld r3,9712(r28) c0000000000815f8: 4b ff d2 99 bl c00000000007e890 <.prdump> c0000000000815fc: 3d 22 ff ed addis r9,r2,-19 c000000000081600: e9 5c 25 f0 ld r10,9712(r28) c000000000081604: 39 29 44 e8 addi r9,r9,17640 c000000000081608: e9 09 00 50 ld r8,80(r9) c00000000008160c: 3d 22 ff db addis r9,r2,-37 c000000000081610: 39 29 df 10 addi r9,r9,-8432 c000000000081614: 7d 48 52 14 add r10,r8,r10 c000000000081618: f9 3c 26 38 std r9,9784(r28) c00000000008161c: f9 5c 25 f0 std r10,9712(r28) c000000000081620: 4b ff f3 f0 b c000000000080a10 <.xmon_core+0x560> c000000000081624: 60 00 00 00 nop c000000000081628: 60 00 00 00 nop c00000000008162c: 60 00 00 00 nop c000000000081630: 38 61 01 60 addi r3,r1,352 c000000000081634: 4b ff dd 8d bl c00000000007f3c0 <.scanhex> c000000000081638: 2f a3 00 00 cmpdi cr7,r3,0 c00000000008163c: 41 9e 08 1c beq- cr7,c000000000081e58 <.xmon_core+0x19a8> c000000000081640: e8 81 01 60 ld r4,352(r1) c000000000081644: 39 3f 3e 10 addi r9,r31,15888 c000000000081648: 39 09 24 e8 addi r8,r9,9448 c00000000008164c: 7c 8a 36 70 srawi r10,r4,6 c000000000081650: 7d 4a 01 94 addze r10,r10 c000000000081654: 7d 4a 07 b4 extsw r10,r10 c000000000081658: 79 4a 1f 24 rldicr r10,r10,3,60 c00000000008165c: 7d 08 50 2a ldx r8,r8,r10 c000000000081660: 78 8a 06 a0 clrldi r10,r4,58 c000000000081664: 7d 0a 54 36 srd r10,r8,r10 c000000000081668: 79 48 07 e1 clrldi. r8,r10,63 c00000000008166c: 41 82 10 44 beq- c0000000000826b0 <.xmon_core+0x2200> c000000000081670: 3d 02 ff ed addis r8,r2,-19 c000000000081674: 38 e0 00 00 li r7,0 c000000000081678: 39 48 44 e8 addi r10,r8,17640 c00000000008167c: f8 ea 00 28 std r7,40(r10) c000000000081680: 7c 00 04 ac sync c000000000081684: e8 e1 01 60 ld r7,352(r1) c000000000081688: 90 e9 66 54 stw r7,26196(r9) c00000000008168c: e9 2a 00 28 ld r9,40(r10) c000000000081690: 2f a9 00 00 cmpdi cr7,r9,0 c000000000081694: 40 9e 00 30 bne- cr7,c0000000000816c4 <.xmon_core+0x1214> c000000000081698: 3d 40 00 98 lis r10,152 c00000000008169c: 61 46 96 7f ori r6,r10,38527 c0000000000816a0: 7c c9 03 a6 mtctr r6 c0000000000816a4: 48 00 00 10 b c0000000000816b4 <.xmon_core+0x1204> c0000000000816a8: 60 00 00 00 nop c0000000000816ac: 60 00 00 00 nop c0000000000816b0: 42 40 13 e0 bdz- c000000000082a90 <.xmon_core+0x25e0> c0000000000816b4: 39 28 44 e8 addi r9,r8,17640 c0000000000816b8: e9 49 00 28 ld r10,40(r9) c0000000000816bc: 2f aa 00 00 cmpdi cr7,r10,0 c0000000000816c0: 41 9e ff f0 beq+ cr7,c0000000000816b0 <.xmon_core+0x1200> c0000000000816c4: 3b 80 00 01 li r28,1 c0000000000816c8: 4b ff f0 74 b c00000000008073c <.xmon_core+0x28c> c0000000000816cc: 60 00 00 00 nop c0000000000816d0: 3d 22 ff d4 addis r9,r2,-44 c0000000000816d4: 39 29 9a 90 addi r9,r9,-25968 c0000000000816d8: e8 69 00 00 ld r3,0(r9) c0000000000816dc: e8 89 00 08 ld r4,8(r9) c0000000000816e0: e8 a9 00 10 ld r5,16(r9) c0000000000816e4: e8 c9 00 18 ld r6,24(r9) c0000000000816e8: e8 e9 00 20 ld r7,32(r9) c0000000000816ec: e9 09 00 28 ld r8,40(r9) c0000000000816f0: 81 49 00 30 lwz r10,48(r9) c0000000000816f4: 89 29 00 34 lbz r9,52(r9) c0000000000816f8: f8 61 01 28 std r3,296(r1) c0000000000816fc: f8 81 01 30 std r4,304(r1) c000000000081700: f8 a1 01 38 std r5,312(r1) c000000000081704: f8 c1 01 40 std r6,320(r1) c000000000081708: f8 e1 01 48 std r7,328(r1) c00000000008170c: f9 01 01 50 std r8,336(r1) c000000000081710: 91 41 01 58 stw r10,344(r1) c000000000081714: 99 21 01 5c stb r9,348(r1) c000000000081718: 4b ff d5 d9 bl c00000000007ecf0 <.inchar> c00000000008171c: 2f 83 00 64 cmpwi cr7,r3,100 c000000000081720: 41 9e 09 c4 beq- cr7,c0000000000820e4 <.xmon_core+0x1c34> c000000000081724: 2f 83 00 69 cmpwi cr7,r3,105 c000000000081728: 41 9e 09 38 beq- cr7,c000000000082060 <.xmon_core+0x1bb0> c00000000008172c: 2f 83 00 63 cmpwi cr7,r3,99 c000000000081730: 41 9e 08 d8 beq- cr7,c000000000082008 <.xmon_core+0x1b58> c000000000081734: 3b 9f 3e 10 addi r28,r31,15888 c000000000081738: 90 7c 24 d8 stw r3,9432(r28) c00000000008173c: 4b ff dc 25 bl c00000000007f360 <.skipbl> c000000000081740: 2f 83 00 3f cmpwi cr7,r3,63 c000000000081744: 7c 69 1b 78 mr r9,r3 c000000000081748: 41 9e 14 80 beq- cr7,c000000000082bc8 <.xmon_core+0x2718> c00000000008174c: 38 61 01 60 addi r3,r1,352 c000000000081750: 91 3c 24 d8 stw r9,9432(r28) c000000000081754: 4b ff dc 6d bl c00000000007f3c0 <.scanhex> c000000000081758: 2f a3 00 00 cmpdi cr7,r3,0 c00000000008175c: 40 9e 11 30 bne- cr7,c00000000008288c <.xmon_core+0x23dc> c000000000081760: 3c 62 ff d4 addis r3,r2,-44 c000000000081764: 38 63 98 a8 addi r3,r3,-26456 c000000000081768: 48 00 20 d9 bl c000000000083840 <.xmon_printf> c00000000008176c: 60 00 00 00 nop c000000000081770: 81 3c 66 fc lwz r9,26364(r28) c000000000081774: 2f 89 00 00 cmpwi cr7,r9,0 c000000000081778: 40 9e 12 d8 bne- cr7,c000000000082a50 <.xmon_core+0x25a0> c00000000008177c: 3b 3f 3e 10 addi r25,r31,15888 c000000000081780: 3e c2 ff d4 addis r22,r2,-44 c000000000081784: 3e e2 ff d8 addis r23,r2,-40 c000000000081788: 3f 02 ff d5 addis r24,r2,-43 c00000000008178c: 3b 99 00 08 addi r28,r25,8 c000000000081790: 3b 40 00 00 li r26,0 c000000000081794: 3a d6 98 e0 addi r22,r22,-26400 c000000000081798: 3a f7 b7 38 addi r23,r23,-18632 c00000000008179c: 3b 18 0e 68 addi r24,r24,3688 c0000000000817a0: 3e 82 ff d3 addis r20,r2,-45 c0000000000817a4: 3e a2 ff d4 addis r21,r2,-44 c0000000000817a8: 3b 39 20 08 addi r25,r25,8200 c0000000000817ac: 48 00 00 34 b c0000000000817e0 <.xmon_core+0x1330> c0000000000817b0: 38 b5 8a a0 addi r5,r21,-30048 c0000000000817b4: 7e c3 b3 78 mr r3,r22 c0000000000817b8: 48 00 20 89 bl c000000000083840 <.xmon_printf> c0000000000817bc: 60 00 00 00 nop c0000000000817c0: e8 7c 00 00 ld r3,0(r28) c0000000000817c4: 7e e4 bb 78 mr r4,r23 c0000000000817c8: 7f 05 c3 78 mr r5,r24 c0000000000817cc: 4b ff aa 95 bl c00000000007c260 <.xmon_print_symbol> c0000000000817d0: 3b 9c 00 20 addi r28,r28,32 c0000000000817d4: 3b 5a 00 20 addi r26,r26,32 c0000000000817d8: 7f bc c8 40 cmpld cr7,r28,r25 c0000000000817dc: 40 9c f2 34 bge+ cr7,c000000000080a10 <.xmon_core+0x560> c0000000000817e0: 81 3c 00 14 lwz r9,20(r28) c0000000000817e4: 2f 89 00 00 cmpwi cr7,r9,0 c0000000000817e8: 41 9e ff e8 beq+ cr7,c0000000000817d0 <.xmon_core+0x1320> c0000000000817ec: 79 26 ff e3 rldicl. r6,r9,63,63 c0000000000817f0: 7f 44 2e 74 sradi r4,r26,5 c0000000000817f4: 38 84 00 01 addi r4,r4,1 c0000000000817f8: 40 82 ff b8 bne+ c0000000000817b0 <.xmon_core+0x1300> c0000000000817fc: 38 b4 a1 88 addi r5,r20,-24184 c000000000081800: 4b ff ff b4 b c0000000000817b4 <.xmon_core+0x1304> c000000000081804: 60 00 00 00 nop c000000000081808: 60 00 00 00 nop c00000000008180c: 60 00 00 00 nop c000000000081810: 38 61 01 60 addi r3,r1,352 c000000000081814: 4b ff db ad bl c00000000007f3c0 <.scanhex> c000000000081818: 2f a3 00 00 cmpdi cr7,r3,0 c00000000008181c: 40 9e 06 04 bne- cr7,c000000000081e20 <.xmon_core+0x1970> c000000000081820: e8 6f 00 08 ld r3,8(r15) c000000000081824: e8 8f 01 20 ld r4,288(r15) c000000000081828: e8 af 01 00 ld r5,256(r15) c00000000008182c: 4b ff af 55 bl c00000000007c780 <.xmon_show_stack> c000000000081830: 4b ff d5 51 bl c00000000007ed80 <.scannl> c000000000081834: 4b ff f1 dc b c000000000080a10 <.xmon_core+0x560> c000000000081838: 60 00 00 00 nop c00000000008183c: 60 00 00 00 nop c000000000081840: 7d e3 7b 78 mr r3,r15 c000000000081844: 4b ff df cd bl c00000000007f810 <.prregs> c000000000081848: 4b ff f1 c8 b c000000000080a10 <.xmon_core+0x560> /* 1645 case 'w': 1646 val = read_spr(regno); 1647 scanhex(&val); 1648 write_spr(regno, val); 1649 /* fall through */ 1650 case 'r': 1651 printf("spr %lx = %lx\n", regno, read_spr(regno)); 1652 break; 1653 } 1654 scannl(); 1655 } */ c00000000008184c: e8 7a 66 de lwa r3,26332(r26) c000000000081850: 4b ff b6 71 bl c00000000007cec0 <.read_spr> c000000000081854: 7c 29 0b 78 mr r9,r1 c000000000081858: f8 69 01 61 stdu r3,352(r9) c00000000008185c: 7d 23 4b 78 mr r3,r9 c000000000081860: 4b ff db 61 bl c00000000007f3c0 <.scanhex> c000000000081864: e8 7a 66 de lwa r3,26332(r26) c000000000081868: e8 81 01 60 ld r4,352(r1) c00000000008186c: 4b ff b5 75 bl c00000000007cde0 <.write_spr> c000000000081870: 39 3f 3e 10 addi r9,r31,15888 c000000000081874: eb 89 66 d8 ld r28,26328(r9) c000000000081878: 7f 83 07 b4 extsw r3,r28 c00000000008187c: 4b ff b6 45 bl c00000000007cec0 <.read_spr> c000000000081880: 7f 84 e3 78 mr r4,r28 c000000000081884: 7c 65 1b 78 mr r5,r3 c000000000081888: 3c 62 ff d4 addis r3,r2,-44 c00000000008188c: 38 63 91 c8 addi r3,r3,-28216 c000000000081890: 48 00 1f b1 bl c000000000083840 <.xmon_printf> c000000000081894: 60 00 00 00 nop c000000000081898: 4b ff d4 e9 bl c00000000007ed80 <.scannl> c00000000008189c: 4b ff f1 74 b c000000000080a10 <.xmon_core+0x560> c0000000000818a0: 2f 83 00 72 cmpwi cr7,r3,114 c0000000000818a4: 41 9e 00 ec beq- cr7,c000000000081990 <.xmon_core+0x14e0> c0000000000818a8: 2f 83 00 77 cmpwi cr7,r3,119 c0000000000818ac: 41 9e 00 d4 beq- cr7,c000000000081980 <.xmon_core+0x14d0> c0000000000818b0: 2f 83 00 6e cmpwi cr7,r3,110 c0000000000818b4: 40 9e f8 0c bne+ cr7,c0000000000810c0 <.xmon_core+0xc10> c0000000000818b8: 39 3f 3e 10 addi r9,r31,15888 c0000000000818bc: 93 49 66 d4 stw r26,26324(r9) c0000000000818c0: 4b ff f8 00 b c0000000000810c0 <.xmon_core+0xc10> c0000000000818c4: 60 00 00 00 nop c0000000000818c8: 60 00 00 00 nop c0000000000818cc: 60 00 00 00 nop c0000000000818d0: 81 3f 00 08 lwz r9,8(r31) c0000000000818d4: 7d 2a d0 38 and r10,r9,r26 c0000000000818d8: 7f 8a c8 00 cmpw cr7,r10,r25 c0000000000818dc: 41 9e 05 24 beq- cr7,c000000000081e00 <.xmon_core+0x1950> c0000000000818e0: 7d 29 b8 38 and r9,r9,r23 c0000000000818e4: 7f 89 b0 00 cmpw cr7,r9,r22 c0000000000818e8: 41 9e 05 18 beq- cr7,c000000000081e00 <.xmon_core+0x1950> c0000000000818ec: 7c 00 e8 6c dcbst 0,r29 c0000000000818f0: 7c 00 04 ac sync c0000000000818f4: 7c 00 ef ac icbi 0,r29 c0000000000818f8: 4c 00 01 2c isync c0000000000818fc: 81 3f 00 14 lwz r9,20(r31) c000000000081900: 79 27 ff e3 rldicl. r7,r9,63,63 c000000000081904: 40 82 f4 ec bne+ c000000000080df0 <.xmon_core+0x940> c000000000081908: e8 7f 00 00 ld r3,0(r31) c00000000008190c: 7e a4 ab 78 mr r4,r21 c000000000081910: 38 a0 00 04 li r5,4 c000000000081914: 4b ff b3 0d bl c00000000007cc20 <.mwrite> c000000000081918: 2f 83 00 04 cmpwi cr7,r3,4 c00000000008191c: 41 9e 0f 50 beq- cr7,c00000000008286c <.xmon_core+0x23bc> c000000000081920: e8 9f 00 00 ld r4,0(r31) c000000000081924: 7e 83 a3 78 mr r3,r20 c000000000081928: 48 00 1f 19 bl c000000000083840 <.xmon_printf> c00000000008192c: 60 00 00 00 nop c000000000081930: 81 3f 00 14 lwz r9,20(r31) c000000000081934: 55 29 e0 7e rlwinm r9,r9,28,1,31 c000000000081938: 55 29 20 3e rotlwi r9,r9,4 c00000000008193c: 91 3f 00 14 stw r9,20(r31) c000000000081940: 4b ff f4 b0 b c000000000080df0 <.xmon_core+0x940> c000000000081944: 60 00 00 00 nop c000000000081948: 60 00 00 00 nop c00000000008194c: 60 00 00 00 nop c000000000081950: 39 3c 44 e8 addi r9,r28,17640 c000000000081954: 92 c9 00 40 stw r22,64(r9) c000000000081958: 4b ff f7 68 b c0000000000810c0 <.xmon_core+0xc10> c00000000008195c: 60 00 00 00 nop c000000000081960: 39 3c 44 e8 addi r9,r28,17640 c000000000081964: 93 09 00 40 stw r24,64(r9) c000000000081968: 4b ff f7 58 b c0000000000810c0 <.xmon_core+0xc10> c00000000008196c: 60 00 00 00 nop c000000000081970: 39 3c 44 e8 addi r9,r28,17640 c000000000081974: 93 49 00 40 stw r26,64(r9) c000000000081978: 4b ff f7 48 b c0000000000810c0 <.xmon_core+0xc10> c00000000008197c: 60 00 00 00 nop c000000000081980: 39 3c 44 e8 addi r9,r28,17640 c000000000081984: 92 e9 00 40 stw r23,64(r9) c000000000081988: 4b ff f7 38 b c0000000000810c0 <.xmon_core+0xc10> c00000000008198c: 60 00 00 00 nop c000000000081990: 39 5f 3e 10 addi r10,r31,15888 c000000000081994: 81 2a 66 d0 lwz r9,26320(r10) c000000000081998: 7d 29 00 34 cntlzw r9,r9 c00000000008199c: 55 29 d9 7e rlwinm r9,r9,27,5,31 c0000000000819a0: 91 2a 66 d0 stw r9,26320(r10) c0000000000819a4: 4b ff f7 1c b c0000000000810c0 <.xmon_core+0xc10> c0000000000819a8: 60 00 00 00 nop c0000000000819ac: 60 00 00 00 nop /* 796 xmon_no_auto_backtrace = 1; 797 xmon_show_stack(excp->gpr[1], excp->link, excp->nip); */ c0000000000819b0: e8 6f 00 08 ld r3,8(r15) c0000000000819b4: e8 8f 01 20 ld r4,288(r15) c0000000000819b8: 39 40 00 01 li r10,1 c0000000000819bc: e8 af 01 00 ld r5,256(r15) c0000000000819c0: 91 49 24 e0 stw r10,9440(r9) c0000000000819c4: 4b ff ad bd bl c00000000007c780 <.xmon_show_stack> c0000000000819c8: 4b ff f0 3c b c000000000080a04 <.xmon_core+0x554> c0000000000819cc: 2f 83 00 0a cmpwi cr7,r3,10 c0000000000819d0: 40 be fb c0 bne- cr7,c000000000081590 <.xmon_core+0x10e0> c0000000000819d4: 60 00 00 00 nop c0000000000819d8: 60 00 00 00 nop c0000000000819dc: 60 00 00 00 nop c0000000000819e0: 39 3f 3e 10 addi r9,r31,15888 c0000000000819e4: 93 89 24 d8 stw r28,9432(r9) c0000000000819e8: 4b ff fb a8 b c000000000081590 <.xmon_core+0x10e0> c0000000000819ec: 60 00 00 00 nop c0000000000819f0: 3d 42 ff 33 addis r10,r2,-205 c0000000000819f4: 79 29 17 88 rldic r9,r9,2,30 c0000000000819f8: 39 4a 01 24 addi r10,r10,292 c0000000000819fc: 7d 2a 4a aa lwax r9,r10,r9 c000000000081a00: 7d 49 52 14 add r10,r9,r10 c000000000081a04: 7d 49 03 a6 mtctr r10 c000000000081a08: 4e 80 04 20 bctr c000000000081a0c: 00 00 02 d4 .long 0x2d4 c000000000081a10: ff ff f6 68 .long 0xfffff668 c000000000081a14: ff ff f6 68 .long 0xfffff668 c000000000081a18: ff ff f6 68 .long 0xfffff668 c000000000081a1c: ff ff f6 68 .long 0xfffff668 c000000000081a20: 00 00 02 c4 .long 0x2c4 c000000000081a24: ff ff f6 68 .long 0xfffff668 c000000000081a28: ff ff f6 68 .long 0xfffff668 c000000000081a2c: 00 00 01 8c .long 0x18c c000000000081a30: 00 00 02 d4 .long 0x2d4 c000000000081a34: ff ff f6 68 .long 0xfffff668 c000000000081a38: ff ff f6 68 .long 0xfffff668 c000000000081a3c: ff ff f6 68 .long 0xfffff668 c000000000081a40: ff ff f6 68 .long 0xfffff668 c000000000081a44: ff ff f6 68 .long 0xfffff668 c000000000081a48: 00 00 02 d4 .long 0x2d4 c000000000081a4c: ff ff f6 68 .long 0xfffff668 c000000000081a50: ff ff f6 68 .long 0xfffff668 c000000000081a54: ff ff f6 68 .long 0xfffff668 c000000000081a58: ff ff f6 68 .long 0xfffff668 c000000000081a5c: ff ff f6 68 .long 0xfffff668 c000000000081a60: ff ff f6 68 .long 0xfffff668 c000000000081a64: 00 00 00 5c .long 0x5c c000000000081a68: 3b 9f 3e 10 addi r28,r31,15888 c000000000081a6c: 38 7c 66 b0 addi r3,r28,26288 c000000000081a70: 4b ff d9 51 bl c00000000007f3c0 <.scanhex> c000000000081a74: 81 3c 24 d8 lwz r9,9432(r28) c000000000081a78: 2f 89 00 0a cmpwi cr7,r9,10 c000000000081a7c: 41 9e 00 0c beq- cr7,c000000000081a88 <.xmon_core+0x15d8> c000000000081a80: 39 20 00 00 li r9,0 c000000000081a84: 91 3c 24 d8 stw r9,9432(r28) c000000000081a88: 3c 62 ff ed addis r3,r2,-19 c000000000081a8c: 38 63 44 e8 addi r3,r3,17640 c000000000081a90: 38 63 00 30 addi r3,r3,48 c000000000081a94: 4b ff d9 2d bl c00000000007f3c0 <.scanhex> c000000000081a98: 39 3f 3e 10 addi r9,r31,15888 c000000000081a9c: 81 49 24 d8 lwz r10,9432(r9) c000000000081aa0: 2f 8a 00 0a cmpwi cr7,r10,10 c000000000081aa4: 41 9e 00 0c beq- cr7,c000000000081ab0 <.xmon_core+0x1600> c000000000081aa8: 39 40 00 00 li r10,0 c000000000081aac: 91 49 24 d8 stw r10,9432(r9) c000000000081ab0: 3f 02 ff ed addis r24,r2,-19 c000000000081ab4: 3b 98 44 e8 addi r28,r24,17640 c000000000081ab8: 38 7c 00 38 addi r3,r28,56 c000000000081abc: 4b ff d9 05 bl c00000000007f3c0 <.scanhex> c000000000081ac0: 39 3f 3e 10 addi r9,r31,15888 c000000000081ac4: eb 49 66 b0 ld r26,26288(r9) c000000000081ac8: e9 3c 00 38 ld r9,56(r28) c000000000081acc: 7b 5c 00 20 clrldi r28,r26,32 c000000000081ad0: 7f a9 e0 40 cmpld cr7,r9,r28 c000000000081ad4: 7f 9a e3 78 mr r26,r28 c000000000081ad8: 40 9d ef 38 ble+ cr7,c000000000080a10 <.xmon_core+0x560> c000000000081adc: 3e c2 ff d4 addis r22,r2,-44 c000000000081ae0: 3e e2 ff d4 addis r23,r2,-44 c000000000081ae4: 3a a0 00 00 li r21,0 c000000000081ae8: 3a d6 8c 30 addi r22,r22,-29648 c000000000081aec: 3a f7 8c 20 addi r23,r23,-29664 c000000000081af0: 48 00 00 44 b c000000000081b34 <.xmon_core+0x1684> c000000000081af4: 60 00 00 00 nop c000000000081af8: 60 00 00 00 nop c000000000081afc: 60 00 00 00 nop c000000000081b00: 40 9e 04 d4 bne- cr7,c000000000081fd4 <.xmon_core+0x1b24> c000000000081b04: 39 38 44 e8 addi r9,r24,17640 c000000000081b08: e8 89 00 30 ld r4,48(r9) c000000000081b0c: 7d 5c 22 14 add r10,r28,r4 c000000000081b10: 7f aa e0 40 cmpld cr7,r10,r28 c000000000081b14: 41 9c 00 64 blt- cr7,c000000000081b78 <.xmon_core+0x16c8> c000000000081b18: 7f 5a 22 14 add r26,r26,r4 c000000000081b1c: e9 29 00 38 ld r9,56(r9) c000000000081b20: 7f 35 cb 78 mr r21,r25 c000000000081b24: 7b 5a 00 20 clrldi r26,r26,32 c000000000081b28: 7f ba 48 40 cmpld cr7,r26,r9 c000000000081b2c: 7f 5c d3 78 mr r28,r26 c000000000081b30: 40 9c 00 48 bge- cr7,c000000000081b78 <.xmon_core+0x16c8> c000000000081b34: 7f 83 e3 78 mr r3,r28 c000000000081b38: 38 81 01 60 addi r4,r1,352 c000000000081b3c: 38 a0 00 01 li r5,1 c000000000081b40: 4b ff a8 81 bl c00000000007c3c0 <.mread> c000000000081b44: 2f b5 00 00 cmpdi cr7,r21,0 c000000000081b48: 7c 79 1b 79 mr. r25,r3 c000000000081b4c: 41 82 ff b4 beq+ c000000000081b00 <.xmon_core+0x1650> c000000000081b50: 40 9e ff b4 bne+ cr7,c000000000081b04 <.xmon_core+0x1654> c000000000081b54: 7f 44 d3 78 mr r4,r26 c000000000081b58: 7e e3 bb 78 mr r3,r23 c000000000081b5c: 48 00 1c e5 bl c000000000083840 <.xmon_printf> c000000000081b60: 60 00 00 00 nop c000000000081b64: 39 38 44 e8 addi r9,r24,17640 c000000000081b68: e8 89 00 30 ld r4,48(r9) c000000000081b6c: 7d 5c 22 14 add r10,r28,r4 c000000000081b70: 7f aa e0 40 cmpld cr7,r10,r28 c000000000081b74: 40 9c ff a4 bge+ cr7,c000000000081b18 <.xmon_core+0x1668> c000000000081b78: 2f b9 00 00 cmpdi cr7,r25,0 c000000000081b7c: 41 9e ee 94 beq+ cr7,c000000000080a10 <.xmon_core+0x560> c000000000081b80: 3c 62 ff d4 addis r3,r2,-44 c000000000081b84: 7c 84 e0 50 subf r4,r4,r28 c000000000081b88: 38 63 8c 30 addi r3,r3,-29648 c000000000081b8c: 48 00 1c b5 bl c000000000083840 <.xmon_printf> c000000000081b90: 60 00 00 00 nop c000000000081b94: 4b ff ee 7c b c000000000080a10 <.xmon_core+0x560> c000000000081b98: 3b 9f 3e 10 addi r28,r31,15888 c000000000081b9c: 3d 22 ff d4 addis r9,r2,-44 c000000000081ba0: 39 29 8c 08 addi r9,r9,-29688 c000000000081ba4: 38 7c 66 b0 addi r3,r28,26288 c000000000081ba8: f9 3c 26 38 std r9,9784(r28) c000000000081bac: 4b ff d8 15 bl c00000000007f3c0 <.scanhex> c000000000081bb0: 81 3c 24 d8 lwz r9,9432(r28) c000000000081bb4: 2f 89 00 0a cmpwi cr7,r9,10 c000000000081bb8: 41 9e 00 50 beq- cr7,c000000000081c08 <.xmon_core+0x1758> c000000000081bbc: 3b 40 00 00 li r26,0 c000000000081bc0: 38 7c 66 c8 addi r3,r28,26312 c000000000081bc4: 93 5c 24 d8 stw r26,9432(r28) c000000000081bc8: 4b ff d7 f9 bl c00000000007f3c0 <.scanhex> c000000000081bcc: 81 3c 24 d8 lwz r9,9432(r28) c000000000081bd0: 2f 89 00 0a cmpwi cr7,r9,10 c000000000081bd4: 41 9e 00 34 beq- cr7,c000000000081c08 <.xmon_core+0x1758> c000000000081bd8: 38 7c 26 40 addi r3,r28,9792 c000000000081bdc: 93 5c 24 d8 stw r26,9432(r28) c000000000081be0: 4b ff d7 e1 bl c00000000007f3c0 <.scanhex> c000000000081be4: 81 3c 24 d8 lwz r9,9432(r28) c000000000081be8: 2f 89 00 0a cmpwi cr7,r9,10 c000000000081bec: 39 20 ff ff li r9,-1 c000000000081bf0: 91 3c 66 cc stw r9,26316(r28) c000000000081bf4: 41 9e 00 08 beq- cr7,c000000000081bfc <.xmon_core+0x174c> c000000000081bf8: 93 5c 24 d8 stw r26,9432(r28) c000000000081bfc: 38 7f 3e 10 addi r3,r31,15888 c000000000081c00: 38 63 66 cc addi r3,r3,26316 c000000000081c04: 4b ff d7 bd bl c00000000007f3c0 <.scanhex> c000000000081c08: 39 3f 3e 10 addi r9,r31,15888 c000000000081c0c: 83 89 66 b4 lwz r28,26292(r9) c000000000081c10: 81 29 66 c8 lwz r9,26312(r9) c000000000081c14: 7f 89 e0 40 cmplw cr7,r9,r28 c000000000081c18: 40 9d ed f8 ble+ cr7,c000000000080a10 <.xmon_core+0x560> c000000000081c1c: 3f 22 ff d4 addis r25,r2,-44 c000000000081c20: 3b 40 00 00 li r26,0 c000000000081c24: 3b 39 8c 10 addi r25,r25,-29680 c000000000081c28: 48 00 00 20 b c000000000081c48 <.xmon_core+0x1798> c000000000081c2c: 60 00 00 00 nop c000000000081c30: 39 3f 3e 10 addi r9,r31,15888 c000000000081c34: 3b 9c 00 04 addi r28,r28,4 c000000000081c38: 81 29 66 c8 lwz r9,26312(r9) c000000000081c3c: 7f 89 e0 40 cmplw cr7,r9,r28 c000000000081c40: 7b 9c 00 20 clrldi r28,r28,32 c000000000081c44: 40 9d ed cc ble+ cr7,c000000000080a10 <.xmon_core+0x560> c000000000081c48: 7f 83 e3 78 mr r3,r28 c000000000081c4c: 38 81 01 28 addi r4,r1,296 c000000000081c50: 38 a0 00 04 li r5,4 c000000000081c54: 4b ff a7 6d bl c00000000007c3c0 <.mread> c000000000081c58: 2f 83 00 04 cmpwi cr7,r3,4 c000000000081c5c: 40 9e ff d4 bne+ cr7,c000000000081c30 <.xmon_core+0x1780> c000000000081c60: 88 a1 01 28 lbz r5,296(r1) c000000000081c64: 89 21 01 29 lbz r9,297(r1) c000000000081c68: 89 01 01 2a lbz r8,298(r1) c000000000081c6c: 89 41 01 2b lbz r10,299(r1) c000000000081c70: 55 29 80 1e rlwinm r9,r9,16,0,15 c000000000081c74: 54 a5 c0 0e rlwinm r5,r5,24,0,7 c000000000081c78: 7c a5 4a 14 add r5,r5,r9 c000000000081c7c: 55 08 40 2e rlwinm r8,r8,8,0,23 c000000000081c80: 39 3f 3e 10 addi r9,r31,15888 c000000000081c84: 7c a5 42 14 add r5,r5,r8 c000000000081c88: 7c a5 52 14 add r5,r5,r10 c000000000081c8c: e9 49 26 40 ld r10,9792(r9) c000000000081c90: 81 29 66 cc lwz r9,26316(r9) c000000000081c94: 7c a5 07 b4 extsw r5,r5 c000000000081c98: 7c aa 52 78 xor r10,r5,r10 c000000000081c9c: 7d 46 48 39 and. r6,r10,r9 c000000000081ca0: 40 82 ff 90 bne+ c000000000081c30 <.xmon_core+0x1780> c000000000081ca4: 3b 5a 00 01 addi r26,r26,1 c000000000081ca8: 7f 23 cb 78 mr r3,r25 c000000000081cac: 7f 84 e3 78 mr r4,r28 c000000000081cb0: 48 00 1b 91 bl c000000000083840 <.xmon_printf> c000000000081cb4: 60 00 00 00 nop c000000000081cb8: 2b 9a 00 09 cmplwi cr7,r26,9 c000000000081cbc: 7b 5a 00 20 clrldi r26,r26,32 c000000000081cc0: 40 9d ff 70 ble+ cr7,c000000000081c30 <.xmon_core+0x1780> c000000000081cc4: 4b ff ed 4c b c000000000080a10 <.xmon_core+0x560> c000000000081cc8: 60 00 00 00 nop c000000000081ccc: 60 00 00 00 nop c000000000081cd0: 38 60 00 00 li r3,0 c000000000081cd4: 48 38 ae 9d bl c00000000040cb70 <.show_mem> c000000000081cd8: 60 00 00 00 nop c000000000081cdc: 4b ff ed 34 b c000000000080a10 <.xmon_core+0x560> c000000000081ce0: 3b 5f 3e 10 addi r26,r31,15888 c000000000081ce4: 38 7a 66 b0 addi r3,r26,26288 c000000000081ce8: 4b ff d6 d9 bl c00000000007f3c0 <.scanhex> c000000000081cec: 81 3a 24 d8 lwz r9,9432(r26) c000000000081cf0: 2f 89 00 0a cmpwi cr7,r9,10 c000000000081cf4: 41 9e 00 0c beq- cr7,c000000000081d00 <.xmon_core+0x1850> c000000000081cf8: 39 20 00 00 li r9,0 c000000000081cfc: 91 3a 24 d8 stw r9,9432(r26) c000000000081d00: 2f 9c 00 73 cmpwi cr7,r28,115 c000000000081d04: 38 7f 3e 10 addi r3,r31,15888 c000000000081d08: 41 9e 0e a8 beq- cr7,c000000000082bb0 <.xmon_core+0x2700> c000000000081d0c: 38 63 26 48 addi r3,r3,9800 c000000000081d10: 4b ff d6 b1 bl c00000000007f3c0 <.scanhex> c000000000081d14: 39 3f 3e 10 addi r9,r31,15888 c000000000081d18: 81 49 24 d8 lwz r10,9432(r9) c000000000081d1c: 2f 8a 00 0a cmpwi cr7,r10,10 c000000000081d20: 41 9e 00 0c beq- cr7,c000000000081d2c <.xmon_core+0x187c> c000000000081d24: 39 40 00 00 li r10,0 c000000000081d28: 91 49 24 d8 stw r10,9432(r9) c000000000081d2c: 3b 5f 3e 10 addi r26,r31,15888 c000000000081d30: 38 7a 66 b8 addi r3,r26,26296 c000000000081d34: 4b ff d6 8d bl c00000000007f3c0 <.scanhex> c000000000081d38: 2f 9c 00 6d cmpwi cr7,r28,109 c000000000081d3c: 41 9e 0e e8 beq- cr7,c000000000082c24 <.xmon_core+0x2774> c000000000081d40: 2f 9c 00 73 cmpwi cr7,r28,115 c000000000081d44: 41 9e 0e c8 beq- cr7,c000000000082c0c <.xmon_core+0x275c> c000000000081d48: 2f 9c 00 64 cmpwi cr7,r28,100 c000000000081d4c: 40 9e ec c4 bne+ cr7,c000000000080a10 <.xmon_core+0x560> c000000000081d50: 81 3a 24 d8 lwz r9,9432(r26) c000000000081d54: 2f 89 00 0a cmpwi cr7,r9,10 c000000000081d58: 41 9e 00 0c beq- cr7,c000000000081d64 <.xmon_core+0x18b4> c000000000081d5c: 39 20 00 00 li r9,0 c000000000081d60: 91 3a 24 d8 stw r9,9432(r26) c000000000081d64: 3b 9f 3e 10 addi r28,r31,15888 c000000000081d68: 38 7c 66 c0 addi r3,r28,26304 c000000000081d6c: 4b ff d6 55 bl c00000000007f3c0 <.scanhex> c000000000081d70: 81 3c 66 bc lwz r9,26300(r28) c000000000081d74: e8 9c 66 b0 ld r4,26288(r28) c000000000081d78: e8 dc 26 48 ld r6,9800(r28) c000000000081d7c: 82 dc 66 c4 lwz r22,26308(r28) c000000000081d80: 2f a9 00 00 cmpdi cr7,r9,0 c000000000081d84: 41 9e ec 8c beq+ cr7,c000000000080a10 <.xmon_core+0x560> c000000000081d88: 39 29 ff ff addi r9,r9,-1 c000000000081d8c: 3a e4 00 01 addi r23,r4,1 c000000000081d90: 79 29 00 20 clrldi r9,r9,32 c000000000081d94: 3f 02 ff d4 addis r24,r2,-44 c000000000081d98: 7e f7 4a 14 add r23,r23,r9 c000000000081d9c: 3b 20 00 00 li r25,0 c000000000081da0: 3b 18 8b c8 addi r24,r24,-29752 c000000000081da4: 48 00 00 1c b c000000000081dc0 <.xmon_core+0x1910> c000000000081da8: 60 00 00 00 nop c000000000081dac: 60 00 00 00 nop c000000000081db0: 7f ba b8 00 cmpd cr7,r26,r23 c000000000081db4: 7f 44 d3 78 mr r4,r26 c000000000081db8: 7f 86 e3 78 mr r6,r28 c000000000081dbc: 41 9e 10 b0 beq- cr7,c000000000082e6c <.xmon_core+0x29bc> c000000000081dc0: 88 a4 00 00 lbz r5,0(r4) c000000000081dc4: 88 e6 00 00 lbz r7,0(r6) c000000000081dc8: 3b 44 00 01 addi r26,r4,1 c000000000081dcc: 3b 86 00 01 addi r28,r6,1 c000000000081dd0: 7f 85 38 40 cmplw cr7,r5,r7 c000000000081dd4: 41 9e ff dc beq+ cr7,c000000000081db0 <.xmon_core+0x1900> c000000000081dd8: 39 39 00 01 addi r9,r25,1 c000000000081ddc: 7f 96 48 40 cmplw cr7,r22,r9 c000000000081de0: 79 39 00 20 clrldi r25,r9,32 c000000000081de4: 41 9c ff cc blt+ cr7,c000000000081db0 <.xmon_core+0x1900> c000000000081de8: 7f 03 c3 78 mr r3,r24 c000000000081dec: 48 00 1a 55 bl c000000000083840 <.xmon_printf> c000000000081df0: 60 00 00 00 nop c000000000081df4: 4b ff ff bc b c000000000081db0 <.xmon_core+0x1900> c000000000081df8: 60 00 00 00 nop c000000000081dfc: 60 00 00 00 nop c000000000081e00: e8 9f 00 00 ld r4,0(r31) c000000000081e04: 7f 03 c3 78 mr r3,r24 c000000000081e08: 48 00 1a 39 bl c000000000083840 <.xmon_printf> c000000000081e0c: 60 00 00 00 nop c000000000081e10: 39 20 00 00 li r9,0 c000000000081e14: 91 3f 00 14 stw r9,20(r31) c000000000081e18: 4b ff ef d8 b c000000000080df0 <.xmon_core+0x940> c000000000081e1c: 60 00 00 00 nop c000000000081e20: e8 61 01 60 ld r3,352(r1) c000000000081e24: 38 80 00 00 li r4,0 c000000000081e28: 38 a0 00 00 li r5,0 c000000000081e2c: 4b ff a9 55 bl c00000000007c780 <.xmon_show_stack> c000000000081e30: 4b ff cf 51 bl c00000000007ed80 <.scannl> c000000000081e34: 4b ff eb dc b c000000000080a10 <.xmon_core+0x560> c000000000081e38: 60 00 00 00 nop c000000000081e3c: 60 00 00 00 nop /* 3213 case 's': 3214 stop_spus(); 3215 break; 3216 case 'r': 3217 restart_spus(); 3218 break; */ c000000000081e40: 2f 83 00 72 cmpwi cr7,r3,114 c000000000081e44: 41 9e 03 2c beq- cr7,c000000000082170 <.xmon_core+0x1cc0> c000000000081e48: 2f 83 00 73 cmpwi cr7,r3,115 c000000000081e4c: 40 9e ef 10 bne+ cr7,c000000000080d5c <.xmon_core+0x8ac> ; for default, return -1 c000000000081e50: 4b ff b1 81 bl c00000000007cfd0 <.stop_spus> c000000000081e54: 4b ff eb bc b c000000000080a10 <.xmon_core+0x560> c000000000081e58: 3c 62 ff d4 addis r3,r2,-44 c000000000081e5c: 3b 40 ff ff li r26,-1 c000000000081e60: 38 63 99 08 addi r3,r3,-26360 c000000000081e64: 3a ff 3e 10 addi r23,r31,15888 c000000000081e68: 48 00 19 d9 bl c000000000083840 <.xmon_printf> c000000000081e6c: 60 00 00 00 nop c000000000081e70: 39 40 ff ff li r10,-1 c000000000081e74: 3d 22 ff b3 addis r9,r2,-77 c000000000081e78: f9 41 01 60 std r10,352(r1) c000000000081e7c: 39 29 19 68 addi r9,r9,6504 c000000000081e80: 3e a2 ff db addis r21,r2,-37 c000000000081e84: 3e 82 ff d6 addis r20,r2,-42 c000000000081e88: 38 80 ff ff li r4,-1 c000000000081e8c: eb 09 00 00 ld r24,0(r9) c000000000081e90: 3b 80 00 00 li r28,0 c000000000081e94: 7b 5a 00 20 clrldi r26,r26,32 c000000000081e98: 3f 22 00 09 addis r25,r2,9 c000000000081e9c: 3a f7 24 e8 addi r23,r23,9448 c000000000081ea0: 3a c0 00 00 li r22,0 c000000000081ea4: 3a b5 e4 50 addi r21,r21,-7088 c000000000081ea8: 3a 94 8f d0 addi r20,r20,-28720 c000000000081eac: 60 00 00 00 nop c000000000081eb0: 38 a4 00 01 addi r5,r4,1 c000000000081eb4: 7f 03 c3 78 mr r3,r24 c000000000081eb8: 38 80 08 00 li r4,2048 c000000000081ebc: 7c a5 07 b4 extsw r5,r5 c000000000081ec0: 48 39 62 81 bl c000000000418140 <.find_next_bit> c000000000081ec4: 60 00 00 00 nop c000000000081ec8: 39 39 33 b8 addi r9,r25,13240 c000000000081ecc: e9 29 00 02 lwa r9,0(r9) c000000000081ed0: 7c 64 d0 38 and r4,r3,r26 c000000000081ed4: f8 81 01 60 std r4,352(r1) c000000000081ed8: 7f a4 48 40 cmpld cr7,r4,r9 c000000000081edc: 40 9c 00 68 bge- cr7,c000000000081f44 <.xmon_core+0x1a94> c000000000081ee0: 7c 69 36 70 srawi r9,r3,6 c000000000081ee4: 7d 29 01 94 addze r9,r9 c000000000081ee8: 78 63 06 a0 clrldi r3,r3,58 c000000000081eec: 7d 29 07 b4 extsw r9,r9 c000000000081ef0: 79 29 1f 24 rldicr r9,r9,3,60 c000000000081ef4: 7d 37 48 2a ldx r9,r23,r9 c000000000081ef8: 7d 23 1c 36 srd r3,r9,r3 c000000000081efc: 78 67 07 e1 clrldi. r7,r3,63 c000000000081f00: 41 82 00 80 beq- c000000000081f80 <.xmon_core+0x1ad0> c000000000081f04: 2f bc 00 00 cmpdi cr7,r28,0 c000000000081f08: 41 9e 00 b8 beq- cr7,c000000000081fc0 <.xmon_core+0x1b10> c000000000081f0c: 38 a4 00 01 addi r5,r4,1 c000000000081f10: 7f 03 c3 78 mr r3,r24 c000000000081f14: 38 80 08 00 li r4,2048 c000000000081f18: 7c a5 07 b4 extsw r5,r5 c000000000081f1c: 48 39 62 25 bl c000000000418140 <.find_next_bit> c000000000081f20: 60 00 00 00 nop c000000000081f24: 39 39 33 b8 addi r9,r25,13240 c000000000081f28: 3b 9c 00 01 addi r28,r28,1 c000000000081f2c: 7f 9c 07 b4 extsw r28,r28 c000000000081f30: e9 29 00 02 lwa r9,0(r9) c000000000081f34: 7c 64 d0 38 and r4,r3,r26 c000000000081f38: f8 81 01 60 std r4,352(r1) c000000000081f3c: 7f a4 48 40 cmpld cr7,r4,r9 c000000000081f40: 41 9c ff a0 blt+ cr7,c000000000081ee0 <.xmon_core+0x1a30> c000000000081f44: 2f 9c 00 01 cmpwi cr7,r28,1 c000000000081f48: 40 9d 00 18 ble- cr7,c000000000081f60 <.xmon_core+0x1ab0> c000000000081f4c: 3c 62 ff db addis r3,r2,-37 c000000000081f50: 38 80 07 ff li r4,2047 c000000000081f54: 38 63 e4 50 addi r3,r3,-7088 c000000000081f58: 48 00 18 e9 bl c000000000083840 <.xmon_printf> c000000000081f5c: 60 00 00 00 nop c000000000081f60: 3c 62 ff d5 addis r3,r2,-43 c000000000081f64: 38 63 0e 68 addi r3,r3,3688 c000000000081f68: 48 00 18 d9 bl c000000000083840 <.xmon_printf> c000000000081f6c: 60 00 00 00 nop c000000000081f70: 4b ff ea a0 b c000000000080a10 <.xmon_core+0x560> c000000000081f74: 60 00 00 00 nop c000000000081f78: 60 00 00 00 nop c000000000081f7c: 60 00 00 00 nop c000000000081f80: 2f 9c 00 01 cmpwi cr7,r28,1 c000000000081f84: 40 9d 00 2c ble- cr7,c000000000081fb0 <.xmon_core+0x1b00> c000000000081f88: 38 84 ff ff addi r4,r4,-1 c000000000081f8c: 7e a3 ab 78 mr r3,r21 c000000000081f90: 48 00 18 b1 bl c000000000083840 <.xmon_printf> c000000000081f94: 60 00 00 00 nop c000000000081f98: 7e dc b3 78 mr r28,r22 c000000000081f9c: e8 81 01 60 ld r4,352(r1) c000000000081fa0: 4b ff ff 10 b c000000000081eb0 <.xmon_core+0x1a00> c000000000081fa4: 60 00 00 00 nop c000000000081fa8: 60 00 00 00 nop c000000000081fac: 60 00 00 00 nop c000000000081fb0: 7e dc b3 78 mr r28,r22 c000000000081fb4: 4b ff fe fc b c000000000081eb0 <.xmon_core+0x1a00> c000000000081fb8: 60 00 00 00 nop c000000000081fbc: 60 00 00 00 nop c000000000081fc0: 7e 83 a3 78 mr r3,r20 c000000000081fc4: 48 00 18 7d bl c000000000083840 <.xmon_printf> c000000000081fc8: 60 00 00 00 nop c000000000081fcc: e8 81 01 60 ld r4,352(r1) c000000000081fd0: 4b ff ff 3c b c000000000081f0c <.xmon_core+0x1a5c> c000000000081fd4: 39 38 44 e8 addi r9,r24,17640 c000000000081fd8: 7e c3 b3 78 mr r3,r22 c000000000081fdc: e8 89 00 30 ld r4,48(r9) c000000000081fe0: 7c 84 e0 50 subf r4,r4,r28 c000000000081fe4: 48 00 18 5d bl c000000000083840 <.xmon_printf> c000000000081fe8: 60 00 00 00 nop c000000000081fec: 4b ff fb 18 b c000000000081b04 <.xmon_core+0x1654> c000000000081ff0: 3d 20 00 02 lis r9,2 c000000000081ff4: 7f a4 48 40 cmpld cr7,r4,r9 c000000000081ff8: 40 9d f5 f8 ble+ cr7,c0000000000815f0 <.xmon_core+0x1140> c000000000081ffc: f9 3c 00 50 std r9,80(r28) c000000000082000: 3c 80 00 02 lis r4,2 c000000000082004: 4b ff f5 ec b c0000000000815f0 <.xmon_core+0x1140> c000000000082008: 38 61 01 60 addi r3,r1,352 c00000000008200c: 4b ff d3 b5 bl c00000000007f3c0 <.scanhex> c000000000082010: 2f a3 00 00 cmpdi cr7,r3,0 c000000000082014: 40 9e 07 54 bne- cr7,c000000000082768 <.xmon_core+0x22b8> c000000000082018: 38 e0 01 00 li r7,256 c00000000008201c: 39 3f 3e 10 addi r9,r31,15888 c000000000082020: 7c e9 03 a6 mtctr r7 c000000000082024: 39 29 00 1c addi r9,r9,28 c000000000082028: 39 40 00 00 li r10,0 c00000000008202c: 60 00 00 00 nop c000000000082030: 91 49 00 00 stw r10,0(r9) c000000000082034: 39 29 00 20 addi r9,r9,32 c000000000082038: 42 00 ff f8 bdnz+ c000000000082030 <.xmon_core+0x1b80> c00000000008203c: 3c 62 ff d4 addis r3,r2,-44 c000000000082040: 39 3f 3e 10 addi r9,r31,15888 c000000000082044: 39 40 00 00 li r10,0 c000000000082048: 38 63 97 18 addi r3,r3,-26856 c00000000008204c: f9 49 67 08 std r10,26376(r9) c000000000082050: 91 49 66 fc stw r10,26364(r9) c000000000082054: 48 00 17 ed bl c000000000083840 <.xmon_printf> c000000000082058: 60 00 00 00 nop c00000000008205c: 4b ff e9 b4 b c000000000080a10 <.xmon_core+0x560> c000000000082060: 3d 22 00 0b addis r9,r2,11 c000000000082064: 39 29 69 18 addi r9,r9,26904 c000000000082068: e9 29 00 00 ld r9,0(r9) c00000000008206c: e9 29 00 10 ld r9,16(r9) c000000000082070: 79 26 e7 e1 rldicl. r6,r9,28,63 c000000000082074: 41 82 07 5c beq- c0000000000827d0 <.xmon_core+0x2320> c000000000082078: 39 5f 3e 10 addi r10,r31,15888 c00000000008207c: e9 2a 67 08 ld r9,26376(r10) c000000000082080: 2f a9 00 00 cmpdi cr7,r9,0 c000000000082084: 41 9e 00 18 beq- cr7,c00000000008209c <.xmon_core+0x1bec> c000000000082088: 81 09 00 14 lwz r8,20(r9) c00000000008208c: 55 08 00 3a rlwinm r8,r8,0,0,29 c000000000082090: 91 09 00 14 stw r8,20(r9) c000000000082094: 39 20 00 00 li r9,0 c000000000082098: f9 2a 67 08 std r9,26376(r10) c00000000008209c: 38 61 01 60 addi r3,r1,352 c0000000000820a0: 4b ff d3 21 bl c00000000007f3c0 <.scanhex> c0000000000820a4: 2f a3 00 00 cmpdi cr7,r3,0 c0000000000820a8: 41 9e e9 68 beq+ cr7,c000000000080a10 <.xmon_core+0x560> c0000000000820ac: e8 61 01 60 ld r3,352(r1) c0000000000820b0: 4b ff aa 41 bl c00000000007caf0 <.check_bp_loc> c0000000000820b4: 2f a3 00 00 cmpdi cr7,r3,0 c0000000000820b8: 41 9e e9 58 beq+ cr7,c000000000080a10 <.xmon_core+0x560> c0000000000820bc: e8 61 01 60 ld r3,352(r1) c0000000000820c0: 4b ff 9a 11 bl c00000000007bad0 <.new_breakpoint> c0000000000820c4: 2c 23 00 00 cmpdi r3,0 c0000000000820c8: 41 82 e9 48 beq+ c000000000080a10 <.xmon_core+0x560> c0000000000820cc: 81 03 00 14 lwz r8,20(r3) c0000000000820d0: 39 5f 3e 10 addi r10,r31,15888 c0000000000820d4: f8 6a 67 08 std r3,26376(r10) c0000000000820d8: 61 08 00 03 ori r8,r8,3 c0000000000820dc: 91 03 00 14 stw r8,20(r3) c0000000000820e0: 4b ff e9 30 b c000000000080a10 <.xmon_core+0x560> c0000000000820e4: 4b ff cc 0d bl c00000000007ecf0 <.inchar> c0000000000820e8: 3b 40 00 05 li r26,5 c0000000000820ec: 2f 83 00 72 cmpwi cr7,r3,114 c0000000000820f0: 41 9e 00 1c beq- cr7,c00000000008210c <.xmon_core+0x1c5c> c0000000000820f4: 2f 83 00 77 cmpwi cr7,r3,119 c0000000000820f8: 3b 40 00 06 li r26,6 c0000000000820fc: 41 9e 00 10 beq- cr7,c00000000008210c <.xmon_core+0x1c5c> c000000000082100: 39 3f 3e 10 addi r9,r31,15888 c000000000082104: 3b 40 00 07 li r26,7 c000000000082108: 90 69 24 d8 stw r3,9432(r9) c00000000008210c: 3b 9f 3e 10 addi r28,r31,15888 c000000000082110: 39 20 00 00 li r9,0 c000000000082114: 38 7c 66 e8 addi r3,r28,26344 c000000000082118: f9 3c 66 e8 std r9,26344(r28) c00000000008211c: 91 3c 66 fc stw r9,26364(r28) c000000000082120: 4b ff d2 a1 bl c00000000007f3c0 <.scanhex> c000000000082124: 2f a3 00 00 cmpdi cr7,r3,0 c000000000082128: 41 9e e8 e8 beq+ cr7,c000000000080a10 <.xmon_core+0x560> c00000000008212c: 3d 20 bf ff lis r9,-16385 c000000000082130: e9 5c 66 e8 ld r10,26344(r28) c000000000082134: 61 29 ff ff ori r9,r9,65535 c000000000082138: 79 29 07 c6 rldicr r9,r9,32,31 c00000000008213c: 65 29 ff ff oris r9,r9,65535 c000000000082140: 61 29 ff ff ori r9,r9,65535 c000000000082144: 7f aa 48 40 cmpld cr7,r10,r9 c000000000082148: 40 9d 0d 74 ble- cr7,c000000000082ebc <.xmon_core+0x2a0c> c00000000008214c: 79 4a 07 24 rldicr r10,r10,0,60 c000000000082150: 63 5a 00 10 ori r26,r26,16 c000000000082154: f9 5c 66 e8 std r10,26344(r28) c000000000082158: 93 5c 66 fc stw r26,26364(r28) c00000000008215c: 4b ff e8 b4 b c000000000080a10 <.xmon_core+0x560> c000000000082160: 2f 83 00 66 cmpwi cr7,r3,102 c000000000082164: 41 9e f4 2c beq+ cr7,c000000000081590 <.xmon_core+0x10e0> c000000000082168: 4b ff f4 20 b c000000000081588 <.xmon_core+0x10d8> c00000000008216c: 60 00 00 00 nop /* 3216 case 'r': 3217 restart_spus(); 3218 break; */ c000000000082170: 4b ff b0 41 bl c00000000007d1b0 <.restart_spus> c000000000082174: 4b ff e8 9c b c000000000080a10 <.xmon_core+0x560> c000000000082178: 4b ff d2 49 bl c00000000007f3c0 <.scanhex> c00000000008217c: ea bc 00 50 ld r21,80(r28) c000000000082180: 39 3f 3e 10 addi r9,r31,15888 c000000000082184: 2f b5 00 00 cmpdi cr7,r21,0 c000000000082188: 40 9e 09 dc bne- cr7,c000000000082b64 <.xmon_core+0x26b4> c00000000008218c: 39 40 00 40 li r10,64 c000000000082190: ea 69 25 f0 ld r19,9712(r9) c000000000082194: 3a a0 00 40 li r21,64 c000000000082198: f9 5c 00 50 std r10,80(r28) c00000000008219c: 3e c2 ff d5 addis r22,r2,-43 c0000000000821a0: 3e e2 ff b1 addis r23,r2,-79 c0000000000821a4: 3f 02 ff d4 addis r24,r2,-44 c0000000000821a8: 3b 21 01 28 addi r25,r1,296 c0000000000821ac: 3a 00 00 00 li r16,0 c0000000000821b0: 3a d6 f5 50 addi r22,r22,-2736 c0000000000821b4: 3a f7 08 f0 addi r23,r23,2288 c0000000000821b8: 3b 18 86 58 addi r24,r24,-31144 c0000000000821bc: 60 00 00 00 nop c0000000000821c0: 2f b5 00 10 cmpdi cr7,r21,16 c0000000000821c4: 7e ba ab 78 mr r26,r21 c0000000000821c8: 40 9d 00 08 ble- cr7,c0000000000821d0 <.xmon_core+0x1d20> c0000000000821cc: 3b 40 00 10 li r26,16 c0000000000821d0: 7e 63 9b 78 mr r3,r19 c0000000000821d4: 7f 24 cb 78 mr r4,r25 c0000000000821d8: 7f 45 07 b4 extsw r5,r26 c0000000000821dc: 7e 1c 83 78 mr r28,r16 c0000000000821e0: 4b ff a1 e1 bl c00000000007c3c0 <.mread> c0000000000821e4: 7c 6e 1b 78 mr r14,r3 c0000000000821e8: 7c 74 1b 78 mr r20,r3 c0000000000821ec: 7e 73 1a 14 add r19,r19,r3 c0000000000821f0: 48 00 00 2c b c00000000008221c <.xmon_core+0x1d6c> c0000000000821f4: 60 00 00 00 nop c0000000000821f8: 60 00 00 00 nop c0000000000821fc: 60 00 00 00 nop c000000000082200: 7c 99 e0 ae lbzx r4,r25,r28 c000000000082204: 7f 03 c3 78 mr r3,r24 c000000000082208: 3b 9c 00 01 addi r28,r28,1 c00000000008220c: 48 00 16 35 bl c000000000083840 <.xmon_printf> c000000000082210: 60 00 00 00 nop c000000000082214: 7f ba e0 00 cmpd cr7,r26,r28 c000000000082218: 40 9d 00 34 ble- cr7,c00000000008224c <.xmon_core+0x1d9c> c00000000008221c: 7f b4 e0 00 cmpd cr7,r20,r28 c000000000082220: 41 9d ff e0 bgt+ cr7,c000000000082200 <.xmon_core+0x1d50> c000000000082224: 39 3f 3e 10 addi r9,r31,15888 c000000000082228: 7e c3 b3 78 mr r3,r22 c00000000008222c: e9 29 21 4a lwa r9,8520(r9) c000000000082230: 3b 9c 00 01 addi r28,r28,1 c000000000082234: 79 29 1f 24 rldicr r9,r9,3,60 c000000000082238: 7c 97 48 2a ldx r4,r23,r9 c00000000008223c: 48 00 16 05 bl c000000000083840 <.xmon_printf> c000000000082240: 60 00 00 00 nop c000000000082244: 7f ba e0 00 cmpd cr7,r26,r28 c000000000082248: 41 9d ff d4 bgt+ cr7,c00000000008221c <.xmon_core+0x1d6c> c00000000008224c: 7f ba 70 00 cmpd cr7,r26,r14 c000000000082250: 7e ba a8 50 subf r21,r26,r21 c000000000082254: 41 9d 00 0c bgt- cr7,c000000000082260 <.xmon_core+0x1db0> c000000000082258: 2f b5 00 00 cmpdi cr7,r21,0 c00000000008225c: 41 9d ff 64 bgt+ cr7,c0000000000821c0 <.xmon_core+0x1d10> c000000000082260: 3c 62 ff d5 addis r3,r2,-43 c000000000082264: 38 63 0e 68 addi r3,r3,3688 c000000000082268: 48 00 15 d9 bl c000000000083840 <.xmon_printf> c00000000008226c: 60 00 00 00 nop c000000000082270: 3d 42 ff ed addis r10,r2,-19 c000000000082274: 39 3f 3e 10 addi r9,r31,15888 c000000000082278: 39 4a 44 e8 addi r10,r10,17640 c00000000008227c: e9 09 25 f0 ld r8,9712(r9) c000000000082280: e8 ea 00 50 ld r7,80(r10) c000000000082284: 3d 42 ff d4 addis r10,r2,-44 c000000000082288: 39 4a 91 20 addi r10,r10,-28384 c00000000008228c: 7d 07 42 14 add r8,r7,r8 c000000000082290: f9 49 26 38 std r10,9784(r9) c000000000082294: f9 09 25 f0 std r8,9712(r9) c000000000082298: 4b ff e7 78 b c000000000080a10 <.xmon_core+0x560> /* 3223 case 'f': 3224 scanhex(&num); 3225 if (num >= XMON_NUM_SPUS || !spu_info[num].spu) { 3226 printf("*** Error: invalid spu number\n"); 3227 return 0; 3228 } 3229 3230 switch (cmd) { 3231 case 'f': 3232 dump_spu_fields(spu_info[num].spu); 3233 break; 3234 default: 3235 dump_spu_ls(num, subcmd); 3236 break; 3237 } 3238 3239 break; */ c00000000008229c: 3b 20 00 00 li r25,0 c0000000000822a0: 3b 9f 3e 10 addi r28,r31,15888 c0000000000822a4: 38 7c 66 e0 addi r3,r28,26336 c0000000000822a8: 4b ff d1 19 bl c00000000007f3c0 <.scanhex> c0000000000822ac: e9 3c 66 e0 ld r9,26336(r28) c0000000000822b0: 2b a9 00 0f cmpldi cr7,r9,15 c0000000000822b4: 41 9d 01 0c bgt- cr7,c0000000000823c0 <.xmon_core+0x1f10> c0000000000822b8: 1d 49 00 28 mulli r10,r9,40 c0000000000822bc: 7f 9c 52 14 add r28,r28,r10 c0000000000822c0: e8 7c 21 50 ld r3,8528(r28) c0000000000822c4: 2f a3 00 00 cmpdi cr7,r3,0 c0000000000822c8: 41 9e 00 f8 beq- cr7,c0000000000823c0 <.xmon_core+0x1f10> c0000000000822cc: 2f 9a 00 66 cmpwi cr7,r26,102 ; 102 = 'f' c0000000000822d0: 41 9e 05 b4 beq- cr7,c000000000082884 <.xmon_core+0x23d4> c0000000000822d4: 7d 23 4b 78 mr r3,r9 c0000000000822d8: 7f 24 cb 78 mr r4,r25 c0000000000822dc: 4b ff df e5 bl c0000000000802c0 <.dump_spu_ls> c0000000000822e0: 4b ff e7 30 b c000000000080a10 <.xmon_core+0x560> /* 1627 unsigned long sp, toc; 1628 asm("mr %0,1" : "=r" (sp) :); 1629 asm("mr %0,2" : "=r" (toc) :); 1630 1631 printf("msr = "REG" sprg0= "REG"\n", 1632 mfmsr(), mfspr(SPRN_SPRG0)); 1633 printf("pvr = "REG" sprg1= "REG"\n", 1634 mfspr(SPRN_PVR), mfspr(SPRN_SPRG1)); 1635 printf("dec = "REG" sprg2= "REG"\n", 1636 mfspr(SPRN_DEC), mfspr(SPRN_SPRG2)); 1637 printf("sp = "REG" sprg3= "REG"\n", sp, mfspr(SPRN_SPRG3)); 1638 printf("toc = "REG" dar = "REG"\n", toc, mfspr(SPRN_DAR)); 1639 1640 return; */ c0000000000822e4: 7c 3a 0b 78 mr r26,r1 c0000000000822e8: 7c 5c 13 78 mr r28,r2 c0000000000822ec: 7c 80 00 a6 mfmsr r4 c0000000000822f0: 7c b0 42 a6 mfsprg r5,0 c0000000000822f4: 3c 62 ff d4 addis r3,r2,-44 c0000000000822f8: 38 63 91 28 addi r3,r3,-28376 c0000000000822fc: 48 00 15 45 bl c000000000083840 <.xmon_printf> c000000000082300: 60 00 00 00 nop c000000000082304: 7c 9f 42 a6 mfpvr r4 c000000000082308: 7c b1 42 a6 mfsprg r5,1 c00000000008230c: 3c 62 ff d4 addis r3,r2,-44 c000000000082310: 38 63 91 48 addi r3,r3,-28344 c000000000082314: 48 00 15 2d bl c000000000083840 <.xmon_printf> c000000000082318: 60 00 00 00 nop c00000000008231c: 7c 96 02 a6 mfdec r4 c000000000082320: 7c b2 42 a6 mfsprg r5,2 c000000000082324: 3c 62 ff d4 addis r3,r2,-44 c000000000082328: 38 63 91 68 addi r3,r3,-28312 c00000000008232c: 48 00 15 15 bl c000000000083840 <.xmon_printf> c000000000082330: 60 00 00 00 nop c000000000082334: 7c b3 42 a6 mfsprg r5,3 c000000000082338: 3c 62 ff d4 addis r3,r2,-44 c00000000008233c: 7f 44 d3 78 mr r4,r26 c000000000082340: 38 63 91 88 addi r3,r3,-28280 c000000000082344: 48 00 14 fd bl c000000000083840 <.xmon_printf> c000000000082348: 60 00 00 00 nop c00000000008234c: 7c b3 02 a6 mfdar r5 c000000000082350: 3c 62 ff d4 addis r3,r2,-44 c000000000082354: 7f 84 e3 78 mr r4,r28 c000000000082358: 38 63 91 a8 addi r3,r3,-28248 c00000000008235c: 48 00 14 e5 bl c000000000083840 <.xmon_printf> c000000000082360: 60 00 00 00 nop c000000000082364: 4b ff e6 ac b c000000000080a10 <.xmon_core+0x560> c000000000082368: 4b ff c9 89 bl c00000000007ecf0 <.inchar> c00000000008236c: 78 69 00 20 clrldi r9,r3,32 c000000000082370: 7c 79 1b 78 mr r25,r3 c000000000082374: 39 49 ff d0 addi r10,r9,-48 c000000000082378: 2b 8a 00 09 cmplwi cr7,r10,9 c00000000008237c: 40 9d 00 24 ble- cr7,c0000000000823a0 <.xmon_core+0x1ef0> c000000000082380: 39 49 ff 9f addi r10,r9,-97 c000000000082384: 2b 8a 00 05 cmplwi cr7,r10,5 c000000000082388: 40 9d 00 18 ble- cr7,c0000000000823a0 <.xmon_core+0x1ef0> c00000000008238c: 39 29 ff bf addi r9,r9,-65 c000000000082390: 2b 89 00 05 cmplwi cr7,r9,5 c000000000082394: 40 9d 00 0c ble- cr7,c0000000000823a0 <.xmon_core+0x1ef0> c000000000082398: 2f 83 00 0a cmpwi cr7,r3,10 c00000000008239c: 40 9e ff 04 bne+ cr7,c0000000000822a0 <.xmon_core+0x1df0> c0000000000823a0: 3b 9f 3e 10 addi r28,r31,15888 c0000000000823a4: 39 3f 3e 10 addi r9,r31,15888 c0000000000823a8: 38 7c 66 e0 addi r3,r28,26336 c0000000000823ac: 93 29 24 d8 stw r25,9432(r9) c0000000000823b0: 4b ff d0 11 bl c00000000007f3c0 <.scanhex> c0000000000823b4: e9 3c 66 e0 ld r9,26336(r28) c0000000000823b8: 2b a9 00 0f cmpldi cr7,r9,15 c0000000000823bc: 40 9d fe fc ble+ cr7,c0000000000822b8 <.xmon_core+0x1e08> c0000000000823c0: 3c 62 ff d4 addis r3,r2,-44 c0000000000823c4: 38 63 91 d8 addi r3,r3,-28200 c0000000000823c8: 48 00 14 79 bl c000000000083840 <.xmon_printf> c0000000000823cc: 60 00 00 00 nop c0000000000823d0: 4b ff e6 40 b c000000000080a10 <.xmon_core+0x560> c0000000000823d4: 39 3a 44 e8 addi r9,r26,17640 c0000000000823d8: 39 40 00 08 li r10,8 c0000000000823dc: 91 49 00 40 stw r10,64(r9) c0000000000823e0: 7f 74 db 78 mr r20,r27 c0000000000823e4: 4b ff ee 9c b c000000000081280 <.xmon_core+0xdd0> c0000000000823e8: 81 3c 66 d0 lwz r9,26320(r28) c0000000000823ec: 7f 74 db 78 mr r20,r27 c0000000000823f0: 7d 29 00 34 cntlzw r9,r9 c0000000000823f4: 55 29 d9 7e rlwinm r9,r9,27,5,31 c0000000000823f8: 91 3c 66 d0 stw r9,26320(r28) c0000000000823fc: 4b ff ee 84 b c000000000081280 <.xmon_core+0xdd0> c000000000082400: 39 20 00 01 li r9,1 c000000000082404: 7f 74 db 78 mr r20,r27 c000000000082408: 91 3c 66 d4 stw r9,26324(r28) c00000000008240c: 4b ff ee 74 b c000000000081280 <.xmon_core+0xdd0> c000000000082410: 3c c2 00 0f addis r6,r2,15 c000000000082414: 7f 74 db 78 mr r20,r27 c000000000082418: 38 66 64 00 addi r3,r6,25600 c00000000008241c: 4b ff cf a5 bl c00000000007f3c0 <.scanhex> c000000000082420: 4b ff ee 60 b c000000000081280 <.xmon_core+0xdd0> c000000000082424: 39 3a 44 e8 addi r9,r26,17640 c000000000082428: 39 40 00 04 li r10,4 c00000000008242c: 91 49 00 40 stw r10,64(r9) c000000000082430: 7f 74 db 78 mr r20,r27 c000000000082434: 4b ff ee 4c b c000000000081280 <.xmon_core+0xdd0> c000000000082438: 39 3a 44 e8 addi r9,r26,17640 c00000000008243c: 39 40 00 01 li r10,1 c000000000082440: 91 49 00 40 stw r10,64(r9) c000000000082444: 7f 74 db 78 mr r20,r27 c000000000082448: 4b ff ee 38 b c000000000081280 <.xmon_core+0xdd0> c00000000008244c: 39 3a 44 e8 addi r9,r26,17640 c000000000082450: e9 5c 25 f0 ld r10,9712(r28) c000000000082454: 7f 74 db 78 mr r20,r27 c000000000082458: e9 29 00 42 lwa r9,64(r9) c00000000008245c: 7d 29 50 50 subf r9,r9,r10 c000000000082460: f9 3c 25 f0 std r9,9712(r28) c000000000082464: 4b ff ee 1c b c000000000081280 <.xmon_core+0xdd0> c000000000082468: 2f 99 00 00 cmpwi cr7,r25,0 c00000000008246c: 41 9c 07 70 blt- cr7,c000000000082bdc <.xmon_core+0x272c> c000000000082470: e9 5c 25 f0 ld r10,9712(r28) c000000000082474: 39 20 00 10 li r9,16 c000000000082478: 3b 20 ff fc li r25,-4 c00000000008247c: 7d 29 50 50 subf r9,r9,r10 c000000000082480: 7f 74 db 78 mr r20,r27 c000000000082484: f9 3c 25 f0 std r9,9712(r28) c000000000082488: 4b ff ed f8 b c000000000081280 <.xmon_core+0xdd0> c00000000008248c: e8 61 01 b8 ld r3,440(r1) c000000000082490: 7f 74 db 78 mr r20,r27 c000000000082494: 48 00 13 ad bl c000000000083840 <.xmon_printf> c000000000082498: 60 00 00 00 nop c00000000008249c: 4b ff ed e4 b c000000000081280 <.xmon_core+0xdd0> c0000000000824a0: 39 3a 44 e8 addi r9,r26,17640 c0000000000824a4: 38 61 01 60 addi r3,r1,352 c0000000000824a8: e9 29 00 42 lwa r9,64(r9) c0000000000824ac: 7f 74 db 78 mr r20,r27 c0000000000824b0: f9 21 01 60 std r9,352(r1) c0000000000824b4: 4b ff cf 0d bl c00000000007f3c0 <.scanhex> c0000000000824b8: e9 3c 25 f0 ld r9,9712(r28) c0000000000824bc: e9 41 01 60 ld r10,352(r1) c0000000000824c0: 7d 2a 4a 14 add r9,r10,r9 c0000000000824c4: f9 3c 25 f0 std r9,9712(r28) c0000000000824c8: 4b ff ed b8 b c000000000081280 <.xmon_core+0xdd0> c0000000000824cc: 39 3a 44 e8 addi r9,r26,17640 c0000000000824d0: 38 61 01 60 addi r3,r1,352 c0000000000824d4: e9 29 00 42 lwa r9,64(r9) c0000000000824d8: 7f 74 db 78 mr r20,r27 c0000000000824dc: f9 21 01 60 std r9,352(r1) c0000000000824e0: 4b ff ce e1 bl c00000000007f3c0 <.scanhex> c0000000000824e4: e9 5c 25 f0 ld r10,9712(r28) c0000000000824e8: e9 21 01 60 ld r9,352(r1) c0000000000824ec: 7d 29 50 50 subf r9,r9,r10 c0000000000824f0: f9 3c 25 f0 std r9,9712(r28) c0000000000824f4: 4b ff ed 8c b c000000000081280 <.xmon_core+0xdd0> c0000000000824f8: 39 3a 44 e8 addi r9,r26,17640 c0000000000824fc: 39 40 00 02 li r10,2 c000000000082500: 91 49 00 40 stw r10,64(r9) c000000000082504: 7f 74 db 78 mr r20,r27 c000000000082508: 4b ff ed 78 b c000000000081280 <.xmon_core+0xdd0> c00000000008250c: 2f 99 00 00 cmpwi cr7,r25,0 c000000000082510: 40 9d 06 a8 ble- cr7,c000000000082bb8 <.xmon_core+0x2708> c000000000082514: 39 20 00 01 li r9,1 c000000000082518: e9 1c 25 f0 ld r8,9712(r28) c00000000008251c: 7d 2a c8 30 slw r10,r9,r25 c000000000082520: 3b 39 00 04 addi r25,r25,4 c000000000082524: 7d 29 c8 30 slw r9,r9,r25 c000000000082528: 7d 4a 07 b4 extsw r10,r10 c00000000008252c: 7d 4a 40 50 subf r10,r10,r8 c000000000082530: 7f 39 07 b4 extsw r25,r25 c000000000082534: 7d 29 07 b4 extsw r9,r9 c000000000082538: 7d 2a 4a 14 add r9,r10,r9 c00000000008253c: 7f 74 db 78 mr r20,r27 c000000000082540: f9 3c 25 f0 std r9,9712(r28) c000000000082544: 4b ff ed 3c b c000000000081280 <.xmon_core+0xdd0> c000000000082548: 39 20 00 00 li r9,0 c00000000008254c: 7f 74 db 78 mr r20,r27 c000000000082550: 91 3c 66 d4 stw r9,26324(r28) c000000000082554: 4b ff ed 2c b c000000000081280 <.xmon_core+0xdd0> c000000000082558: 39 3a 44 e8 addi r9,r26,17640 c00000000008255c: 7f 74 db 78 mr r20,r27 c000000000082560: e9 49 00 42 lwa r10,64(r9) c000000000082564: e9 3c 25 f0 ld r9,9712(r28) c000000000082568: 7d 2a 4a 14 add r9,r10,r9 c00000000008256c: f9 3c 25 f0 std r9,9712(r28) c000000000082570: 4b ff ed 10 b c000000000081280 <.xmon_core+0xdd0> c000000000082574: 4b ff c7 7d bl c00000000007ecf0 <.inchar> c000000000082578: 3a 00 00 09 li r16,9 c00000000008257c: 3a 80 00 08 li r20,8 c000000000082580: 2f a3 00 5c cmpdi cr7,r3,92 c000000000082584: f8 61 01 60 std r3,352(r1) c000000000082588: 41 9e 00 8c beq- cr7,c000000000082614 <.xmon_core+0x2164> c00000000008258c: 60 00 00 00 nop c000000000082590: 2f a3 00 27 cmpdi cr7,r3,39 c000000000082594: 41 9e 00 f4 beq- cr7,c000000000082688 <.xmon_core+0x21d8> c000000000082598: 39 3a 44 e8 addi r9,r26,17640 c00000000008259c: 80 e9 00 40 lwz r7,64(r9) c0000000000825a0: 2f 87 00 00 cmpwi cr7,r7,0 c0000000000825a4: 7c e5 07 b4 extsw r5,r7 c0000000000825a8: 40 9d 00 30 ble- cr7,c0000000000825d8 <.xmon_core+0x2128> c0000000000825ac: e8 c1 01 60 ld r6,352(r1) c0000000000825b0: 39 01 01 27 addi r8,r1,295 c0000000000825b4: 78 e7 18 28 rldic r7,r7,3,32 c0000000000825b8: 7f 69 db 78 mr r9,r27 c0000000000825bc: 60 00 00 00 nop c0000000000825c0: 39 49 00 08 addi r10,r9,8 c0000000000825c4: 7c c9 4c 36 srd r9,r6,r9 c0000000000825c8: 7f 8a 38 40 cmplw cr7,r10,r7 c0000000000825cc: 9d 28 00 01 stbu r9,1(r8) c0000000000825d0: 79 49 00 20 clrldi r9,r10,32 c0000000000825d4: 40 9e ff ec bne+ cr7,c0000000000825c0 <.xmon_core+0x2110> c0000000000825d8: 81 3c 66 d0 lwz r9,26320(r28) c0000000000825dc: 2f 89 00 00 cmpwi cr7,r9,0 c0000000000825e0: 41 9e 00 70 beq- cr7,c000000000082650 <.xmon_core+0x21a0> c0000000000825e4: e8 7c 25 f0 ld r3,9712(r28) c0000000000825e8: 38 81 01 28 addi r4,r1,296 c0000000000825ec: 4b ff a6 35 bl c00000000007cc20 <.mwrite> c0000000000825f0: 39 3a 44 e8 addi r9,r26,17640 c0000000000825f4: e9 49 00 42 lwa r10,64(r9) c0000000000825f8: e9 3c 25 f0 ld r9,9712(r28) c0000000000825fc: 7d 2a 4a 14 add r9,r10,r9 c000000000082600: f9 3c 25 f0 std r9,9712(r28) c000000000082604: 4b ff c6 ed bl c00000000007ecf0 <.inchar> c000000000082608: 2f a3 00 5c cmpdi cr7,r3,92 c00000000008260c: f8 61 01 60 std r3,352(r1) c000000000082610: 40 9e ff 80 bne+ cr7,c000000000082590 <.xmon_core+0x20e0> c000000000082614: 4b ff c6 dd bl c00000000007ecf0 <.inchar> c000000000082618: 7e a9 ab 78 mr r9,r21 c00000000008261c: 2f 83 00 6e cmpwi cr7,r3,110 c000000000082620: 41 9e 00 18 beq- cr7,c000000000082638 <.xmon_core+0x2188> c000000000082624: 41 9d 02 28 bgt- cr7,c00000000008284c <.xmon_core+0x239c> c000000000082628: 2f 83 00 62 cmpwi cr7,r3,98 c00000000008262c: 7e 89 a3 78 mr r9,r20 c000000000082630: 41 9e 00 08 beq- cr7,c000000000082638 <.xmon_core+0x2188> c000000000082634: 7c 69 1b 78 mr r9,r3 c000000000082638: f9 21 01 60 std r9,352(r1) c00000000008263c: 4b ff ff 5c b c000000000082598 <.xmon_core+0x20e8> c000000000082640: eb 61 01 c0 ld r27,448(r1) c000000000082644: eb c1 01 c8 ld r30,456(r1) c000000000082648: 4b ff c7 39 bl c00000000007ed80 <.scannl> c00000000008264c: 4b ff e3 c4 b c000000000080a10 <.xmon_core+0x560> c000000000082650: 7c a4 2b 78 mr r4,r5 c000000000082654: 38 61 01 28 addi r3,r1,296 c000000000082658: f8 a1 01 d0 std r5,464(r1) c00000000008265c: 4b ff c7 75 bl c00000000007edd0 <.byterev> c000000000082660: e8 a1 01 d0 ld r5,464(r1) c000000000082664: 4b ff ff 80 b c0000000000825e4 <.xmon_core+0x2134> c000000000082668: 60 00 00 00 nop c00000000008266c: 60 00 00 00 nop c000000000082670: 7c a4 2b 78 mr r4,r5 c000000000082674: 38 61 01 28 addi r3,r1,296 c000000000082678: f8 a1 01 d0 std r5,464(r1) c00000000008267c: 4b ff c7 55 bl c00000000007edd0 <.byterev> c000000000082680: e8 a1 01 d0 ld r5,464(r1) c000000000082684: 4b ff ec 60 b c0000000000812e4 <.xmon_core+0xe34> c000000000082688: 39 3a 44 e8 addi r9,r26,17640 c00000000008268c: ea 89 00 42 lwa r20,64(r9) c000000000082690: e9 3c 25 f0 ld r9,9712(r28) c000000000082694: 7d 34 48 50 subf r9,r20,r9 c000000000082698: f9 3c 25 f0 std r9,9712(r28) c00000000008269c: 4b ff eb e4 b c000000000081280 <.xmon_core+0xdd0> c0000000000826a0: 3d 22 00 09 addis r9,r2,9 c0000000000826a4: 3b 80 00 01 li r28,1 c0000000000826a8: e9 29 2f 00 ld r9,12032(r9) c0000000000826ac: 4b ff e0 20 b c0000000000806cc <.xmon_core+0x21c> c0000000000826b0: 7e 43 93 78 mr r3,r18 c0000000000826b4: 48 00 11 8d bl c000000000083840 <.xmon_printf> c0000000000826b8: 60 00 00 00 nop c0000000000826bc: 4b ff e3 54 b c000000000080a10 <.xmon_core+0x560> /* 747 brk.address = dabr.address; 748 brk.type = (dabr.enabled & HW_BRK_TYPE_DABR) | HW_BRK_TYPE_PRIV_ALL; 749 brk.len = 8; 750 set_breakpoint(&brk); */ c0000000000826c0: 55 29 07 7e clrlwi r9,r9,29 c0000000000826c4: e9 4a 66 e8 ld r10,26344(r10) c0000000000826c8: 38 61 01 28 addi r3,r1,296 c0000000000826cc: 61 29 00 38 ori r9,r9,56 c0000000000826d0: b1 21 01 30 sth r9,304(r1) c0000000000826d4: 39 20 00 08 li r9,8 c0000000000826d8: f9 41 01 28 std r10,296(r1) c0000000000826dc: b1 21 01 32 sth r9,306(r1) c0000000000826e0: 4b f9 18 a1 bl c000000000013f80 <.set_breakpoint> c0000000000826e4: 60 00 00 00 nop c0000000000826e8: 4b ff e0 e8 b c0000000000807d0 <.xmon_core+0x320> /* 533 if ((regs->msr & (MSR_IR|MSR_PR|MSR_64BIT)) == (MSR_IR|MSR_64BIT)) { 534 bp = at_breakpoint(regs->nip); 535 if (bp != NULL) { 536 int stepped = emulate_step(regs, bp->instr[0]); 537 if (stepped == 0) { 538 regs->nip = (unsigned long) &bp->instr[0]; 539 atomic_inc(&bp->ref_count); 540 } else if (stepped < 0) { 541 printf("Couldn't single-step %s instruction\n", 542 (IS_RFID(bp->instr[0])? "rfid": "mtmsrd")); 543 } 544 } 545 } */ c0000000000826ec: e8 e1 02 a0 ld r7,672(r1) c0000000000826f0: 3b ea 00 08 addi r31,r10,8 c0000000000826f4: 39 4a 20 08 addi r10,r10,8200 c0000000000826f8: e9 07 01 00 ld r8,256(r7) c0000000000826fc: 48 00 00 10 b c00000000008270c <.xmon_core+0x225c> c000000000082700: 3b ff 00 20 addi r31,r31,32 c000000000082704: 7f bf 50 00 cmpd cr7,r31,r10 c000000000082708: 41 9e e0 b4 beq+ cr7,c0000000000807bc <.xmon_core+0x30c> c00000000008270c: 81 3f 00 14 lwz r9,20(r31) c000000000082710: 2f 89 00 00 cmpwi cr7,r9,0 c000000000082714: 41 9e ff ec beq+ cr7,c000000000082700 <.xmon_core+0x2250> c000000000082718: e9 3f 00 00 ld r9,0(r31) c00000000008271c: 7f a8 48 00 cmpd cr7,r8,r9 c000000000082720: 40 9e ff e0 bne+ cr7,c000000000082700 <.xmon_core+0x2250> c000000000082724: 2f bf 00 00 cmpdi cr7,r31,0 c000000000082728: 41 be e0 94 beq- cr7,c0000000000807bc <.xmon_core+0x30c> c00000000008272c: 80 9f 00 08 lwz r4,8(r31) c000000000082730: e8 61 02 a0 ld r3,672(r1) c000000000082734: 48 79 b0 ed bl c00000000081d820 <.emulate_step> c000000000082738: 60 00 00 00 nop c00000000008273c: 2c 23 00 00 cmpdi r3,0 c000000000082740: 40 82 05 08 bne- c000000000082c48 <.xmon_core+0x2798> c000000000082744: e9 01 02 a0 ld r8,672(r1) c000000000082748: 39 3f 00 08 addi r9,r31,8 c00000000008274c: f9 28 01 00 std r9,256(r8) c000000000082750: 39 3f 00 10 addi r9,r31,16 c000000000082754: 7d 40 48 28 lwarx r10,0,r9 c000000000082758: 31 4a 00 01 addic r10,r10,1 c00000000008275c: 7d 40 49 2d stwcx. r10,0,r9 c000000000082760: 40 a2 ff f4 bne- c000000000082754 <.xmon_core+0x22a4> c000000000082764: 4b ff e0 58 b c0000000000807bc <.xmon_core+0x30c> c000000000082768: e8 81 01 60 ld r4,352(r1) c00000000008276c: 39 24 ff ff addi r9,r4,-1 c000000000082770: 2b a9 00 ff cmpldi cr7,r9,255 c000000000082774: 40 9d 02 70 ble- cr7,c0000000000829e4 <.xmon_core+0x2534> c000000000082778: 39 5f 3e 10 addi r10,r31,15888 c00000000008277c: 3b 8a 00 08 addi r28,r10,8 c000000000082780: 39 4a 20 08 addi r10,r10,8200 c000000000082784: 48 00 00 18 b c00000000008279c <.xmon_core+0x22ec> c000000000082788: 60 00 00 00 nop c00000000008278c: 60 00 00 00 nop c000000000082790: 3b 9c 00 20 addi r28,r28,32 c000000000082794: 7f bc 50 00 cmpd cr7,r28,r10 c000000000082798: 41 9e 00 24 beq- cr7,c0000000000827bc <.xmon_core+0x230c> c00000000008279c: 81 3c 00 14 lwz r9,20(r28) c0000000000827a0: 2f 89 00 00 cmpwi cr7,r9,0 c0000000000827a4: 41 9e ff ec beq+ cr7,c000000000082790 <.xmon_core+0x22e0> c0000000000827a8: e9 3c 00 00 ld r9,0(r28) c0000000000827ac: 7f a4 48 00 cmpd cr7,r4,r9 c0000000000827b0: 40 9e ff e0 bne+ cr7,c000000000082790 <.xmon_core+0x22e0> c0000000000827b4: 2f bc 00 00 cmpdi cr7,r28,0 c0000000000827b8: 40 be 02 3c bne+ cr7,c0000000000829f4 <.xmon_core+0x2544> c0000000000827bc: 3c 62 ff d4 addis r3,r2,-44 c0000000000827c0: 38 63 97 38 addi r3,r3,-26824 c0000000000827c4: 48 00 10 7d bl c000000000083840 <.xmon_printf> c0000000000827c8: 60 00 00 00 nop c0000000000827cc: 4b ff e2 44 b c000000000080a10 <.xmon_core+0x560> c0000000000827d0: 3c 62 ff d4 addis r3,r2,-44 c0000000000827d4: 38 63 9a 50 addi r3,r3,-26032 c0000000000827d8: 48 00 10 69 bl c000000000083840 <.xmon_printf> c0000000000827dc: 60 00 00 00 nop c0000000000827e0: 4b ff e2 30 b c000000000080a10 <.xmon_core+0x560> c0000000000827e4: 3f 82 ff ed addis r28,r2,-19 c0000000000827e8: 3b 9c 44 e8 addi r28,r28,17640 c0000000000827ec: 38 7c 00 48 addi r3,r28,72 c0000000000827f0: 4b ff cb d1 bl c00000000007f3c0 <.scanhex> c0000000000827f4: e9 3c 00 48 ld r9,72(r28) c0000000000827f8: 2f a9 00 00 cmpdi cr7,r9,0 c0000000000827fc: 41 9e 01 d8 beq- cr7,c0000000000829d4 <.xmon_core+0x2524> c000000000082800: 3d 40 00 02 lis r10,2 c000000000082804: 7d 24 4b 78 mr r4,r9 c000000000082808: 7f a9 50 40 cmpld cr7,r9,r10 c00000000008280c: 40 9d 00 0c ble- cr7,c000000000082818 <.xmon_core+0x2368> c000000000082810: f9 5c 00 48 std r10,72(r28) c000000000082814: 3c 80 00 02 lis r4,2 c000000000082818: 3b 9f 3e 10 addi r28,r31,15888 c00000000008281c: 3d 22 ff f7 addis r9,r2,-9 c000000000082820: 38 c9 b4 68 addi r6,r9,-19352 c000000000082824: e8 7c 25 f0 ld r3,9712(r28) c000000000082828: 38 a0 00 01 li r5,1 c00000000008282c: 4b ff 9d 35 bl c00000000007c560 <.generic_inst_dump> c000000000082830: e9 5c 25 f0 ld r10,9712(r28) c000000000082834: 3d 22 ff d4 addis r9,r2,-44 c000000000082838: 39 29 91 18 addi r9,r9,-28392 c00000000008283c: 7c 63 52 14 add r3,r3,r10 c000000000082840: f9 3c 26 38 std r9,9784(r28) c000000000082844: f8 7c 25 f0 std r3,9712(r28) c000000000082848: 4b ff e1 c8 b c000000000080a10 <.xmon_core+0x560> c00000000008284c: 2f 83 00 72 cmpwi cr7,r3,114 c000000000082850: 7f c9 f3 78 mr r9,r30 c000000000082854: 41 9e fd e4 beq+ cr7,c000000000082638 <.xmon_core+0x2188> c000000000082858: 2f 83 00 74 cmpwi cr7,r3,116 c00000000008285c: 7e 09 83 78 mr r9,r16 c000000000082860: 41 9e fd d8 beq+ cr7,c000000000082638 <.xmon_core+0x2188> c000000000082864: 7c 69 1b 78 mr r9,r3 c000000000082868: 4b ff fd d0 b c000000000082638 <.xmon_core+0x2188> c00000000008286c: e9 3f 00 00 ld r9,0(r31) c000000000082870: 7c 00 48 6c dcbst 0,r9 c000000000082874: 7c 00 04 ac sync c000000000082878: 7c 00 4f ac icbi 0,r9 c00000000008287c: 4c 00 01 2c isync c000000000082880: 4b ff e5 70 b c000000000080df0 <.xmon_core+0x940> /* 3232 dump_spu_fields(spu_info[num].spu); 3233 break; */ c000000000082884: 4b ff aa ed bl c00000000007d370 <.dump_spu_fields> c000000000082888: 4b ff e1 88 b c000000000080a10 <.xmon_core+0x560> c00000000008288c: e8 61 01 60 ld r3,352(r1) c000000000082890: 4b ff a2 61 bl c00000000007caf0 <.check_bp_loc> c000000000082894: 2f a3 00 00 cmpdi cr7,r3,0 c000000000082898: 41 9e e1 78 beq+ cr7,c000000000080a10 <.xmon_core+0x560> c00000000008289c: e8 61 01 60 ld r3,352(r1) c0000000000828a0: 4b ff 92 31 bl c00000000007bad0 <.new_breakpoint> c0000000000828a4: 2c 23 00 00 cmpdi r3,0 c0000000000828a8: 41 82 e1 68 beq+ c000000000080a10 <.xmon_core+0x560> c0000000000828ac: 81 43 00 14 lwz r10,20(r3) c0000000000828b0: 61 4a 00 08 ori r10,r10,8 c0000000000828b4: 91 43 00 14 stw r10,20(r3) c0000000000828b8: 4b ff e1 58 b c000000000080a10 <.xmon_core+0x560> /* 395 secondary = !(xmon_taken && cpu == xmon_owner); 396 goto cmdloop; */ c0000000000828bc: 3d 02 ff ed addis r8,r2,-19 c0000000000828c0: 39 08 44 e8 addi r8,r8,17640 c0000000000828c4: e9 08 00 28 ld r8,40(r8) c0000000000828c8: 2f a8 00 00 cmpdi cr7,r8,0 c0000000000828cc: 40 9e 05 c0 bne- cr7,c000000000082e8c <.xmon_core+0x29dc> c0000000000828d0: 80 e1 01 90 lwz r7,400(r1) c0000000000828d4: 39 40 00 01 li r10,1 c0000000000828d8: 3b 80 00 01 li r28,1 c0000000000828dc: 7d 4a 38 36 sld r10,r10,r7 c0000000000828e0: f9 41 01 80 std r10,384(r1) c0000000000828e4: 4b ff dd e8 b c0000000000806cc <.xmon_core+0x21c> /* 659 static struct bpt *at_breakpoint(unsigned long pc) 660 { 661 int i; 662 struct bpt *bp; 663 664 bp = bpts; 665 for (i = 0; i < NBPTS; ++i, ++bp) 666 if (bp->enabled && pc == bp->address) 667 return bp; 668 return NULL; 669 } */ c0000000000828e8: e9 21 02 a0 ld r9,672(r1) c0000000000828ec: 38 ca 00 08 addi r6,r10,8 c0000000000828f0: 39 4a 20 08 addi r10,r10,8200 c0000000000828f4: f8 c1 01 70 std r6,368(r1) c0000000000828f8: e9 09 01 00 ld r8,256(r9) c0000000000828fc: 7c c9 33 78 mr r9,r6 c000000000082900: 48 00 00 1c b c00000000008291c <.xmon_core+0x246c> c000000000082904: 60 00 00 00 nop c000000000082908: 60 00 00 00 nop c00000000008290c: 60 00 00 00 nop c000000000082910: 39 29 00 20 addi r9,r9,32 c000000000082914: 7f a9 50 00 cmpd cr7,r9,r10 c000000000082918: 41 9e 05 f8 beq- cr7,c000000000082f10 <.xmon_core+0x2a60> c00000000008291c: 80 c9 00 14 lwz r6,20(r9) c000000000082920: 2f 86 00 00 cmpwi cr7,r6,0 c000000000082924: 41 9e ff ec beq+ cr7,c000000000082910 <.xmon_core+0x2460> c000000000082928: e8 c9 00 00 ld r6,0(r9) c00000000008292c: 7f a8 30 00 cmpd cr7,r8,r6 c000000000082930: 40 9e ff e0 bne+ cr7,c000000000082910 <.xmon_core+0x2460> c000000000082934: 2f a9 00 00 cmpdi cr7,r9,0 c000000000082938: f9 21 01 70 std r9,368(r1) ; 368(r1) = bp c00000000008293c: 41 be df e4 beq- cr7,c000000000080920 <.xmon_core+0x470> /* 409 get_output_lock(); 410 excprint(regs); 411 if (bp) { 412 printf("cpu 0x%x stopped at breakpoint 0x%x (", 413 cpu, BP_NUM(bp)); 414 xmon_print_symbol(regs->nip, " ", ")\n"); 415 } 416 if (unrecoverable_excp(regs)) 417 printf("WARNING: exception is not recoverable, " 418 "can't continue\n"); */ c000000000082940: 4b ff 8f 21 bl c00000000007b860 <.get_output_lock> c000000000082944: e8 61 02 a0 ld r3,672(r1) ; 672(r1) = regs c000000000082948: 4b ff c7 19 bl c00000000007f060 <.excprint> c00000000008294c: e8 c1 01 70 ld r6,368(r1) c000000000082950: 2f a6 00 00 cmpdi cr7,r6,0 ; check bp c000000000082954: 41 9e 00 4c beq- cr7,c0000000000829a0 <.xmon_core+0x24f0> c000000000082958: 3c a2 00 0f addis r5,r2,15 c00000000008295c: e8 81 01 78 ld r4,376(r1) c000000000082960: 3c 62 ff d4 addis r3,r2,-44 c000000000082964: 38 a5 3e 10 addi r5,r5,15888 c000000000082968: 38 63 8b 18 addi r3,r3,-29928 c00000000008296c: 38 a5 00 08 addi r5,r5,8 c000000000082970: 7c a5 30 50 subf r5,r5,r6 c000000000082974: 7c a5 2e 74 sradi r5,r5,5 c000000000082978: 38 a5 00 01 addi r5,r5,1 c00000000008297c: 48 00 0e c5 bl c000000000083840 <.xmon_printf> c000000000082980: 60 00 00 00 nop c000000000082984: e8 e1 02 a0 ld r7,672(r1) c000000000082988: 3c 82 ff d8 addis r4,r2,-40 c00000000008298c: 3c a2 ff da addis r5,r2,-38 c000000000082990: 38 84 a6 70 addi r4,r4,-22928 c000000000082994: 38 a5 96 70 addi r5,r5,-27024 c000000000082998: e8 67 01 00 ld r3,256(r7) c00000000008299c: 4b ff 98 c5 bl c00000000007c260 <.xmon_print_symbol> c0000000000829a0: e9 01 02 a0 ld r8,672(r1) c0000000000829a4: e9 28 01 08 ld r9,264(r8) c0000000000829a8: 79 2a ff e3 rldicl. r10,r9,63,63 ; check unrecoverable_excp(regs) c0000000000829ac: 41 82 05 50 beq- c000000000082efc <.xmon_core+0x2a4c> ; == "if (bp || unrecoverable_excp(regs))" c0000000000829b0: 3d 22 00 0f addis r9,r2,15 c0000000000829b4: 39 40 00 00 li r10,0 c0000000000829b8: 38 c0 00 00 li r6,0 c0000000000829bc: 91 49 3e 10 stw r10,15888(r9) ; release_output_lock(); c0000000000829c0: f8 c1 02 a8 std r6,680(r1) /* fromipi = 0; */ c0000000000829c4: 4b ff dc 80 b c000000000080644 <.xmon_core+0x194> c0000000000829c8: 39 20 00 08 li r9,8 c0000000000829cc: 91 2a 00 40 stw r9,64(r10) c0000000000829d0: 4b ff e7 50 b c000000000081120 <.xmon_core+0xc70> c0000000000829d4: 39 20 00 10 li r9,16 c0000000000829d8: 38 80 00 10 li r4,16 c0000000000829dc: f9 3c 00 48 std r9,72(r28) c0000000000829e0: 4b ff fe 38 b c000000000082818 <.xmon_core+0x2368> c0000000000829e4: 3b 9f 3e 10 addi r28,r31,15888 c0000000000829e8: 79 29 2e a4 rldicr r9,r9,5,58 c0000000000829ec: 3b 9c 00 08 addi r28,r28,8 c0000000000829f0: 7f 9c 4a 14 add r28,r28,r9 c0000000000829f4: 38 9f 3e 10 addi r4,r31,15888 c0000000000829f8: 3c 62 ff d4 addis r3,r2,-44 c0000000000829fc: 38 84 00 08 addi r4,r4,8 c000000000082a00: 38 63 97 50 addi r3,r3,-26800 c000000000082a04: 7c 84 e0 50 subf r4,r4,r28 c000000000082a08: 7c 84 2e 74 sradi r4,r4,5 c000000000082a0c: 38 84 00 01 addi r4,r4,1 c000000000082a10: 48 00 0e 31 bl c000000000083840 <.xmon_printf> c000000000082a14: 60 00 00 00 nop c000000000082a18: 3c 82 ff d8 addis r4,r2,-40 c000000000082a1c: 3c a2 ff da addis r5,r2,-38 c000000000082a20: e8 7c 00 00 ld r3,0(r28) c000000000082a24: 38 84 a6 70 addi r4,r4,-22928 c000000000082a28: 38 a5 96 70 addi r5,r5,-27024 c000000000082a2c: 4b ff 98 35 bl c00000000007c260 <.xmon_print_symbol> c000000000082a30: 39 20 00 00 li r9,0 c000000000082a34: 91 3c 00 14 stw r9,20(r28) c000000000082a38: 4b ff df d8 b c000000000080a10 <.xmon_core+0x560> c000000000082a3c: 39 3a 44 e8 addi r9,r26,17640 c000000000082a40: 38 61 01 28 addi r3,r1,296 c000000000082a44: e8 89 00 42 lwa r4,64(r9) c000000000082a48: 4b ff c3 89 bl c00000000007edd0 <.byterev> c000000000082a4c: 4b ff e7 6c b c0000000000811b8 <.xmon_core+0xd08> c000000000082a50: 3c 62 ff d4 addis r3,r2,-44 c000000000082a54: e8 9c 66 e8 ld r4,26344(r28) c000000000082a58: 38 63 98 c8 addi r3,r3,-26424 c000000000082a5c: 48 00 0d e5 bl c000000000083840 <.xmon_printf> c000000000082a60: 60 00 00 00 nop c000000000082a64: 81 3c 66 fc lwz r9,26364(r28) c000000000082a68: 79 28 07 e1 clrldi. r8,r9,63 c000000000082a6c: 7d 29 07 b4 extsw r9,r9 c000000000082a70: 40 82 05 58 bne- c000000000082fc8 <.xmon_core+0x2b18> c000000000082a74: 79 2a ff e3 rldicl. r10,r9,63,63 c000000000082a78: 40 82 05 3c bne- c000000000082fb4 <.xmon_core+0x2b04> c000000000082a7c: 3c 62 ff d9 addis r3,r2,-39 c000000000082a80: 38 63 80 a0 addi r3,r3,-32608 c000000000082a84: 48 00 0d bd bl c000000000083840 <.xmon_printf> c000000000082a88: 60 00 00 00 nop c000000000082a8c: 4b ff ec f0 b c00000000008177c <.xmon_core+0x12cc> c000000000082a90: 39 29 00 28 addi r9,r9,40 c000000000082a94: 39 40 00 01 li r10,1 c000000000082a98: 7c 20 04 ac lwsync c000000000082a9c: 7d 00 48 a8 ldarx r8,0,r9 c000000000082aa0: 7d 07 53 78 or r7,r8,r10 c000000000082aa4: 7c e0 49 ad stdcx. r7,0,r9 c000000000082aa8: 40 a2 ff f4 bne- c000000000082a9c <.xmon_core+0x25ec> c000000000082aac: 7c 00 04 ac sync c000000000082ab0: 79 09 07 e1 clrldi. r9,r8,63 c000000000082ab4: 40 82 ec 10 bne+ c0000000000816c4 <.xmon_core+0x1214> c000000000082ab8: 7c 00 04 ac sync c000000000082abc: a1 4d 00 0a lhz r10,10(r13) c000000000082ac0: e8 81 01 60 ld r4,352(r1) c000000000082ac4: 39 3f 3e 10 addi r9,r31,15888 c000000000082ac8: e8 61 01 b0 ld r3,432(r1) c000000000082acc: 91 49 66 54 stw r10,26196(r9) c000000000082ad0: 48 00 0d 71 bl c000000000083840 <.xmon_printf> c000000000082ad4: 60 00 00 00 nop c000000000082ad8: 4b ff df 38 b c000000000080a10 <.xmon_core+0x560> c000000000082adc: 3d 22 00 0b addis r9,r2,11 c000000000082ae0: 38 60 00 00 li r3,0 c000000000082ae4: 39 29 6a 30 addi r9,r9,27184 c000000000082ae8: e9 29 01 28 ld r9,296(r9) c000000000082aec: e9 49 00 00 ld r10,0(r9) c000000000082af0: f8 41 00 28 std r2,40(r1) c000000000082af4: 7d 49 03 a6 mtctr r10 c000000000082af8: e8 49 00 08 ld r2,8(r9) c000000000082afc: 4e 80 04 21 bctrl c000000000082b00: e8 41 00 28 ld r2,40(r1) c000000000082b04: 4b ff df 0c b c000000000080a10 <.xmon_core+0x560> /* 2081 static void dump_pacas(void) 2082 { 2083 unsigned long num; 2084 int c; 2085 2086 c = inchar(); 2087 if (c == 'a') { 2088 dump_all_pacas(); 2089 return; 2090 } 2091 2092 termch = c; \* Put c back, it wasn't 'a' *\ 2093 2094 if (scanhex(&num)) 2095 dump_one_paca(num); */ c000000000082b08: 4b ff c1 e9 bl c00000000007ecf0 <.inchar> c000000000082b0c: 2f 83 00 61 cmpwi cr7,r3,97 c000000000082b10: 7c 69 1b 78 mr r9,r3 c000000000082b14: 41 9e 04 08 beq- cr7,c000000000082f1c <.xmon_core+0x2a6c> c000000000082b18: 3b 9f 3e 10 addi r28,r31,15888 c000000000082b1c: 38 61 01 60 addi r3,r1,352 ; r3 = &num c000000000082b20: 91 3c 24 d8 stw r9,9432(r28) c000000000082b24: 4b ff c8 9d bl c00000000007f3c0 <.scanhex> c000000000082b28: 2f a3 00 00 cmpdi cr7,r3,0 c000000000082b2c: 41 9e 03 c4 beq- cr7,c000000000082ef0 <.xmon_core+0x2a40> c000000000082b30: e8 61 01 66 lwa r3,356(r1) ; r3 = (int) num c000000000082b34: 4b ff 90 7d bl c00000000007bbb0 <.dump_one_paca> c000000000082b38: 4b ff de d8 b c000000000080a10 <.xmon_core+0x560> c000000000082b3c: 3d 22 00 0b addis r9,r2,11 c000000000082b40: 39 29 6a 30 addi r9,r9,27184 c000000000082b44: e9 29 01 38 ld r9,312(r9) c000000000082b48: e9 49 00 00 ld r10,0(r9) c000000000082b4c: f8 41 00 28 std r2,40(r1) c000000000082b50: 7d 49 03 a6 mtctr r10 c000000000082b54: e8 49 00 08 ld r2,8(r9) c000000000082b58: 4e 80 04 21 bctrl c000000000082b5c: e8 41 00 28 ld r2,40(r1) c000000000082b60: 4b ff de b0 b c000000000080a10 <.xmon_core+0x560> c000000000082b64: ea 69 25 f0 ld r19,9712(r9) c000000000082b68: 41 9d f6 34 bgt+ cr7,c00000000008219c <.xmon_core+0x1cec> c000000000082b6c: 4b ff f6 f4 b c000000000082260 <.xmon_core+0x1db0> c000000000082b70: 39 3a 44 e8 addi r9,r26,17640 c000000000082b74: 7c 83 23 78 mr r3,r4 c000000000082b78: e8 a9 00 42 lwa r5,64(r9) c000000000082b7c: 38 81 01 28 addi r4,r1,296 c000000000082b80: 4b ff 98 41 bl c00000000007c3c0 <.mread> c000000000082b84: e8 9c 25 f0 ld r4,9712(r28) c000000000082b88: f8 61 01 60 std r3,352(r1) c000000000082b8c: 4b ff e5 e8 b c000000000081174 <.xmon_core+0xcc4> c000000000082b90: 4b ff c0 11 bl c00000000007eba0 <.dump_log_buf> c000000000082b94: 4b ff de 7c b c000000000080a10 <.xmon_core+0x560> c000000000082b98: e8 9c 25 f0 ld r4,9712(r28) c000000000082b9c: 7c 94 22 14 add r4,r20,r4 c000000000082ba0: f8 9c 25 f0 std r4,9712(r28) c000000000082ba4: 4b ff e5 c4 b c000000000081168 <.xmon_core+0xcb8> c000000000082ba8: 7f 44 07 b4 extsw r4,r26 c000000000082bac: 4b ff e4 28 b c000000000080fd4 <.xmon_core+0xb24> c000000000082bb0: 38 63 26 40 addi r3,r3,9792 c000000000082bb4: 4b ff f1 5c b c000000000081d10 <.xmon_core+0x1860> c000000000082bb8: e9 5c 25 f0 ld r10,9712(r28) c000000000082bbc: 39 20 00 10 li r9,16 c000000000082bc0: 3b 20 00 04 li r25,4 c000000000082bc4: 4b ff f9 74 b c000000000082538 <.xmon_core+0x2088> c000000000082bc8: 3c 62 ff d4 addis r3,r2,-44 c000000000082bcc: 38 63 97 68 addi r3,r3,-26776 c000000000082bd0: 48 00 0c 71 bl c000000000083840 <.xmon_printf> c000000000082bd4: 60 00 00 00 nop c000000000082bd8: 4b ff de 38 b c000000000080a10 <.xmon_core+0x560> c000000000082bdc: 7d 19 00 d0 neg r8,r25 c000000000082be0: 39 20 00 01 li r9,1 c000000000082be4: e9 5c 25 f0 ld r10,9712(r28) c000000000082be8: 3b 39 ff fc addi r25,r25,-4 c000000000082bec: 7d 28 40 30 slw r8,r9,r8 c000000000082bf0: 7c f9 00 d0 neg r7,r25 c000000000082bf4: 7d 08 07 b4 extsw r8,r8 c000000000082bf8: 7d 29 38 30 slw r9,r9,r7 c000000000082bfc: 7d 48 52 14 add r10,r8,r10 c000000000082c00: 7f 39 07 b4 extsw r25,r25 c000000000082c04: 7d 29 07 b4 extsw r9,r9 c000000000082c08: 4b ff f8 74 b c00000000008247c <.xmon_core+0x1fcc> c000000000082c0c: e8 9a 26 46 lwa r4,9796(r26) c000000000082c10: e8 7a 66 b0 ld r3,26288(r26) c000000000082c14: e8 ba 66 b8 ld r5,26296(r26) c000000000082c18: 4b fc c7 dd bl c00000000004f3f4 <.memset> c000000000082c1c: 60 00 00 00 nop c000000000082c20: 4b ff dd f0 b c000000000080a10 <.xmon_core+0x560> c000000000082c24: e8 7a 66 b0 ld r3,26288(r26) c000000000082c28: e8 9a 26 48 ld r4,9800(r26) c000000000082c2c: e8 ba 66 b8 ld r5,26296(r26) c000000000082c30: 4b fc c8 c1 bl c00000000004f4f0 <.memmove> c000000000082c34: 60 00 00 00 nop c000000000082c38: 4b ff dd d8 b c000000000080a10 <.xmon_core+0x560> c000000000082c3c: 39 20 00 01 li r9,1 c000000000082c40: 91 2a 00 40 stw r9,64(r10) c000000000082c44: 4b ff e4 dc b c000000000081120 <.xmon_core+0xc70> c000000000082c48: 2f 83 00 00 cmpwi cr7,r3,0 c000000000082c4c: 40 9c db 70 bge+ cr7,c0000000000807bc <.xmon_core+0x30c> c000000000082c50: 81 5f 00 08 lwz r10,8(r31) c000000000082c54: 3d 20 fc 00 lis r9,-1024 c000000000082c58: 61 29 07 fe ori r9,r9,2046 c000000000082c5c: 7d 4a 48 38 and r10,r10,r9 c000000000082c60: 6d 49 4c 00 xoris r9,r10,19456 c000000000082c64: 2f 89 00 24 cmpwi cr7,r9,36 c000000000082c68: 41 9e 03 8c beq- cr7,c000000000082ff4 <.xmon_core+0x2b44> c000000000082c6c: 3c 82 ff d4 addis r4,r2,-44 c000000000082c70: 38 84 8a 98 addi r4,r4,-30056 c000000000082c74: 3c 62 ff d4 addis r3,r2,-44 c000000000082c78: 38 63 91 f8 addi r3,r3,-28168 c000000000082c7c: 48 00 0b c5 bl c000000000083840 <.xmon_printf> c000000000082c80: 60 00 00 00 nop c000000000082c84: 4b ff db 38 b c0000000000807bc <.xmon_core+0x30c> c000000000082c88: 3d 22 ff b3 addis r9,r2,-77 c000000000082c8c: 38 80 08 00 li r4,2048 c000000000082c90: 39 29 19 60 addi r9,r9,6496 c000000000082c94: e8 69 00 00 ld r3,0(r9) c000000000082c98: 48 39 26 59 bl c0000000004152f0 <.__bitmap_weight> c000000000082c9c: 60 00 00 00 nop c000000000082ca0: e9 41 01 78 ld r10,376(r1) c000000000082ca4: 7c 7e 1b 78 mr r30,r3 c000000000082ca8: 91 5d 66 54 stw r10,26196(r29) c000000000082cac: 7c 00 04 ac sync c000000000082cb0: 2f 83 00 01 cmpwi cr7,r3,1 c000000000082cb4: 40 9d 00 3c ble- cr7,c000000000082cf0 <.xmon_core+0x2840> c000000000082cb8: 3f e0 05 f5 lis r31,1525 c000000000082cbc: 4b fb 55 b5 bl c000000000038270 <.smp_send_debugger_break> c000000000082cc0: 60 00 00 00 nop c000000000082cc4: 63 ff e1 00 ori r31,r31,57600 c000000000082cc8: 3b bd 24 e8 addi r29,r29,9448 c000000000082ccc: 48 00 00 0c b c000000000082cd8 <.xmon_core+0x2828> c000000000082cd0: 37 ff ff ff addic. r31,r31,-1 c000000000082cd4: 41 82 00 1c beq- c000000000082cf0 <.xmon_core+0x2840> c000000000082cd8: 7f a3 eb 78 mr r3,r29 c000000000082cdc: 38 80 08 00 li r4,2048 c000000000082ce0: 48 39 26 11 bl c0000000004152f0 <.__bitmap_weight> c000000000082ce4: 60 00 00 00 nop c000000000082ce8: 7f 83 f0 40 cmplw cr7,r3,r30 c000000000082cec: 41 9c ff e4 blt+ cr7,c000000000082cd0 <.xmon_core+0x2820> c000000000082cf0: 3f e2 00 0f addis r31,r2,15 c000000000082cf4: 3f 42 ff d4 addis r26,r2,-44 c000000000082cf8: 3b ff 3e 10 addi r31,r31,15888 c000000000082cfc: 3f 62 ff ed addis r27,r2,-19 c000000000082d00: 7f fd fb 78 mr r29,r31 c000000000082d04: 3b 5a 8b 78 addi r26,r26,-29832 c000000000082d08: 3b ff 00 08 addi r31,r31,8 c000000000082d0c: 3b dd 20 08 addi r30,r29,8200 c000000000082d10: 48 00 00 1c b c000000000082d2c <.xmon_core+0x287c> c000000000082d14: 60 00 00 00 nop c000000000082d18: 60 00 00 00 nop c000000000082d1c: 60 00 00 00 nop c000000000082d20: 3b ff 00 20 addi r31,r31,32 c000000000082d24: 7f bf f0 00 cmpd cr7,r31,r30 c000000000082d28: 41 9e 00 4c beq- cr7,c000000000082d74 <.xmon_core+0x28c4> c000000000082d2c: 81 3f 00 14 lwz r9,20(r31) c000000000082d30: 71 29 00 0a andi. r9,r9,10 c000000000082d34: 2f 89 00 08 cmpwi cr7,r9,8 c000000000082d38: 40 9e ff e8 bne+ cr7,c000000000082d20 <.xmon_core+0x2870> c000000000082d3c: e8 7f 00 00 ld r3,0(r31) c000000000082d40: 38 81 01 60 addi r4,r1,352 c000000000082d44: 38 a0 00 04 li r5,4 c000000000082d48: 4b ff 96 79 bl c00000000007c3c0 <.mread> c000000000082d4c: 2f 83 00 04 cmpwi cr7,r3,4 c000000000082d50: 41 9e 00 e0 beq- cr7,c000000000082e30 <.xmon_core+0x2980> c000000000082d54: e9 3f 00 00 ld r9,0(r31) c000000000082d58: 7c 00 48 6c dcbst 0,r9 c000000000082d5c: 7c 00 04 ac sync c000000000082d60: 7c 00 4f ac icbi 0,r9 c000000000082d64: 4c 00 01 2c isync c000000000082d68: 3b ff 00 20 addi r31,r31,32 c000000000082d6c: 7f bf f0 00 cmpd cr7,r31,r30 c000000000082d70: 40 9e ff bc bne+ cr7,c000000000082d2c <.xmon_core+0x287c> c000000000082d74: 3c 62 ff d3 addis r3,r2,-45 c000000000082d78: 38 63 c5 c8 addi r3,r3,-14904 c000000000082d7c: 4b fa 38 85 bl c000000000026600 <.rtas_token> c000000000082d80: 60 00 00 00 nop c000000000082d84: 78 63 00 20 clrldi r3,r3,32 c000000000082d88: 2f 83 ff ff cmpwi cr7,r3,-1 c000000000082d8c: 90 7d 66 58 stw r3,26200(r29) c000000000082d90: 41 9e 00 48 beq- cr7,c000000000082dd8 <.xmon_core+0x2928> c000000000082d94: 3c 60 40 00 lis r3,16384 c000000000082d98: 39 5d 66 70 addi r10,r29,26224 c000000000082d9c: 78 63 07 c6 rldicr r3,r3,32,31 c000000000082da0: 39 00 00 03 li r8,3 c000000000082da4: 60 63 66 58 ori r3,r3,26200 c000000000082da8: 39 20 00 00 li r9,0 c000000000082dac: 91 1d 66 5c stw r8,26204(r29) c000000000082db0: f9 5d 66 a8 std r10,26280(r29) c000000000082db4: 39 00 00 01 li r8,1 c000000000082db8: 39 40 23 28 li r10,9000 c000000000082dbc: 7c 7d 1a 14 add r3,r29,r3 c000000000082dc0: 91 1d 66 60 stw r8,26208(r29) c000000000082dc4: 91 5d 66 64 stw r10,26212(r29) c000000000082dc8: 91 3d 66 68 stw r9,26216(r29) c000000000082dcc: 91 3d 66 6c stw r9,26220(r29) c000000000082dd0: 4b f8 77 2d bl c00000000000a4fc <.enter_rtas> c000000000082dd4: 60 00 00 00 nop c000000000082dd8: e8 c1 01 70 ld r6,368(r1) c000000000082ddc: 2f a6 00 00 cmpdi cr7,r6,0 c000000000082de0: 41 9e 01 bc beq- cr7,c000000000082f9c <.xmon_core+0x2aec> c000000000082de4: e9 01 02 a0 ld r8,672(r1) c000000000082de8: 3d 22 ff f7 addis r9,r2,-9 c000000000082dec: 38 80 00 01 li r4,1 c000000000082df0: 38 c9 b4 68 addi r6,r9,-19352 c000000000082df4: 38 a0 00 00 li r5,0 c000000000082df8: e8 68 01 00 ld r3,256(r8) c000000000082dfc: 4b ff 97 65 bl c00000000007c560 <.generic_inst_dump> c000000000082e00: 3c 62 ff d4 addis r3,r2,-44 c000000000082e04: 38 63 8b a0 addi r3,r3,-29792 c000000000082e08: 48 00 0a 39 bl c000000000083840 <.xmon_printf> c000000000082e0c: 60 00 00 00 nop c000000000082e10: 7c 00 04 ac sync c000000000082e14: 3d 22 00 0f addis r9,r2,15 c000000000082e18: 39 40 00 01 li r10,1 c000000000082e1c: 39 29 3e 10 addi r9,r9,15888 c000000000082e20: 91 49 66 50 stw r10,26192(r9) c000000000082e24: 3d 22 00 09 addis r9,r2,9 c000000000082e28: e9 29 2f 00 ld r9,12032(r9) c000000000082e2c: 4b ff d8 a0 b c0000000000806cc <.xmon_core+0x21c> c000000000082e30: 81 3b 44 e8 lwz r9,17640(r27) c000000000082e34: 81 41 01 60 lwz r10,352(r1) c000000000082e38: 7f 8a 48 00 cmpw cr7,r10,r9 c000000000082e3c: 40 9e ff 18 bne+ cr7,c000000000082d54 <.xmon_core+0x28a4> c000000000082e40: e8 7f 00 00 ld r3,0(r31) c000000000082e44: 38 9f 00 08 addi r4,r31,8 c000000000082e48: 38 a0 00 04 li r5,4 c000000000082e4c: 4b ff 9d d5 bl c00000000007cc20 <.mwrite> c000000000082e50: 2f 83 00 04 cmpwi cr7,r3,4 c000000000082e54: 41 9e ff 00 beq+ cr7,c000000000082d54 <.xmon_core+0x28a4> c000000000082e58: e8 9f 00 00 ld r4,0(r31) c000000000082e5c: 7f 43 d3 78 mr r3,r26 c000000000082e60: 48 00 09 e1 bl c000000000083840 <.xmon_printf> c000000000082e64: 60 00 00 00 nop c000000000082e68: 4b ff fe b8 b c000000000082d20 <.xmon_core+0x2870> c000000000082e6c: 7f 96 c8 40 cmplw cr7,r22,r25 c000000000082e70: 40 9c db a0 bge+ cr7,c000000000080a10 <.xmon_core+0x560> c000000000082e74: 3c 62 ff d4 addis r3,r2,-44 c000000000082e78: 7f 24 cb 78 mr r4,r25 c000000000082e7c: 38 63 8b e8 addi r3,r3,-29720 c000000000082e80: 48 00 09 c1 bl c000000000083840 <.xmon_printf> c000000000082e84: 60 00 00 00 nop c000000000082e88: 4b ff db 88 b c000000000080a10 <.xmon_core+0x560> c000000000082e8c: e9 01 01 78 ld r8,376(r1) c000000000082e90: 81 4a 66 54 lwz r10,26196(r10) c000000000082e94: 80 c1 01 90 lwz r6,400(r1) c000000000082e98: 7d 4a 42 78 xor r10,r10,r8 c000000000082e9c: 39 00 00 01 li r8,1 c000000000082ea0: 7d 4a 00 34 cntlzw r10,r10 c000000000082ea4: 7d 08 30 36 sld r8,r8,r6 c000000000082ea8: f9 01 01 80 std r8,384(r1) c000000000082eac: 55 4a d9 7e rlwinm r10,r10,27,5,31 c000000000082eb0: 69 4a 00 01 xori r10,r10,1 c000000000082eb4: 7d 5c 07 b4 extsw r28,r10 c000000000082eb8: 4b ff d8 14 b c0000000000806cc <.xmon_core+0x21c> c000000000082ebc: 38 61 01 28 addi r3,r1,296 c000000000082ec0: 48 00 09 81 bl c000000000083840 <.xmon_printf> c000000000082ec4: 60 00 00 00 nop c000000000082ec8: 4b ff db 48 b c000000000080a10 <.xmon_core+0x560> /* 859 case 's': 860 if (do_spu_cmd() == 0) 861 break; 862 if (do_step(excp)) 863 return cmd; 864 break; */ c000000000082ecc: e8 6f 01 00 ld r3,256(r15) c000000000082ed0: 38 81 01 60 addi r4,r1,352 c000000000082ed4: 38 a0 00 04 li r5,4 c000000000082ed8: 4b ff 94 e9 bl c00000000007c3c0 <.mread> c000000000082edc: 2f 83 00 04 cmpwi cr7,r3,4 c000000000082ee0: 41 9e 01 20 beq- cr7,c000000000083000 <.xmon_core+0x2b50> c000000000082ee4: e9 21 02 a0 ld r9,672(r1) c000000000082ee8: e9 09 01 08 ld r8,264(r9) c000000000082eec: 4b ff de 98 b c000000000080d84 <.xmon_core+0x8d4> /* 2096 else 2097 dump_one_paca(xmon_owner); 2098 } */ c000000000082ef0: e8 7c 66 56 lwa r3,26196(r28) c000000000082ef4: 4b ff 8c bd bl c00000000007bbb0 <.dump_one_paca> c000000000082ef8: 4b ff db 18 b c000000000080a10 <.xmon_core+0x560> /* 417 printf("WARNING: exception is not recoverable, " 418 "can't continue\n"); */ c000000000082efc: 3c 62 ff d4 addis r3,r2,-44 c000000000082f00: 38 63 8b 40 addi r3,r3,-29888 c000000000082f04: 48 00 09 3d bl c000000000083840 <.xmon_printf> c000000000082f08: 60 00 00 00 nop c000000000082f0c: 4b ff fa a4 b c0000000000829b0 <.xmon_core+0x2500> /* 668 return NULL; 669 } */ c000000000082f10: 39 00 00 00 li r8,0 c000000000082f14: f9 01 01 70 std r8,368(r1) c000000000082f18: 4b ff da 08 b c000000000080920 <.xmon_core+0x470> /* 2068 static void dump_all_pacas(void) 2069 { 2070 int cpu; 2071 2072 if (num_possible_cpus() == 0) { 2073 printf("No possible cpus, use 'dp #' to dump individual cpus\n"); 2074 return; 2075 } 2077 for_each_possible_cpu(cpu) 2078 dump_one_paca(cpu); 2079 } */ c000000000082f1c: 3d 22 ff b3 addis r9,r2,-77 c000000000082f20: 38 80 08 00 li r4,2048 c000000000082f24: 39 29 19 68 addi r9,r9,6504 c000000000082f28: 3b 80 ff ff li r28,-1 c000000000082f2c: 3f 22 00 09 addis r25,r2,9 c000000000082f30: eb 49 00 00 ld r26,0(r9) c000000000082f34: 7f 43 d3 78 mr r3,r26 c000000000082f38: 48 39 23 b9 bl c0000000004152f0 <.__bitmap_weight> c000000000082f3c: 60 00 00 00 nop c000000000082f40: 2f a3 00 00 cmpdi cr7,r3,0 c000000000082f44: 40 9e 00 14 bne- cr7,c000000000082f58 <.xmon_core+0x2aa8> c000000000082f48: 48 00 00 e4 b c00000000008302c <.xmon_core+0x2b7c> c000000000082f4c: 60 00 00 00 nop c000000000082f50: 7f 83 e3 78 mr r3,r28 c000000000082f54: 4b ff 8c 5d bl c00000000007bbb0 <.dump_one_paca> c000000000082f58: 38 bc 00 01 addi r5,r28,1 c000000000082f5c: 7f 43 d3 78 mr r3,r26 c000000000082f60: 38 80 08 00 li r4,2048 c000000000082f64: 7c a5 07 b4 extsw r5,r5 c000000000082f68: 48 39 51 d9 bl c000000000418140 <.find_next_bit> c000000000082f6c: 60 00 00 00 nop c000000000082f70: 39 39 33 b8 addi r9,r25,13240 c000000000082f74: 81 29 00 00 lwz r9,0(r9) c000000000082f78: 7c 7c 07 b4 extsw r28,r3 c000000000082f7c: 7f 89 e0 00 cmpw cr7,r9,r28 c000000000082f80: 41 9d ff d0 bgt+ cr7,c000000000082f50 <.xmon_core+0x2aa0> c000000000082f84: 4b ff da 8c b c000000000080a10 <.xmon_core+0x560> c000000000082f88: 3c 62 ff d4 addis r3,r2,-44 c000000000082f8c: 38 63 8c 38 addi r3,r3,-29640 c000000000082f90: 48 00 08 b1 bl c000000000083840 <.xmon_printf> c000000000082f94: 60 00 00 00 nop c000000000082f98: 4b ff da 78 b c000000000080a10 <.xmon_core+0x560> c000000000082f9c: e8 e1 02 a0 ld r7,672(r1) c000000000082fa0: e9 27 01 40 ld r9,320(r7) c000000000082fa4: 79 29 06 e4 rldicr r9,r9,0,59 c000000000082fa8: 2f a9 0d 00 cmpdi cr7,r9,3328 c000000000082fac: 40 9e fe 54 bne+ cr7,c000000000082e00 <.xmon_core+0x2950> c000000000082fb0: 4b ff fe 34 b c000000000082de4 <.xmon_core+0x2934> c000000000082fb4: 3c 62 ff d9 addis r3,r2,-39 c000000000082fb8: 38 63 ae e8 addi r3,r3,-20760 c000000000082fbc: 48 00 08 85 bl c000000000083840 <.xmon_printf> c000000000082fc0: 60 00 00 00 nop c000000000082fc4: 4b ff fa b8 b c000000000082a7c <.xmon_core+0x25cc> c000000000082fc8: 3c 62 ff da addis r3,r2,-38 c000000000082fcc: 38 63 35 20 addi r3,r3,13600 c000000000082fd0: 48 00 08 71 bl c000000000083840 <.xmon_printf> c000000000082fd4: 60 00 00 00 nop c000000000082fd8: e9 3c 66 fe lwa r9,26364(r28) c000000000082fdc: 4b ff fa 98 b c000000000082a74 <.xmon_core+0x25c4> c000000000082fe0: 38 80 ff ff li r4,-1 c000000000082fe4: 78 84 04 20 clrldi r4,r4,48 c000000000082fe8: 4b ff df ec b c000000000080fd4 <.xmon_core+0xb24> c000000000082fec: 3b 20 00 00 li r25,0 c000000000082ff0: 4b ff e2 14 b c000000000081204 <.xmon_core+0xd54> c000000000082ff4: 3c 82 ff d4 addis r4,r2,-44 c000000000082ff8: 38 84 8a 90 addi r4,r4,-30064 c000000000082ffc: 4b ff fc 78 b c000000000082c74 <.xmon_core+0x27c4> /* static int do_step(struct pt_regs *regs) */ /* { */ c000000000083000: 80 81 01 60 lwz r4,352(r1) c000000000083004: 7d e3 7b 78 mr r3,r15 c000000000083008: 48 79 a8 19 bl c00000000081d820 <.emulate_step> c00000000008300c: 60 00 00 00 nop c000000000083010: 2f 83 00 00 cmpwi cr7,r3,0 c000000000083014: 41 9c 00 dc blt- cr7,c0000000000830f0 <.xmon_core+0x2c40> c000000000083018: 2f a3 00 00 cmpdi cr7,r3,0 c00000000008301c: 40 9e 00 80 bne- cr7,c00000000008309c <.xmon_core+0x2bec> c000000000083020: e8 e1 02 a0 ld r7,672(r1) c000000000083024: e9 07 01 08 ld r8,264(r7) c000000000083028: 4b ff dd 5c b c000000000080d84 <.xmon_core+0x8d4> /* } */ /* 3269 2073 printf("No possible cpus, use 'dp #' to dump individual cpus\n"); 3270 2074 return; */ c00000000008302c: 3c 62 ff d4 addis r3,r2,-44 c000000000083030: 38 63 90 e0 addi r3,r3,-28448 c000000000083034: 48 00 08 0d bl c000000000083840 <.xmon_printf> c000000000083038: 60 00 00 00 nop c00000000008303c: 4b ff d9 d4 b c000000000080a10 <.xmon_core+0x560> /* 377 if (cpumask_test_cpu(cpu, &cpus_in_xmon)) { 378 get_output_lock(); 379 excprint(regs); 380 printf("cpu 0x%x: Exception %lx %s in xmon, " 381 "returning to main loop\n", 382 cpu, regs->trap, getvecname(TRAP(regs))); 383 release_output_lock(); 384 longjmp(xmon_fault_jmp[cpu], 1); 385 } */ c000000000083040: 4b ff 88 21 bl c00000000007b860 <.get_output_lock> c000000000083044: e8 61 02 a0 ld r3,672(r1) c000000000083048: 4b ff c0 19 bl c00000000007f060 <.excprint> c00000000008304c: e9 21 02 a0 ld r9,672(r1) c000000000083050: eb a9 01 40 ld r29,320(r9) c000000000083054: 7b a3 06 e4 rldicr r3,r29,0,59 c000000000083058: 4b ff 88 a9 bl c00000000007b900 <.getvecname> c00000000008305c: e8 81 01 78 ld r4,376(r1) c000000000083060: 7f a5 eb 78 mr r5,r29 c000000000083064: 7c 66 1b 78 mr r6,r3 c000000000083068: 3c 62 ff d4 addis r3,r2,-44 c00000000008306c: 38 63 8a a8 addi r3,r3,-30040 c000000000083070: 48 00 07 d1 bl c000000000083840 <.xmon_printf> c000000000083074: 60 00 00 00 nop c000000000083078: e9 41 01 78 ld r10,376(r1) c00000000008307c: 38 80 00 01 li r4,1 c000000000083080: 79 49 1f 24 rldicr r9,r10,3,60 c000000000083084: 7f de 4a 14 add r30,r30,r9 c000000000083088: 39 20 00 00 li r9,0 c00000000008308c: e8 7e 26 50 ld r3,9808(r30) c000000000083090: 91 3f 3e 10 stw r9,15888(r31) c000000000083094: 4b f9 e5 c9 bl c00000000002165c <.longjmp> c000000000083098: 60 00 00 00 nop /* 946 regs->trap = 0xd00 | (regs->trap & 1); 947 printf("stepped to "); 948 xmon_print_symbol(regs->nip, " ", "\n"); 949 ppc_inst_dump(regs->nip, 1, 0); 950 return 0; */ c00000000008309c: e9 2f 01 40 ld r9,320(r15) c0000000000830a0: 3c 62 ff d4 addis r3,r2,-44 c0000000000830a4: 38 63 92 20 addi r3,r3,-28128 c0000000000830a8: 79 29 07 e0 clrldi r9,r9,63 c0000000000830ac: 61 29 0d 00 ori r9,r9,3328 c0000000000830b0: f9 2f 01 40 std r9,320(r15) c0000000000830b4: 48 00 07 8d bl c000000000083840 <.xmon_printf> c0000000000830b8: 60 00 00 00 nop c0000000000830bc: e8 6f 01 00 ld r3,256(r15) c0000000000830c0: 3c 82 ff d8 addis r4,r2,-40 c0000000000830c4: 3c a2 ff d5 addis r5,r2,-43 c0000000000830c8: 38 84 a6 70 addi r4,r4,-22928 c0000000000830cc: 38 a5 0e 68 addi r5,r5,3688 c0000000000830d0: 4b ff 91 91 bl c00000000007c260 <.xmon_print_symbol> c0000000000830d4: 3d 22 ff f7 addis r9,r2,-9 c0000000000830d8: e8 6f 01 00 ld r3,256(r15) c0000000000830dc: 38 80 00 01 li r4,1 c0000000000830e0: 38 c9 b4 68 addi r6,r9,-19352 c0000000000830e4: 38 a0 00 00 li r5,0 c0000000000830e8: 4b ff 94 79 bl c00000000007c560 <.generic_inst_dump> c0000000000830ec: 4b ff d9 24 b c000000000080a10 <.xmon_core+0x560> /* 941 printf("Couldn't single-step %s instruction\n", 942 (IS_RFID(instr)? "rfid": "mtmsrd")); 943 return 0; */ c0000000000830f0: 3d 20 fc 00 lis r9,-1024 c0000000000830f4: 81 41 01 60 lwz r10,352(r1) c0000000000830f8: 61 29 07 fe ori r9,r9,2046 c0000000000830fc: 7d 4a 48 38 and r10,r10,r9 c000000000083100: 6d 49 4c 00 xoris r9,r10,19456 c000000000083104: 2f 89 00 24 cmpwi cr7,r9,36 c000000000083108: 41 9e 00 20 beq- cr7,c000000000083128 <.xmon_core+0x2c78> c00000000008310c: 3c 82 ff d4 addis r4,r2,-44 c000000000083110: 38 84 8a 98 addi r4,r4,-30056 c000000000083114: 3c 62 ff d4 addis r3,r2,-44 c000000000083118: 38 63 91 f8 addi r3,r3,-28168 c00000000008311c: 48 00 07 25 bl c000000000083840 <.xmon_printf> c000000000083120: 60 00 00 00 nop c000000000083124: 4b ff d8 ec b c000000000080a10 <.xmon_core+0x560> c000000000083128: 3c 82 ff d4 addis r4,r2,-44 c00000000008312c: 38 84 8a 90 addi r4,r4,-30064 c000000000083130: 4b ff ff e4 b c000000000083114 <.xmon_core+0x2c64> c000000000083134: 60 00 00 00 nop c000000000083138: 60 00 00 00 nop c00000000008313c: 60 00 00 00 nop On 07/26/2013 12:11 PM, Chen Gang wrote: > On 07/24/2013 08:38 AM, Chen Gang wrote: >> On 07/23/2013 09:58 PM, Michael Ellerman wrote: >>> On Mon, Jul 22, 2013 at 03:02:53PM +0800, Chen Gang wrote: >>>> Hello Maintainers: >>>> >>>> With allmodconfig and EXTRA_CFLAGS=-W", it reports warnings below: >>> >>>> >>>> arch/powerpc/xmon/xmon.c:3027:6: warning: variable ‘i’ might be clobbered by ‘longjmp’ or ‘vfork’ [-Wclobbered] >>>> arch/powerpc/xmon/xmon.c:3068:6: warning: variable ‘i’ might be clobbered by ‘longjmp’ or ‘vfork’ [-Wclobbered] >>> >>> In both these cases we are inside the body of a for loop and we do a >>> if (setjmp) / else block. Although looking at the source the value of i >>> is not modified by the setjmp, I guess it's possible that the compiler >>> might reorder the increment of i inside the setjmp and loose the value >>> when we longjmp. >>> >> >> I should continue to confirm the details based on your valuable >> information, thanks. >> >> > > > For stop_spus() and restart_spus(), at least now, the related warnings > are not issue: the variable 'i' is stored in stack "120(r1)". > > The related warning: > > arch/powerpc/xmon/xmon.c:3027:6: warning: variable ‘i’ might be clobbered by ‘longjmp’ or ‘vfork’ [-Wclobbered] > arch/powerpc/xmon/xmon.c:3068:6: warning: variable ‘i’ might be clobbered by ‘longjmp’ or ‘vfork’ [-Wclobbered] > > The related source code: > > 3024 static void stop_spus(void) > 3025 { > 3026 struct spu *spu; > 3027 int i; > 3028 u64 tmp; > 3029 > 3030 for (i = 0; i < XMON_NUM_SPUS; i++) { /* XMON_NUM_SPUS == 16 */ > 3031 if (!spu_info[i].spu) > 3032 continue; > 3033 > 3034 if (setjmp(bus_error_jmp) == 0) { > 3035 catch_memory_errors = 1; > 3036 sync(); > 3037 > 3038 spu = spu_info[i].spu; > 3039 > 3040 spu_info[i].saved_spu_runcntl_RW = > 3041 in_be32(&spu->problem->spu_runcntl_RW); > 3042 > 3043 tmp = spu_mfc_sr1_get(spu); > 3044 spu_info[i].saved_mfc_sr1_RW = tmp; > 3045 > 3046 tmp &= ~MFC_STATE1_MASTER_RUN_CONTROL_MASK; > 3047 spu_mfc_sr1_set(spu, tmp); > 3048 > 3049 sync(); > 3050 __delay(200); > 3051 > 3052 spu_info[i].stopped_ok = 1; > 3053 > 3054 printf("Stopped spu %.2d (was %s)\n", i, > 3055 spu_info[i].saved_spu_runcntl_RW ? > 3056 "running" : "stopped"); > 3057 } else { > 3058 catch_memory_errors = 0; > 3059 printf("*** Error stopping spu %.2d\n", i); > 3060 } > 3061 catch_memory_errors = 0; > 3062 } > 3063 } > 3064 > > > > The related disassembly code: > > "make ARCH=powerpc EXTRA_CFLAGS=-W" > "powerpc64-linux-gnu-objdump -d vmlinux.o > vmlinux.S" > "gcc version 4.7.1 20120606 (Red Hat 4.7.1-0.1.20120606) (GCC)" > "GNU objdump version 2.23.51.0.3-1.fc16 20120918" > > c00000000007cfd0 <.stop_spus>: > /* { */ > c00000000007cfd0: 7c 08 02 a6 mflr r0 > c00000000007cfd4: fb c1 ff f0 std r30,-16(r1) > c00000000007cfd8: fb e1 ff f8 std r31,-8(r1) > c00000000007cfdc: 3d 22 00 0f addis r9,r2,15 > c00000000007cfe0: 39 29 3e 10 addi r9,r9,15888 > c00000000007cfe4: 3d 02 ff d4 addis r8,r2,-44 > c00000000007cfe8: 39 29 21 50 addi r9,r9,8528 > c00000000007cfec: 3d 42 ff d4 addis r10,r2,-44 > c00000000007cff0: 39 08 83 f8 addi r8,r8,-31752 > c00000000007cff4: 39 4a 83 d8 addi r10,r10,-31784 > c00000000007cff8: f8 01 00 10 std r0,16(r1) > c00000000007cffc: f8 21 ff 51 stdu r1,-176(r1) > c00000000007d000: f9 21 00 70 std r9,112(r1) > c00000000007d004: 39 20 00 00 li r9,0 > c00000000007d008: f9 21 00 78 std r9,120(r1) ; i = 0; > c00000000007d00c: f9 01 00 88 std r8,136(r1) > c00000000007d010: f9 41 00 90 std r10,144(r1) > c00000000007d014: 48 00 01 28 b c00000000007d13c <.stop_spus+0x16c> > c00000000007d018: 60 00 00 00 nop > c00000000007d01c: 60 00 00 00 nop > > > /* if (setjmp(bus_error_jmp) == 0) { */ > c00000000007d020: 3d 22 00 0f addis r9,r2,15 > c00000000007d024: 39 40 00 01 li r10,1 > c00000000007d028: 39 29 3e 10 addi r9,r9,15888 > c00000000007d02c: 91 49 20 c0 stw r10,8384(r9) > c00000000007d030: 7c 00 04 ac sync > c00000000007d034: 4c 00 01 2c isync > c00000000007d038: e9 01 00 80 ld r8,128(r1) > c00000000007d03c: eb e8 00 00 ld r31,0(r8) > c00000000007d040: e9 3f 00 20 ld r9,32(r31) > c00000000007d044: 7c 00 04 ac sync > c00000000007d048: 81 29 40 1c lwz r9,16412(r9) > c00000000007d04c: 0c 09 00 00 twi 0,r9,0 > c00000000007d050: 4c 00 01 2c isync > c00000000007d054: 91 28 00 10 stw r9,16(r8) > c00000000007d058: 3d 22 00 0f addis r9,r2,15 > c00000000007d05c: 3b c9 f5 e8 addi r30,r9,-2584 > c00000000007d060: 7f e3 fb 78 mr r3,r31 > c00000000007d064: e9 3e 00 00 ld r9,0(r30) > c00000000007d068: e9 29 00 60 ld r9,96(r9) > c00000000007d06c: e9 49 00 00 ld r10,0(r9) > c00000000007d070: f8 41 00 28 std r2,40(r1) > c00000000007d074: 7d 49 03 a6 mtctr r10 > c00000000007d078: e8 49 00 08 ld r2,8(r9) > c00000000007d07c: 4e 80 04 21 bctrl > c00000000007d080: e8 41 00 28 ld r2,40(r1) > c00000000007d084: e9 01 00 80 ld r8,128(r1) > c00000000007d088: e9 3e 00 00 ld r9,0(r30) > c00000000007d08c: f8 68 00 08 std r3,8(r8) > c00000000007d090: 7c 64 1b 78 mr r4,r3 > c00000000007d094: 78 84 d0 42 rldicl r4,r4,58,1 > c00000000007d098: 7f e3 fb 78 mr r3,r31 > c00000000007d09c: 78 84 30 00 rotldi r4,r4,6 > c00000000007d0a0: e9 29 00 58 ld r9,88(r9) > c00000000007d0a4: e9 49 00 00 ld r10,0(r9) > c00000000007d0a8: f8 41 00 28 std r2,40(r1) > c00000000007d0ac: 7d 49 03 a6 mtctr r10 > c00000000007d0b0: e8 49 00 08 ld r2,8(r9) > c00000000007d0b4: 4e 80 04 21 bctrl > c00000000007d0b8: e8 41 00 28 ld r2,40(r1) > c00000000007d0bc: 7c 00 04 ac sync > c00000000007d0c0: 4c 00 01 2c isync > c00000000007d0c4: 38 60 00 c8 li r3,200 > c00000000007d0c8: 4b fa 01 e9 bl c00000000001d2b0 <.__delay> ; __delay(200) > c00000000007d0cc: 60 00 00 00 nop > c00000000007d0d0: e9 01 00 80 ld r8,128(r1) > c00000000007d0d4: 39 40 00 01 li r10,1 > c00000000007d0d8: 81 28 00 10 lwz r9,16(r8) > c00000000007d0dc: 99 48 00 20 stb r10,32(r8) > c00000000007d0e0: 3d 02 ff d4 addis r8,r2,-44 > c00000000007d0e4: 38 a8 83 c8 addi r5,r8,-31800 > c00000000007d0e8: 2f 89 00 00 cmpwi cr7,r9,0 > c00000000007d0ec: 40 9e 00 0c bne- cr7,c00000000007d0f8 <.stop_spus+0x128> > c00000000007d0f0: 3d 22 ff d4 addis r9,r2,-44 > c00000000007d0f4: 38 a9 83 d0 addi r5,r9,-31792 > c00000000007d0f8: e8 61 00 90 ld r3,144(r1) > c00000000007d0fc: e8 81 00 78 ld r4,120(r1) ; 120(r1) = i > c00000000007d100: 48 00 67 41 bl c000000000083840 <.xmon_printf> > c00000000007d104: 60 00 00 00 nop > > > /* catch_memory_errors = 0; */ > c00000000007d108: 3d 22 00 0f addis r9,r2,15 > c00000000007d10c: 39 40 00 00 li r10,0 > c00000000007d110: 39 29 3e 10 addi r9,r9,15888 > c00000000007d114: 91 49 20 c0 stw r10,8384(r9) > > > /* for (i = 0; i < XMON_NUM_SPUS; i++) { */ > c00000000007d118: e9 01 00 78 ld r8,120(r1) ; 120(r1) = i; > c00000000007d11c: 39 28 00 01 addi r9,r8,1 ; i++ > c00000000007d120: 2f 89 00 10 cmpwi cr7,r9,16 ; i < XMON_NUM_SPUS > c00000000007d124: 7d 29 07 b4 extsw r9,r9 > c00000000007d128: f9 21 00 78 std r9,120(r1) ; 120(r1) = i; > c00000000007d12c: e9 21 00 70 ld r9,112(r1) ; > c00000000007d130: 39 29 00 28 addi r9,r9,40 ; 112(r1) = [i] for spu_info; > c00000000007d134: f9 21 00 70 std r9,112(r1) ; > c00000000007d138: 41 9e 00 58 beq- cr7,c00000000007d190 <.stop_spus+0x1c0> > > /* if (!spu_info[i].spu) */ > /* continue; */ > c00000000007d13c: e9 01 00 70 ld r8,112(r1) > c00000000007d140: 3d 42 00 0f addis r10,r2,15 > c00000000007d144: 38 6a 5e 18 addi r3,r10,24088 > c00000000007d148: e9 28 00 00 ld r9,0(r8) > c00000000007d14c: f9 01 00 80 std r8,128(r1) > c00000000007d150: 2f a9 00 00 cmpdi cr7,r9,0 > c00000000007d154: 41 9e ff c4 beq+ cr7,c00000000007d118 <.stop_spus+0x148> > > /* if (setjmp(bus_error_jmp) == 0) { */ > c00000000007d158: 4b fa 44 99 bl c0000000000215f0 <.setjmp> > c00000000007d15c: 60 00 00 00 nop > c00000000007d160: 2f a3 00 00 cmpdi cr7,r3,0 > c00000000007d164: e8 81 00 78 ld r4,120(r1) ; 120(r1) = i for 2nd param of printf in exception processing after setjmp. > c00000000007d168: e8 61 00 88 ld r3,136(r1) > c00000000007d16c: 41 9e fe b4 beq+ cr7,c00000000007d020 <.stop_spus+0x50> > > /* } else { */ > c00000000007d170: 3d 42 00 0f addis r10,r2,15 > c00000000007d174: 39 00 00 00 li r8,0 > c00000000007d178: 39 4a 3e 10 addi r10,r10,15888 > c00000000007d17c: 91 0a 20 c0 stw r8,8384(r10) /* catch_memory_errors = 0; */ > c00000000007d180: 48 00 66 c1 bl c000000000083840 <.xmon_printf> /* called with correct i */ > c00000000007d184: 60 00 00 00 nop > c00000000007d188: 4b ff ff 80 b c00000000007d108 <.stop_spus+0x138> > c00000000007d18c: 60 00 00 00 nop > /* } */ > > c00000000007d190: 38 21 00 b0 addi r1,r1,176 > c00000000007d194: e8 01 00 10 ld r0,16(r1) > c00000000007d198: eb c1 ff f0 ld r30,-16(r1) > c00000000007d19c: eb e1 ff f8 ld r31,-8(r1) > c00000000007d1a0: 7c 08 03 a6 mtlr r0 > c00000000007d1a4: 4e 80 00 20 blr > c00000000007d1a8: 60 00 00 00 nop > c00000000007d1ac: 60 00 00 00 nop > /* } */ > > > The related assembly code (they really save and restore 'r1'): > > _GLOBAL(setjmp) > mflr r0 > PPC_STL r0,0(r3) > PPC_STL r1,SZL(r3) > PPC_STL r2,2*SZL(r3) > mfcr r0 > PPC_STL r0,3*SZL(r3) > PPC_STL r13,4*SZL(r3) > PPC_STL r14,5*SZL(r3) > PPC_STL r15,6*SZL(r3) > PPC_STL r16,7*SZL(r3) > PPC_STL r17,8*SZL(r3) > PPC_STL r18,9*SZL(r3) > PPC_STL r19,10*SZL(r3) > PPC_STL r20,11*SZL(r3) > PPC_STL r21,12*SZL(r3) > PPC_STL r22,13*SZL(r3) > PPC_STL r23,14*SZL(r3) > PPC_STL r24,15*SZL(r3) > PPC_STL r25,16*SZL(r3) > PPC_STL r26,17*SZL(r3) > PPC_STL r27,18*SZL(r3) > PPC_STL r28,19*SZL(r3) > PPC_STL r29,20*SZL(r3) > PPC_STL r30,21*SZL(r3) > PPC_STL r31,22*SZL(r3) > li r3,0 > blr > > _GLOBAL(longjmp) > PPC_LCMPI r4,0 > bne 1f > li r4,1 > 1: PPC_LL r13,4*SZL(r3) > PPC_LL r14,5*SZL(r3) > PPC_LL r15,6*SZL(r3) > PPC_LL r16,7*SZL(r3) > PPC_LL r17,8*SZL(r3) > PPC_LL r18,9*SZL(r3) > PPC_LL r19,10*SZL(r3) > PPC_LL r20,11*SZL(r3) > PPC_LL r21,12*SZL(r3) > PPC_LL r22,13*SZL(r3) > PPC_LL r23,14*SZL(r3) > PPC_LL r24,15*SZL(r3) > PPC_LL r25,16*SZL(r3) > PPC_LL r26,17*SZL(r3) > PPC_LL r27,18*SZL(r3) > PPC_LL r28,19*SZL(r3) > PPC_LL r29,20*SZL(r3) > PPC_LL r30,21*SZL(r3) > PPC_LL r31,22*SZL(r3) > PPC_LL r0,3*SZL(r3) > mtcrf 0x38,r0 > PPC_LL r0,0(r3) > PPC_LL r1,SZL(r3) > PPC_LL r2,2*SZL(r3) > mtlr r0 > mr r3,r4 > blr > > > > > The same to resetart_spus() > > > 3065 static void restart_spus(void) > 3066 { > 3067 struct spu *spu; > 3068 int i; > 3069 > 3070 for (i = 0; i < XMON_NUM_SPUS; i++) { > 3071 if (!spu_info[i].spu) > 3072 continue; > 3073 > 3074 if (!spu_info[i].stopped_ok) { > 3075 printf("*** Error, spu %d was not successfully stopped" > 3076 ", not restarting\n", i); > 3077 continue; > 3078 } > 3079 > 3080 if (setjmp(bus_error_jmp) == 0) { > 3081 catch_memory_errors = 1; > 3082 sync(); > 3083 > 3084 spu = spu_info[i].spu; > 3085 spu_mfc_sr1_set(spu, spu_info[i].saved_mfc_sr1_RW); > 3086 out_be32(&spu->problem->spu_runcntl_RW, > 3087 spu_info[i].saved_spu_runcntl_RW); > 3088 > 3089 sync(); > 3090 __delay(200); > 3091 > 3092 printf("Restarted spu %.2d\n", i); > 3093 } else { > 3094 catch_memory_errors = 0; > 3095 printf("*** Error restarting spu %.2d\n", i); > 3096 } > 3097 catch_memory_errors = 0; > 3098 } > 3099 } > 3100 > > c00000000007d1b0 <.restart_spus>: > /* { */ > c00000000007d1b0: 7c 08 02 a6 mflr r0 > c00000000007d1b4: fb e1 ff f8 std r31,-8(r1) > c00000000007d1b8: 3d 22 00 0f addis r9,r2,15 > c00000000007d1bc: 3c e2 ff d4 addis r7,r2,-44 > c00000000007d1c0: 39 29 3e 10 addi r9,r9,15888 > c00000000007d1c4: 3d 02 ff d4 addis r8,r2,-44 > c00000000007d1c8: 39 29 21 50 addi r9,r9,8528 > c00000000007d1cc: 3d 42 ff d4 addis r10,r2,-44 > c00000000007d1d0: 38 e7 84 70 addi r7,r7,-31632 > c00000000007d1d4: 39 08 84 58 addi r8,r8,-31656 > c00000000007d1d8: f8 01 00 10 std r0,16(r1) > c00000000007d1dc: 39 4a 84 18 addi r10,r10,-31720 > c00000000007d1e0: f8 21 ff 51 stdu r1,-176(r1) > c00000000007d1e4: f9 21 00 70 std r9,112(r1) > c00000000007d1e8: 39 20 00 00 li r9,0 > c00000000007d1ec: f9 21 00 78 std r9,120(r1) ; i = 0; > c00000000007d1f0: f8 e1 00 88 std r7,136(r1) > c00000000007d1f4: f9 01 00 98 std r8,152(r1) > c00000000007d1f8: f9 41 00 90 std r10,144(r1) > c00000000007d1fc: 48 00 00 34 b c00000000007d230 <.restart_spus+0x80> > > /* if (!spu_info[i].stopped_ok) { */ > /* printf(....); */ > /* continue; */ > c00000000007d200: e8 61 00 90 ld r3,144(r1) > c00000000007d204: 48 00 66 3d bl c000000000083840 <.xmon_printf> > c00000000007d208: 60 00 00 00 nop > > /* for (i = 0; i < XMON_NUM_SPUS; i++) { */ > c00000000007d20c: e9 01 00 78 ld r8,120(r1) > c00000000007d210: 39 28 00 01 addi r9,r8,1 ; i++ > c00000000007d214: 2f 89 00 10 cmpwi cr7,r9,16 ; i < XMON_NUM_SPUS > c00000000007d218: 7d 29 07 b4 extsw r9,r9 > c00000000007d21c: f9 21 00 78 std r9,120(r1) > c00000000007d220: e9 21 00 70 ld r9,112(r1) > c00000000007d224: 39 29 00 28 addi r9,r9,40 > c00000000007d228: f9 21 00 70 std r9,112(r1) > c00000000007d22c: 41 9e 01 0c beq- cr7,c00000000007d338 <.restart_spus+0x188> > > /* if (!spu_info[i].spu) */ > /* continue; */ > c00000000007d230: e9 01 00 70 ld r8,112(r1) > c00000000007d234: 3d 42 00 0f addis r10,r2,15 > c00000000007d238: e8 81 00 78 ld r4,120(r1) ; i as 2nd parameter for xmon_printf(). > c00000000007d23c: 38 6a 5e 18 addi r3,r10,24088 > c00000000007d240: e9 28 00 00 ld r9,0(r8) > c00000000007d244: f9 01 00 80 std r8,128(r1) > c00000000007d248: 2f a9 00 00 cmpdi cr7,r9,0 > c00000000007d24c: 41 9e ff c0 beq+ cr7,c00000000007d20c <.restart_spus+0x5c> > > /* if (!spu_info[i].stopped_ok) { */ > c00000000007d250: 89 28 00 20 lbz r9,32(r8) > c00000000007d254: 2f 89 00 00 cmpwi cr7,r9,0 > c00000000007d258: 41 9e ff a8 beq+ cr7,c00000000007d200 <.restart_spus+0x50> > /* } */ > > /* if (setjmp(bus_error_jmp) == 0) { */ > c00000000007d25c: 4b fa 43 95 bl c0000000000215f0 <.setjmp> > c00000000007d260: 60 00 00 00 nop > c00000000007d264: 2f a3 00 00 cmpdi cr7,r3,0 > c00000000007d268: e8 81 00 78 ld r4,120(r1) ; i as 2nd parameter for xmon_printf() after setjmp(). > c00000000007d26c: e8 61 00 88 ld r3,136(r1) > c00000000007d270: 40 9e 00 e0 bne- cr7,c00000000007d350 <.restart_spus+0x1a0> > > c00000000007d274: 3d 22 00 0f addis r9,r2,15 > c00000000007d278: 39 40 00 01 li r10,1 > c00000000007d27c: 39 29 3e 10 addi r9,r9,15888 > c00000000007d280: 91 49 20 c0 stw r10,8384(r9) > c00000000007d284: 7c 00 04 ac sync > c00000000007d288: 4c 00 01 2c isync > c00000000007d28c: 3d 02 00 0f addis r8,r2,15 > c00000000007d290: e9 41 00 80 ld r10,128(r1) > c00000000007d294: 39 28 f5 e8 addi r9,r8,-2584 > c00000000007d298: eb ea 00 00 ld r31,0(r10) > c00000000007d29c: e8 8a 00 08 ld r4,8(r10) > c00000000007d2a0: e9 29 00 00 ld r9,0(r9) > c00000000007d2a4: 7f e3 fb 78 mr r3,r31 > c00000000007d2a8: e9 29 00 58 ld r9,88(r9) > c00000000007d2ac: e9 49 00 00 ld r10,0(r9) > c00000000007d2b0: f8 41 00 28 std r2,40(r1) > c00000000007d2b4: 7d 49 03 a6 mtctr r10 > c00000000007d2b8: e8 49 00 08 ld r2,8(r9) > c00000000007d2bc: 4e 80 04 21 bctrl > c00000000007d2c0: e8 41 00 28 ld r2,40(r1) > c00000000007d2c4: e9 01 00 80 ld r8,128(r1) > c00000000007d2c8: e9 3f 00 20 ld r9,32(r31) > c00000000007d2cc: 81 48 00 10 lwz r10,16(r8) > c00000000007d2d0: 7c 00 04 ac sync > c00000000007d2d4: 91 49 40 1c stw r10,16412(r9) > c00000000007d2d8: 39 20 00 01 li r9,1 > c00000000007d2dc: 99 2d 02 74 stb r9,628(r13) > c00000000007d2e0: 7c 00 04 ac sync > c00000000007d2e4: 4c 00 01 2c isync > c00000000007d2e8: 38 60 00 c8 li r3,200 > c00000000007d2ec: 4b f9 ff c5 bl c00000000001d2b0 <.__delay> > c00000000007d2f0: 60 00 00 00 nop > c00000000007d2f4: e8 61 00 98 ld r3,152(r1) > c00000000007d2f8: e8 81 00 78 ld r4,120(r1) > c00000000007d2fc: 48 00 65 45 bl c000000000083840 <.xmon_printf> > c00000000007d300: 60 00 00 00 nop > /* } */ > > /* for (i = 0; i < XMON_NUM_SPUS; i++) { */ > c00000000007d304: e9 01 00 78 ld r8,120(r1) > c00000000007d308: 3d 22 00 0f addis r9,r2,15 > c00000000007d30c: 39 40 00 00 li r10,0 > c00000000007d310: 39 29 3e 10 addi r9,r9,15888 > c00000000007d314: 91 49 20 c0 stw r10,8384(r9) ; catch_memory_errors = 0; > c00000000007d318: 39 28 00 01 addi r9,r8,1 > c00000000007d31c: 2f 89 00 10 cmpwi cr7,r9,16 ; i < XMON_NUM_SPUS > c00000000007d320: 7d 29 07 b4 extsw r9,r9 > c00000000007d324: f9 21 00 78 std r9,120(r1) ; i++; > c00000000007d328: e9 21 00 70 ld r9,112(r1) > c00000000007d32c: 39 29 00 28 addi r9,r9,40 ; [i] for spu_info > c00000000007d330: f9 21 00 70 std r9,112(r1) > c00000000007d334: 40 9e fe fc bne+ cr7,c00000000007d230 <.restart_spus+0x80> > > /* } */ > c00000000007d338: 38 21 00 b0 addi r1,r1,176 > c00000000007d33c: e8 01 00 10 ld r0,16(r1) > c00000000007d340: eb e1 ff f8 ld r31,-8(r1) > c00000000007d344: 7c 08 03 a6 mtlr r0 > c00000000007d348: 4e 80 00 20 blr > c00000000007d34c: 60 00 00 00 nop > /* } */ > > /* } else { */ > c00000000007d350: 3d 42 00 0f addis r10,r2,15 > c00000000007d354: 39 00 00 00 li r8,0 > c00000000007d358: 39 4a 3e 10 addi r10,r10,15888 > c00000000007d35c: 91 0a 20 c0 stw r8,8384(r10) ; catch_memory_errors = 0; > c00000000007d360: 48 00 64 e1 bl c000000000083840 <.xmon_printf> > c00000000007d364: 60 00 00 00 nop > c00000000007d368: 4b ff ff 9c b c00000000007d304 <.restart_spus+0x154> > c00000000007d36c: 60 00 00 00 nop > > > >>>> arch/powerpc/xmon/xmon.c:352:48: warning: argument ‘fromipi’ might be clobbered by ‘longjmp’ or ‘vfork’ [-Wclobbered] >>> >>> This one I can't see, but I assume it's a similar case. >>> >> >> OK, I should continue for it. >> >> >>>> Excuse me, I am not quite sure about it whether can cause issue or not. >>> >>> I've never seen it get stuck in those loops or anything, but I guess >>> it's possible. >>> >> >> OK, I should make the confirmation. >> >>> The first thing to do would be to analyse the generated assembler code >>> to determine if there really is any possiblity of the value being >>> clobbered, or if it's just a theoretical bug. >>> >> >> Thank you for your valuable information again. >> >> Excuse me, I have to do another things within this month, so I should >> provide the confirmation within next month (2013-08-31), is it OK (no >> reply means OK). >> >> Welcome any suggestions or completions. >> >> >> Thanks. >> > > -- Chen Gang ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Suggestion] powerpc: xmon: about 'longjmp' related warning. 2013-07-26 11:45 ` Chen Gang @ 2013-07-26 11:47 ` Chen Gang 2013-07-26 11:55 ` Chen Gang 1 sibling, 0 replies; 7+ messages in thread From: Chen Gang @ 2013-07-26 11:47 UTC (permalink / raw) To: Michael Ellerman Cc: Michael Neuling, paulus@samba.org, Andrew Morton, linuxppc-dev@lists.ozlabs.org, jovi.zhangwei On 07/26/2013 07:45 PM, Chen Gang wrote: > Hello Maintainers: > > This reply is the analyzing result for the warning: > > arch/powerpc/xmon/xmon.c:352:48: warning: argument ‘fromipi’ might be clobbered by ‘longjmp’ or ‘vfork’ [-Wclobbered] > > I assume: for CONFIG_SMP, the thread within the function can not switch > to another cpus (between local_irq_save and local_irq_restore). If my > assumption is incorrect, please tell me, thanks. > > If my assumption is correct, the source code for setjmp() and longjmp() > looks OK to me: they are for checking recurse call, if it finds, it will > jump to outside with the jump buffer which lay on the stack. > > For the related warning about 'fromipi' and 'longjmp', it is issue: > 'fromipi' is saved in stack '680(r1)'. > OH, sorry typo mistake: need use "it is no issue" instead of "it is issue". > The details may be a little complex by compiler's optimization, and > 'fromipi' has 3 areas which each is optimized much, need read related > reconstructed code to understand (at least for me, these optimization > are correct). > > And the disassembly code below is really a little longer, but they are > still simple enough for understanding (I have given some comments for > them, but not quite in details). > > > Welcome any additional suggestions or completions. > > Thanks. > > > > The related source code (!CONFIG_BOOKE, CONFIG_SMP): > > 352 static int xmon_core(struct pt_regs *regs, int fromipi) > 353 { > 354 int cmd = 0; > 355 struct bpt *bp; > 356 long recurse_jmp[JMP_BUF_LEN]; > 357 unsigned long offset; > 358 unsigned long flags; > 359 #ifdef CONFIG_SMP > 360 int cpu; > 361 int secondary; > 362 unsigned long timeout; > 363 #endif > 364 > 365 local_irq_save(flags); > 366 > 367 bp = in_breakpoint_table(regs->nip, &offset); > 368 if (bp != NULL) { > 369 regs->nip = bp->address + offset; > 370 atomic_dec(&bp->ref_count); > 371 } > 372 > 373 remove_cpu_bpts(); > 374 > 375 #ifdef CONFIG_SMP > 376 cpu = smp_processor_id(); > 377 if (cpumask_test_cpu(cpu, &cpus_in_xmon)) { > 378 get_output_lock(); > 379 excprint(regs); > 380 printf("cpu 0x%x: Exception %lx %s in xmon, " > 381 "returning to main loop\n", > 382 cpu, regs->trap, getvecname(TRAP(regs))); > 383 release_output_lock(); > 384 longjmp(xmon_fault_jmp[cpu], 1); > 385 } > 386 > 387 if (setjmp(recurse_jmp) != 0) { > 388 if (!in_xmon || !xmon_gate) { > 389 get_output_lock(); > 390 printf("xmon: WARNING: bad recursive fault " > 391 "on cpu 0x%x\n", cpu); > 392 release_output_lock(); > 393 goto waiting; > 394 } > 395 secondary = !(xmon_taken && cpu == xmon_owner); > 396 goto cmdloop; > 397 } > 398 > 399 xmon_fault_jmp[cpu] = recurse_jmp; > 400 cpumask_set_cpu(cpu, &cpus_in_xmon); > 401 > 402 bp = NULL; > 403 if ((regs->msr & (MSR_IR|MSR_PR|MSR_64BIT)) == (MSR_IR|MSR_64BIT)) > 404 bp = at_breakpoint(regs->nip); > 405 if (bp || unrecoverable_excp(regs)) > 406 fromipi = 0; > 407 > 408 if (!fromipi) { > 409 get_output_lock(); > 410 excprint(regs); > 411 if (bp) { > 412 printf("cpu 0x%x stopped at breakpoint 0x%x (", > 413 cpu, BP_NUM(bp)); > 414 xmon_print_symbol(regs->nip, " ", ")\n"); > 415 } > 416 if (unrecoverable_excp(regs)) > 417 printf("WARNING: exception is not recoverable, " > 418 "can't continue\n"); > 419 release_output_lock(); > 420 } > 421 > 422 waiting: > 423 secondary = 1; > 424 while (secondary && !xmon_gate) { > 425 if (in_xmon == 0) { > 426 if (fromipi) > 427 goto leave; > 428 secondary = test_and_set_bit(0, &in_xmon); > 429 } > 430 barrier(); > 431 } > 432 > 433 if (!secondary && !xmon_gate) { > 434 /* we are the first cpu to come in */ > 435 /* interrupt other cpu(s) */ > 436 int ncpus = num_online_cpus(); > 437 > 438 xmon_owner = cpu; > 439 mb(); > 440 if (ncpus > 1) { > 441 smp_send_debugger_break(); > 442 /* wait for other cpus to come in */ > 443 for (timeout = 100000000; timeout != 0; --timeout) { > 444 if (cpumask_weight(&cpus_in_xmon) >= ncpus) > 445 break; > 446 barrier(); > 447 } > 448 } > 449 remove_bpts(); > 450 disable_surveillance(); > 451 /* for breakpoint or single step, print the current instr. */ > 452 if (bp || TRAP(regs) == 0xd00) > 453 ppc_inst_dump(regs->nip, 1, 0); > 454 printf("enter ? for help\n"); > 455 mb(); > 456 xmon_gate = 1; > 457 barrier(); > 458 } > 459 > 460 cmdloop: > 461 while (in_xmon) { > 462 if (secondary) { > 463 if (cpu == xmon_owner) { > 464 if (!test_and_set_bit(0, &xmon_taken)) { > 465 secondary = 0; > 466 continue; > 467 } > 468 /* missed it */ > 469 while (cpu == xmon_owner) > 470 barrier(); > 471 } > 472 barrier(); > 473 } else { > 474 cmd = cmds(regs); > 475 if (cmd != 0) { > 476 /* exiting xmon */ > 477 insert_bpts(); > 478 xmon_gate = 0; > 479 wmb(); > 480 in_xmon = 0; > 481 break; > 482 } > 483 /* have switched to some other cpu */ > 484 secondary = 1; > 485 } > 486 } > 487 leave: > 488 cpumask_clear_cpu(cpu, &cpus_in_xmon); > 489 xmon_fault_jmp[cpu] = NULL; > 490 #else > 491 /* UP is simple... */ > 492 if (in_xmon) { > 493 printf("Exception %lx %s in xmon, returning to main loop\n", > 494 regs->trap, getvecname(TRAP(regs))); > 495 longjmp(xmon_fault_jmp[0], 1); > 496 } > 497 if (setjmp(recurse_jmp) == 0) { > 498 xmon_fault_jmp[0] = recurse_jmp; > 499 in_xmon = 1; > 500 > 501 excprint(regs); > 502 bp = at_breakpoint(regs->nip); > 503 if (bp) { > 504 printf("Stopped at breakpoint %x (", BP_NUM(bp)); > 505 xmon_print_symbol(regs->nip, " ", ")\n"); > 506 } > 507 if (unrecoverable_excp(regs)) > 508 printf("WARNING: exception is not recoverable, " > 509 "can't continue\n"); > 510 remove_bpts(); > 511 disable_surveillance(); > 512 /* for breakpoint or single step, print the current instr. */ > 513 if (bp || TRAP(regs) == 0xd00) > 514 ppc_inst_dump(regs->nip, 1, 0); > 515 printf("enter ? for help\n"); > 516 } > 517 > 518 cmd = cmds(regs); > 519 > 520 insert_bpts(); > 521 in_xmon = 0; > 522 #endif > 523 > 524 #ifdef CONFIG_BOOKE > 525 if (regs->msr & MSR_DE) { > 526 bp = at_breakpoint(regs->nip); > 527 if (bp != NULL) { > 528 regs->nip = (unsigned long) &bp->instr[0]; > 529 atomic_inc(&bp->ref_count); > 530 } > 531 } > 532 #else > 533 if ((regs->msr & (MSR_IR|MSR_PR|MSR_64BIT)) == (MSR_IR|MSR_64BIT)) { > 534 bp = at_breakpoint(regs->nip); > 535 if (bp != NULL) { > 536 int stepped = emulate_step(regs, bp->instr[0]); > 537 if (stepped == 0) { > 538 regs->nip = (unsigned long) &bp->instr[0]; > 539 atomic_inc(&bp->ref_count); > 540 } else if (stepped < 0) { > 541 printf("Couldn't single-step %s instruction\n", > 542 (IS_RFID(bp->instr[0])? "rfid": "mtmsrd")); > 543 } > 544 } > 545 } > 546 #endif > 547 insert_cpu_bpts(); > 548 > 549 local_irq_restore(flags); > 550 > 551 return cmd != 'X' && cmd != EOF; > 552 } > > > The related disassembly code: > > "make ARCH=powerpc EXTRA_CFLAGS=-W" > "powerpc64-linux-gnu-objdump -d vmlinux.o > vmlinux.S" > "gcc version 4.7.1 20120606 (Red Hat 4.7.1-0.1.20120606) (GCC)" > "GNU objdump version 2.23.51.0.3-1.fc16 20120918" > > > c0000000000804b0 <.xmon_core>: > c0000000000804b0: 7c 08 02 a6 mflr r0 > c0000000000804b4: f9 c1 ff 70 std r14,-144(r1) > c0000000000804b8: f9 e1 ff 78 std r15,-136(r1) > c0000000000804bc: fa 01 ff 80 std r16,-128(r1) > c0000000000804c0: fa 21 ff 88 std r17,-120(r1) > c0000000000804c4: fa 41 ff 90 std r18,-112(r1) > c0000000000804c8: fa 61 ff 98 std r19,-104(r1) > c0000000000804cc: fa 81 ff a0 std r20,-96(r1) > c0000000000804d0: fa a1 ff a8 std r21,-88(r1) > c0000000000804d4: fa c1 ff b0 std r22,-80(r1) > c0000000000804d8: f8 01 00 10 std r0,16(r1) > c0000000000804dc: fa e1 ff b8 std r23,-72(r1) > c0000000000804e0: fb 01 ff c0 std r24,-64(r1) > c0000000000804e4: fb 21 ff c8 std r25,-56(r1) > c0000000000804e8: fb 41 ff d0 std r26,-48(r1) > c0000000000804ec: fb 61 ff d8 std r27,-40(r1) > c0000000000804f0: fb 81 ff e0 std r28,-32(r1) > c0000000000804f4: fb a1 ff e8 std r29,-24(r1) > c0000000000804f8: fb c1 ff f0 std r30,-16(r1) > c0000000000804fc: fb e1 ff f8 std r31,-8(r1) > c000000000080500: f8 21 fd 91 stdu r1,-624(r1) > c000000000080504: f8 61 02 a0 std r3,672(r1) ; 672(r1) = parameter regs > c000000000080508: f8 81 02 a8 std r4,680(r1) ; 680(r1) = parameter fromipi > > c00000000008050c: 39 20 00 00 li r9,0 > c000000000080510: 88 cd 02 72 lbz r6,626(r13) > c000000000080514: 99 2d 02 72 stb r9,626(r13) > c000000000080518: 3d 22 00 0f addis r9,r2,15 > c00000000008051c: 39 00 00 00 li r8,0 > c000000000080520: 39 29 3e 10 addi r9,r9,15888 > c000000000080524: f8 c1 01 a8 std r6,424(r1) > c000000000080528: 39 29 00 08 addi r9,r9,8 > c00000000008052c: f9 01 01 70 std r8,368(r1) > c000000000080530: e8 e1 02 a0 ld r7,672(r1) > c000000000080534: e9 47 01 00 ld r10,256(r7) > c000000000080538: 7d 29 50 50 subf r9,r9,r10 > c00000000008053c: 2b a9 1f ff cmpldi cr7,r9,8191 > c000000000080540: 41 9d 00 20 bgt- cr7,c000000000080560 <.xmon_core+0xb0> > c000000000080544: 79 29 06 e0 clrldi r9,r9,59 > c000000000080548: 2f a9 00 08 cmpdi cr7,r9,8 > c00000000008054c: 41 9e 03 f4 beq- cr7,c000000000080940 <.xmon_core+0x490> > c000000000080550: 2f a9 00 0c cmpdi cr7,r9,12 > c000000000080554: 41 9e 03 ec beq- cr7,c000000000080940 <.xmon_core+0x490> > c000000000080558: 60 00 00 00 nop > c00000000008055c: 60 00 00 00 nop > > /* remove_cpu_bpts() */ > c000000000080560: 39 20 00 00 li r9,0 > c000000000080564: 38 61 00 70 addi r3,r1,112 > c000000000080568: f9 21 00 70 std r9,112(r1) > c00000000008056c: b1 21 00 78 sth r9,120(r1) > c000000000080570: b1 21 00 7a sth r9,122(r1) > c000000000080574: 4b f9 3a 0d bl c000000000013f80 <.set_breakpoint> > c000000000080578: 60 00 00 00 nop > c00000000008057c: 3d 22 00 0b addis r9,r2,11 > c000000000080580: 39 29 69 18 addi r9,r9,26904 > c000000000080584: e9 29 00 00 ld r9,0(r9) > c000000000080588: e9 29 00 10 ld r9,16(r9) > c00000000008058c: 79 28 e7 e1 rldicl. r8,r9,28,63 > c000000000080590: 41 82 00 0c beq- c00000000008059c <.xmon_core+0xec> > c000000000080594: 39 20 00 00 li r9,0 > c000000000080598: 7d 32 fb a6 mtspr 1010,r9 > > /* cpu = smp_processor_id(); */ > /* if (cpumask_test_cpu(cpu, &cpus_in_xmon)) { */ > c00000000008059c: a1 2d 00 0a lhz r9,10(r13) > c0000000000805a0: 3f e2 00 0f addis r31,r2,15 > c0000000000805a4: 3b df 3e 10 addi r30,r31,15888 > c0000000000805a8: 7d 2a 07 b4 extsw r10,r9 > c0000000000805ac: 39 1e 24 e8 addi r8,r30,9448 > c0000000000805b0: 79 46 d1 82 rldicl r6,r10,58,6 > c0000000000805b4: f9 41 01 78 std r10,376(r1) > c0000000000805b8: 78 ca 1f 24 rldicr r10,r6,3,60 > c0000000000805bc: 55 27 06 be clrlwi r7,r9,26 > c0000000000805c0: 7d 48 50 2a ldx r10,r8,r10 > c0000000000805c4: f8 c1 01 88 std r6,392(r1) > c0000000000805c8: 90 e1 01 90 stw r7,400(r1) > c0000000000805cc: 7d 49 3c 36 srd r9,r10,r7 > c0000000000805d0: 79 28 07 e1 clrldi. r8,r9,63 > c0000000000805d4: 40 82 2a 6c bne- c000000000083040 <.xmon_core+0x2b90> ; cpumask_test_cpu(cpu, &cpus_in_xmon) == true > > /* > 387 if (setjmp(recurse_jmp) != 0) { > 388 if (!in_xmon || !xmon_gate) { > 389 get_output_lock(); > 390 printf("xmon: WARNING: bad recursive fault " > 391 "on cpu 0x%x\n", cpu); > 392 release_output_lock(); > 393 goto waiting; > 394 } > 395 secondary = !(xmon_taken && cpu == xmon_owner); > 396 goto cmdloop; > 397 } > */ > c0000000000805d8: 38 61 00 70 addi r3,r1,112 > c0000000000805dc: 4b fa 10 15 bl c0000000000215f0 <.setjmp> > c0000000000805e0: 60 00 00 00 nop > c0000000000805e4: 2f a3 00 00 cmpdi cr7,r3,0 > c0000000000805e8: 41 9e 02 b8 beq- cr7,c0000000000808a0 <.xmon_core+0x3f0>a > c0000000000805ec: 3d 22 00 09 addis r9,r2,9 > c0000000000805f0: e9 29 2f 00 ld r9,12032(r9) > c0000000000805f4: 2f a9 00 00 cmpdi cr7,r9,0 > c0000000000805f8: 41 9e 00 18 beq- cr7,c000000000080610 <.xmon_core+0x160> > c0000000000805fc: 3d 42 00 0f addis r10,r2,15 > c000000000080600: 39 4a 3e 10 addi r10,r10,15888 > c000000000080604: 81 0a 66 50 lwz r8,26192(r10) > c000000000080608: 2f 88 00 00 cmpwi cr7,r8,0 > c00000000008060c: 40 9e 22 b0 bne- cr7,c0000000000828bc <.xmon_core+0x240c> > c000000000080610: 4b ff b2 51 bl c00000000007b860 <.get_output_lock> > c000000000080614: 3c 62 ff d4 addis r3,r2,-44 > c000000000080618: e8 81 01 78 ld r4,376(r1) ; 376(r1) = cpu > c00000000008061c: 38 63 8a e8 addi r3,r3,-29976 > c000000000080620: 48 00 32 21 bl c000000000083840 <.xmon_printf> > c000000000080624: 60 00 00 00 nop > c000000000080628: 3d 22 00 0f addis r9,r2,15 > c00000000008062c: 39 40 00 00 li r10,0 > c000000000080630: 80 c1 01 90 lwz r6,400(r1) > c000000000080634: 91 49 3e 10 stw r10,15888(r9) > c000000000080638: 39 20 00 01 li r9,1 > c00000000008063c: 7d 29 30 36 sld r9,r9,r6 > c000000000080640: f9 21 01 80 std r9,384(r1) > > /* > 426 if (fromipi) > 427 goto leave; > */ > c000000000080644: e9 21 02 a8 ld r9,680(r1) > c000000000080648: 3d 42 00 09 addis r10,r2,9 > c00000000008064c: 3c e2 00 0f addis r7,r2,15 > c000000000080650: 39 4a 2f 00 addi r10,r10,12032 > c000000000080654: 39 00 00 01 li r8,1 > c000000000080658: 2f 29 00 00 cmpdi cr6,r9,0 > c00000000008065c: 48 00 00 2c b c000000000080688 <.xmon_core+0x1d8> > > > c000000000080660: 40 9a 00 ec bne- cr6,c00000000008074c <.xmon_core+0x29c> > c000000000080664: 7c 20 04 ac lwsync > c000000000080668: 7f 80 50 a8 ldarx r28,0,r10 > c00000000008066c: 7f 89 43 78 or r9,r28,r8 > c000000000080670: 7d 20 51 ad stdcx. r9,0,r10 > c000000000080674: 40 a2 ff f4 bne- c000000000080668 <.xmon_core+0x1b8> > c000000000080678: 7c 00 04 ac sync > c00000000008067c: 7b 9c 07 e0 clrldi r28,r28,63 > c000000000080680: 2f bc 00 00 cmpdi cr7,r28,0 > c000000000080684: 41 9e 00 2c beq- cr7,c0000000000806b0 <.xmon_core+0x200> > c000000000080688: 39 27 3e 10 addi r9,r7,15888 > c00000000008068c: 81 29 66 50 lwz r9,26192(r9) > c000000000080690: 2f 89 00 00 cmpwi cr7,r9,0 > c000000000080694: 40 9e 20 0c bne- cr7,c0000000000826a0 <.xmon_core+0x21f0> > c000000000080698: e9 2a 00 00 ld r9,0(r10) > c00000000008069c: 2f a9 00 00 cmpdi cr7,r9,0 > c0000000000806a0: 41 9e ff c0 beq+ cr7,c000000000080660 <.xmon_core+0x1b0> > c0000000000806a4: 7d 1c 43 78 mr r28,r8 > c0000000000806a8: 2f bc 00 00 cmpdi cr7,r28,0 > c0000000000806ac: 40 9e ff dc bne+ cr7,c000000000080688 <.xmon_core+0x1d8> > c0000000000806b0: 3f a2 00 0f addis r29,r2,15 > c0000000000806b4: 3b bd 3e 10 addi r29,r29,15888 > c0000000000806b8: 81 3d 66 50 lwz r9,26192(r29) > c0000000000806bc: 2f 89 00 00 cmpwi cr7,r9,0 > c0000000000806c0: 41 9e 25 c8 beq- cr7,c000000000082c88 <.xmon_core+0x27d8> > c0000000000806c4: 3d 22 00 09 addis r9,r2,9 > c0000000000806c8: e9 29 2f 00 ld r9,12032(r9) > > c0000000000806cc: 2f a9 00 00 cmpdi cr7,r9,0 > c0000000000806d0: 3c c2 ff d4 addis r6,r2,-44 > c0000000000806d4: eb 61 01 78 ld r27,376(r1) > c0000000000806d8: 3c e2 ff d4 addis r7,r2,-44 > c0000000000806dc: 3d 02 ff d4 addis r8,r2,-44 > c0000000000806e0: 3d 42 ff d4 addis r10,r2,-44 > c0000000000806e4: 39 e7 99 68 addi r15,r7,-26264 > c0000000000806e8: 3a 28 99 70 addi r17,r8,-26256 > c0000000000806ec: 3f a2 ff d4 addis r29,r2,-44 > c0000000000806f0: 3f c2 ff d4 addis r30,r2,-44 > c0000000000806f4: 38 c6 99 50 addi r6,r6,-26288 > c0000000000806f8: 39 4a 99 30 addi r10,r10,-26320 > c0000000000806fc: fa 21 01 a0 std r17,416(r1) > c000000000080700: 3f e2 00 0f addis r31,r2,15 > c000000000080704: 7d f1 7b 78 mr r17,r15 > c000000000080708: e9 e1 02 a0 ld r15,672(r1) > c00000000008070c: 3b bd 8b b8 addi r29,r29,-29768 > c000000000080710: 3b de 8b c0 addi r30,r30,-29760 > c000000000080714: f8 c1 01 98 std r6,408(r1) > c000000000080718: f9 41 01 b0 std r10,432(r1) > c00000000008071c: 41 9e 00 30 beq- cr7,c00000000008074c <.xmon_core+0x29c> > c000000000080720: 2f bc 00 00 cmpdi cr7,r28,0 > c000000000080724: 39 3f 3e 10 addi r9,r31,15888 > c000000000080728: 41 9e 02 c8 beq- cr7,c0000000000809f0 <.xmon_core+0x540> > c00000000008072c: 81 49 66 54 lwz r10,26196(r9) > c000000000080730: 7f 8a d8 00 cmpw cr7,r10,r27 > c000000000080734: 41 9e 02 5c beq- cr7,c000000000080990 <.xmon_core+0x4e0> > c000000000080738: 3b 80 00 01 li r28,1 > c00000000008073c: 3d 22 00 09 addis r9,r2,9 > c000000000080740: e9 29 2f 00 ld r9,12032(r9) > c000000000080744: 2f a9 00 00 cmpdi cr7,r9,0 > c000000000080748: 40 9e ff d8 bne+ cr7,c000000000080720 <.xmon_core+0x270> > > /* > 487 leave: > 488 cpumask_clear_cpu(cpu, &cpus_in_xmon); > 489 xmon_fault_jmp[cpu] = NULL; > */ > c00000000008074c: 3b 80 00 00 li r28,0 > c000000000080750: e8 c1 01 88 ld r6,392(r1) > c000000000080754: 3d 42 00 0f addis r10,r2,15 > c000000000080758: e8 e1 01 80 ld r7,384(r1) > c00000000008075c: 39 4a 3e 10 addi r10,r10,15888 > c000000000080760: 39 0a 24 e8 addi r8,r10,9448 > c000000000080764: 78 c9 1f 24 rldicr r9,r6,3,60 > c000000000080768: 7d 28 4a 14 add r9,r8,r9 > c00000000008076c: 7d 00 48 a8 ldarx r8,0,r9 > c000000000080770: 7d 08 38 78 andc r8,r8,r7 > c000000000080774: 7d 00 49 ad stdcx. r8,0,r9 > c000000000080778: 40 a2 ff f4 bne- c00000000008076c <.xmon_core+0x2bc> > c00000000008077c: e9 21 02 a0 ld r9,672(r1) > c000000000080780: 3d 00 80 00 lis r8,-32768 > c000000000080784: e8 c1 01 78 ld r6,376(r1) > c000000000080788: 79 08 07 c6 rldicr r8,r8,32,31 > c00000000008078c: e8 e9 01 08 ld r7,264(r9) > c000000000080790: 3d 20 80 00 lis r9,-32768 > c000000000080794: 61 08 40 20 ori r8,r8,16416 > c000000000080798: 79 29 07 c6 rldicr r9,r9,32,31 > c00000000008079c: 7c e8 40 38 and r8,r7,r8 > c0000000000807a0: 61 29 00 20 ori r9,r9,32 > c0000000000807a4: 7f a8 48 00 cmpd cr7,r8,r9 > c0000000000807a8: 78 c7 1f 24 rldicr r7,r6,3,60 > c0000000000807ac: 7c ea 3a 14 add r7,r10,r7 > c0000000000807b0: 38 c0 00 00 li r6,0 > c0000000000807b4: f8 c7 26 50 std r6,9808(r7) ; xmon_fault_jmp[cpu] = NULL; > > /* > 533 if ((regs->msr & (MSR_IR|MSR_PR|MSR_64BIT)) == (MSR_IR|MSR_64BIT)) { > */ > c0000000000807b8: 41 9e 1f 34 beq- cr7,c0000000000826ec <.xmon_core+0x223c> > /* > 547 insert_cpu_bpts(); > */ > c0000000000807bc: 3d 42 00 0f addis r10,r2,15 > c0000000000807c0: 39 4a 3e 10 addi r10,r10,15888 > c0000000000807c4: 81 2a 66 fc lwz r9,26364(r10) > c0000000000807c8: 2f 89 00 00 cmpwi cr7,r9,0 > c0000000000807cc: 40 9e 1e f4 bne- cr7,c0000000000826c0 <.xmon_core+0x2210> > c0000000000807d0: 3d 22 00 0f addis r9,r2,15 > c0000000000807d4: 39 29 3e 10 addi r9,r9,15888 > c0000000000807d8: e9 29 67 08 ld r9,26376(r9) > c0000000000807dc: 2f a9 00 00 cmpdi cr7,r9,0 > c0000000000807e0: 41 9e 00 30 beq- cr7,c000000000080810 <.xmon_core+0x360> > c0000000000807e4: 3d 42 00 0b addis r10,r2,11 > c0000000000807e8: 39 4a 69 18 addi r10,r10,26904 > c0000000000807ec: e9 4a 00 00 ld r10,0(r10) > c0000000000807f0: e9 4a 00 10 ld r10,16(r10) > c0000000000807f4: 79 46 e7 e1 rldicl. r6,r10,28,63 > c0000000000807f8: 41 82 00 18 beq- c000000000080810 <.xmon_core+0x360> > c0000000000807fc: 81 49 00 14 lwz r10,20(r9) > c000000000080800: e9 29 00 00 ld r9,0(r9) > c000000000080804: 79 4a 07 a0 clrldi r10,r10,62 > c000000000080808: 7d 49 4b 78 or r9,r10,r9 > c00000000008080c: 7d 32 fb a6 mtspr 1010,r9 > > /* > 549 local_irq_restore(flags); > */ > c000000000080810: e8 e1 01 a8 ld r7,424(r1) > c000000000080814: 2f a7 00 00 cmpdi cr7,r7,0 > c000000000080818: 40 9e 01 60 bne- cr7,c000000000080978 <.xmon_core+0x4c8> > c00000000008081c: 38 60 00 00 li r3,0 > c000000000080820: 4b f8 f3 81 bl c00000000000fba0 <.arch_local_irq_restore> > c000000000080824: 60 00 00 00 nop > c000000000080828: 2f 9c 00 58 cmpwi cr7,r28,88 > c00000000008082c: 38 60 00 00 li r3,0 > c000000000080830: 41 9e 00 18 beq- cr7,c000000000080848 <.xmon_core+0x398> > c000000000080834: 3b 9c 00 01 addi r28,r28,1 > c000000000080838: 7f 9c 00 34 cntlzw r28,r28 > c00000000008083c: 57 9c d9 7e rlwinm r28,r28,27,5,31 > c000000000080840: 6b 83 00 01 xori r3,r28,1 > c000000000080844: 7c 63 07 b4 extsw r3,r3 > c000000000080848: 38 21 02 70 addi r1,r1,624 > c00000000008084c: e8 01 00 10 ld r0,16(r1) > c000000000080850: e9 c1 ff 70 ld r14,-144(r1) > c000000000080854: e9 e1 ff 78 ld r15,-136(r1) > c000000000080858: ea 01 ff 80 ld r16,-128(r1) > c00000000008085c: 7c 08 03 a6 mtlr r0 > c000000000080860: ea 21 ff 88 ld r17,-120(r1) > c000000000080864: ea 41 ff 90 ld r18,-112(r1) > c000000000080868: ea 61 ff 98 ld r19,-104(r1) > c00000000008086c: ea 81 ff a0 ld r20,-96(r1) > c000000000080870: ea a1 ff a8 ld r21,-88(r1) > c000000000080874: ea c1 ff b0 ld r22,-80(r1) > c000000000080878: ea e1 ff b8 ld r23,-72(r1) > c00000000008087c: eb 01 ff c0 ld r24,-64(r1) > c000000000080880: eb 21 ff c8 ld r25,-56(r1) > c000000000080884: eb 41 ff d0 ld r26,-48(r1) > c000000000080888: eb 61 ff d8 ld r27,-40(r1) > c00000000008088c: eb 81 ff e0 ld r28,-32(r1) > c000000000080890: eb a1 ff e8 ld r29,-24(r1) > c000000000080894: eb c1 ff f0 ld r30,-16(r1) > c000000000080898: eb e1 ff f8 ld r31,-8(r1) > c00000000008089c: 4e 80 00 20 blr > /* } // Function end */ > > > > > > > > > > /* > 399 xmon_fault_jmp[cpu] = recurse_jmp; > 400 cpumask_set_cpu(cpu, &cpus_in_xmon); > 401 > 402 bp = NULL; > 403 if ((regs->msr & (MSR_IR|MSR_PR|MSR_64BIT)) == (MSR_IR|MSR_64BIT)) > 404 bp = at_breakpoint(regs->nip); > 405 if (bp || unrecoverable_excp(regs)) > 406 fromipi = 0; > */ > c0000000000808a0: e9 01 01 78 ld r8,376(r1) ; 376(r1) = cpu > c0000000000808a4: e8 c1 01 88 ld r6,392(r1) > c0000000000808a8: 3d 42 00 0f addis r10,r2,15 > c0000000000808ac: 39 4a 3e 10 addi r10,r10,15888 > c0000000000808b0: 79 07 1f 24 rldicr r7,r8,3,60 > c0000000000808b4: 78 c9 1f 24 rldicr r9,r6,3,60 > c0000000000808b8: 7c ea 3a 14 add r7,r10,r7 > c0000000000808bc: 38 c1 00 70 addi r6,r1,112 > c0000000000808c0: f8 c7 26 50 std r6,9808(r7) ; xmon_fault_jmp[cpu] = recurse_jmp; > c0000000000808c4: 80 c1 01 90 lwz r6,400(r1) > c0000000000808c8: 38 e0 00 01 li r7,1 > c0000000000808cc: 39 0a 24 e8 addi r8,r10,9448 > c0000000000808d0: 7c e7 30 36 sld r7,r7,r6 > c0000000000808d4: 7d 28 4a 14 add r9,r8,r9 > c0000000000808d8: f8 e1 01 80 std r7,384(r1) > c0000000000808dc: 7d 00 48 a8 ldarx r8,0,r9 > c0000000000808e0: 7d 08 3b 78 or r8,r8,r7 > c0000000000808e4: 7d 00 49 ad stdcx. r8,0,r9 > c0000000000808e8: 40 a2 ff f4 bne- c0000000000808dc <.xmon_core+0x42c> > c0000000000808ec: e9 21 02 a0 ld r9,672(r1) > c0000000000808f0: 3d 00 80 00 lis r8,-32768 > c0000000000808f4: 38 c0 00 00 li r6,0 > c0000000000808f8: 79 08 07 c6 rldicr r8,r8,32,31 > c0000000000808fc: f8 c1 01 70 std r6,368(r1) > c000000000080900: e8 e9 01 08 ld r7,264(r9) > c000000000080904: 3d 20 80 00 lis r9,-32768 > c000000000080908: 61 08 40 20 ori r8,r8,16416 > c00000000008090c: 79 29 07 c6 rldicr r9,r9,32,31 > c000000000080910: 7c e8 40 38 and r8,r7,r8 > c000000000080914: 61 29 00 20 ori r9,r9,32 > c000000000080918: 7f a8 48 00 cmpd cr7,r8,r9 > c00000000008091c: 41 9e 1f cc beq- cr7,c0000000000828e8 <.xmon_core+0x2438> ; call bp = at_breakpoint(regs->nip); > c000000000080920: 78 e9 ff e3 rldicl. r9,r7,63,63 > c000000000080924: 41 82 20 1c beq- c000000000082940 <.xmon_core+0x2490> > /* > 408 if (!fromipi) { > */ > c000000000080928: e9 41 02 a8 ld r10,680(r1) > c00000000008092c: 2f aa 00 00 cmpdi cr7,r10,0 > c000000000080930: 40 9e fd 14 bne+ cr7,c000000000080644 <.xmon_core+0x194> > c000000000080934: 48 00 20 0c b c000000000082940 <.xmon_core+0x2490> > c000000000080938: 60 00 00 00 nop > c00000000008093c: 60 00 00 00 nop > > /* > 671 static struct bpt *in_breakpoint_table(unsigned long nip, unsigned long *offp) > */ > c000000000080940: 7c c9 50 51 subf. r6,r9,r10 > c000000000080944: f8 c1 01 70 std r6,368(r1) > c000000000080948: 41 a2 fc 18 beq- c000000000080560 <.xmon_core+0xb0> > c00000000008094c: e9 06 00 00 ld r8,0(r6) > c000000000080950: e8 e1 02 a0 ld r7,672(r1) > c000000000080954: 39 46 00 10 addi r10,r6,16 > c000000000080958: 39 08 ff f8 addi r8,r8,-8 > c00000000008095c: 7d 28 4a 14 add r9,r8,r9 > c000000000080960: f9 27 01 00 std r9,256(r7) > c000000000080964: 7d 20 50 28 lwarx r9,0,r10 > c000000000080968: 31 29 ff ff addic r9,r9,-1 > c00000000008096c: 7d 20 51 2d stwcx. r9,0,r10 > c000000000080970: 40 a2 ff f4 bne- c000000000080964 <.xmon_core+0x4b4> > c000000000080974: 4b ff fb ec b c000000000080560 <.xmon_core+0xb0> > > > /* > 549 local_irq_restore(flags); > */ > c000000000080978: e8 61 01 a8 ld r3,424(r1) > c00000000008097c: 4b f8 f2 25 bl c00000000000fba0 <.arch_local_irq_restore> > c000000000080980: 60 00 00 00 nop > c000000000080984: 4b ff fe a4 b c000000000080828 <.xmon_core+0x378> > c000000000080988: 60 00 00 00 nop > c00000000008098c: 60 00 00 00 nop > > > c000000000080990: 3d 02 ff ed addis r8,r2,-19 > c000000000080994: 39 40 00 01 li r10,1 > c000000000080998: 39 08 44 e8 addi r8,r8,17640 > c00000000008099c: 39 08 00 28 addi r8,r8,40 > c0000000000809a0: 7c 20 04 ac lwsync > c0000000000809a4: 7c e0 40 a8 ldarx r7,0,r8 > c0000000000809a8: 7c e6 53 78 or r6,r7,r10 > c0000000000809ac: 7c c0 41 ad stdcx. r6,0,r8 > c0000000000809b0: 40 a2 ff f4 bne- c0000000000809a4 <.xmon_core+0x4f4> > c0000000000809b4: 7c 00 04 ac sync > c0000000000809b8: 78 ea 07 e1 clrldi. r10,r7,63 > c0000000000809bc: 3b 80 00 00 li r28,0 > c0000000000809c0: 41 82 fd 7c beq+ c00000000008073c <.xmon_core+0x28c> > c0000000000809c4: 48 00 00 10 b c0000000000809d4 <.xmon_core+0x524> > c0000000000809c8: 60 00 00 00 nop > c0000000000809cc: 60 00 00 00 nop > > > c0000000000809d0: 39 3f 3e 10 addi r9,r31,15888 > c0000000000809d4: 81 29 66 54 lwz r9,26196(r9) > c0000000000809d8: 7f 89 d8 00 cmpw cr7,r9,r27 > c0000000000809dc: 41 9e ff f4 beq+ cr7,c0000000000809d0 <.xmon_core+0x520> > c0000000000809e0: 4b ff fd 58 b c000000000080738 <.xmon_core+0x288> > c0000000000809e4: 60 00 00 00 nop > c0000000000809e8: 60 00 00 00 nop > c0000000000809ec: 60 00 00 00 nop > > /* > 787 static int > 788 cmds(struct pt_regs *excp) > 789 { > */ > c0000000000809f0: 81 49 24 e0 lwz r10,9440(r9) > c0000000000809f4: fb 89 26 38 std r28,9784(r9) > c0000000000809f8: f9 e9 25 e8 std r15,9704(r9) > c0000000000809fc: 2f 8a 00 00 cmpwi cr7,r10,0 > c000000000080a00: 41 9e 0f b0 beq- cr7,c0000000000819b0 <.xmon_core+0x1500> > c000000000080a04: 3d 22 ff d4 addis r9,r2,-44 > c000000000080a08: 3a 49 99 18 addi r18,r9,-26344 > c000000000080a0c: 60 00 00 00 nop > > /* > 800 for(;;) { > */ > /* > 801 #ifdef CONFIG_SMP > 802 printf("%x:", smp_processor_id()); > 803 #endif \* CONFIG_SMP *\ > 804 printf("mon> "); > 805 flush_input(); > 806 termch = 0; > 807 cmd = skipbl(); > */ > c000000000080a10: a0 8d 00 0a lhz r4,10(r13) > c000000000080a14: 7f a3 eb 78 mr r3,r29 > c000000000080a18: 3b 5f 3e 10 addi r26,r31,15888 > c000000000080a1c: 3b 20 00 00 li r25,0 > c000000000080a20: 48 00 2e 21 bl c000000000083840 <.xmon_printf> > c000000000080a24: 60 00 00 00 nop > c000000000080a28: 7f c3 f3 78 mr r3,r30 > c000000000080a2c: 48 00 2e 15 bl c000000000083840 <.xmon_printf> > c000000000080a30: 60 00 00 00 nop > c000000000080a34: fb 3a 24 d0 std r25,9424(r26) > c000000000080a38: 93 3a 24 d8 stw r25,9432(r26) > c000000000080a3c: 4b ff e9 25 bl c00000000007f360 <.skipbl> > /* > 808 if( cmd == '\n' ) { > */ > c000000000080a40: 2f 83 00 0a cmpwi cr7,r3,10 > c000000000080a44: 7c 7c 1b 78 mr r28,r3 > c000000000080a48: 41 9e 00 b8 beq- cr7,c000000000080b00 <.xmon_core+0x650> > c000000000080a4c: 39 3c 00 01 addi r9,r28,1 > c000000000080a50: 2b 89 00 7b cmplwi cr7,r9,123 > c000000000080a54: 40 9d 00 d4 ble- cr7,c000000000080b28 <.xmon_core+0x678> > > /* > 904 default: > 905 printf("Unrecognized command: "); > 906 do { > 907 if (' ' < cmd && cmd <= '~') > 908 putchar(cmd); > 909 else > 910 printf("\\x%x", cmd); > 911 cmd = inchar(); > 912 } while (cmd != '\n'); > 913 printf(" (type ? for help)\n"); > 914 break; > 915 } > */ > c000000000080a58: e8 61 01 98 ld r3,408(r1) > c000000000080a5c: 48 00 2d e5 bl c000000000083840 <.xmon_printf> > c000000000080a60: 60 00 00 00 nop > c000000000080a64: 7f 84 e3 78 mr r4,r28 > c000000000080a68: 48 00 00 24 b c000000000080a8c <.xmon_core+0x5dc> > c000000000080a6c: 60 00 00 00 nop > c000000000080a70: 7c 83 23 78 mr r3,r4 > c000000000080a74: 48 00 2a dd bl c000000000083550 <.xmon_putchar> > c000000000080a78: 60 00 00 00 nop > c000000000080a7c: 4b ff e2 75 bl c00000000007ecf0 <.inchar> > c000000000080a80: 2f 83 00 0a cmpwi cr7,r3,10 > c000000000080a84: 7c 64 1b 78 mr r4,r3 > c000000000080a88: 41 9e 00 2c beq- cr7,c000000000080ab4 <.xmon_core+0x604> > c000000000080a8c: 39 24 ff df addi r9,r4,-33 > c000000000080a90: 2b 89 00 5d cmplwi cr7,r9,93 > c000000000080a94: 40 9d ff dc ble+ cr7,c000000000080a70 <.xmon_core+0x5c0> > c000000000080a98: 7e 23 8b 78 mr r3,r17 > c000000000080a9c: 48 00 2d a5 bl c000000000083840 <.xmon_printf> > c000000000080aa0: 60 00 00 00 nop > c000000000080aa4: 4b ff e2 4d bl c00000000007ecf0 <.inchar> > c000000000080aa8: 2f 83 00 0a cmpwi cr7,r3,10 > c000000000080aac: 7c 64 1b 78 mr r4,r3 > c000000000080ab0: 40 9e ff dc bne+ cr7,c000000000080a8c <.xmon_core+0x5dc> > c000000000080ab4: e8 61 01 a0 ld r3,416(r1) > c000000000080ab8: 3b 5f 3e 10 addi r26,r31,15888 > c000000000080abc: 3b 20 00 00 li r25,0 > c000000000080ac0: 48 00 2d 81 bl c000000000083840 <.xmon_printf> > c000000000080ac4: 60 00 00 00 nop > > /* > 801 #ifdef CONFIG_SMP > 802 printf("%x:", smp_processor_id()); > 803 #endif \* CONFIG_SMP *\ > 804 printf("mon> "); > 805 flush_input(); > 806 termch = 0; > 807 cmd = skipbl(); > 808 if( cmd == '\n' ) { > */ > c000000000080ac8: 7f a3 eb 78 mr r3,r29 > c000000000080acc: a0 8d 00 0a lhz r4,10(r13) > c000000000080ad0: 48 00 2d 71 bl c000000000083840 <.xmon_printf> > c000000000080ad4: 60 00 00 00 nop > c000000000080ad8: 7f c3 f3 78 mr r3,r30 > c000000000080adc: 48 00 2d 65 bl c000000000083840 <.xmon_printf> > c000000000080ae0: 60 00 00 00 nop > c000000000080ae4: fb 3a 24 d0 std r25,9424(r26) > c000000000080ae8: 93 3a 24 d8 stw r25,9432(r26) > c000000000080aec: 4b ff e8 75 bl c00000000007f360 <.skipbl> > c000000000080af0: 2f 83 00 0a cmpwi cr7,r3,10 > c000000000080af4: 7c 7c 1b 78 mr r28,r3 > c000000000080af8: 40 9e ff 54 bne+ cr7,c000000000080a4c <.xmon_core+0x59c> > c000000000080afc: 60 00 00 00 nop > > /* > 809 if (last_cmd == NULL) > 810 continue; > 811 take_input(last_cmd); > 812 last_cmd = NULL; > 813 cmd = inchar(); > 814 } > */ > c000000000080b00: e9 3a 26 38 ld r9,9784(r26) > c000000000080b04: 2f a9 00 00 cmpdi cr7,r9,0 > c000000000080b08: 41 9e ff 08 beq+ cr7,c000000000080a10 <.xmon_core+0x560> > c000000000080b0c: f9 3a 24 d0 std r9,9424(r26) > c000000000080b10: fb 3a 26 38 std r25,9784(r26) > c000000000080b14: 4b ff e1 dd bl c00000000007ecf0 <.inchar> > /* > 815 switch (cmd) { > */ > c000000000080b18: 7c 7c 1b 78 mr r28,r3 > c000000000080b1c: 39 3c 00 01 addi r9,r28,1 > c000000000080b20: 2b 89 00 7b cmplwi cr7,r9,123 > c000000000080b24: 41 9d ff 34 bgt+ cr7,c000000000080a58 <.xmon_core+0x5a8> > > c000000000080b28: 3d 42 ff 33 addis r10,r2,-205 > c000000000080b2c: 79 29 17 88 rldic r9,r9,2,30 > c000000000080b30: 39 4a f2 5c addi r10,r10,-3492 > c000000000080b34: 7d 2a 4a aa lwax r9,r10,r9 > c000000000080b38: 7d 49 52 14 add r10,r9,r10 > c000000000080b3c: 7d 49 03 a6 mtctr r10 > c000000000080b40: 4e 80 04 20 bctr > c000000000080b44: 00 00 03 8c .long 0x38c > c000000000080b48: ff ff ff 14 .long 0xffffff14 > c000000000080b4c: ff ff ff 14 .long 0xffffff14 > c000000000080b50: ff ff ff 14 .long 0xffffff14 > c000000000080b54: ff ff ff 14 .long 0xffffff14 > c000000000080b58: ff ff ff 14 .long 0xffffff14 > c000000000080b5c: ff ff ff 14 .long 0xffffff14 > c000000000080b60: ff ff ff 14 .long 0xffffff14 > c000000000080b64: ff ff ff 14 .long 0xffffff14 > c000000000080b68: ff ff ff 14 .long 0xffffff14 > c000000000080b6c: ff ff ff 14 .long 0xffffff14 > c000000000080b70: ff ff ff 14 .long 0xffffff14 > c000000000080b74: ff ff ff 14 .long 0xffffff14 > c000000000080b78: ff ff ff 14 .long 0xffffff14 > c000000000080b7c: ff ff ff 14 .long 0xffffff14 > c000000000080b80: ff ff ff 14 .long 0xffffff14 > c000000000080b84: ff ff ff 14 .long 0xffffff14 > c000000000080b88: ff ff ff 14 .long 0xffffff14 > c000000000080b8c: ff ff ff 14 .long 0xffffff14 > c000000000080b90: ff ff ff 14 .long 0xffffff14 > c000000000080b94: ff ff ff 14 .long 0xffffff14 > c000000000080b98: ff ff ff 14 .long 0xffffff14 > c000000000080b9c: ff ff ff 14 .long 0xffffff14 > c000000000080ba0: ff ff ff 14 .long 0xffffff14 > c000000000080ba4: ff ff ff 14 .long 0xffffff14 > c000000000080ba8: ff ff ff 14 .long 0xffffff14 > c000000000080bac: ff ff ff 14 .long 0xffffff14 > c000000000080bb0: ff ff ff 14 .long 0xffffff14 > c000000000080bb4: ff ff ff 14 .long 0xffffff14 > c000000000080bb8: ff ff ff 14 .long 0xffffff14 > c000000000080bbc: ff ff ff 14 .long 0xffffff14 > c000000000080bc0: ff ff ff 14 .long 0xffffff14 > c000000000080bc4: ff ff ff 14 .long 0xffffff14 > c000000000080bc8: ff ff ff 14 .long 0xffffff14 > c000000000080bcc: ff ff ff 14 .long 0xffffff14 > c000000000080bd0: ff ff ff 14 .long 0xffffff14 > c000000000080bd4: ff ff ff 14 .long 0xffffff14 > c000000000080bd8: ff ff ff 14 .long 0xffffff14 > c000000000080bdc: ff ff ff 14 .long 0xffffff14 > c000000000080be0: ff ff ff 14 .long 0xffffff14 > c000000000080be4: ff ff ff 14 .long 0xffffff14 > c000000000080be8: ff ff ff 14 .long 0xffffff14 > c000000000080bec: ff ff ff 14 .long 0xffffff14 > c000000000080bf0: ff ff ff 14 .long 0xffffff14 > c000000000080bf4: ff ff ff 14 .long 0xffffff14 > c000000000080bf8: ff ff ff 14 .long 0xffffff14 > c000000000080bfc: ff ff ff 14 .long 0xffffff14 > c000000000080c00: ff ff ff 14 .long 0xffffff14 > c000000000080c04: ff ff ff 14 .long 0xffffff14 > c000000000080c08: ff ff ff 14 .long 0xffffff14 > c000000000080c0c: ff ff ff 14 .long 0xffffff14 > c000000000080c10: ff ff ff 14 .long 0xffffff14 > c000000000080c14: ff ff ff 14 .long 0xffffff14 > c000000000080c18: ff ff ff 14 .long 0xffffff14 > c000000000080c1c: ff ff ff 14 .long 0xffffff14 > c000000000080c20: ff ff ff 14 .long 0xffffff14 > c000000000080c24: ff ff ff 14 .long 0xffffff14 > c000000000080c28: ff ff ff 14 .long 0xffffff14 > c000000000080c2c: ff ff ff 14 .long 0xffffff14 > c000000000080c30: ff ff ff 14 .long 0xffffff14 > c000000000080c34: ff ff ff 14 .long 0xffffff14 > c000000000080c38: ff ff ff 14 .long 0xffffff14 > c000000000080c3c: ff ff ff 14 .long 0xffffff14 > c000000000080c40: ff ff ff 14 .long 0xffffff14 > c000000000080c44: 00 00 03 6c .long 0x36c > c000000000080c48: ff ff ff 14 .long 0xffffff14 > c000000000080c4c: ff ff ff 14 .long 0xffffff14 > c000000000080c50: ff ff ff 14 .long 0xffffff14 > c000000000080c54: 00 00 03 bc .long 0x3bc > c000000000080c58: ff ff ff 14 .long 0xffffff14 > c000000000080c5c: ff ff ff 14 .long 0xffffff14 > c000000000080c60: ff ff ff 14 .long 0xffffff14 > c000000000080c64: ff ff ff 14 .long 0xffffff14 > c000000000080c68: ff ff ff 14 .long 0xffffff14 > c000000000080c6c: ff ff ff 14 .long 0xffffff14 > c000000000080c70: ff ff ff 14 .long 0xffffff14 > c000000000080c74: ff ff ff 14 .long 0xffffff14 > c000000000080c78: ff ff ff 14 .long 0xffffff14 > c000000000080c7c: ff ff ff 14 .long 0xffffff14 > c000000000080c80: ff ff ff 14 .long 0xffffff14 > c000000000080c84: ff ff ff 14 .long 0xffffff14 > c000000000080c88: ff ff ff 14 .long 0xffffff14 > c000000000080c8c: ff ff ff 14 .long 0xffffff14 > c000000000080c90: ff ff ff 14 .long 0xffffff14 > c000000000080c94: 00 00 03 2c .long 0x32c > c000000000080c98: ff ff ff 14 .long 0xffffff14 > c000000000080c9c: ff ff ff 14 .long 0xffffff14 > c000000000080ca0: ff ff ff 14 .long 0xffffff14 > c000000000080ca4: ff ff ff 14 .long 0xffffff14 > c000000000080ca8: 00 00 02 4c .long 0x24c > c000000000080cac: ff ff ff 14 .long 0xffffff14 > c000000000080cb0: ff ff ff 14 .long 0xffffff14 > c000000000080cb4: ff ff ff 14 .long 0xffffff14 > c000000000080cb8: ff ff ff 14 .long 0xffffff14 > c000000000080cbc: ff ff ff 14 .long 0xffffff14 > c000000000080cc0: ff ff ff 14 .long 0xffffff14 > c000000000080cc4: ff ff ff 14 .long 0xffffff14 > c000000000080cc8: ff ff ff 14 .long 0xffffff14 > c000000000080ccc: ff ff ff 14 .long 0xffffff14 > c000000000080cd0: 00 00 0b 8c .long 0xb8c > c000000000080cd4: 00 00 0a ec .long 0xaec > c000000000080cd8: 00 00 0a 0c .long 0xa0c > c000000000080cdc: 00 00 09 fc .long 0x9fc > c000000000080ce0: 00 00 09 ec .long 0x9ec > c000000000080ce4: ff ff ff 14 .long 0xffffff14 > c000000000080ce8: ff ff ff 14 .long 0xffffff14 > c000000000080cec: ff ff ff 14 .long 0xffffff14 > c000000000080cf0: ff ff ff 14 .long 0xffffff14 > c000000000080cf4: ff ff ff 14 .long 0xffffff14 > c000000000080cf8: 00 00 09 dc .long 0x9dc > c000000000080cfc: 00 00 05 1c .long 0x51c > c000000000080d00: ff ff ff 14 .long 0xffffff14 > c000000000080d04: ff ff ff 14 .long 0xffffff14 > c000000000080d08: 00 00 05 0c .long 0x50c > c000000000080d0c: ff ff ff 14 .long 0xffffff14 > c000000000080d10: 00 00 0c fc .long 0xcfc > c000000000080d14: 00 00 01 fc .long 0x1fc > c000000000080d18: 00 00 0c cc .long 0xccc > c000000000080d1c: 00 00 04 fc .long 0x4fc > c000000000080d20: ff ff ff 14 .long 0xffffff14 > c000000000080d24: ff ff ff 14 .long 0xffffff14 > c000000000080d28: 00 00 02 4c .long 0x24c > c000000000080d2c: ff ff ff 14 .long 0xffffff14 > c000000000080d30: 00 00 04 ac .long 0x4ac > c000000000080d34: 60 00 00 00 nop > c000000000080d38: 60 00 00 00 nop > c000000000080d3c: 60 00 00 00 nop > 816 case 'm': > 817 cmd = inchar(); > 818 switch (cmd) { > 819 case 'm': > 820 case 's': > 821 case 'd': > 822 memops(cmd); > 823 break; > 824 case 'l': > 825 memlocate(); > 826 break; > 827 case 'z': > 828 memzcan(); > 829 break; > 830 case 'i': > 831 show_mem(0); > 832 break; > 833 default: > 834 termch = cmd; > 835 memex(); > 836 } > 837 break; > c000000000080d40: 4b ff df b1 bl c00000000007ecf0 <.inchar> > c000000000080d44: 2f 83 00 66 cmpwi cr7,r3,102 > c000000000080d48: 7c 7a 1b 78 mr r26,r3 > c000000000080d4c: 41 9e 15 50 beq- cr7,c00000000008229c <.xmon_core+0x1dec> > c000000000080d50: 41 9d 10 f0 bgt- cr7,c000000000081e40 <.xmon_core+0x1990> > c000000000080d54: 2f 83 00 64 cmpwi cr7,r3,100 > c000000000080d58: 41 9e 16 10 beq- cr7,c000000000082368 <.xmon_core+0x1eb8> > c000000000080d5c: 3d 40 80 00 lis r10,-32768 > c000000000080d60: e9 0f 01 08 ld r8,264(r15) > c000000000080d64: 3d 20 80 00 lis r9,-32768 > c000000000080d68: 79 4a 07 c6 rldicr r10,r10,32,31 > c000000000080d6c: 79 29 07 c6 rldicr r9,r9,32,31 > c000000000080d70: 61 4a 40 20 ori r10,r10,16416 > c000000000080d74: 61 29 00 20 ori r9,r9,32 > c000000000080d78: 7d 0a 50 38 and r10,r8,r10 > c000000000080d7c: 7f aa 48 00 cmpd cr7,r10,r9 > c000000000080d80: 41 9e 21 4c beq- cr7,c000000000082ecc <.xmon_core+0x2a1c> > c000000000080d84: e9 41 02 a0 ld r10,672(r1) > c000000000080d88: 61 08 04 00 ori r8,r8,1024 > c000000000080d8c: f9 0a 01 08 std r8,264(r10) > c000000000080d90: 3c e2 ff d4 addis r7,r2,-44 > c000000000080d94: 3f e2 00 0f addis r31,r2,15 > c000000000080d98: 3b ff 3e 10 addi r31,r31,15888 > c000000000080d9c: 3c c0 fc 00 lis r6,-1024 > c000000000080da0: 3b 07 99 c8 addi r24,r7,-26168 > c000000000080da4: 3c e0 fc 00 lis r7,-1024 > c000000000080da8: 7f fb fb 78 mr r27,r31 > c000000000080dac: 3d 02 ff ed addis r8,r2,-19 > c000000000080db0: 3d 42 ff d4 addis r10,r2,-44 > c000000000080db4: 3d 22 ff d4 addis r9,r2,-44 > c000000000080db8: 60 da 07 be ori r26,r6,1982 > c000000000080dbc: 60 f7 07 fe ori r23,r7,2046 > c000000000080dc0: 3c c0 7c 00 lis r6,31744 > c000000000080dc4: 3c e0 4c 00 lis r7,19456 > c000000000080dc8: 3b ff 00 08 addi r31,r31,8 > c000000000080dcc: 60 d9 01 24 ori r25,r6,292 > c000000000080dd0: 60 f6 00 24 ori r22,r7,36 > c000000000080dd4: 3a a8 44 e8 addi r21,r8,17640 > c000000000080dd8: 3a 8a 9a 10 addi r20,r10,-26096 > c000000000080ddc: 3a 69 99 88 addi r19,r9,-26232 > c000000000080de0: 3b db 20 08 addi r30,r27,8200 > c000000000080de4: 48 00 00 18 b c000000000080dfc <.xmon_core+0x94c> > c000000000080de8: 60 00 00 00 nop > c000000000080dec: 60 00 00 00 nop > > > c000000000080df0: 3b ff 00 20 addi r31,r31,32 > c000000000080df4: 7f bf f0 00 cmpd cr7,r31,r30 > c000000000080df8: 41 9e 00 50 beq- cr7,c000000000080e48 <.xmon_core+0x998> > c000000000080dfc: 81 3f 00 14 lwz r9,20(r31) > c000000000080e00: 71 26 00 0a andi. r6,r9,10 > c000000000080e04: 41 82 ff ec beq+ c000000000080df0 <.xmon_core+0x940> > c000000000080e08: 3b bf 00 08 addi r29,r31,8 > c000000000080e0c: e8 7f 00 00 ld r3,0(r31) > c000000000080e10: 38 a0 00 04 li r5,4 > c000000000080e14: 7f a4 eb 78 mr r4,r29 > c000000000080e18: 4b ff b5 a9 bl c00000000007c3c0 <.mread> > c000000000080e1c: 2f 83 00 04 cmpwi cr7,r3,4 > c000000000080e20: 41 9e 0a b0 beq- cr7,c0000000000818d0 <.xmon_core+0x1420> > c000000000080e24: e8 9f 00 00 ld r4,0(r31) > c000000000080e28: 7e 63 9b 78 mr r3,r19 > c000000000080e2c: 48 00 2a 15 bl c000000000083840 <.xmon_printf> > c000000000080e30: 60 00 00 00 nop > c000000000080e34: 39 20 00 00 li r9,0 > c000000000080e38: 91 3f 00 14 stw r9,20(r31) > c000000000080e3c: 3b ff 00 20 addi r31,r31,32 > c000000000080e40: 7f bf f0 00 cmpd cr7,r31,r30 > c000000000080e44: 40 9e ff b8 bne+ cr7,c000000000080dfc <.xmon_core+0x94c> > c000000000080e48: 39 20 00 00 li r9,0 > c000000000080e4c: 91 3b 66 50 stw r9,26192(r27) > c000000000080e50: 7c 00 04 ac sync > c000000000080e54: 3d 22 00 09 addis r9,r2,9 > c000000000080e58: 39 40 00 00 li r10,0 > c000000000080e5c: f9 49 2f 00 std r10,12032(r9) > c000000000080e60: 4b ff f8 f0 b c000000000080750 <.xmon_core+0x2a0> > c000000000080e64: 60 00 00 00 nop > c000000000080e68: 60 00 00 00 nop > c000000000080e6c: 60 00 00 00 nop > > /* > 1620 static void super_regs(void) > 1621 { > 1622 int cmd; > 1623 unsigned long val; > 1624 > 1625 cmd = skipbl(); > 1626 if (cmd == '\n') { > 1627 unsigned long sp, toc; > 1628 asm("mr %0,1" : "=r" (sp) :); > 1629 asm("mr %0,2" : "=r" (toc) :); > 1630 > 1631 printf("msr = "REG" sprg0= "REG"\n", > 1632 mfmsr(), mfspr(SPRN_SPRG0)); > 1633 printf("pvr = "REG" sprg1= "REG"\n", > 1634 mfspr(SPRN_PVR), mfspr(SPRN_SPRG1)); > 1635 printf("dec = "REG" sprg2= "REG"\n", > 1636 mfspr(SPRN_DEC), mfspr(SPRN_SPRG2)); > 1637 printf("sp = "REG" sprg3= "REG"\n", sp, mfspr(SPRN_SPRG3)); > 1638 printf("toc = "REG" dar = "REG"\n", toc, mfspr(SPRN_DAR)); > 1639 > 1640 return; > 1641 } > 1642 > 1643 scanhex(®no); > 1644 switch (cmd) { > */ > c000000000080e70: 4b ff e4 f1 bl c00000000007f360 <.skipbl> > c000000000080e74: 2f 83 00 0a cmpwi cr7,r3,10 > c000000000080e78: 7c 7c 1b 78 mr r28,r3 > c000000000080e7c: 41 9e 14 68 beq- cr7,c0000000000822e4 <.xmon_core+0x1e34> > c000000000080e80: 3b 5f 3e 10 addi r26,r31,15888 > c000000000080e84: 38 7a 66 d8 addi r3,r26,26328 > c000000000080e88: 4b ff e5 39 bl c00000000007f3c0 <.scanhex> > c000000000080e8c: 2f 9c 00 72 cmpwi cr7,r28,114 > c000000000080e90: 41 9e 09 e0 beq- cr7,c000000000081870 <.xmon_core+0x13c0> > c000000000080e94: 2f 9c 00 77 cmpwi cr7,r28,119 > c000000000080e98: 41 9e 09 b4 beq- cr7,c00000000008184c <.xmon_core+0x139c> > c000000000080e9c: 4b ff de e5 bl c00000000007ed80 <.scannl> > c000000000080ea0: 4b ff fb 70 b c000000000080a10 <.xmon_core+0x560> > c000000000080ea4: 60 00 00 00 nop > c000000000080ea8: 60 00 00 00 nop > c000000000080eac: 60 00 00 00 nop > > > c000000000080eb0: 3c 62 ff d4 addis r3,r2,-44 > c000000000080eb4: 38 63 92 48 addi r3,r3,-28088 > c000000000080eb8: 48 00 2a 29 bl c0000000000838e0 <.xmon_puts> > c000000000080ebc: 60 00 00 00 nop > > > c000000000080ec0: 4b ff fb 50 b c000000000080a10 <.xmon_core+0x560> > c000000000080ec4: 60 00 00 00 nop > c000000000080ec8: 60 00 00 00 nop > c000000000080ecc: 60 00 00 00 nop > > > c000000000080ed0: 3c 62 ff d4 addis r3,r2,-44 > c000000000080ed4: 38 63 92 30 addi r3,r3,-28112 > c000000000080ed8: 48 00 29 69 bl c000000000083840 <.xmon_printf> > c000000000080edc: 60 00 00 00 nop > c000000000080ee0: 3c 60 00 1e lis r3,30 > c000000000080ee4: 60 63 84 80 ori r3,r3,33920 > c000000000080ee8: 4b f9 c4 29 bl c00000000001d310 <.udelay> > c000000000080eec: 60 00 00 00 nop > c000000000080ef0: 4b ff fe a0 b c000000000080d90 <.xmon_core+0x8e0> > c000000000080ef4: 60 00 00 00 nop > c000000000080ef8: 60 00 00 00 nop > c000000000080efc: 60 00 00 00 nop > > > c000000000080f00: 38 7f 3e 10 addi r3,r31,15888 > c000000000080f04: 38 63 25 f0 addi r3,r3,9712 > c000000000080f08: 4b ff e4 b9 bl c00000000007f3c0 <.scanhex> > c000000000080f0c: 2f a3 00 00 cmpdi cr7,r3,0 > c000000000080f10: 41 9e fb 00 beq+ cr7,c000000000080a10 <.xmon_core+0x560> > c000000000080f14: 3e e2 ff ed addis r23,r2,-19 > c000000000080f18: 3b 97 44 e8 addi r28,r23,17640 > c000000000080f1c: 38 7c 00 58 addi r3,r28,88 > c000000000080f20: 4b ff e4 a1 bl c00000000007f3c0 <.scanhex> > c000000000080f24: 2f a3 00 00 cmpdi cr7,r3,0 > c000000000080f28: 41 9e fa e8 beq+ cr7,c000000000080a10 <.xmon_core+0x560> > c000000000080f2c: e9 3c 00 58 ld r9,88(r28) > c000000000080f30: 2f a9 00 00 cmpdi cr7,r9,0 > c000000000080f34: 41 9e 20 ac beq- cr7,c000000000082fe0 <.xmon_core+0x2b30> > c000000000080f38: 3b 40 ff ff li r26,-1 > c000000000080f3c: 3e c2 ff b1 addis r22,r2,-79 > c000000000080f40: 3b 80 00 00 li r28,0 > c000000000080f44: 7b 5a 04 20 clrldi r26,r26,48 > c000000000080f48: 3b 20 00 00 li r25,0 > c000000000080f4c: 3a d6 08 f0 addi r22,r22,2288 > c000000000080f50: 48 00 00 48 b c000000000080f98 <.xmon_core+0xae8> > c000000000080f54: 60 00 00 00 nop > c000000000080f58: 60 00 00 00 nop > c000000000080f5c: 60 00 00 00 nop > > > c000000000080f60: 89 21 01 60 lbz r9,352(r1) > c000000000080f64: 39 57 44 e8 addi r10,r23,17640 > c000000000080f68: 3b 9c 00 01 addi r28,r28,1 > c000000000080f6c: e9 4a 00 58 ld r10,88(r10) > c000000000080f70: 7b 9c 00 20 clrldi r28,r28,32 > c000000000080f74: 7d 29 d2 78 xor r9,r9,r26 > c000000000080f78: 7b 5a c2 02 rldicl r26,r26,56,8 > c000000000080f7c: 79 29 0d e8 rldic r9,r9,1,55 > c000000000080f80: 7f bc 50 40 cmpld cr7,r28,r10 > c000000000080f84: 7d 36 4a 14 add r9,r22,r9 > c000000000080f88: 7f 99 e3 78 mr r25,r28 > c000000000080f8c: a1 29 01 78 lhz r9,376(r9) > c000000000080f90: 7d 3a d2 78 xor r26,r9,r26 > c000000000080f94: 40 9c 1c 14 bge- cr7,c000000000082ba8 <.xmon_core+0x26f8> > c000000000080f98: 3b 1f 3e 10 addi r24,r31,15888 > c000000000080f9c: 38 81 01 60 addi r4,r1,352 > c000000000080fa0: e8 78 25 f0 ld r3,9712(r24) > c000000000080fa4: 38 a0 00 01 li r5,1 > c000000000080fa8: 7c 79 1a 14 add r3,r25,r3 > c000000000080fac: 4b ff b4 15 bl c00000000007c3c0 <.mread> > c000000000080fb0: 2f a3 00 00 cmpdi cr7,r3,0 > c000000000080fb4: 40 9e ff ac bne+ cr7,c000000000080f60 <.xmon_core+0xab0> > c000000000080fb8: e8 98 25 f0 ld r4,9712(r24) > c000000000080fbc: 3c 62 ff d4 addis r3,r2,-44 > c000000000080fc0: 38 63 98 f0 addi r3,r3,-26384 > c000000000080fc4: 7c 99 22 14 add r4,r25,r4 > c000000000080fc8: 48 00 28 79 bl c000000000083840 <.xmon_printf> > c000000000080fcc: 60 00 00 00 nop > c000000000080fd0: 7f 44 07 b4 extsw r4,r26 > c000000000080fd4: 3c 62 ff d3 addis r3,r2,-45 > c000000000080fd8: 38 63 8a b8 addi r3,r3,-30024 > c000000000080fdc: 48 00 28 65 bl c000000000083840 <.xmon_printf> > c000000000080fe0: 60 00 00 00 nop > c000000000080fe4: 4b ff fa 2c b c000000000080a10 <.xmon_core+0x560> > c000000000080fe8: 60 00 00 00 nop > c000000000080fec: 60 00 00 00 nop > > > c000000000080ff0: 4b ff dd 01 bl c00000000007ecf0 <.inchar> > c000000000080ff4: 2f 83 00 72 cmpwi cr7,r3,114 > c000000000080ff8: 41 9e 1a e4 beq- cr7,c000000000082adc <.xmon_core+0x262c> > c000000000080ffc: 2f 83 00 68 cmpwi cr7,r3,104 > c000000000081000: 41 9e 1b 3c beq- cr7,c000000000082b3c <.xmon_core+0x268c> > c000000000081004: 2f 83 00 70 cmpwi cr7,r3,112 > c000000000081008: 40 9e fa 08 bne+ cr7,c000000000080a10 <.xmon_core+0x560> > c00000000008100c: 3d 22 00 0b addis r9,r2,11 > c000000000081010: 39 29 6a 30 addi r9,r9,27184 > c000000000081014: e9 29 01 30 ld r9,304(r9) > c000000000081018: e9 49 00 00 ld r10,0(r9) > c00000000008101c: f8 41 00 28 std r2,40(r1) > c000000000081020: 7d 49 03 a6 mtctr r10 > c000000000081024: e8 49 00 08 ld r2,8(r9) > c000000000081028: 4e 80 04 21 bctrl > c00000000008102c: e8 41 00 28 ld r2,40(r1) > c000000000081030: 4b ff f9 e0 b c000000000080a10 <.xmon_core+0x560> > c000000000081034: 60 00 00 00 nop > c000000000081038: 60 00 00 00 nop > c00000000008103c: 60 00 00 00 nop > > > c000000000081040: 4b ff ef e1 bl c000000000080020 <.dump_segments> > c000000000081044: 4b ff f9 cc b c000000000080a10 <.xmon_core+0x560> > c000000000081048: 60 00 00 00 nop > c00000000008104c: 60 00 00 00 nop > > > c000000000081050: 4b ff ec 31 bl c00000000007fc80 <.proccall> > c000000000081054: 4b ff f9 bc b c000000000080a10 <.xmon_core+0x560> > c000000000081058: 60 00 00 00 nop > c00000000008105c: 60 00 00 00 nop > > c000000000081060: 4b ff dc 91 bl c00000000007ecf0 <.inchar> > c000000000081064: 39 23 ff 9c addi r9,r3,-100 > c000000000081068: 7c 7c 1b 78 mr r28,r3 > c00000000008106c: 2b 89 00 16 cmplwi cr7,r9,22 > c000000000081070: 40 9d 09 80 ble- cr7,c0000000000819f0 <.xmon_core+0x1540> > c000000000081074: 3b 5f 3e 10 addi r26,r31,15888 > c000000000081078: 38 7a 25 f0 addi r3,r26,9712 > c00000000008107c: 93 9a 24 d8 stw r28,9432(r26) > c000000000081080: 4b ff e3 41 bl c00000000007f3c0 <.scanhex> > c000000000081084: 4b ff e2 dd bl c00000000007f360 <.skipbl> > c000000000081088: 2f 83 00 3f cmpwi cr7,r3,63 > c00000000008108c: 41 9e 1e fc beq- cr7,c000000000082f88 <.xmon_core+0x2ad8> > c000000000081090: 3d 22 ff d4 addis r9,r2,-44 > c000000000081094: 90 7a 24 d8 stw r3,9432(r26) > c000000000081098: 39 29 8d f8 addi r9,r9,-29192 > c00000000008109c: 3f 82 ff ed addis r28,r2,-19 > c0000000000810a0: f9 3a 26 38 std r9,9784(r26) > c0000000000810a4: 3a c0 00 04 li r22,4 > c0000000000810a8: 3a e0 00 02 li r23,2 > c0000000000810ac: 3b 40 00 01 li r26,1 > c0000000000810b0: 3b 00 00 08 li r24,8 > c0000000000810b4: 3b 20 00 00 li r25,0 > c0000000000810b8: 60 00 00 00 nop > c0000000000810bc: 60 00 00 00 nop > c0000000000810c0: 4b ff e2 a1 bl c00000000007f360 <.skipbl> > c0000000000810c4: 2f 83 00 0a cmpwi cr7,r3,10 > c0000000000810c8: 41 9e 00 3c beq- cr7,c000000000081104 <.xmon_core+0xc54> > c0000000000810cc: 2f 83 00 6c cmpwi cr7,r3,108 > c0000000000810d0: 41 9e 08 80 beq- cr7,c000000000081950 <.xmon_core+0x14a0> > c0000000000810d4: 41 9d 07 cc bgt- cr7,c0000000000818a0 <.xmon_core+0x13f0> > c0000000000810d8: 2f 83 00 62 cmpwi cr7,r3,98 > c0000000000810dc: 41 9e 08 94 beq- cr7,c000000000081970 <.xmon_core+0x14c0> > c0000000000810e0: 2f 83 00 64 cmpwi cr7,r3,100 > c0000000000810e4: 41 9e 08 7c beq- cr7,c000000000081960 <.xmon_core+0x14b0> > c0000000000810e8: 2f 83 00 2e cmpwi cr7,r3,46 > c0000000000810ec: 40 9e ff d4 bne+ cr7,c0000000000810c0 <.xmon_core+0xc10> > c0000000000810f0: 39 3f 3e 10 addi r9,r31,15888 > c0000000000810f4: 93 29 66 d4 stw r25,26324(r9) > c0000000000810f8: 4b ff e2 69 bl c00000000007f360 <.skipbl> > c0000000000810fc: 2f 83 00 0a cmpwi cr7,r3,10 > c000000000081100: 40 9e ff cc bne+ cr7,c0000000000810cc <.xmon_core+0xc1c> > c000000000081104: 3d 42 ff ed addis r10,r2,-19 > c000000000081108: 39 4a 44 e8 addi r10,r10,17640 > c00000000008110c: 81 2a 00 40 lwz r9,64(r10) > c000000000081110: 2f 89 00 00 cmpwi cr7,r9,0 > c000000000081114: 40 9d 1b 28 ble- cr7,c000000000082c3c <.xmon_core+0x278c> > c000000000081118: 2f 89 00 08 cmpwi cr7,r9,8 > c00000000008111c: 41 9d 18 ac bgt- cr7,c0000000000829c8 <.xmon_core+0x2518> > c000000000081120: 3d 42 ff d4 addis r10,r2,-44 > c000000000081124: fb 61 01 c0 std r27,448(r1) > c000000000081128: 39 4a 8e 10 addi r10,r10,-29168 > c00000000008112c: fb c1 01 c8 std r30,456(r1) > c000000000081130: f9 41 01 b8 std r10,440(r1) > c000000000081134: 39 3f 3e 10 addi r9,r31,15888 > c000000000081138: 3c e2 ff d4 addis r7,r2,-44 > c00000000008113c: 3e c2 ff d5 addis r22,r2,-43 > c000000000081140: e8 89 25 f0 ld r4,9712(r9) > c000000000081144: 3d 02 ff b1 addis r8,r2,-79 > c000000000081148: 3f 02 ff d4 addis r24,r2,-44 > c00000000008114c: 7d 3c 4b 78 mr r28,r9 > c000000000081150: 3f 42 ff ed addis r26,r2,-19 > c000000000081154: 39 c7 8e 00 addi r14,r7,-29184 > c000000000081158: 3a d6 f5 50 addi r22,r22,-2736 > c00000000008115c: 3a 68 08 f0 addi r19,r8,2288 > c000000000081160: 3b 18 86 58 addi r24,r24,-31144 > c000000000081164: 3e e2 ff 33 addis r23,r2,-205 > c000000000081168: 81 3c 66 d4 lwz r9,26324(r28) > c00000000008116c: 2f 89 00 00 cmpwi cr7,r9,0 > c000000000081170: 41 9e 1a 00 beq- cr7,c000000000082b70 <.xmon_core+0x26c0> > c000000000081174: 80 bc 66 d0 lwz r5,26320(r28) > c000000000081178: 39 20 ff ae li r9,-82 > c00000000008117c: 7d c3 73 78 mr r3,r14 > c000000000081180: 7c a5 00 34 cntlzw r5,r5 > c000000000081184: 54 a5 d9 7e rlwinm r5,r5,27,5,31 > c000000000081188: 78 a5 00 20 clrldi r5,r5,32 > c00000000008118c: 7c a5 00 d0 neg r5,r5 > c000000000081190: 7c a5 48 38 and r5,r5,r9 > c000000000081194: 38 a5 00 72 addi r5,r5,114 > c000000000081198: 48 00 26 a9 bl c000000000083840 <.xmon_printf> > c00000000008119c: 60 00 00 00 nop > c0000000000811a0: 81 3c 66 d4 lwz r9,26324(r28) > c0000000000811a4: 2f 89 00 00 cmpwi cr7,r9,0 > c0000000000811a8: 40 9e 00 a8 bne- cr7,c000000000081250 <.xmon_core+0xda0> > c0000000000811ac: 81 3c 66 d0 lwz r9,26320(r28) > c0000000000811b0: 2f 89 00 00 cmpwi cr7,r9,0 > c0000000000811b4: 40 9e 18 88 bne- cr7,c000000000082a3c <.xmon_core+0x258c> > c0000000000811b8: 38 60 00 20 li r3,32 > c0000000000811bc: 48 00 23 95 bl c000000000083550 <.xmon_putchar> > c0000000000811c0: 60 00 00 00 nop > c0000000000811c4: e9 21 01 60 ld r9,352(r1) > c0000000000811c8: 2f a9 00 00 cmpdi cr7,r9,0 > c0000000000811cc: 41 9e 1e 20 beq- cr7,c000000000082fec <.xmon_core+0x2b3c> > c0000000000811d0: 3a a1 01 27 addi r21,r1,295 > c0000000000811d4: 3b 60 00 01 li r27,1 > c0000000000811d8: 60 00 00 00 nop > c0000000000811dc: 60 00 00 00 nop > c0000000000811e0: 8c 95 00 01 lbzu r4,1(r21) > c0000000000811e4: 7f 03 c3 78 mr r3,r24 > c0000000000811e8: 7f 79 07 b4 extsw r25,r27 > c0000000000811ec: 48 00 26 55 bl c000000000083840 <.xmon_printf> > c0000000000811f0: 60 00 00 00 nop > c0000000000811f4: e9 21 01 60 ld r9,352(r1) > c0000000000811f8: 7f a9 d8 40 cmpld cr7,r9,r27 > c0000000000811fc: 3b 7b 00 01 addi r27,r27,1 > c000000000081200: 41 9d ff e0 bgt+ cr7,c0000000000811e0 <.xmon_core+0xd30> > c000000000081204: 39 3a 44 e8 addi r9,r26,17640 > c000000000081208: 81 29 00 40 lwz r9,64(r9) > c00000000008120c: 7f 89 c8 00 cmpw cr7,r9,r25 > c000000000081210: 40 9d 00 40 ble- cr7,c000000000081250 <.xmon_core+0xda0> > c000000000081214: 60 00 00 00 nop > c000000000081218: 60 00 00 00 nop > c00000000008121c: 60 00 00 00 nop > c000000000081220: e9 3c 21 4a lwa r9,8520(r28) > c000000000081224: 7e c3 b3 78 mr r3,r22 > c000000000081228: 79 29 1f 24 rldicr r9,r9,3,60 > c00000000008122c: 7c 93 48 2a ldx r4,r19,r9 > c000000000081230: 48 00 26 11 bl c000000000083840 <.xmon_printf> > c000000000081234: 60 00 00 00 nop > c000000000081238: 39 3a 44 e8 addi r9,r26,17640 > c00000000008123c: 81 49 00 40 lwz r10,64(r9) > c000000000081240: 39 39 00 01 addi r9,r25,1 > c000000000081244: 7d 39 07 b4 extsw r25,r9 > c000000000081248: 7f 8a 48 00 cmpw cr7,r10,r9 > c00000000008124c: 41 9d ff d4 bgt+ cr7,c000000000081220 <.xmon_core+0xd70> > c000000000081250: 38 60 00 20 li r3,32 > c000000000081254: 3b 20 00 00 li r25,0 > c000000000081258: 48 00 22 f9 bl c000000000083550 <.xmon_putchar> > c00000000008125c: 60 00 00 00 nop > c000000000081260: 39 3a 44 e8 addi r9,r26,17640 > c000000000081264: 3b 60 00 00 li r27,0 > c000000000081268: ea 89 00 42 lwa r20,64(r9) > c00000000008126c: 3a a0 00 0a li r21,10 > c000000000081270: 3b c0 00 0d li r30,13 > c000000000081274: 60 00 00 00 nop > c000000000081278: 60 00 00 00 nop > c00000000008127c: 60 00 00 00 nop > c000000000081280: 38 61 01 60 addi r3,r1,352 > c000000000081284: 4b ff e1 3d bl c00000000007f3c0 <.scanhex> > c000000000081288: 2f a3 00 00 cmpdi cr7,r3,0 > c00000000008128c: 41 9e 00 6c beq- cr7,c0000000000812f8 <.xmon_core+0xe48> > c000000000081290: 39 3a 44 e8 addi r9,r26,17640 > c000000000081294: 80 e9 00 40 lwz r7,64(r9) > c000000000081298: 2f 87 00 00 cmpwi cr7,r7,0 > c00000000008129c: 7c e5 07 b4 extsw r5,r7 > c0000000000812a0: 40 9d 00 38 ble- cr7,c0000000000812d8 <.xmon_core+0xe28> > c0000000000812a4: e8 c1 01 60 ld r6,352(r1) > c0000000000812a8: 39 01 01 27 addi r8,r1,295 > c0000000000812ac: 78 e7 18 28 rldic r7,r7,3,32 > c0000000000812b0: 7f 69 db 78 mr r9,r27 > c0000000000812b4: 60 00 00 00 nop > c0000000000812b8: 60 00 00 00 nop > c0000000000812bc: 60 00 00 00 nop > c0000000000812c0: 39 49 00 08 addi r10,r9,8 > c0000000000812c4: 7c c9 4c 36 srd r9,r6,r9 > c0000000000812c8: 7f 8a 38 40 cmplw cr7,r10,r7 > c0000000000812cc: 9d 28 00 01 stbu r9,1(r8) > c0000000000812d0: 79 49 00 20 clrldi r9,r10,32 > c0000000000812d4: 40 9e ff ec bne+ cr7,c0000000000812c0 <.xmon_core+0xe10> > c0000000000812d8: 81 3c 66 d0 lwz r9,26320(r28) > c0000000000812dc: 2f 89 00 00 cmpwi cr7,r9,0 > c0000000000812e0: 41 9e 13 90 beq- cr7,c000000000082670 <.xmon_core+0x21c0> > c0000000000812e4: e8 7c 25 f0 ld r3,9712(r28) > c0000000000812e8: 38 81 01 28 addi r4,r1,296 > c0000000000812ec: 4b ff b9 35 bl c00000000007cc20 <.mwrite> > c0000000000812f0: 39 3a 44 e8 addi r9,r26,17640 > c0000000000812f4: ea 89 00 42 lwa r20,64(r9) > c0000000000812f8: 4b ff e0 69 bl c00000000007f360 <.skipbl> > c0000000000812fc: 2f 83 00 0a cmpwi cr7,r3,10 > c000000000081300: 41 9e 18 98 beq- cr7,c000000000082b98 <.xmon_core+0x26e8> > c000000000081304: 38 63 00 01 addi r3,r3,1 > c000000000081308: 7f 74 db 78 mr r20,r27 > c00000000008130c: 2b 83 00 79 cmplwi cr7,r3,121 > c000000000081310: 41 9d ff 70 bgt+ cr7,c000000000081280 <.xmon_core+0xdd0> > c000000000081314: 39 37 fa 44 addi r9,r23,-1468 > c000000000081318: 78 63 17 88 rldic r3,r3,2,30 > c00000000008131c: 7d 49 1a aa lwax r10,r9,r3 > c000000000081320: 7d 2a 4a 14 add r9,r10,r9 > c000000000081324: 7d 29 03 a6 mtctr r9 > c000000000081328: 4e 80 04 20 bctr > c00000000008132c: 00 00 13 14 .long 0x1314 > c000000000081330: ff ff ff 54 .long 0xffffff54 > c000000000081334: ff ff ff 54 .long 0xffffff54 > c000000000081338: ff ff ff 54 .long 0xffffff54 > c00000000008133c: ff ff ff 54 .long 0xffffff54 > c000000000081340: ff ff ff 54 .long 0xffffff54 > c000000000081344: ff ff ff 54 .long 0xffffff54 > c000000000081348: ff ff ff 54 .long 0xffffff54 > c00000000008134c: ff ff ff 54 .long 0xffffff54 > c000000000081350: ff ff ff 54 .long 0xffffff54 > c000000000081354: ff ff ff 54 .long 0xffffff54 > c000000000081358: ff ff ff 54 .long 0xffffff54 > c00000000008135c: ff ff ff 54 .long 0xffffff54 > c000000000081360: ff ff ff 54 .long 0xffffff54 > c000000000081364: ff ff ff 54 .long 0xffffff54 > c000000000081368: ff ff ff 54 .long 0xffffff54 > c00000000008136c: ff ff ff 54 .long 0xffffff54 > c000000000081370: ff ff ff 54 .long 0xffffff54 > c000000000081374: ff ff ff 54 .long 0xffffff54 > c000000000081378: ff ff ff 54 .long 0xffffff54 > c00000000008137c: ff ff ff 54 .long 0xffffff54 > c000000000081380: ff ff ff 54 .long 0xffffff54 > c000000000081384: ff ff ff 54 .long 0xffffff54 > c000000000081388: ff ff ff 54 .long 0xffffff54 > c00000000008138c: ff ff ff 54 .long 0xffffff54 > c000000000081390: ff ff ff 54 .long 0xffffff54 > c000000000081394: ff ff ff 54 .long 0xffffff54 > c000000000081398: ff ff ff 54 .long 0xffffff54 > c00000000008139c: ff ff ff 54 .long 0xffffff54 > c0000000000813a0: ff ff ff 54 .long 0xffffff54 > c0000000000813a4: ff ff ff 54 .long 0xffffff54 > c0000000000813a8: ff ff ff 54 .long 0xffffff54 > c0000000000813ac: ff ff ff 54 .long 0xffffff54 > c0000000000813b0: ff ff ff 54 .long 0xffffff54 > c0000000000813b4: ff ff ff 54 .long 0xffffff54 > c0000000000813b8: ff ff ff 54 .long 0xffffff54 > c0000000000813bc: ff ff ff 54 .long 0xffffff54 > c0000000000813c0: ff ff ff 54 .long 0xffffff54 > c0000000000813c4: ff ff ff 54 .long 0xffffff54 > c0000000000813c8: ff ff ff 54 .long 0xffffff54 > c0000000000813cc: 00 00 12 48 .long 0x1248 > c0000000000813d0: ff ff ff 54 .long 0xffffff54 > c0000000000813d4: ff ff ff 54 .long 0xffffff54 > c0000000000813d8: ff ff ff 54 .long 0xffffff54 > c0000000000813dc: ff ff ff 54 .long 0xffffff54 > c0000000000813e0: 00 00 12 2c .long 0x122c > c0000000000813e4: ff ff ff 54 .long 0xffffff54 > c0000000000813e8: 00 00 12 1c .long 0x121c > c0000000000813ec: 00 00 11 e0 .long 0x11e0 > c0000000000813f0: ff ff ff 54 .long 0xffffff54 > c0000000000813f4: ff ff ff 54 .long 0xffffff54 > c0000000000813f8: ff ff ff 54 .long 0xffffff54 > c0000000000813fc: ff ff ff 54 .long 0xffffff54 > c000000000081400: ff ff ff 54 .long 0xffffff54 > c000000000081404: ff ff ff 54 .long 0xffffff54 > c000000000081408: ff ff ff 54 .long 0xffffff54 > c00000000008140c: ff ff ff 54 .long 0xffffff54 > c000000000081410: ff ff ff 54 .long 0xffffff54 > c000000000081414: ff ff ff 54 .long 0xffffff54 > c000000000081418: ff ff ff 54 .long 0xffffff54 > c00000000008141c: ff ff ff 54 .long 0xffffff54 > c000000000081420: 00 00 11 a0 .long 0x11a0 > c000000000081424: ff ff ff 54 .long 0xffffff54 > c000000000081428: 00 00 11 74 .long 0x1174 > c00000000008142c: 00 00 11 60 .long 0x1160 > c000000000081430: ff ff ff 54 .long 0xffffff54 > c000000000081434: ff ff ff 54 .long 0xffffff54 > c000000000081438: ff ff ff 54 .long 0xffffff54 > c00000000008143c: ff ff ff 54 .long 0xffffff54 > c000000000081440: ff ff ff 54 .long 0xffffff54 > c000000000081444: ff ff ff 54 .long 0xffffff54 > c000000000081448: ff ff ff 54 .long 0xffffff54 > c00000000008144c: ff ff ff 54 .long 0xffffff54 > c000000000081450: ff ff ff 54 .long 0xffffff54 > c000000000081454: ff ff ff 54 .long 0xffffff54 > c000000000081458: ff ff ff 54 .long 0xffffff54 > c00000000008145c: ff ff ff 54 .long 0xffffff54 > c000000000081460: ff ff ff 54 .long 0xffffff54 > c000000000081464: ff ff ff 54 .long 0xffffff54 > c000000000081468: ff ff ff 54 .long 0xffffff54 > c00000000008146c: ff ff ff 54 .long 0xffffff54 > c000000000081470: ff ff ff 54 .long 0xffffff54 > c000000000081474: ff ff ff 54 .long 0xffffff54 > c000000000081478: ff ff ff 54 .long 0xffffff54 > c00000000008147c: ff ff ff 54 .long 0xffffff54 > c000000000081480: ff ff ff 54 .long 0xffffff54 > c000000000081484: ff ff ff 54 .long 0xffffff54 > c000000000081488: ff ff ff 54 .long 0xffffff54 > c00000000008148c: ff ff ff 54 .long 0xffffff54 > c000000000081490: ff ff ff 54 .long 0xffffff54 > c000000000081494: ff ff ff 54 .long 0xffffff54 > c000000000081498: ff ff ff 54 .long 0xffffff54 > c00000000008149c: ff ff ff 54 .long 0xffffff54 > c0000000000814a0: 00 00 11 3c .long 0x113c > c0000000000814a4: ff ff ff 54 .long 0xffffff54 > c0000000000814a8: 00 00 11 20 .long 0x1120 > c0000000000814ac: ff ff ff 54 .long 0xffffff54 > c0000000000814b0: ff ff ff 54 .long 0xffffff54 > c0000000000814b4: ff ff ff 54 .long 0xffffff54 > c0000000000814b8: 00 00 11 0c .long 0x110c > c0000000000814bc: ff ff ff 54 .long 0xffffff54 > c0000000000814c0: ff ff ff 54 .long 0xffffff54 > c0000000000814c4: ff ff ff 54 .long 0xffffff54 > c0000000000814c8: ff ff ff 54 .long 0xffffff54 > c0000000000814cc: ff ff ff 54 .long 0xffffff54 > c0000000000814d0: ff ff ff 54 .long 0xffffff54 > c0000000000814d4: ff ff ff 54 .long 0xffffff54 > c0000000000814d8: ff ff ff 54 .long 0xffffff54 > c0000000000814dc: ff ff ff 54 .long 0xffffff54 > c0000000000814e0: 00 00 10 f8 .long 0x10f8 > c0000000000814e4: 00 00 10 e4 .long 0x10e4 > c0000000000814e8: 00 00 10 d4 .long 0x10d4 > c0000000000814ec: ff ff ff 54 .long 0xffffff54 > c0000000000814f0: ff ff ff 54 .long 0xffffff54 > c0000000000814f4: ff ff ff 54 .long 0xffffff54 > c0000000000814f8: 00 00 10 bc .long 0x10bc > c0000000000814fc: ff ff ff 54 .long 0xffffff54 > c000000000081500: ff ff ff 54 .long 0xffffff54 > c000000000081504: 00 00 10 a8 .long 0x10a8 > c000000000081508: 00 00 11 0c .long 0x110c > c00000000008150c: 00 00 11 cc .long 0x11cc > c000000000081510: 00 00 13 14 .long 0x1314 > c000000000081514: 60 00 00 00 nop > c000000000081518: 60 00 00 00 nop > c00000000008151c: 60 00 00 00 nop > c000000000081520: 4b ff e9 a1 bl c00000000007fec0 <.symbol_lookup> > c000000000081524: 4b ff f4 ec b c000000000080a10 <.xmon_core+0x560> > c000000000081528: 60 00 00 00 nop > c00000000008152c: 60 00 00 00 nop > > > c000000000081530: 4b ff e5 d1 bl c00000000007fb00 <.cacheflush> > c000000000081534: 4b ff f4 dc b c000000000080a10 <.xmon_core+0x560> > c000000000081538: 60 00 00 00 nop > c00000000008153c: 60 00 00 00 nop > > > c000000000081540: 7d e3 7b 78 mr r3,r15 > c000000000081544: 4b ff db 1d bl c00000000007f060 <.excprint> > c000000000081548: 4b ff f4 c8 b c000000000080a10 <.xmon_core+0x560> > c00000000008154c: 60 00 00 00 nop > > > c000000000081550: 4b ff d7 a1 bl c00000000007ecf0 <.inchar> > c000000000081554: 2f 83 00 70 cmpwi cr7,r3,112 > c000000000081558: 7c 7c 1b 78 mr r28,r3 > c00000000008155c: 41 9e 15 ac beq- cr7,c000000000082b08 <.xmon_core+0x2658> > c000000000081560: 78 69 00 20 clrldi r9,r3,32 > c000000000081564: 39 49 ff d0 addi r10,r9,-48 > c000000000081568: 2b 8a 00 09 cmplwi cr7,r10,9 > c00000000008156c: 40 9d 04 74 ble- cr7,c0000000000819e0 <.xmon_core+0x1530> > c000000000081570: 39 49 ff 9f addi r10,r9,-97 > c000000000081574: 2b 8a 00 05 cmplwi cr7,r10,5 > c000000000081578: 40 9d 0b e8 ble- cr7,c000000000082160 <.xmon_core+0x1cb0> > c00000000008157c: 39 29 ff bf addi r9,r9,-65 > c000000000081580: 2b 89 00 05 cmplwi cr7,r9,5 > c000000000081584: 41 9d 04 48 bgt- cr7,c0000000000819cc <.xmon_core+0x151c> > c000000000081588: 2f 9c 00 64 cmpwi cr7,r28,100 > c00000000008158c: 40 9e 04 54 bne- cr7,c0000000000819e0 <.xmon_core+0x1530> > c000000000081590: 3b 5f 3e 10 addi r26,r31,15888 > c000000000081594: 38 7a 25 f0 addi r3,r26,9712 > c000000000081598: 4b ff de 29 bl c00000000007f3c0 <.scanhex> > c00000000008159c: 81 3a 24 d8 lwz r9,9432(r26) > c0000000000815a0: 2f 89 00 0a cmpwi cr7,r9,10 > c0000000000815a4: 41 9e 00 0c beq- cr7,c0000000000815b0 <.xmon_core+0x1100> > c0000000000815a8: 39 20 00 00 li r9,0 > c0000000000815ac: 91 3a 24 d8 stw r9,9432(r26) > c0000000000815b0: 2f 9c 00 69 cmpwi cr7,r28,105 > c0000000000815b4: 41 9e 12 30 beq- cr7,c0000000000827e4 <.xmon_core+0x2334> > c0000000000815b8: 2f 9c 00 6c cmpwi cr7,r28,108 > c0000000000815bc: 41 9e 15 d4 beq- cr7,c000000000082b90 <.xmon_core+0x26e0> > c0000000000815c0: 2f 9c 00 72 cmpwi cr7,r28,114 > c0000000000815c4: 3f 82 ff ed addis r28,r2,-19 > c0000000000815c8: 3b 9c 44 e8 addi r28,r28,17640 > c0000000000815cc: 38 7c 00 50 addi r3,r28,80 > c0000000000815d0: 41 9e 0b a8 beq- cr7,c000000000082178 <.xmon_core+0x1cc8> > c0000000000815d4: 4b ff dd ed bl c00000000007f3c0 <.scanhex> > c0000000000815d8: e8 9c 00 50 ld r4,80(r28) > c0000000000815dc: 2f a4 00 00 cmpdi cr7,r4,0 > c0000000000815e0: 40 9e 0a 10 bne- cr7,c000000000081ff0 <.xmon_core+0x1b40> > c0000000000815e4: 39 20 00 40 li r9,64 > c0000000000815e8: 38 80 00 40 li r4,64 > c0000000000815ec: f9 3c 00 50 std r9,80(r28) > c0000000000815f0: 3b 9f 3e 10 addi r28,r31,15888 > c0000000000815f4: e8 7c 25 f0 ld r3,9712(r28) > c0000000000815f8: 4b ff d2 99 bl c00000000007e890 <.prdump> > c0000000000815fc: 3d 22 ff ed addis r9,r2,-19 > c000000000081600: e9 5c 25 f0 ld r10,9712(r28) > c000000000081604: 39 29 44 e8 addi r9,r9,17640 > c000000000081608: e9 09 00 50 ld r8,80(r9) > c00000000008160c: 3d 22 ff db addis r9,r2,-37 > c000000000081610: 39 29 df 10 addi r9,r9,-8432 > c000000000081614: 7d 48 52 14 add r10,r8,r10 > c000000000081618: f9 3c 26 38 std r9,9784(r28) > c00000000008161c: f9 5c 25 f0 std r10,9712(r28) > c000000000081620: 4b ff f3 f0 b c000000000080a10 <.xmon_core+0x560> > c000000000081624: 60 00 00 00 nop > c000000000081628: 60 00 00 00 nop > c00000000008162c: 60 00 00 00 nop > > > c000000000081630: 38 61 01 60 addi r3,r1,352 > c000000000081634: 4b ff dd 8d bl c00000000007f3c0 <.scanhex> > c000000000081638: 2f a3 00 00 cmpdi cr7,r3,0 > c00000000008163c: 41 9e 08 1c beq- cr7,c000000000081e58 <.xmon_core+0x19a8> > c000000000081640: e8 81 01 60 ld r4,352(r1) > c000000000081644: 39 3f 3e 10 addi r9,r31,15888 > c000000000081648: 39 09 24 e8 addi r8,r9,9448 > c00000000008164c: 7c 8a 36 70 srawi r10,r4,6 > c000000000081650: 7d 4a 01 94 addze r10,r10 > c000000000081654: 7d 4a 07 b4 extsw r10,r10 > c000000000081658: 79 4a 1f 24 rldicr r10,r10,3,60 > c00000000008165c: 7d 08 50 2a ldx r8,r8,r10 > c000000000081660: 78 8a 06 a0 clrldi r10,r4,58 > c000000000081664: 7d 0a 54 36 srd r10,r8,r10 > c000000000081668: 79 48 07 e1 clrldi. r8,r10,63 > c00000000008166c: 41 82 10 44 beq- c0000000000826b0 <.xmon_core+0x2200> > c000000000081670: 3d 02 ff ed addis r8,r2,-19 > c000000000081674: 38 e0 00 00 li r7,0 > c000000000081678: 39 48 44 e8 addi r10,r8,17640 > c00000000008167c: f8 ea 00 28 std r7,40(r10) > c000000000081680: 7c 00 04 ac sync > c000000000081684: e8 e1 01 60 ld r7,352(r1) > c000000000081688: 90 e9 66 54 stw r7,26196(r9) > c00000000008168c: e9 2a 00 28 ld r9,40(r10) > c000000000081690: 2f a9 00 00 cmpdi cr7,r9,0 > c000000000081694: 40 9e 00 30 bne- cr7,c0000000000816c4 <.xmon_core+0x1214> > c000000000081698: 3d 40 00 98 lis r10,152 > c00000000008169c: 61 46 96 7f ori r6,r10,38527 > c0000000000816a0: 7c c9 03 a6 mtctr r6 > c0000000000816a4: 48 00 00 10 b c0000000000816b4 <.xmon_core+0x1204> > c0000000000816a8: 60 00 00 00 nop > c0000000000816ac: 60 00 00 00 nop > > > c0000000000816b0: 42 40 13 e0 bdz- c000000000082a90 <.xmon_core+0x25e0> > c0000000000816b4: 39 28 44 e8 addi r9,r8,17640 > c0000000000816b8: e9 49 00 28 ld r10,40(r9) > c0000000000816bc: 2f aa 00 00 cmpdi cr7,r10,0 > c0000000000816c0: 41 9e ff f0 beq+ cr7,c0000000000816b0 <.xmon_core+0x1200> > c0000000000816c4: 3b 80 00 01 li r28,1 > c0000000000816c8: 4b ff f0 74 b c00000000008073c <.xmon_core+0x28c> > c0000000000816cc: 60 00 00 00 nop > > > c0000000000816d0: 3d 22 ff d4 addis r9,r2,-44 > c0000000000816d4: 39 29 9a 90 addi r9,r9,-25968 > c0000000000816d8: e8 69 00 00 ld r3,0(r9) > c0000000000816dc: e8 89 00 08 ld r4,8(r9) > c0000000000816e0: e8 a9 00 10 ld r5,16(r9) > c0000000000816e4: e8 c9 00 18 ld r6,24(r9) > c0000000000816e8: e8 e9 00 20 ld r7,32(r9) > c0000000000816ec: e9 09 00 28 ld r8,40(r9) > c0000000000816f0: 81 49 00 30 lwz r10,48(r9) > c0000000000816f4: 89 29 00 34 lbz r9,52(r9) > c0000000000816f8: f8 61 01 28 std r3,296(r1) > c0000000000816fc: f8 81 01 30 std r4,304(r1) > c000000000081700: f8 a1 01 38 std r5,312(r1) > c000000000081704: f8 c1 01 40 std r6,320(r1) > c000000000081708: f8 e1 01 48 std r7,328(r1) > c00000000008170c: f9 01 01 50 std r8,336(r1) > c000000000081710: 91 41 01 58 stw r10,344(r1) > c000000000081714: 99 21 01 5c stb r9,348(r1) > c000000000081718: 4b ff d5 d9 bl c00000000007ecf0 <.inchar> > c00000000008171c: 2f 83 00 64 cmpwi cr7,r3,100 > c000000000081720: 41 9e 09 c4 beq- cr7,c0000000000820e4 <.xmon_core+0x1c34> > c000000000081724: 2f 83 00 69 cmpwi cr7,r3,105 > c000000000081728: 41 9e 09 38 beq- cr7,c000000000082060 <.xmon_core+0x1bb0> > c00000000008172c: 2f 83 00 63 cmpwi cr7,r3,99 > c000000000081730: 41 9e 08 d8 beq- cr7,c000000000082008 <.xmon_core+0x1b58> > c000000000081734: 3b 9f 3e 10 addi r28,r31,15888 > c000000000081738: 90 7c 24 d8 stw r3,9432(r28) > c00000000008173c: 4b ff dc 25 bl c00000000007f360 <.skipbl> > c000000000081740: 2f 83 00 3f cmpwi cr7,r3,63 > c000000000081744: 7c 69 1b 78 mr r9,r3 > c000000000081748: 41 9e 14 80 beq- cr7,c000000000082bc8 <.xmon_core+0x2718> > c00000000008174c: 38 61 01 60 addi r3,r1,352 > c000000000081750: 91 3c 24 d8 stw r9,9432(r28) > c000000000081754: 4b ff dc 6d bl c00000000007f3c0 <.scanhex> > c000000000081758: 2f a3 00 00 cmpdi cr7,r3,0 > c00000000008175c: 40 9e 11 30 bne- cr7,c00000000008288c <.xmon_core+0x23dc> > c000000000081760: 3c 62 ff d4 addis r3,r2,-44 > c000000000081764: 38 63 98 a8 addi r3,r3,-26456 > c000000000081768: 48 00 20 d9 bl c000000000083840 <.xmon_printf> > c00000000008176c: 60 00 00 00 nop > c000000000081770: 81 3c 66 fc lwz r9,26364(r28) > c000000000081774: 2f 89 00 00 cmpwi cr7,r9,0 > c000000000081778: 40 9e 12 d8 bne- cr7,c000000000082a50 <.xmon_core+0x25a0> > c00000000008177c: 3b 3f 3e 10 addi r25,r31,15888 > c000000000081780: 3e c2 ff d4 addis r22,r2,-44 > c000000000081784: 3e e2 ff d8 addis r23,r2,-40 > c000000000081788: 3f 02 ff d5 addis r24,r2,-43 > c00000000008178c: 3b 99 00 08 addi r28,r25,8 > c000000000081790: 3b 40 00 00 li r26,0 > c000000000081794: 3a d6 98 e0 addi r22,r22,-26400 > c000000000081798: 3a f7 b7 38 addi r23,r23,-18632 > c00000000008179c: 3b 18 0e 68 addi r24,r24,3688 > c0000000000817a0: 3e 82 ff d3 addis r20,r2,-45 > c0000000000817a4: 3e a2 ff d4 addis r21,r2,-44 > c0000000000817a8: 3b 39 20 08 addi r25,r25,8200 > c0000000000817ac: 48 00 00 34 b c0000000000817e0 <.xmon_core+0x1330> > > > c0000000000817b0: 38 b5 8a a0 addi r5,r21,-30048 > c0000000000817b4: 7e c3 b3 78 mr r3,r22 > c0000000000817b8: 48 00 20 89 bl c000000000083840 <.xmon_printf> > c0000000000817bc: 60 00 00 00 nop > c0000000000817c0: e8 7c 00 00 ld r3,0(r28) > c0000000000817c4: 7e e4 bb 78 mr r4,r23 > c0000000000817c8: 7f 05 c3 78 mr r5,r24 > c0000000000817cc: 4b ff aa 95 bl c00000000007c260 <.xmon_print_symbol> > c0000000000817d0: 3b 9c 00 20 addi r28,r28,32 > c0000000000817d4: 3b 5a 00 20 addi r26,r26,32 > c0000000000817d8: 7f bc c8 40 cmpld cr7,r28,r25 > c0000000000817dc: 40 9c f2 34 bge+ cr7,c000000000080a10 <.xmon_core+0x560> > c0000000000817e0: 81 3c 00 14 lwz r9,20(r28) > c0000000000817e4: 2f 89 00 00 cmpwi cr7,r9,0 > c0000000000817e8: 41 9e ff e8 beq+ cr7,c0000000000817d0 <.xmon_core+0x1320> > c0000000000817ec: 79 26 ff e3 rldicl. r6,r9,63,63 > c0000000000817f0: 7f 44 2e 74 sradi r4,r26,5 > c0000000000817f4: 38 84 00 01 addi r4,r4,1 > c0000000000817f8: 40 82 ff b8 bne+ c0000000000817b0 <.xmon_core+0x1300> > c0000000000817fc: 38 b4 a1 88 addi r5,r20,-24184 > c000000000081800: 4b ff ff b4 b c0000000000817b4 <.xmon_core+0x1304> > c000000000081804: 60 00 00 00 nop > c000000000081808: 60 00 00 00 nop > c00000000008180c: 60 00 00 00 nop > > > c000000000081810: 38 61 01 60 addi r3,r1,352 > c000000000081814: 4b ff db ad bl c00000000007f3c0 <.scanhex> > c000000000081818: 2f a3 00 00 cmpdi cr7,r3,0 > c00000000008181c: 40 9e 06 04 bne- cr7,c000000000081e20 <.xmon_core+0x1970> > c000000000081820: e8 6f 00 08 ld r3,8(r15) > c000000000081824: e8 8f 01 20 ld r4,288(r15) > c000000000081828: e8 af 01 00 ld r5,256(r15) > c00000000008182c: 4b ff af 55 bl c00000000007c780 <.xmon_show_stack> > c000000000081830: 4b ff d5 51 bl c00000000007ed80 <.scannl> > c000000000081834: 4b ff f1 dc b c000000000080a10 <.xmon_core+0x560> > c000000000081838: 60 00 00 00 nop > c00000000008183c: 60 00 00 00 nop > > > c000000000081840: 7d e3 7b 78 mr r3,r15 > c000000000081844: 4b ff df cd bl c00000000007f810 <.prregs> > c000000000081848: 4b ff f1 c8 b c000000000080a10 <.xmon_core+0x560> > > > /* > 1645 case 'w': > 1646 val = read_spr(regno); > 1647 scanhex(&val); > 1648 write_spr(regno, val); > 1649 /* fall through */ > 1650 case 'r': > 1651 printf("spr %lx = %lx\n", regno, read_spr(regno)); > 1652 break; > 1653 } > 1654 scannl(); > 1655 } > */ > c00000000008184c: e8 7a 66 de lwa r3,26332(r26) > c000000000081850: 4b ff b6 71 bl c00000000007cec0 <.read_spr> > c000000000081854: 7c 29 0b 78 mr r9,r1 > c000000000081858: f8 69 01 61 stdu r3,352(r9) > c00000000008185c: 7d 23 4b 78 mr r3,r9 > c000000000081860: 4b ff db 61 bl c00000000007f3c0 <.scanhex> > c000000000081864: e8 7a 66 de lwa r3,26332(r26) > c000000000081868: e8 81 01 60 ld r4,352(r1) > c00000000008186c: 4b ff b5 75 bl c00000000007cde0 <.write_spr> > c000000000081870: 39 3f 3e 10 addi r9,r31,15888 > c000000000081874: eb 89 66 d8 ld r28,26328(r9) > c000000000081878: 7f 83 07 b4 extsw r3,r28 > c00000000008187c: 4b ff b6 45 bl c00000000007cec0 <.read_spr> > c000000000081880: 7f 84 e3 78 mr r4,r28 > c000000000081884: 7c 65 1b 78 mr r5,r3 > c000000000081888: 3c 62 ff d4 addis r3,r2,-44 > c00000000008188c: 38 63 91 c8 addi r3,r3,-28216 > c000000000081890: 48 00 1f b1 bl c000000000083840 <.xmon_printf> > c000000000081894: 60 00 00 00 nop > c000000000081898: 4b ff d4 e9 bl c00000000007ed80 <.scannl> > c00000000008189c: 4b ff f1 74 b c000000000080a10 <.xmon_core+0x560> > > > c0000000000818a0: 2f 83 00 72 cmpwi cr7,r3,114 > c0000000000818a4: 41 9e 00 ec beq- cr7,c000000000081990 <.xmon_core+0x14e0> > c0000000000818a8: 2f 83 00 77 cmpwi cr7,r3,119 > c0000000000818ac: 41 9e 00 d4 beq- cr7,c000000000081980 <.xmon_core+0x14d0> > c0000000000818b0: 2f 83 00 6e cmpwi cr7,r3,110 > c0000000000818b4: 40 9e f8 0c bne+ cr7,c0000000000810c0 <.xmon_core+0xc10> > c0000000000818b8: 39 3f 3e 10 addi r9,r31,15888 > c0000000000818bc: 93 49 66 d4 stw r26,26324(r9) > c0000000000818c0: 4b ff f8 00 b c0000000000810c0 <.xmon_core+0xc10> > c0000000000818c4: 60 00 00 00 nop > c0000000000818c8: 60 00 00 00 nop > c0000000000818cc: 60 00 00 00 nop > > > c0000000000818d0: 81 3f 00 08 lwz r9,8(r31) > c0000000000818d4: 7d 2a d0 38 and r10,r9,r26 > c0000000000818d8: 7f 8a c8 00 cmpw cr7,r10,r25 > c0000000000818dc: 41 9e 05 24 beq- cr7,c000000000081e00 <.xmon_core+0x1950> > c0000000000818e0: 7d 29 b8 38 and r9,r9,r23 > c0000000000818e4: 7f 89 b0 00 cmpw cr7,r9,r22 > c0000000000818e8: 41 9e 05 18 beq- cr7,c000000000081e00 <.xmon_core+0x1950> > c0000000000818ec: 7c 00 e8 6c dcbst 0,r29 > c0000000000818f0: 7c 00 04 ac sync > c0000000000818f4: 7c 00 ef ac icbi 0,r29 > c0000000000818f8: 4c 00 01 2c isync > c0000000000818fc: 81 3f 00 14 lwz r9,20(r31) > c000000000081900: 79 27 ff e3 rldicl. r7,r9,63,63 > c000000000081904: 40 82 f4 ec bne+ c000000000080df0 <.xmon_core+0x940> > c000000000081908: e8 7f 00 00 ld r3,0(r31) > c00000000008190c: 7e a4 ab 78 mr r4,r21 > c000000000081910: 38 a0 00 04 li r5,4 > c000000000081914: 4b ff b3 0d bl c00000000007cc20 <.mwrite> > c000000000081918: 2f 83 00 04 cmpwi cr7,r3,4 > c00000000008191c: 41 9e 0f 50 beq- cr7,c00000000008286c <.xmon_core+0x23bc> > c000000000081920: e8 9f 00 00 ld r4,0(r31) > c000000000081924: 7e 83 a3 78 mr r3,r20 > c000000000081928: 48 00 1f 19 bl c000000000083840 <.xmon_printf> > c00000000008192c: 60 00 00 00 nop > c000000000081930: 81 3f 00 14 lwz r9,20(r31) > c000000000081934: 55 29 e0 7e rlwinm r9,r9,28,1,31 > c000000000081938: 55 29 20 3e rotlwi r9,r9,4 > c00000000008193c: 91 3f 00 14 stw r9,20(r31) > c000000000081940: 4b ff f4 b0 b c000000000080df0 <.xmon_core+0x940> > c000000000081944: 60 00 00 00 nop > c000000000081948: 60 00 00 00 nop > c00000000008194c: 60 00 00 00 nop > > > c000000000081950: 39 3c 44 e8 addi r9,r28,17640 > c000000000081954: 92 c9 00 40 stw r22,64(r9) > c000000000081958: 4b ff f7 68 b c0000000000810c0 <.xmon_core+0xc10> > c00000000008195c: 60 00 00 00 nop > > > c000000000081960: 39 3c 44 e8 addi r9,r28,17640 > c000000000081964: 93 09 00 40 stw r24,64(r9) > c000000000081968: 4b ff f7 58 b c0000000000810c0 <.xmon_core+0xc10> > c00000000008196c: 60 00 00 00 nop > > > c000000000081970: 39 3c 44 e8 addi r9,r28,17640 > c000000000081974: 93 49 00 40 stw r26,64(r9) > c000000000081978: 4b ff f7 48 b c0000000000810c0 <.xmon_core+0xc10> > c00000000008197c: 60 00 00 00 nop > > > c000000000081980: 39 3c 44 e8 addi r9,r28,17640 > c000000000081984: 92 e9 00 40 stw r23,64(r9) > c000000000081988: 4b ff f7 38 b c0000000000810c0 <.xmon_core+0xc10> > c00000000008198c: 60 00 00 00 nop > > > c000000000081990: 39 5f 3e 10 addi r10,r31,15888 > c000000000081994: 81 2a 66 d0 lwz r9,26320(r10) > c000000000081998: 7d 29 00 34 cntlzw r9,r9 > c00000000008199c: 55 29 d9 7e rlwinm r9,r9,27,5,31 > c0000000000819a0: 91 2a 66 d0 stw r9,26320(r10) > c0000000000819a4: 4b ff f7 1c b c0000000000810c0 <.xmon_core+0xc10> > c0000000000819a8: 60 00 00 00 nop > c0000000000819ac: 60 00 00 00 nop > > /* > 796 xmon_no_auto_backtrace = 1; > 797 xmon_show_stack(excp->gpr[1], excp->link, excp->nip); > */ > c0000000000819b0: e8 6f 00 08 ld r3,8(r15) > c0000000000819b4: e8 8f 01 20 ld r4,288(r15) > c0000000000819b8: 39 40 00 01 li r10,1 > c0000000000819bc: e8 af 01 00 ld r5,256(r15) > c0000000000819c0: 91 49 24 e0 stw r10,9440(r9) > c0000000000819c4: 4b ff ad bd bl c00000000007c780 <.xmon_show_stack> > c0000000000819c8: 4b ff f0 3c b c000000000080a04 <.xmon_core+0x554> > > > c0000000000819cc: 2f 83 00 0a cmpwi cr7,r3,10 > c0000000000819d0: 40 be fb c0 bne- cr7,c000000000081590 <.xmon_core+0x10e0> > c0000000000819d4: 60 00 00 00 nop > c0000000000819d8: 60 00 00 00 nop > c0000000000819dc: 60 00 00 00 nop > > > c0000000000819e0: 39 3f 3e 10 addi r9,r31,15888 > c0000000000819e4: 93 89 24 d8 stw r28,9432(r9) > c0000000000819e8: 4b ff fb a8 b c000000000081590 <.xmon_core+0x10e0> > c0000000000819ec: 60 00 00 00 nop > > > c0000000000819f0: 3d 42 ff 33 addis r10,r2,-205 > c0000000000819f4: 79 29 17 88 rldic r9,r9,2,30 > c0000000000819f8: 39 4a 01 24 addi r10,r10,292 > c0000000000819fc: 7d 2a 4a aa lwax r9,r10,r9 > c000000000081a00: 7d 49 52 14 add r10,r9,r10 > c000000000081a04: 7d 49 03 a6 mtctr r10 > c000000000081a08: 4e 80 04 20 bctr > c000000000081a0c: 00 00 02 d4 .long 0x2d4 > c000000000081a10: ff ff f6 68 .long 0xfffff668 > c000000000081a14: ff ff f6 68 .long 0xfffff668 > c000000000081a18: ff ff f6 68 .long 0xfffff668 > c000000000081a1c: ff ff f6 68 .long 0xfffff668 > c000000000081a20: 00 00 02 c4 .long 0x2c4 > c000000000081a24: ff ff f6 68 .long 0xfffff668 > c000000000081a28: ff ff f6 68 .long 0xfffff668 > c000000000081a2c: 00 00 01 8c .long 0x18c > c000000000081a30: 00 00 02 d4 .long 0x2d4 > c000000000081a34: ff ff f6 68 .long 0xfffff668 > c000000000081a38: ff ff f6 68 .long 0xfffff668 > c000000000081a3c: ff ff f6 68 .long 0xfffff668 > c000000000081a40: ff ff f6 68 .long 0xfffff668 > c000000000081a44: ff ff f6 68 .long 0xfffff668 > c000000000081a48: 00 00 02 d4 .long 0x2d4 > c000000000081a4c: ff ff f6 68 .long 0xfffff668 > c000000000081a50: ff ff f6 68 .long 0xfffff668 > c000000000081a54: ff ff f6 68 .long 0xfffff668 > c000000000081a58: ff ff f6 68 .long 0xfffff668 > c000000000081a5c: ff ff f6 68 .long 0xfffff668 > c000000000081a60: ff ff f6 68 .long 0xfffff668 > c000000000081a64: 00 00 00 5c .long 0x5c > c000000000081a68: 3b 9f 3e 10 addi r28,r31,15888 > c000000000081a6c: 38 7c 66 b0 addi r3,r28,26288 > c000000000081a70: 4b ff d9 51 bl c00000000007f3c0 <.scanhex> > c000000000081a74: 81 3c 24 d8 lwz r9,9432(r28) > c000000000081a78: 2f 89 00 0a cmpwi cr7,r9,10 > c000000000081a7c: 41 9e 00 0c beq- cr7,c000000000081a88 <.xmon_core+0x15d8> > c000000000081a80: 39 20 00 00 li r9,0 > c000000000081a84: 91 3c 24 d8 stw r9,9432(r28) > c000000000081a88: 3c 62 ff ed addis r3,r2,-19 > c000000000081a8c: 38 63 44 e8 addi r3,r3,17640 > c000000000081a90: 38 63 00 30 addi r3,r3,48 > c000000000081a94: 4b ff d9 2d bl c00000000007f3c0 <.scanhex> > c000000000081a98: 39 3f 3e 10 addi r9,r31,15888 > c000000000081a9c: 81 49 24 d8 lwz r10,9432(r9) > c000000000081aa0: 2f 8a 00 0a cmpwi cr7,r10,10 > c000000000081aa4: 41 9e 00 0c beq- cr7,c000000000081ab0 <.xmon_core+0x1600> > c000000000081aa8: 39 40 00 00 li r10,0 > c000000000081aac: 91 49 24 d8 stw r10,9432(r9) > c000000000081ab0: 3f 02 ff ed addis r24,r2,-19 > c000000000081ab4: 3b 98 44 e8 addi r28,r24,17640 > c000000000081ab8: 38 7c 00 38 addi r3,r28,56 > c000000000081abc: 4b ff d9 05 bl c00000000007f3c0 <.scanhex> > c000000000081ac0: 39 3f 3e 10 addi r9,r31,15888 > c000000000081ac4: eb 49 66 b0 ld r26,26288(r9) > c000000000081ac8: e9 3c 00 38 ld r9,56(r28) > c000000000081acc: 7b 5c 00 20 clrldi r28,r26,32 > c000000000081ad0: 7f a9 e0 40 cmpld cr7,r9,r28 > c000000000081ad4: 7f 9a e3 78 mr r26,r28 > c000000000081ad8: 40 9d ef 38 ble+ cr7,c000000000080a10 <.xmon_core+0x560> > c000000000081adc: 3e c2 ff d4 addis r22,r2,-44 > c000000000081ae0: 3e e2 ff d4 addis r23,r2,-44 > c000000000081ae4: 3a a0 00 00 li r21,0 > c000000000081ae8: 3a d6 8c 30 addi r22,r22,-29648 > c000000000081aec: 3a f7 8c 20 addi r23,r23,-29664 > c000000000081af0: 48 00 00 44 b c000000000081b34 <.xmon_core+0x1684> > c000000000081af4: 60 00 00 00 nop > c000000000081af8: 60 00 00 00 nop > c000000000081afc: 60 00 00 00 nop > > > c000000000081b00: 40 9e 04 d4 bne- cr7,c000000000081fd4 <.xmon_core+0x1b24> > c000000000081b04: 39 38 44 e8 addi r9,r24,17640 > c000000000081b08: e8 89 00 30 ld r4,48(r9) > c000000000081b0c: 7d 5c 22 14 add r10,r28,r4 > c000000000081b10: 7f aa e0 40 cmpld cr7,r10,r28 > c000000000081b14: 41 9c 00 64 blt- cr7,c000000000081b78 <.xmon_core+0x16c8> > c000000000081b18: 7f 5a 22 14 add r26,r26,r4 > c000000000081b1c: e9 29 00 38 ld r9,56(r9) > c000000000081b20: 7f 35 cb 78 mr r21,r25 > c000000000081b24: 7b 5a 00 20 clrldi r26,r26,32 > c000000000081b28: 7f ba 48 40 cmpld cr7,r26,r9 > c000000000081b2c: 7f 5c d3 78 mr r28,r26 > c000000000081b30: 40 9c 00 48 bge- cr7,c000000000081b78 <.xmon_core+0x16c8> > c000000000081b34: 7f 83 e3 78 mr r3,r28 > c000000000081b38: 38 81 01 60 addi r4,r1,352 > c000000000081b3c: 38 a0 00 01 li r5,1 > c000000000081b40: 4b ff a8 81 bl c00000000007c3c0 <.mread> > c000000000081b44: 2f b5 00 00 cmpdi cr7,r21,0 > c000000000081b48: 7c 79 1b 79 mr. r25,r3 > c000000000081b4c: 41 82 ff b4 beq+ c000000000081b00 <.xmon_core+0x1650> > c000000000081b50: 40 9e ff b4 bne+ cr7,c000000000081b04 <.xmon_core+0x1654> > c000000000081b54: 7f 44 d3 78 mr r4,r26 > c000000000081b58: 7e e3 bb 78 mr r3,r23 > c000000000081b5c: 48 00 1c e5 bl c000000000083840 <.xmon_printf> > c000000000081b60: 60 00 00 00 nop > c000000000081b64: 39 38 44 e8 addi r9,r24,17640 > c000000000081b68: e8 89 00 30 ld r4,48(r9) > c000000000081b6c: 7d 5c 22 14 add r10,r28,r4 > c000000000081b70: 7f aa e0 40 cmpld cr7,r10,r28 > c000000000081b74: 40 9c ff a4 bge+ cr7,c000000000081b18 <.xmon_core+0x1668> > c000000000081b78: 2f b9 00 00 cmpdi cr7,r25,0 > c000000000081b7c: 41 9e ee 94 beq+ cr7,c000000000080a10 <.xmon_core+0x560> > c000000000081b80: 3c 62 ff d4 addis r3,r2,-44 > c000000000081b84: 7c 84 e0 50 subf r4,r4,r28 > c000000000081b88: 38 63 8c 30 addi r3,r3,-29648 > c000000000081b8c: 48 00 1c b5 bl c000000000083840 <.xmon_printf> > c000000000081b90: 60 00 00 00 nop > c000000000081b94: 4b ff ee 7c b c000000000080a10 <.xmon_core+0x560> > > > c000000000081b98: 3b 9f 3e 10 addi r28,r31,15888 > c000000000081b9c: 3d 22 ff d4 addis r9,r2,-44 > c000000000081ba0: 39 29 8c 08 addi r9,r9,-29688 > c000000000081ba4: 38 7c 66 b0 addi r3,r28,26288 > c000000000081ba8: f9 3c 26 38 std r9,9784(r28) > c000000000081bac: 4b ff d8 15 bl c00000000007f3c0 <.scanhex> > c000000000081bb0: 81 3c 24 d8 lwz r9,9432(r28) > c000000000081bb4: 2f 89 00 0a cmpwi cr7,r9,10 > c000000000081bb8: 41 9e 00 50 beq- cr7,c000000000081c08 <.xmon_core+0x1758> > c000000000081bbc: 3b 40 00 00 li r26,0 > c000000000081bc0: 38 7c 66 c8 addi r3,r28,26312 > c000000000081bc4: 93 5c 24 d8 stw r26,9432(r28) > c000000000081bc8: 4b ff d7 f9 bl c00000000007f3c0 <.scanhex> > c000000000081bcc: 81 3c 24 d8 lwz r9,9432(r28) > c000000000081bd0: 2f 89 00 0a cmpwi cr7,r9,10 > c000000000081bd4: 41 9e 00 34 beq- cr7,c000000000081c08 <.xmon_core+0x1758> > c000000000081bd8: 38 7c 26 40 addi r3,r28,9792 > c000000000081bdc: 93 5c 24 d8 stw r26,9432(r28) > c000000000081be0: 4b ff d7 e1 bl c00000000007f3c0 <.scanhex> > c000000000081be4: 81 3c 24 d8 lwz r9,9432(r28) > c000000000081be8: 2f 89 00 0a cmpwi cr7,r9,10 > c000000000081bec: 39 20 ff ff li r9,-1 > c000000000081bf0: 91 3c 66 cc stw r9,26316(r28) > c000000000081bf4: 41 9e 00 08 beq- cr7,c000000000081bfc <.xmon_core+0x174c> > c000000000081bf8: 93 5c 24 d8 stw r26,9432(r28) > c000000000081bfc: 38 7f 3e 10 addi r3,r31,15888 > c000000000081c00: 38 63 66 cc addi r3,r3,26316 > c000000000081c04: 4b ff d7 bd bl c00000000007f3c0 <.scanhex> > c000000000081c08: 39 3f 3e 10 addi r9,r31,15888 > c000000000081c0c: 83 89 66 b4 lwz r28,26292(r9) > c000000000081c10: 81 29 66 c8 lwz r9,26312(r9) > c000000000081c14: 7f 89 e0 40 cmplw cr7,r9,r28 > c000000000081c18: 40 9d ed f8 ble+ cr7,c000000000080a10 <.xmon_core+0x560> > c000000000081c1c: 3f 22 ff d4 addis r25,r2,-44 > c000000000081c20: 3b 40 00 00 li r26,0 > c000000000081c24: 3b 39 8c 10 addi r25,r25,-29680 > c000000000081c28: 48 00 00 20 b c000000000081c48 <.xmon_core+0x1798> > c000000000081c2c: 60 00 00 00 nop > > > c000000000081c30: 39 3f 3e 10 addi r9,r31,15888 > c000000000081c34: 3b 9c 00 04 addi r28,r28,4 > c000000000081c38: 81 29 66 c8 lwz r9,26312(r9) > c000000000081c3c: 7f 89 e0 40 cmplw cr7,r9,r28 > c000000000081c40: 7b 9c 00 20 clrldi r28,r28,32 > c000000000081c44: 40 9d ed cc ble+ cr7,c000000000080a10 <.xmon_core+0x560> > c000000000081c48: 7f 83 e3 78 mr r3,r28 > c000000000081c4c: 38 81 01 28 addi r4,r1,296 > c000000000081c50: 38 a0 00 04 li r5,4 > c000000000081c54: 4b ff a7 6d bl c00000000007c3c0 <.mread> > c000000000081c58: 2f 83 00 04 cmpwi cr7,r3,4 > c000000000081c5c: 40 9e ff d4 bne+ cr7,c000000000081c30 <.xmon_core+0x1780> > c000000000081c60: 88 a1 01 28 lbz r5,296(r1) > c000000000081c64: 89 21 01 29 lbz r9,297(r1) > c000000000081c68: 89 01 01 2a lbz r8,298(r1) > c000000000081c6c: 89 41 01 2b lbz r10,299(r1) > c000000000081c70: 55 29 80 1e rlwinm r9,r9,16,0,15 > c000000000081c74: 54 a5 c0 0e rlwinm r5,r5,24,0,7 > c000000000081c78: 7c a5 4a 14 add r5,r5,r9 > c000000000081c7c: 55 08 40 2e rlwinm r8,r8,8,0,23 > c000000000081c80: 39 3f 3e 10 addi r9,r31,15888 > c000000000081c84: 7c a5 42 14 add r5,r5,r8 > c000000000081c88: 7c a5 52 14 add r5,r5,r10 > c000000000081c8c: e9 49 26 40 ld r10,9792(r9) > c000000000081c90: 81 29 66 cc lwz r9,26316(r9) > c000000000081c94: 7c a5 07 b4 extsw r5,r5 > c000000000081c98: 7c aa 52 78 xor r10,r5,r10 > c000000000081c9c: 7d 46 48 39 and. r6,r10,r9 > c000000000081ca0: 40 82 ff 90 bne+ c000000000081c30 <.xmon_core+0x1780> > c000000000081ca4: 3b 5a 00 01 addi r26,r26,1 > c000000000081ca8: 7f 23 cb 78 mr r3,r25 > c000000000081cac: 7f 84 e3 78 mr r4,r28 > c000000000081cb0: 48 00 1b 91 bl c000000000083840 <.xmon_printf> > c000000000081cb4: 60 00 00 00 nop > c000000000081cb8: 2b 9a 00 09 cmplwi cr7,r26,9 > c000000000081cbc: 7b 5a 00 20 clrldi r26,r26,32 > c000000000081cc0: 40 9d ff 70 ble+ cr7,c000000000081c30 <.xmon_core+0x1780> > c000000000081cc4: 4b ff ed 4c b c000000000080a10 <.xmon_core+0x560> > c000000000081cc8: 60 00 00 00 nop > c000000000081ccc: 60 00 00 00 nop > > > c000000000081cd0: 38 60 00 00 li r3,0 > c000000000081cd4: 48 38 ae 9d bl c00000000040cb70 <.show_mem> > c000000000081cd8: 60 00 00 00 nop > c000000000081cdc: 4b ff ed 34 b c000000000080a10 <.xmon_core+0x560> > > > c000000000081ce0: 3b 5f 3e 10 addi r26,r31,15888 > c000000000081ce4: 38 7a 66 b0 addi r3,r26,26288 > c000000000081ce8: 4b ff d6 d9 bl c00000000007f3c0 <.scanhex> > c000000000081cec: 81 3a 24 d8 lwz r9,9432(r26) > c000000000081cf0: 2f 89 00 0a cmpwi cr7,r9,10 > c000000000081cf4: 41 9e 00 0c beq- cr7,c000000000081d00 <.xmon_core+0x1850> > c000000000081cf8: 39 20 00 00 li r9,0 > c000000000081cfc: 91 3a 24 d8 stw r9,9432(r26) > c000000000081d00: 2f 9c 00 73 cmpwi cr7,r28,115 > c000000000081d04: 38 7f 3e 10 addi r3,r31,15888 > c000000000081d08: 41 9e 0e a8 beq- cr7,c000000000082bb0 <.xmon_core+0x2700> > c000000000081d0c: 38 63 26 48 addi r3,r3,9800 > c000000000081d10: 4b ff d6 b1 bl c00000000007f3c0 <.scanhex> > c000000000081d14: 39 3f 3e 10 addi r9,r31,15888 > c000000000081d18: 81 49 24 d8 lwz r10,9432(r9) > c000000000081d1c: 2f 8a 00 0a cmpwi cr7,r10,10 > c000000000081d20: 41 9e 00 0c beq- cr7,c000000000081d2c <.xmon_core+0x187c> > c000000000081d24: 39 40 00 00 li r10,0 > c000000000081d28: 91 49 24 d8 stw r10,9432(r9) > c000000000081d2c: 3b 5f 3e 10 addi r26,r31,15888 > c000000000081d30: 38 7a 66 b8 addi r3,r26,26296 > c000000000081d34: 4b ff d6 8d bl c00000000007f3c0 <.scanhex> > c000000000081d38: 2f 9c 00 6d cmpwi cr7,r28,109 > c000000000081d3c: 41 9e 0e e8 beq- cr7,c000000000082c24 <.xmon_core+0x2774> > c000000000081d40: 2f 9c 00 73 cmpwi cr7,r28,115 > c000000000081d44: 41 9e 0e c8 beq- cr7,c000000000082c0c <.xmon_core+0x275c> > c000000000081d48: 2f 9c 00 64 cmpwi cr7,r28,100 > c000000000081d4c: 40 9e ec c4 bne+ cr7,c000000000080a10 <.xmon_core+0x560> > c000000000081d50: 81 3a 24 d8 lwz r9,9432(r26) > c000000000081d54: 2f 89 00 0a cmpwi cr7,r9,10 > c000000000081d58: 41 9e 00 0c beq- cr7,c000000000081d64 <.xmon_core+0x18b4> > c000000000081d5c: 39 20 00 00 li r9,0 > c000000000081d60: 91 3a 24 d8 stw r9,9432(r26) > c000000000081d64: 3b 9f 3e 10 addi r28,r31,15888 > c000000000081d68: 38 7c 66 c0 addi r3,r28,26304 > c000000000081d6c: 4b ff d6 55 bl c00000000007f3c0 <.scanhex> > c000000000081d70: 81 3c 66 bc lwz r9,26300(r28) > c000000000081d74: e8 9c 66 b0 ld r4,26288(r28) > c000000000081d78: e8 dc 26 48 ld r6,9800(r28) > c000000000081d7c: 82 dc 66 c4 lwz r22,26308(r28) > c000000000081d80: 2f a9 00 00 cmpdi cr7,r9,0 > c000000000081d84: 41 9e ec 8c beq+ cr7,c000000000080a10 <.xmon_core+0x560> > c000000000081d88: 39 29 ff ff addi r9,r9,-1 > c000000000081d8c: 3a e4 00 01 addi r23,r4,1 > c000000000081d90: 79 29 00 20 clrldi r9,r9,32 > c000000000081d94: 3f 02 ff d4 addis r24,r2,-44 > c000000000081d98: 7e f7 4a 14 add r23,r23,r9 > c000000000081d9c: 3b 20 00 00 li r25,0 > c000000000081da0: 3b 18 8b c8 addi r24,r24,-29752 > c000000000081da4: 48 00 00 1c b c000000000081dc0 <.xmon_core+0x1910> > c000000000081da8: 60 00 00 00 nop > c000000000081dac: 60 00 00 00 nop > > > c000000000081db0: 7f ba b8 00 cmpd cr7,r26,r23 > c000000000081db4: 7f 44 d3 78 mr r4,r26 > c000000000081db8: 7f 86 e3 78 mr r6,r28 > c000000000081dbc: 41 9e 10 b0 beq- cr7,c000000000082e6c <.xmon_core+0x29bc> > c000000000081dc0: 88 a4 00 00 lbz r5,0(r4) > c000000000081dc4: 88 e6 00 00 lbz r7,0(r6) > c000000000081dc8: 3b 44 00 01 addi r26,r4,1 > c000000000081dcc: 3b 86 00 01 addi r28,r6,1 > c000000000081dd0: 7f 85 38 40 cmplw cr7,r5,r7 > c000000000081dd4: 41 9e ff dc beq+ cr7,c000000000081db0 <.xmon_core+0x1900> > c000000000081dd8: 39 39 00 01 addi r9,r25,1 > c000000000081ddc: 7f 96 48 40 cmplw cr7,r22,r9 > c000000000081de0: 79 39 00 20 clrldi r25,r9,32 > c000000000081de4: 41 9c ff cc blt+ cr7,c000000000081db0 <.xmon_core+0x1900> > c000000000081de8: 7f 03 c3 78 mr r3,r24 > c000000000081dec: 48 00 1a 55 bl c000000000083840 <.xmon_printf> > c000000000081df0: 60 00 00 00 nop > c000000000081df4: 4b ff ff bc b c000000000081db0 <.xmon_core+0x1900> > c000000000081df8: 60 00 00 00 nop > c000000000081dfc: 60 00 00 00 nop > > > c000000000081e00: e8 9f 00 00 ld r4,0(r31) > c000000000081e04: 7f 03 c3 78 mr r3,r24 > c000000000081e08: 48 00 1a 39 bl c000000000083840 <.xmon_printf> > c000000000081e0c: 60 00 00 00 nop > c000000000081e10: 39 20 00 00 li r9,0 > c000000000081e14: 91 3f 00 14 stw r9,20(r31) > c000000000081e18: 4b ff ef d8 b c000000000080df0 <.xmon_core+0x940> > > > c000000000081e1c: 60 00 00 00 nop > c000000000081e20: e8 61 01 60 ld r3,352(r1) > c000000000081e24: 38 80 00 00 li r4,0 > c000000000081e28: 38 a0 00 00 li r5,0 > c000000000081e2c: 4b ff a9 55 bl c00000000007c780 <.xmon_show_stack> > c000000000081e30: 4b ff cf 51 bl c00000000007ed80 <.scannl> > c000000000081e34: 4b ff eb dc b c000000000080a10 <.xmon_core+0x560> > c000000000081e38: 60 00 00 00 nop > c000000000081e3c: 60 00 00 00 nop > > > /* > 3213 case 's': > 3214 stop_spus(); > 3215 break; > 3216 case 'r': > 3217 restart_spus(); > 3218 break; > */ > c000000000081e40: 2f 83 00 72 cmpwi cr7,r3,114 > c000000000081e44: 41 9e 03 2c beq- cr7,c000000000082170 <.xmon_core+0x1cc0> > c000000000081e48: 2f 83 00 73 cmpwi cr7,r3,115 > c000000000081e4c: 40 9e ef 10 bne+ cr7,c000000000080d5c <.xmon_core+0x8ac> ; for default, return -1 > c000000000081e50: 4b ff b1 81 bl c00000000007cfd0 <.stop_spus> > c000000000081e54: 4b ff eb bc b c000000000080a10 <.xmon_core+0x560> > > > c000000000081e58: 3c 62 ff d4 addis r3,r2,-44 > c000000000081e5c: 3b 40 ff ff li r26,-1 > c000000000081e60: 38 63 99 08 addi r3,r3,-26360 > c000000000081e64: 3a ff 3e 10 addi r23,r31,15888 > c000000000081e68: 48 00 19 d9 bl c000000000083840 <.xmon_printf> > c000000000081e6c: 60 00 00 00 nop > c000000000081e70: 39 40 ff ff li r10,-1 > c000000000081e74: 3d 22 ff b3 addis r9,r2,-77 > c000000000081e78: f9 41 01 60 std r10,352(r1) > c000000000081e7c: 39 29 19 68 addi r9,r9,6504 > c000000000081e80: 3e a2 ff db addis r21,r2,-37 > c000000000081e84: 3e 82 ff d6 addis r20,r2,-42 > c000000000081e88: 38 80 ff ff li r4,-1 > c000000000081e8c: eb 09 00 00 ld r24,0(r9) > c000000000081e90: 3b 80 00 00 li r28,0 > c000000000081e94: 7b 5a 00 20 clrldi r26,r26,32 > c000000000081e98: 3f 22 00 09 addis r25,r2,9 > c000000000081e9c: 3a f7 24 e8 addi r23,r23,9448 > c000000000081ea0: 3a c0 00 00 li r22,0 > c000000000081ea4: 3a b5 e4 50 addi r21,r21,-7088 > c000000000081ea8: 3a 94 8f d0 addi r20,r20,-28720 > c000000000081eac: 60 00 00 00 nop > c000000000081eb0: 38 a4 00 01 addi r5,r4,1 > c000000000081eb4: 7f 03 c3 78 mr r3,r24 > c000000000081eb8: 38 80 08 00 li r4,2048 > c000000000081ebc: 7c a5 07 b4 extsw r5,r5 > c000000000081ec0: 48 39 62 81 bl c000000000418140 <.find_next_bit> > c000000000081ec4: 60 00 00 00 nop > c000000000081ec8: 39 39 33 b8 addi r9,r25,13240 > c000000000081ecc: e9 29 00 02 lwa r9,0(r9) > c000000000081ed0: 7c 64 d0 38 and r4,r3,r26 > c000000000081ed4: f8 81 01 60 std r4,352(r1) > c000000000081ed8: 7f a4 48 40 cmpld cr7,r4,r9 > c000000000081edc: 40 9c 00 68 bge- cr7,c000000000081f44 <.xmon_core+0x1a94> > c000000000081ee0: 7c 69 36 70 srawi r9,r3,6 > c000000000081ee4: 7d 29 01 94 addze r9,r9 > c000000000081ee8: 78 63 06 a0 clrldi r3,r3,58 > c000000000081eec: 7d 29 07 b4 extsw r9,r9 > c000000000081ef0: 79 29 1f 24 rldicr r9,r9,3,60 > c000000000081ef4: 7d 37 48 2a ldx r9,r23,r9 > c000000000081ef8: 7d 23 1c 36 srd r3,r9,r3 > c000000000081efc: 78 67 07 e1 clrldi. r7,r3,63 > c000000000081f00: 41 82 00 80 beq- c000000000081f80 <.xmon_core+0x1ad0> > c000000000081f04: 2f bc 00 00 cmpdi cr7,r28,0 > c000000000081f08: 41 9e 00 b8 beq- cr7,c000000000081fc0 <.xmon_core+0x1b10> > c000000000081f0c: 38 a4 00 01 addi r5,r4,1 > c000000000081f10: 7f 03 c3 78 mr r3,r24 > c000000000081f14: 38 80 08 00 li r4,2048 > c000000000081f18: 7c a5 07 b4 extsw r5,r5 > c000000000081f1c: 48 39 62 25 bl c000000000418140 <.find_next_bit> > c000000000081f20: 60 00 00 00 nop > c000000000081f24: 39 39 33 b8 addi r9,r25,13240 > c000000000081f28: 3b 9c 00 01 addi r28,r28,1 > c000000000081f2c: 7f 9c 07 b4 extsw r28,r28 > c000000000081f30: e9 29 00 02 lwa r9,0(r9) > c000000000081f34: 7c 64 d0 38 and r4,r3,r26 > c000000000081f38: f8 81 01 60 std r4,352(r1) > c000000000081f3c: 7f a4 48 40 cmpld cr7,r4,r9 > c000000000081f40: 41 9c ff a0 blt+ cr7,c000000000081ee0 <.xmon_core+0x1a30> > c000000000081f44: 2f 9c 00 01 cmpwi cr7,r28,1 > c000000000081f48: 40 9d 00 18 ble- cr7,c000000000081f60 <.xmon_core+0x1ab0> > c000000000081f4c: 3c 62 ff db addis r3,r2,-37 > c000000000081f50: 38 80 07 ff li r4,2047 > c000000000081f54: 38 63 e4 50 addi r3,r3,-7088 > c000000000081f58: 48 00 18 e9 bl c000000000083840 <.xmon_printf> > c000000000081f5c: 60 00 00 00 nop > c000000000081f60: 3c 62 ff d5 addis r3,r2,-43 > c000000000081f64: 38 63 0e 68 addi r3,r3,3688 > c000000000081f68: 48 00 18 d9 bl c000000000083840 <.xmon_printf> > c000000000081f6c: 60 00 00 00 nop > c000000000081f70: 4b ff ea a0 b c000000000080a10 <.xmon_core+0x560> > c000000000081f74: 60 00 00 00 nop > c000000000081f78: 60 00 00 00 nop > c000000000081f7c: 60 00 00 00 nop > > > c000000000081f80: 2f 9c 00 01 cmpwi cr7,r28,1 > c000000000081f84: 40 9d 00 2c ble- cr7,c000000000081fb0 <.xmon_core+0x1b00> > c000000000081f88: 38 84 ff ff addi r4,r4,-1 > c000000000081f8c: 7e a3 ab 78 mr r3,r21 > c000000000081f90: 48 00 18 b1 bl c000000000083840 <.xmon_printf> > c000000000081f94: 60 00 00 00 nop > c000000000081f98: 7e dc b3 78 mr r28,r22 > c000000000081f9c: e8 81 01 60 ld r4,352(r1) > c000000000081fa0: 4b ff ff 10 b c000000000081eb0 <.xmon_core+0x1a00> > c000000000081fa4: 60 00 00 00 nop > c000000000081fa8: 60 00 00 00 nop > c000000000081fac: 60 00 00 00 nop > > > c000000000081fb0: 7e dc b3 78 mr r28,r22 > c000000000081fb4: 4b ff fe fc b c000000000081eb0 <.xmon_core+0x1a00> > c000000000081fb8: 60 00 00 00 nop > c000000000081fbc: 60 00 00 00 nop > > > c000000000081fc0: 7e 83 a3 78 mr r3,r20 > c000000000081fc4: 48 00 18 7d bl c000000000083840 <.xmon_printf> > c000000000081fc8: 60 00 00 00 nop > > > c000000000081fcc: e8 81 01 60 ld r4,352(r1) > c000000000081fd0: 4b ff ff 3c b c000000000081f0c <.xmon_core+0x1a5c> > > > c000000000081fd4: 39 38 44 e8 addi r9,r24,17640 > c000000000081fd8: 7e c3 b3 78 mr r3,r22 > c000000000081fdc: e8 89 00 30 ld r4,48(r9) > c000000000081fe0: 7c 84 e0 50 subf r4,r4,r28 > c000000000081fe4: 48 00 18 5d bl c000000000083840 <.xmon_printf> > c000000000081fe8: 60 00 00 00 nop > c000000000081fec: 4b ff fb 18 b c000000000081b04 <.xmon_core+0x1654> > > > c000000000081ff0: 3d 20 00 02 lis r9,2 > c000000000081ff4: 7f a4 48 40 cmpld cr7,r4,r9 > c000000000081ff8: 40 9d f5 f8 ble+ cr7,c0000000000815f0 <.xmon_core+0x1140> > c000000000081ffc: f9 3c 00 50 std r9,80(r28) > c000000000082000: 3c 80 00 02 lis r4,2 > c000000000082004: 4b ff f5 ec b c0000000000815f0 <.xmon_core+0x1140> > > > c000000000082008: 38 61 01 60 addi r3,r1,352 > c00000000008200c: 4b ff d3 b5 bl c00000000007f3c0 <.scanhex> > c000000000082010: 2f a3 00 00 cmpdi cr7,r3,0 > c000000000082014: 40 9e 07 54 bne- cr7,c000000000082768 <.xmon_core+0x22b8> > c000000000082018: 38 e0 01 00 li r7,256 > c00000000008201c: 39 3f 3e 10 addi r9,r31,15888 > c000000000082020: 7c e9 03 a6 mtctr r7 > c000000000082024: 39 29 00 1c addi r9,r9,28 > c000000000082028: 39 40 00 00 li r10,0 > c00000000008202c: 60 00 00 00 nop > c000000000082030: 91 49 00 00 stw r10,0(r9) > c000000000082034: 39 29 00 20 addi r9,r9,32 > c000000000082038: 42 00 ff f8 bdnz+ c000000000082030 <.xmon_core+0x1b80> > c00000000008203c: 3c 62 ff d4 addis r3,r2,-44 > c000000000082040: 39 3f 3e 10 addi r9,r31,15888 > c000000000082044: 39 40 00 00 li r10,0 > c000000000082048: 38 63 97 18 addi r3,r3,-26856 > c00000000008204c: f9 49 67 08 std r10,26376(r9) > c000000000082050: 91 49 66 fc stw r10,26364(r9) > c000000000082054: 48 00 17 ed bl c000000000083840 <.xmon_printf> > c000000000082058: 60 00 00 00 nop > c00000000008205c: 4b ff e9 b4 b c000000000080a10 <.xmon_core+0x560> > > > c000000000082060: 3d 22 00 0b addis r9,r2,11 > c000000000082064: 39 29 69 18 addi r9,r9,26904 > c000000000082068: e9 29 00 00 ld r9,0(r9) > c00000000008206c: e9 29 00 10 ld r9,16(r9) > c000000000082070: 79 26 e7 e1 rldicl. r6,r9,28,63 > c000000000082074: 41 82 07 5c beq- c0000000000827d0 <.xmon_core+0x2320> > c000000000082078: 39 5f 3e 10 addi r10,r31,15888 > c00000000008207c: e9 2a 67 08 ld r9,26376(r10) > c000000000082080: 2f a9 00 00 cmpdi cr7,r9,0 > c000000000082084: 41 9e 00 18 beq- cr7,c00000000008209c <.xmon_core+0x1bec> > c000000000082088: 81 09 00 14 lwz r8,20(r9) > c00000000008208c: 55 08 00 3a rlwinm r8,r8,0,0,29 > c000000000082090: 91 09 00 14 stw r8,20(r9) > c000000000082094: 39 20 00 00 li r9,0 > c000000000082098: f9 2a 67 08 std r9,26376(r10) > c00000000008209c: 38 61 01 60 addi r3,r1,352 > c0000000000820a0: 4b ff d3 21 bl c00000000007f3c0 <.scanhex> > c0000000000820a4: 2f a3 00 00 cmpdi cr7,r3,0 > c0000000000820a8: 41 9e e9 68 beq+ cr7,c000000000080a10 <.xmon_core+0x560> > c0000000000820ac: e8 61 01 60 ld r3,352(r1) > c0000000000820b0: 4b ff aa 41 bl c00000000007caf0 <.check_bp_loc> > c0000000000820b4: 2f a3 00 00 cmpdi cr7,r3,0 > c0000000000820b8: 41 9e e9 58 beq+ cr7,c000000000080a10 <.xmon_core+0x560> > c0000000000820bc: e8 61 01 60 ld r3,352(r1) > c0000000000820c0: 4b ff 9a 11 bl c00000000007bad0 <.new_breakpoint> > c0000000000820c4: 2c 23 00 00 cmpdi r3,0 > c0000000000820c8: 41 82 e9 48 beq+ c000000000080a10 <.xmon_core+0x560> > c0000000000820cc: 81 03 00 14 lwz r8,20(r3) > c0000000000820d0: 39 5f 3e 10 addi r10,r31,15888 > c0000000000820d4: f8 6a 67 08 std r3,26376(r10) > c0000000000820d8: 61 08 00 03 ori r8,r8,3 > c0000000000820dc: 91 03 00 14 stw r8,20(r3) > c0000000000820e0: 4b ff e9 30 b c000000000080a10 <.xmon_core+0x560> > > > c0000000000820e4: 4b ff cc 0d bl c00000000007ecf0 <.inchar> > c0000000000820e8: 3b 40 00 05 li r26,5 > c0000000000820ec: 2f 83 00 72 cmpwi cr7,r3,114 > c0000000000820f0: 41 9e 00 1c beq- cr7,c00000000008210c <.xmon_core+0x1c5c> > c0000000000820f4: 2f 83 00 77 cmpwi cr7,r3,119 > c0000000000820f8: 3b 40 00 06 li r26,6 > c0000000000820fc: 41 9e 00 10 beq- cr7,c00000000008210c <.xmon_core+0x1c5c> > c000000000082100: 39 3f 3e 10 addi r9,r31,15888 > c000000000082104: 3b 40 00 07 li r26,7 > c000000000082108: 90 69 24 d8 stw r3,9432(r9) > c00000000008210c: 3b 9f 3e 10 addi r28,r31,15888 > c000000000082110: 39 20 00 00 li r9,0 > c000000000082114: 38 7c 66 e8 addi r3,r28,26344 > c000000000082118: f9 3c 66 e8 std r9,26344(r28) > c00000000008211c: 91 3c 66 fc stw r9,26364(r28) > c000000000082120: 4b ff d2 a1 bl c00000000007f3c0 <.scanhex> > c000000000082124: 2f a3 00 00 cmpdi cr7,r3,0 > c000000000082128: 41 9e e8 e8 beq+ cr7,c000000000080a10 <.xmon_core+0x560> > c00000000008212c: 3d 20 bf ff lis r9,-16385 > c000000000082130: e9 5c 66 e8 ld r10,26344(r28) > c000000000082134: 61 29 ff ff ori r9,r9,65535 > c000000000082138: 79 29 07 c6 rldicr r9,r9,32,31 > c00000000008213c: 65 29 ff ff oris r9,r9,65535 > c000000000082140: 61 29 ff ff ori r9,r9,65535 > c000000000082144: 7f aa 48 40 cmpld cr7,r10,r9 > c000000000082148: 40 9d 0d 74 ble- cr7,c000000000082ebc <.xmon_core+0x2a0c> > c00000000008214c: 79 4a 07 24 rldicr r10,r10,0,60 > c000000000082150: 63 5a 00 10 ori r26,r26,16 > c000000000082154: f9 5c 66 e8 std r10,26344(r28) > c000000000082158: 93 5c 66 fc stw r26,26364(r28) > c00000000008215c: 4b ff e8 b4 b c000000000080a10 <.xmon_core+0x560> > > > c000000000082160: 2f 83 00 66 cmpwi cr7,r3,102 > c000000000082164: 41 9e f4 2c beq+ cr7,c000000000081590 <.xmon_core+0x10e0> > c000000000082168: 4b ff f4 20 b c000000000081588 <.xmon_core+0x10d8> > c00000000008216c: 60 00 00 00 nop > > /* > 3216 case 'r': > 3217 restart_spus(); > 3218 break; > */ > c000000000082170: 4b ff b0 41 bl c00000000007d1b0 <.restart_spus> > c000000000082174: 4b ff e8 9c b c000000000080a10 <.xmon_core+0x560> > > > c000000000082178: 4b ff d2 49 bl c00000000007f3c0 <.scanhex> > c00000000008217c: ea bc 00 50 ld r21,80(r28) > c000000000082180: 39 3f 3e 10 addi r9,r31,15888 > c000000000082184: 2f b5 00 00 cmpdi cr7,r21,0 > c000000000082188: 40 9e 09 dc bne- cr7,c000000000082b64 <.xmon_core+0x26b4> > c00000000008218c: 39 40 00 40 li r10,64 > c000000000082190: ea 69 25 f0 ld r19,9712(r9) > c000000000082194: 3a a0 00 40 li r21,64 > c000000000082198: f9 5c 00 50 std r10,80(r28) > c00000000008219c: 3e c2 ff d5 addis r22,r2,-43 > c0000000000821a0: 3e e2 ff b1 addis r23,r2,-79 > c0000000000821a4: 3f 02 ff d4 addis r24,r2,-44 > c0000000000821a8: 3b 21 01 28 addi r25,r1,296 > c0000000000821ac: 3a 00 00 00 li r16,0 > c0000000000821b0: 3a d6 f5 50 addi r22,r22,-2736 > c0000000000821b4: 3a f7 08 f0 addi r23,r23,2288 > c0000000000821b8: 3b 18 86 58 addi r24,r24,-31144 > c0000000000821bc: 60 00 00 00 nop > c0000000000821c0: 2f b5 00 10 cmpdi cr7,r21,16 > c0000000000821c4: 7e ba ab 78 mr r26,r21 > c0000000000821c8: 40 9d 00 08 ble- cr7,c0000000000821d0 <.xmon_core+0x1d20> > c0000000000821cc: 3b 40 00 10 li r26,16 > c0000000000821d0: 7e 63 9b 78 mr r3,r19 > c0000000000821d4: 7f 24 cb 78 mr r4,r25 > c0000000000821d8: 7f 45 07 b4 extsw r5,r26 > c0000000000821dc: 7e 1c 83 78 mr r28,r16 > c0000000000821e0: 4b ff a1 e1 bl c00000000007c3c0 <.mread> > c0000000000821e4: 7c 6e 1b 78 mr r14,r3 > c0000000000821e8: 7c 74 1b 78 mr r20,r3 > c0000000000821ec: 7e 73 1a 14 add r19,r19,r3 > c0000000000821f0: 48 00 00 2c b c00000000008221c <.xmon_core+0x1d6c> > c0000000000821f4: 60 00 00 00 nop > c0000000000821f8: 60 00 00 00 nop > c0000000000821fc: 60 00 00 00 nop > > > c000000000082200: 7c 99 e0 ae lbzx r4,r25,r28 > c000000000082204: 7f 03 c3 78 mr r3,r24 > c000000000082208: 3b 9c 00 01 addi r28,r28,1 > c00000000008220c: 48 00 16 35 bl c000000000083840 <.xmon_printf> > c000000000082210: 60 00 00 00 nop > c000000000082214: 7f ba e0 00 cmpd cr7,r26,r28 > c000000000082218: 40 9d 00 34 ble- cr7,c00000000008224c <.xmon_core+0x1d9c> > c00000000008221c: 7f b4 e0 00 cmpd cr7,r20,r28 > c000000000082220: 41 9d ff e0 bgt+ cr7,c000000000082200 <.xmon_core+0x1d50> > c000000000082224: 39 3f 3e 10 addi r9,r31,15888 > c000000000082228: 7e c3 b3 78 mr r3,r22 > c00000000008222c: e9 29 21 4a lwa r9,8520(r9) > c000000000082230: 3b 9c 00 01 addi r28,r28,1 > c000000000082234: 79 29 1f 24 rldicr r9,r9,3,60 > c000000000082238: 7c 97 48 2a ldx r4,r23,r9 > c00000000008223c: 48 00 16 05 bl c000000000083840 <.xmon_printf> > c000000000082240: 60 00 00 00 nop > c000000000082244: 7f ba e0 00 cmpd cr7,r26,r28 > c000000000082248: 41 9d ff d4 bgt+ cr7,c00000000008221c <.xmon_core+0x1d6c> > c00000000008224c: 7f ba 70 00 cmpd cr7,r26,r14 > c000000000082250: 7e ba a8 50 subf r21,r26,r21 > c000000000082254: 41 9d 00 0c bgt- cr7,c000000000082260 <.xmon_core+0x1db0> > c000000000082258: 2f b5 00 00 cmpdi cr7,r21,0 > c00000000008225c: 41 9d ff 64 bgt+ cr7,c0000000000821c0 <.xmon_core+0x1d10> > c000000000082260: 3c 62 ff d5 addis r3,r2,-43 > c000000000082264: 38 63 0e 68 addi r3,r3,3688 > c000000000082268: 48 00 15 d9 bl c000000000083840 <.xmon_printf> > c00000000008226c: 60 00 00 00 nop > c000000000082270: 3d 42 ff ed addis r10,r2,-19 > c000000000082274: 39 3f 3e 10 addi r9,r31,15888 > c000000000082278: 39 4a 44 e8 addi r10,r10,17640 > c00000000008227c: e9 09 25 f0 ld r8,9712(r9) > c000000000082280: e8 ea 00 50 ld r7,80(r10) > c000000000082284: 3d 42 ff d4 addis r10,r2,-44 > c000000000082288: 39 4a 91 20 addi r10,r10,-28384 > c00000000008228c: 7d 07 42 14 add r8,r7,r8 > c000000000082290: f9 49 26 38 std r10,9784(r9) > c000000000082294: f9 09 25 f0 std r8,9712(r9) > c000000000082298: 4b ff e7 78 b c000000000080a10 <.xmon_core+0x560> > /* > 3223 case 'f': > 3224 scanhex(&num); > 3225 if (num >= XMON_NUM_SPUS || !spu_info[num].spu) { > 3226 printf("*** Error: invalid spu number\n"); > 3227 return 0; > 3228 } > 3229 > 3230 switch (cmd) { > 3231 case 'f': > 3232 dump_spu_fields(spu_info[num].spu); > 3233 break; > 3234 default: > 3235 dump_spu_ls(num, subcmd); > 3236 break; > 3237 } > 3238 > 3239 break; > */ > c00000000008229c: 3b 20 00 00 li r25,0 > c0000000000822a0: 3b 9f 3e 10 addi r28,r31,15888 > c0000000000822a4: 38 7c 66 e0 addi r3,r28,26336 > c0000000000822a8: 4b ff d1 19 bl c00000000007f3c0 <.scanhex> > c0000000000822ac: e9 3c 66 e0 ld r9,26336(r28) > c0000000000822b0: 2b a9 00 0f cmpldi cr7,r9,15 > c0000000000822b4: 41 9d 01 0c bgt- cr7,c0000000000823c0 <.xmon_core+0x1f10> > c0000000000822b8: 1d 49 00 28 mulli r10,r9,40 > c0000000000822bc: 7f 9c 52 14 add r28,r28,r10 > c0000000000822c0: e8 7c 21 50 ld r3,8528(r28) > c0000000000822c4: 2f a3 00 00 cmpdi cr7,r3,0 > c0000000000822c8: 41 9e 00 f8 beq- cr7,c0000000000823c0 <.xmon_core+0x1f10> > c0000000000822cc: 2f 9a 00 66 cmpwi cr7,r26,102 ; 102 = 'f' > c0000000000822d0: 41 9e 05 b4 beq- cr7,c000000000082884 <.xmon_core+0x23d4> > c0000000000822d4: 7d 23 4b 78 mr r3,r9 > c0000000000822d8: 7f 24 cb 78 mr r4,r25 > c0000000000822dc: 4b ff df e5 bl c0000000000802c0 <.dump_spu_ls> > c0000000000822e0: 4b ff e7 30 b c000000000080a10 <.xmon_core+0x560> > > /* > 1627 unsigned long sp, toc; > 1628 asm("mr %0,1" : "=r" (sp) :); > 1629 asm("mr %0,2" : "=r" (toc) :); > 1630 > 1631 printf("msr = "REG" sprg0= "REG"\n", > 1632 mfmsr(), mfspr(SPRN_SPRG0)); > 1633 printf("pvr = "REG" sprg1= "REG"\n", > 1634 mfspr(SPRN_PVR), mfspr(SPRN_SPRG1)); > 1635 printf("dec = "REG" sprg2= "REG"\n", > 1636 mfspr(SPRN_DEC), mfspr(SPRN_SPRG2)); > 1637 printf("sp = "REG" sprg3= "REG"\n", sp, mfspr(SPRN_SPRG3)); > 1638 printf("toc = "REG" dar = "REG"\n", toc, mfspr(SPRN_DAR)); > 1639 > 1640 return; > */ > c0000000000822e4: 7c 3a 0b 78 mr r26,r1 > c0000000000822e8: 7c 5c 13 78 mr r28,r2 > c0000000000822ec: 7c 80 00 a6 mfmsr r4 > c0000000000822f0: 7c b0 42 a6 mfsprg r5,0 > c0000000000822f4: 3c 62 ff d4 addis r3,r2,-44 > c0000000000822f8: 38 63 91 28 addi r3,r3,-28376 > c0000000000822fc: 48 00 15 45 bl c000000000083840 <.xmon_printf> > c000000000082300: 60 00 00 00 nop > c000000000082304: 7c 9f 42 a6 mfpvr r4 > c000000000082308: 7c b1 42 a6 mfsprg r5,1 > c00000000008230c: 3c 62 ff d4 addis r3,r2,-44 > c000000000082310: 38 63 91 48 addi r3,r3,-28344 > c000000000082314: 48 00 15 2d bl c000000000083840 <.xmon_printf> > c000000000082318: 60 00 00 00 nop > c00000000008231c: 7c 96 02 a6 mfdec r4 > c000000000082320: 7c b2 42 a6 mfsprg r5,2 > c000000000082324: 3c 62 ff d4 addis r3,r2,-44 > c000000000082328: 38 63 91 68 addi r3,r3,-28312 > c00000000008232c: 48 00 15 15 bl c000000000083840 <.xmon_printf> > c000000000082330: 60 00 00 00 nop > c000000000082334: 7c b3 42 a6 mfsprg r5,3 > c000000000082338: 3c 62 ff d4 addis r3,r2,-44 > c00000000008233c: 7f 44 d3 78 mr r4,r26 > c000000000082340: 38 63 91 88 addi r3,r3,-28280 > c000000000082344: 48 00 14 fd bl c000000000083840 <.xmon_printf> > c000000000082348: 60 00 00 00 nop > c00000000008234c: 7c b3 02 a6 mfdar r5 > c000000000082350: 3c 62 ff d4 addis r3,r2,-44 > c000000000082354: 7f 84 e3 78 mr r4,r28 > c000000000082358: 38 63 91 a8 addi r3,r3,-28248 > c00000000008235c: 48 00 14 e5 bl c000000000083840 <.xmon_printf> > c000000000082360: 60 00 00 00 nop > c000000000082364: 4b ff e6 ac b c000000000080a10 <.xmon_core+0x560> > > > c000000000082368: 4b ff c9 89 bl c00000000007ecf0 <.inchar> > c00000000008236c: 78 69 00 20 clrldi r9,r3,32 > c000000000082370: 7c 79 1b 78 mr r25,r3 > c000000000082374: 39 49 ff d0 addi r10,r9,-48 > c000000000082378: 2b 8a 00 09 cmplwi cr7,r10,9 > c00000000008237c: 40 9d 00 24 ble- cr7,c0000000000823a0 <.xmon_core+0x1ef0> > c000000000082380: 39 49 ff 9f addi r10,r9,-97 > c000000000082384: 2b 8a 00 05 cmplwi cr7,r10,5 > c000000000082388: 40 9d 00 18 ble- cr7,c0000000000823a0 <.xmon_core+0x1ef0> > c00000000008238c: 39 29 ff bf addi r9,r9,-65 > c000000000082390: 2b 89 00 05 cmplwi cr7,r9,5 > c000000000082394: 40 9d 00 0c ble- cr7,c0000000000823a0 <.xmon_core+0x1ef0> > c000000000082398: 2f 83 00 0a cmpwi cr7,r3,10 > c00000000008239c: 40 9e ff 04 bne+ cr7,c0000000000822a0 <.xmon_core+0x1df0> > c0000000000823a0: 3b 9f 3e 10 addi r28,r31,15888 > c0000000000823a4: 39 3f 3e 10 addi r9,r31,15888 > c0000000000823a8: 38 7c 66 e0 addi r3,r28,26336 > c0000000000823ac: 93 29 24 d8 stw r25,9432(r9) > c0000000000823b0: 4b ff d0 11 bl c00000000007f3c0 <.scanhex> > c0000000000823b4: e9 3c 66 e0 ld r9,26336(r28) > c0000000000823b8: 2b a9 00 0f cmpldi cr7,r9,15 > c0000000000823bc: 40 9d fe fc ble+ cr7,c0000000000822b8 <.xmon_core+0x1e08> > c0000000000823c0: 3c 62 ff d4 addis r3,r2,-44 > c0000000000823c4: 38 63 91 d8 addi r3,r3,-28200 > c0000000000823c8: 48 00 14 79 bl c000000000083840 <.xmon_printf> > c0000000000823cc: 60 00 00 00 nop > c0000000000823d0: 4b ff e6 40 b c000000000080a10 <.xmon_core+0x560> > > > c0000000000823d4: 39 3a 44 e8 addi r9,r26,17640 > c0000000000823d8: 39 40 00 08 li r10,8 > c0000000000823dc: 91 49 00 40 stw r10,64(r9) > c0000000000823e0: 7f 74 db 78 mr r20,r27 > c0000000000823e4: 4b ff ee 9c b c000000000081280 <.xmon_core+0xdd0> > > > c0000000000823e8: 81 3c 66 d0 lwz r9,26320(r28) > c0000000000823ec: 7f 74 db 78 mr r20,r27 > c0000000000823f0: 7d 29 00 34 cntlzw r9,r9 > c0000000000823f4: 55 29 d9 7e rlwinm r9,r9,27,5,31 > c0000000000823f8: 91 3c 66 d0 stw r9,26320(r28) > c0000000000823fc: 4b ff ee 84 b c000000000081280 <.xmon_core+0xdd0> > > > c000000000082400: 39 20 00 01 li r9,1 > c000000000082404: 7f 74 db 78 mr r20,r27 > c000000000082408: 91 3c 66 d4 stw r9,26324(r28) > c00000000008240c: 4b ff ee 74 b c000000000081280 <.xmon_core+0xdd0> > > > c000000000082410: 3c c2 00 0f addis r6,r2,15 > c000000000082414: 7f 74 db 78 mr r20,r27 > c000000000082418: 38 66 64 00 addi r3,r6,25600 > c00000000008241c: 4b ff cf a5 bl c00000000007f3c0 <.scanhex> > c000000000082420: 4b ff ee 60 b c000000000081280 <.xmon_core+0xdd0> > > > c000000000082424: 39 3a 44 e8 addi r9,r26,17640 > c000000000082428: 39 40 00 04 li r10,4 > c00000000008242c: 91 49 00 40 stw r10,64(r9) > c000000000082430: 7f 74 db 78 mr r20,r27 > c000000000082434: 4b ff ee 4c b c000000000081280 <.xmon_core+0xdd0> > > > c000000000082438: 39 3a 44 e8 addi r9,r26,17640 > c00000000008243c: 39 40 00 01 li r10,1 > c000000000082440: 91 49 00 40 stw r10,64(r9) > c000000000082444: 7f 74 db 78 mr r20,r27 > c000000000082448: 4b ff ee 38 b c000000000081280 <.xmon_core+0xdd0> > > > c00000000008244c: 39 3a 44 e8 addi r9,r26,17640 > c000000000082450: e9 5c 25 f0 ld r10,9712(r28) > c000000000082454: 7f 74 db 78 mr r20,r27 > c000000000082458: e9 29 00 42 lwa r9,64(r9) > c00000000008245c: 7d 29 50 50 subf r9,r9,r10 > c000000000082460: f9 3c 25 f0 std r9,9712(r28) > c000000000082464: 4b ff ee 1c b c000000000081280 <.xmon_core+0xdd0> > > > c000000000082468: 2f 99 00 00 cmpwi cr7,r25,0 > c00000000008246c: 41 9c 07 70 blt- cr7,c000000000082bdc <.xmon_core+0x272c> > c000000000082470: e9 5c 25 f0 ld r10,9712(r28) > c000000000082474: 39 20 00 10 li r9,16 > c000000000082478: 3b 20 ff fc li r25,-4 > c00000000008247c: 7d 29 50 50 subf r9,r9,r10 > c000000000082480: 7f 74 db 78 mr r20,r27 > c000000000082484: f9 3c 25 f0 std r9,9712(r28) > c000000000082488: 4b ff ed f8 b c000000000081280 <.xmon_core+0xdd0> > > > c00000000008248c: e8 61 01 b8 ld r3,440(r1) > c000000000082490: 7f 74 db 78 mr r20,r27 > c000000000082494: 48 00 13 ad bl c000000000083840 <.xmon_printf> > c000000000082498: 60 00 00 00 nop > c00000000008249c: 4b ff ed e4 b c000000000081280 <.xmon_core+0xdd0> > > > c0000000000824a0: 39 3a 44 e8 addi r9,r26,17640 > c0000000000824a4: 38 61 01 60 addi r3,r1,352 > c0000000000824a8: e9 29 00 42 lwa r9,64(r9) > c0000000000824ac: 7f 74 db 78 mr r20,r27 > c0000000000824b0: f9 21 01 60 std r9,352(r1) > c0000000000824b4: 4b ff cf 0d bl c00000000007f3c0 <.scanhex> > c0000000000824b8: e9 3c 25 f0 ld r9,9712(r28) > c0000000000824bc: e9 41 01 60 ld r10,352(r1) > c0000000000824c0: 7d 2a 4a 14 add r9,r10,r9 > c0000000000824c4: f9 3c 25 f0 std r9,9712(r28) > c0000000000824c8: 4b ff ed b8 b c000000000081280 <.xmon_core+0xdd0> > > > c0000000000824cc: 39 3a 44 e8 addi r9,r26,17640 > c0000000000824d0: 38 61 01 60 addi r3,r1,352 > c0000000000824d4: e9 29 00 42 lwa r9,64(r9) > c0000000000824d8: 7f 74 db 78 mr r20,r27 > c0000000000824dc: f9 21 01 60 std r9,352(r1) > c0000000000824e0: 4b ff ce e1 bl c00000000007f3c0 <.scanhex> > c0000000000824e4: e9 5c 25 f0 ld r10,9712(r28) > c0000000000824e8: e9 21 01 60 ld r9,352(r1) > c0000000000824ec: 7d 29 50 50 subf r9,r9,r10 > c0000000000824f0: f9 3c 25 f0 std r9,9712(r28) > c0000000000824f4: 4b ff ed 8c b c000000000081280 <.xmon_core+0xdd0> > > > c0000000000824f8: 39 3a 44 e8 addi r9,r26,17640 > c0000000000824fc: 39 40 00 02 li r10,2 > c000000000082500: 91 49 00 40 stw r10,64(r9) > c000000000082504: 7f 74 db 78 mr r20,r27 > c000000000082508: 4b ff ed 78 b c000000000081280 <.xmon_core+0xdd0> > > > c00000000008250c: 2f 99 00 00 cmpwi cr7,r25,0 > c000000000082510: 40 9d 06 a8 ble- cr7,c000000000082bb8 <.xmon_core+0x2708> > c000000000082514: 39 20 00 01 li r9,1 > c000000000082518: e9 1c 25 f0 ld r8,9712(r28) > c00000000008251c: 7d 2a c8 30 slw r10,r9,r25 > c000000000082520: 3b 39 00 04 addi r25,r25,4 > c000000000082524: 7d 29 c8 30 slw r9,r9,r25 > c000000000082528: 7d 4a 07 b4 extsw r10,r10 > c00000000008252c: 7d 4a 40 50 subf r10,r10,r8 > c000000000082530: 7f 39 07 b4 extsw r25,r25 > c000000000082534: 7d 29 07 b4 extsw r9,r9 > c000000000082538: 7d 2a 4a 14 add r9,r10,r9 > c00000000008253c: 7f 74 db 78 mr r20,r27 > c000000000082540: f9 3c 25 f0 std r9,9712(r28) > c000000000082544: 4b ff ed 3c b c000000000081280 <.xmon_core+0xdd0> > > > c000000000082548: 39 20 00 00 li r9,0 > c00000000008254c: 7f 74 db 78 mr r20,r27 > c000000000082550: 91 3c 66 d4 stw r9,26324(r28) > c000000000082554: 4b ff ed 2c b c000000000081280 <.xmon_core+0xdd0> > > > c000000000082558: 39 3a 44 e8 addi r9,r26,17640 > c00000000008255c: 7f 74 db 78 mr r20,r27 > c000000000082560: e9 49 00 42 lwa r10,64(r9) > c000000000082564: e9 3c 25 f0 ld r9,9712(r28) > c000000000082568: 7d 2a 4a 14 add r9,r10,r9 > c00000000008256c: f9 3c 25 f0 std r9,9712(r28) > c000000000082570: 4b ff ed 10 b c000000000081280 <.xmon_core+0xdd0> > > > c000000000082574: 4b ff c7 7d bl c00000000007ecf0 <.inchar> > c000000000082578: 3a 00 00 09 li r16,9 > c00000000008257c: 3a 80 00 08 li r20,8 > c000000000082580: 2f a3 00 5c cmpdi cr7,r3,92 > c000000000082584: f8 61 01 60 std r3,352(r1) > c000000000082588: 41 9e 00 8c beq- cr7,c000000000082614 <.xmon_core+0x2164> > c00000000008258c: 60 00 00 00 nop > c000000000082590: 2f a3 00 27 cmpdi cr7,r3,39 > c000000000082594: 41 9e 00 f4 beq- cr7,c000000000082688 <.xmon_core+0x21d8> > c000000000082598: 39 3a 44 e8 addi r9,r26,17640 > c00000000008259c: 80 e9 00 40 lwz r7,64(r9) > c0000000000825a0: 2f 87 00 00 cmpwi cr7,r7,0 > c0000000000825a4: 7c e5 07 b4 extsw r5,r7 > c0000000000825a8: 40 9d 00 30 ble- cr7,c0000000000825d8 <.xmon_core+0x2128> > c0000000000825ac: e8 c1 01 60 ld r6,352(r1) > c0000000000825b0: 39 01 01 27 addi r8,r1,295 > c0000000000825b4: 78 e7 18 28 rldic r7,r7,3,32 > c0000000000825b8: 7f 69 db 78 mr r9,r27 > c0000000000825bc: 60 00 00 00 nop > c0000000000825c0: 39 49 00 08 addi r10,r9,8 > c0000000000825c4: 7c c9 4c 36 srd r9,r6,r9 > c0000000000825c8: 7f 8a 38 40 cmplw cr7,r10,r7 > c0000000000825cc: 9d 28 00 01 stbu r9,1(r8) > c0000000000825d0: 79 49 00 20 clrldi r9,r10,32 > c0000000000825d4: 40 9e ff ec bne+ cr7,c0000000000825c0 <.xmon_core+0x2110> > c0000000000825d8: 81 3c 66 d0 lwz r9,26320(r28) > c0000000000825dc: 2f 89 00 00 cmpwi cr7,r9,0 > c0000000000825e0: 41 9e 00 70 beq- cr7,c000000000082650 <.xmon_core+0x21a0> > c0000000000825e4: e8 7c 25 f0 ld r3,9712(r28) > c0000000000825e8: 38 81 01 28 addi r4,r1,296 > c0000000000825ec: 4b ff a6 35 bl c00000000007cc20 <.mwrite> > c0000000000825f0: 39 3a 44 e8 addi r9,r26,17640 > c0000000000825f4: e9 49 00 42 lwa r10,64(r9) > c0000000000825f8: e9 3c 25 f0 ld r9,9712(r28) > c0000000000825fc: 7d 2a 4a 14 add r9,r10,r9 > c000000000082600: f9 3c 25 f0 std r9,9712(r28) > c000000000082604: 4b ff c6 ed bl c00000000007ecf0 <.inchar> > c000000000082608: 2f a3 00 5c cmpdi cr7,r3,92 > c00000000008260c: f8 61 01 60 std r3,352(r1) > c000000000082610: 40 9e ff 80 bne+ cr7,c000000000082590 <.xmon_core+0x20e0> > c000000000082614: 4b ff c6 dd bl c00000000007ecf0 <.inchar> > c000000000082618: 7e a9 ab 78 mr r9,r21 > c00000000008261c: 2f 83 00 6e cmpwi cr7,r3,110 > c000000000082620: 41 9e 00 18 beq- cr7,c000000000082638 <.xmon_core+0x2188> > c000000000082624: 41 9d 02 28 bgt- cr7,c00000000008284c <.xmon_core+0x239c> > c000000000082628: 2f 83 00 62 cmpwi cr7,r3,98 > c00000000008262c: 7e 89 a3 78 mr r9,r20 > c000000000082630: 41 9e 00 08 beq- cr7,c000000000082638 <.xmon_core+0x2188> > c000000000082634: 7c 69 1b 78 mr r9,r3 > c000000000082638: f9 21 01 60 std r9,352(r1) > c00000000008263c: 4b ff ff 5c b c000000000082598 <.xmon_core+0x20e8> > > > c000000000082640: eb 61 01 c0 ld r27,448(r1) > c000000000082644: eb c1 01 c8 ld r30,456(r1) > c000000000082648: 4b ff c7 39 bl c00000000007ed80 <.scannl> > c00000000008264c: 4b ff e3 c4 b c000000000080a10 <.xmon_core+0x560> > > > c000000000082650: 7c a4 2b 78 mr r4,r5 > c000000000082654: 38 61 01 28 addi r3,r1,296 > c000000000082658: f8 a1 01 d0 std r5,464(r1) > c00000000008265c: 4b ff c7 75 bl c00000000007edd0 <.byterev> > c000000000082660: e8 a1 01 d0 ld r5,464(r1) > c000000000082664: 4b ff ff 80 b c0000000000825e4 <.xmon_core+0x2134> > c000000000082668: 60 00 00 00 nop > c00000000008266c: 60 00 00 00 nop > > > c000000000082670: 7c a4 2b 78 mr r4,r5 > c000000000082674: 38 61 01 28 addi r3,r1,296 > c000000000082678: f8 a1 01 d0 std r5,464(r1) > c00000000008267c: 4b ff c7 55 bl c00000000007edd0 <.byterev> > c000000000082680: e8 a1 01 d0 ld r5,464(r1) > c000000000082684: 4b ff ec 60 b c0000000000812e4 <.xmon_core+0xe34> > > > c000000000082688: 39 3a 44 e8 addi r9,r26,17640 > c00000000008268c: ea 89 00 42 lwa r20,64(r9) > c000000000082690: e9 3c 25 f0 ld r9,9712(r28) > c000000000082694: 7d 34 48 50 subf r9,r20,r9 > c000000000082698: f9 3c 25 f0 std r9,9712(r28) > c00000000008269c: 4b ff eb e4 b c000000000081280 <.xmon_core+0xdd0> > > > c0000000000826a0: 3d 22 00 09 addis r9,r2,9 > c0000000000826a4: 3b 80 00 01 li r28,1 > c0000000000826a8: e9 29 2f 00 ld r9,12032(r9) > c0000000000826ac: 4b ff e0 20 b c0000000000806cc <.xmon_core+0x21c> > > > c0000000000826b0: 7e 43 93 78 mr r3,r18 > c0000000000826b4: 48 00 11 8d bl c000000000083840 <.xmon_printf> > c0000000000826b8: 60 00 00 00 nop > c0000000000826bc: 4b ff e3 54 b c000000000080a10 <.xmon_core+0x560> > > > /* > 747 brk.address = dabr.address; > 748 brk.type = (dabr.enabled & HW_BRK_TYPE_DABR) | HW_BRK_TYPE_PRIV_ALL; > 749 brk.len = 8; > 750 set_breakpoint(&brk); > */ > c0000000000826c0: 55 29 07 7e clrlwi r9,r9,29 > c0000000000826c4: e9 4a 66 e8 ld r10,26344(r10) > c0000000000826c8: 38 61 01 28 addi r3,r1,296 > c0000000000826cc: 61 29 00 38 ori r9,r9,56 > c0000000000826d0: b1 21 01 30 sth r9,304(r1) > c0000000000826d4: 39 20 00 08 li r9,8 > c0000000000826d8: f9 41 01 28 std r10,296(r1) > c0000000000826dc: b1 21 01 32 sth r9,306(r1) > c0000000000826e0: 4b f9 18 a1 bl c000000000013f80 <.set_breakpoint> > c0000000000826e4: 60 00 00 00 nop > c0000000000826e8: 4b ff e0 e8 b c0000000000807d0 <.xmon_core+0x320> > > > /* > 533 if ((regs->msr & (MSR_IR|MSR_PR|MSR_64BIT)) == (MSR_IR|MSR_64BIT)) { > 534 bp = at_breakpoint(regs->nip); > 535 if (bp != NULL) { > 536 int stepped = emulate_step(regs, bp->instr[0]); > 537 if (stepped == 0) { > 538 regs->nip = (unsigned long) &bp->instr[0]; > 539 atomic_inc(&bp->ref_count); > 540 } else if (stepped < 0) { > 541 printf("Couldn't single-step %s instruction\n", > 542 (IS_RFID(bp->instr[0])? "rfid": "mtmsrd")); > 543 } > 544 } > 545 } > */ > c0000000000826ec: e8 e1 02 a0 ld r7,672(r1) > c0000000000826f0: 3b ea 00 08 addi r31,r10,8 > c0000000000826f4: 39 4a 20 08 addi r10,r10,8200 > c0000000000826f8: e9 07 01 00 ld r8,256(r7) > c0000000000826fc: 48 00 00 10 b c00000000008270c <.xmon_core+0x225c> > c000000000082700: 3b ff 00 20 addi r31,r31,32 > c000000000082704: 7f bf 50 00 cmpd cr7,r31,r10 > c000000000082708: 41 9e e0 b4 beq+ cr7,c0000000000807bc <.xmon_core+0x30c> > c00000000008270c: 81 3f 00 14 lwz r9,20(r31) > c000000000082710: 2f 89 00 00 cmpwi cr7,r9,0 > c000000000082714: 41 9e ff ec beq+ cr7,c000000000082700 <.xmon_core+0x2250> > c000000000082718: e9 3f 00 00 ld r9,0(r31) > c00000000008271c: 7f a8 48 00 cmpd cr7,r8,r9 > c000000000082720: 40 9e ff e0 bne+ cr7,c000000000082700 <.xmon_core+0x2250> > c000000000082724: 2f bf 00 00 cmpdi cr7,r31,0 > c000000000082728: 41 be e0 94 beq- cr7,c0000000000807bc <.xmon_core+0x30c> > c00000000008272c: 80 9f 00 08 lwz r4,8(r31) > c000000000082730: e8 61 02 a0 ld r3,672(r1) > c000000000082734: 48 79 b0 ed bl c00000000081d820 <.emulate_step> > c000000000082738: 60 00 00 00 nop > c00000000008273c: 2c 23 00 00 cmpdi r3,0 > c000000000082740: 40 82 05 08 bne- c000000000082c48 <.xmon_core+0x2798> > c000000000082744: e9 01 02 a0 ld r8,672(r1) > c000000000082748: 39 3f 00 08 addi r9,r31,8 > c00000000008274c: f9 28 01 00 std r9,256(r8) > c000000000082750: 39 3f 00 10 addi r9,r31,16 > c000000000082754: 7d 40 48 28 lwarx r10,0,r9 > c000000000082758: 31 4a 00 01 addic r10,r10,1 > c00000000008275c: 7d 40 49 2d stwcx. r10,0,r9 > c000000000082760: 40 a2 ff f4 bne- c000000000082754 <.xmon_core+0x22a4> > c000000000082764: 4b ff e0 58 b c0000000000807bc <.xmon_core+0x30c> > > > c000000000082768: e8 81 01 60 ld r4,352(r1) > c00000000008276c: 39 24 ff ff addi r9,r4,-1 > c000000000082770: 2b a9 00 ff cmpldi cr7,r9,255 > c000000000082774: 40 9d 02 70 ble- cr7,c0000000000829e4 <.xmon_core+0x2534> > c000000000082778: 39 5f 3e 10 addi r10,r31,15888 > c00000000008277c: 3b 8a 00 08 addi r28,r10,8 > c000000000082780: 39 4a 20 08 addi r10,r10,8200 > c000000000082784: 48 00 00 18 b c00000000008279c <.xmon_core+0x22ec> > c000000000082788: 60 00 00 00 nop > c00000000008278c: 60 00 00 00 nop > > > c000000000082790: 3b 9c 00 20 addi r28,r28,32 > c000000000082794: 7f bc 50 00 cmpd cr7,r28,r10 > c000000000082798: 41 9e 00 24 beq- cr7,c0000000000827bc <.xmon_core+0x230c> > c00000000008279c: 81 3c 00 14 lwz r9,20(r28) > c0000000000827a0: 2f 89 00 00 cmpwi cr7,r9,0 > c0000000000827a4: 41 9e ff ec beq+ cr7,c000000000082790 <.xmon_core+0x22e0> > c0000000000827a8: e9 3c 00 00 ld r9,0(r28) > c0000000000827ac: 7f a4 48 00 cmpd cr7,r4,r9 > c0000000000827b0: 40 9e ff e0 bne+ cr7,c000000000082790 <.xmon_core+0x22e0> > c0000000000827b4: 2f bc 00 00 cmpdi cr7,r28,0 > c0000000000827b8: 40 be 02 3c bne+ cr7,c0000000000829f4 <.xmon_core+0x2544> > c0000000000827bc: 3c 62 ff d4 addis r3,r2,-44 > c0000000000827c0: 38 63 97 38 addi r3,r3,-26824 > c0000000000827c4: 48 00 10 7d bl c000000000083840 <.xmon_printf> > c0000000000827c8: 60 00 00 00 nop > c0000000000827cc: 4b ff e2 44 b c000000000080a10 <.xmon_core+0x560> > > > c0000000000827d0: 3c 62 ff d4 addis r3,r2,-44 > c0000000000827d4: 38 63 9a 50 addi r3,r3,-26032 > c0000000000827d8: 48 00 10 69 bl c000000000083840 <.xmon_printf> > c0000000000827dc: 60 00 00 00 nop > c0000000000827e0: 4b ff e2 30 b c000000000080a10 <.xmon_core+0x560> > > > c0000000000827e4: 3f 82 ff ed addis r28,r2,-19 > c0000000000827e8: 3b 9c 44 e8 addi r28,r28,17640 > c0000000000827ec: 38 7c 00 48 addi r3,r28,72 > c0000000000827f0: 4b ff cb d1 bl c00000000007f3c0 <.scanhex> > c0000000000827f4: e9 3c 00 48 ld r9,72(r28) > c0000000000827f8: 2f a9 00 00 cmpdi cr7,r9,0 > c0000000000827fc: 41 9e 01 d8 beq- cr7,c0000000000829d4 <.xmon_core+0x2524> > c000000000082800: 3d 40 00 02 lis r10,2 > c000000000082804: 7d 24 4b 78 mr r4,r9 > c000000000082808: 7f a9 50 40 cmpld cr7,r9,r10 > c00000000008280c: 40 9d 00 0c ble- cr7,c000000000082818 <.xmon_core+0x2368> > c000000000082810: f9 5c 00 48 std r10,72(r28) > c000000000082814: 3c 80 00 02 lis r4,2 > c000000000082818: 3b 9f 3e 10 addi r28,r31,15888 > c00000000008281c: 3d 22 ff f7 addis r9,r2,-9 > c000000000082820: 38 c9 b4 68 addi r6,r9,-19352 > c000000000082824: e8 7c 25 f0 ld r3,9712(r28) > c000000000082828: 38 a0 00 01 li r5,1 > c00000000008282c: 4b ff 9d 35 bl c00000000007c560 <.generic_inst_dump> > c000000000082830: e9 5c 25 f0 ld r10,9712(r28) > c000000000082834: 3d 22 ff d4 addis r9,r2,-44 > c000000000082838: 39 29 91 18 addi r9,r9,-28392 > c00000000008283c: 7c 63 52 14 add r3,r3,r10 > c000000000082840: f9 3c 26 38 std r9,9784(r28) > c000000000082844: f8 7c 25 f0 std r3,9712(r28) > c000000000082848: 4b ff e1 c8 b c000000000080a10 <.xmon_core+0x560> > > > c00000000008284c: 2f 83 00 72 cmpwi cr7,r3,114 > c000000000082850: 7f c9 f3 78 mr r9,r30 > c000000000082854: 41 9e fd e4 beq+ cr7,c000000000082638 <.xmon_core+0x2188> > c000000000082858: 2f 83 00 74 cmpwi cr7,r3,116 > c00000000008285c: 7e 09 83 78 mr r9,r16 > c000000000082860: 41 9e fd d8 beq+ cr7,c000000000082638 <.xmon_core+0x2188> > c000000000082864: 7c 69 1b 78 mr r9,r3 > c000000000082868: 4b ff fd d0 b c000000000082638 <.xmon_core+0x2188> > > > c00000000008286c: e9 3f 00 00 ld r9,0(r31) > c000000000082870: 7c 00 48 6c dcbst 0,r9 > c000000000082874: 7c 00 04 ac sync > c000000000082878: 7c 00 4f ac icbi 0,r9 > c00000000008287c: 4c 00 01 2c isync > c000000000082880: 4b ff e5 70 b c000000000080df0 <.xmon_core+0x940> > > > /* > 3232 dump_spu_fields(spu_info[num].spu); > 3233 break; > */ > c000000000082884: 4b ff aa ed bl c00000000007d370 <.dump_spu_fields> > c000000000082888: 4b ff e1 88 b c000000000080a10 <.xmon_core+0x560> > > > c00000000008288c: e8 61 01 60 ld r3,352(r1) > c000000000082890: 4b ff a2 61 bl c00000000007caf0 <.check_bp_loc> > c000000000082894: 2f a3 00 00 cmpdi cr7,r3,0 > c000000000082898: 41 9e e1 78 beq+ cr7,c000000000080a10 <.xmon_core+0x560> > c00000000008289c: e8 61 01 60 ld r3,352(r1) > c0000000000828a0: 4b ff 92 31 bl c00000000007bad0 <.new_breakpoint> > c0000000000828a4: 2c 23 00 00 cmpdi r3,0 > c0000000000828a8: 41 82 e1 68 beq+ c000000000080a10 <.xmon_core+0x560> > c0000000000828ac: 81 43 00 14 lwz r10,20(r3) > c0000000000828b0: 61 4a 00 08 ori r10,r10,8 > c0000000000828b4: 91 43 00 14 stw r10,20(r3) > c0000000000828b8: 4b ff e1 58 b c000000000080a10 <.xmon_core+0x560> > > > /* > 395 secondary = !(xmon_taken && cpu == xmon_owner); > 396 goto cmdloop; > */ > c0000000000828bc: 3d 02 ff ed addis r8,r2,-19 > c0000000000828c0: 39 08 44 e8 addi r8,r8,17640 > c0000000000828c4: e9 08 00 28 ld r8,40(r8) > c0000000000828c8: 2f a8 00 00 cmpdi cr7,r8,0 > c0000000000828cc: 40 9e 05 c0 bne- cr7,c000000000082e8c <.xmon_core+0x29dc> > c0000000000828d0: 80 e1 01 90 lwz r7,400(r1) > c0000000000828d4: 39 40 00 01 li r10,1 > c0000000000828d8: 3b 80 00 01 li r28,1 > c0000000000828dc: 7d 4a 38 36 sld r10,r10,r7 > c0000000000828e0: f9 41 01 80 std r10,384(r1) > c0000000000828e4: 4b ff dd e8 b c0000000000806cc <.xmon_core+0x21c> > > > /* > 659 static struct bpt *at_breakpoint(unsigned long pc) > 660 { > 661 int i; > 662 struct bpt *bp; > 663 > 664 bp = bpts; > 665 for (i = 0; i < NBPTS; ++i, ++bp) > 666 if (bp->enabled && pc == bp->address) > 667 return bp; > 668 return NULL; > 669 } > */ > c0000000000828e8: e9 21 02 a0 ld r9,672(r1) > c0000000000828ec: 38 ca 00 08 addi r6,r10,8 > c0000000000828f0: 39 4a 20 08 addi r10,r10,8200 > c0000000000828f4: f8 c1 01 70 std r6,368(r1) > c0000000000828f8: e9 09 01 00 ld r8,256(r9) > c0000000000828fc: 7c c9 33 78 mr r9,r6 > c000000000082900: 48 00 00 1c b c00000000008291c <.xmon_core+0x246c> > c000000000082904: 60 00 00 00 nop > c000000000082908: 60 00 00 00 nop > c00000000008290c: 60 00 00 00 nop > c000000000082910: 39 29 00 20 addi r9,r9,32 > c000000000082914: 7f a9 50 00 cmpd cr7,r9,r10 > c000000000082918: 41 9e 05 f8 beq- cr7,c000000000082f10 <.xmon_core+0x2a60> > c00000000008291c: 80 c9 00 14 lwz r6,20(r9) > c000000000082920: 2f 86 00 00 cmpwi cr7,r6,0 > c000000000082924: 41 9e ff ec beq+ cr7,c000000000082910 <.xmon_core+0x2460> > c000000000082928: e8 c9 00 00 ld r6,0(r9) > c00000000008292c: 7f a8 30 00 cmpd cr7,r8,r6 > c000000000082930: 40 9e ff e0 bne+ cr7,c000000000082910 <.xmon_core+0x2460> > c000000000082934: 2f a9 00 00 cmpdi cr7,r9,0 > c000000000082938: f9 21 01 70 std r9,368(r1) ; 368(r1) = bp > c00000000008293c: 41 be df e4 beq- cr7,c000000000080920 <.xmon_core+0x470> > /* > 409 get_output_lock(); > 410 excprint(regs); > 411 if (bp) { > 412 printf("cpu 0x%x stopped at breakpoint 0x%x (", > 413 cpu, BP_NUM(bp)); > 414 xmon_print_symbol(regs->nip, " ", ")\n"); > 415 } > 416 if (unrecoverable_excp(regs)) > 417 printf("WARNING: exception is not recoverable, " > 418 "can't continue\n"); > */ > c000000000082940: 4b ff 8f 21 bl c00000000007b860 <.get_output_lock> > c000000000082944: e8 61 02 a0 ld r3,672(r1) ; 672(r1) = regs > c000000000082948: 4b ff c7 19 bl c00000000007f060 <.excprint> > c00000000008294c: e8 c1 01 70 ld r6,368(r1) > c000000000082950: 2f a6 00 00 cmpdi cr7,r6,0 ; check bp > c000000000082954: 41 9e 00 4c beq- cr7,c0000000000829a0 <.xmon_core+0x24f0> > c000000000082958: 3c a2 00 0f addis r5,r2,15 > c00000000008295c: e8 81 01 78 ld r4,376(r1) > c000000000082960: 3c 62 ff d4 addis r3,r2,-44 > c000000000082964: 38 a5 3e 10 addi r5,r5,15888 > c000000000082968: 38 63 8b 18 addi r3,r3,-29928 > c00000000008296c: 38 a5 00 08 addi r5,r5,8 > c000000000082970: 7c a5 30 50 subf r5,r5,r6 > c000000000082974: 7c a5 2e 74 sradi r5,r5,5 > c000000000082978: 38 a5 00 01 addi r5,r5,1 > c00000000008297c: 48 00 0e c5 bl c000000000083840 <.xmon_printf> > c000000000082980: 60 00 00 00 nop > c000000000082984: e8 e1 02 a0 ld r7,672(r1) > c000000000082988: 3c 82 ff d8 addis r4,r2,-40 > c00000000008298c: 3c a2 ff da addis r5,r2,-38 > c000000000082990: 38 84 a6 70 addi r4,r4,-22928 > c000000000082994: 38 a5 96 70 addi r5,r5,-27024 > c000000000082998: e8 67 01 00 ld r3,256(r7) > c00000000008299c: 4b ff 98 c5 bl c00000000007c260 <.xmon_print_symbol> > c0000000000829a0: e9 01 02 a0 ld r8,672(r1) > c0000000000829a4: e9 28 01 08 ld r9,264(r8) > c0000000000829a8: 79 2a ff e3 rldicl. r10,r9,63,63 ; check unrecoverable_excp(regs) > c0000000000829ac: 41 82 05 50 beq- c000000000082efc <.xmon_core+0x2a4c> > ; == "if (bp || unrecoverable_excp(regs))" > c0000000000829b0: 3d 22 00 0f addis r9,r2,15 > c0000000000829b4: 39 40 00 00 li r10,0 > c0000000000829b8: 38 c0 00 00 li r6,0 > c0000000000829bc: 91 49 3e 10 stw r10,15888(r9) ; release_output_lock(); > c0000000000829c0: f8 c1 02 a8 std r6,680(r1) /* fromipi = 0; */ > c0000000000829c4: 4b ff dc 80 b c000000000080644 <.xmon_core+0x194> > > > c0000000000829c8: 39 20 00 08 li r9,8 > c0000000000829cc: 91 2a 00 40 stw r9,64(r10) > c0000000000829d0: 4b ff e7 50 b c000000000081120 <.xmon_core+0xc70> > > > c0000000000829d4: 39 20 00 10 li r9,16 > c0000000000829d8: 38 80 00 10 li r4,16 > c0000000000829dc: f9 3c 00 48 std r9,72(r28) > c0000000000829e0: 4b ff fe 38 b c000000000082818 <.xmon_core+0x2368> > > > c0000000000829e4: 3b 9f 3e 10 addi r28,r31,15888 > c0000000000829e8: 79 29 2e a4 rldicr r9,r9,5,58 > c0000000000829ec: 3b 9c 00 08 addi r28,r28,8 > c0000000000829f0: 7f 9c 4a 14 add r28,r28,r9 > c0000000000829f4: 38 9f 3e 10 addi r4,r31,15888 > c0000000000829f8: 3c 62 ff d4 addis r3,r2,-44 > c0000000000829fc: 38 84 00 08 addi r4,r4,8 > c000000000082a00: 38 63 97 50 addi r3,r3,-26800 > c000000000082a04: 7c 84 e0 50 subf r4,r4,r28 > c000000000082a08: 7c 84 2e 74 sradi r4,r4,5 > c000000000082a0c: 38 84 00 01 addi r4,r4,1 > c000000000082a10: 48 00 0e 31 bl c000000000083840 <.xmon_printf> > c000000000082a14: 60 00 00 00 nop > c000000000082a18: 3c 82 ff d8 addis r4,r2,-40 > c000000000082a1c: 3c a2 ff da addis r5,r2,-38 > c000000000082a20: e8 7c 00 00 ld r3,0(r28) > c000000000082a24: 38 84 a6 70 addi r4,r4,-22928 > c000000000082a28: 38 a5 96 70 addi r5,r5,-27024 > c000000000082a2c: 4b ff 98 35 bl c00000000007c260 <.xmon_print_symbol> > c000000000082a30: 39 20 00 00 li r9,0 > c000000000082a34: 91 3c 00 14 stw r9,20(r28) > c000000000082a38: 4b ff df d8 b c000000000080a10 <.xmon_core+0x560> > > > c000000000082a3c: 39 3a 44 e8 addi r9,r26,17640 > c000000000082a40: 38 61 01 28 addi r3,r1,296 > c000000000082a44: e8 89 00 42 lwa r4,64(r9) > c000000000082a48: 4b ff c3 89 bl c00000000007edd0 <.byterev> > c000000000082a4c: 4b ff e7 6c b c0000000000811b8 <.xmon_core+0xd08> > > > c000000000082a50: 3c 62 ff d4 addis r3,r2,-44 > c000000000082a54: e8 9c 66 e8 ld r4,26344(r28) > c000000000082a58: 38 63 98 c8 addi r3,r3,-26424 > c000000000082a5c: 48 00 0d e5 bl c000000000083840 <.xmon_printf> > c000000000082a60: 60 00 00 00 nop > c000000000082a64: 81 3c 66 fc lwz r9,26364(r28) > c000000000082a68: 79 28 07 e1 clrldi. r8,r9,63 > c000000000082a6c: 7d 29 07 b4 extsw r9,r9 > c000000000082a70: 40 82 05 58 bne- c000000000082fc8 <.xmon_core+0x2b18> > c000000000082a74: 79 2a ff e3 rldicl. r10,r9,63,63 > c000000000082a78: 40 82 05 3c bne- c000000000082fb4 <.xmon_core+0x2b04> > c000000000082a7c: 3c 62 ff d9 addis r3,r2,-39 > c000000000082a80: 38 63 80 a0 addi r3,r3,-32608 > c000000000082a84: 48 00 0d bd bl c000000000083840 <.xmon_printf> > c000000000082a88: 60 00 00 00 nop > c000000000082a8c: 4b ff ec f0 b c00000000008177c <.xmon_core+0x12cc> > > > c000000000082a90: 39 29 00 28 addi r9,r9,40 > c000000000082a94: 39 40 00 01 li r10,1 > c000000000082a98: 7c 20 04 ac lwsync > c000000000082a9c: 7d 00 48 a8 ldarx r8,0,r9 > c000000000082aa0: 7d 07 53 78 or r7,r8,r10 > c000000000082aa4: 7c e0 49 ad stdcx. r7,0,r9 > c000000000082aa8: 40 a2 ff f4 bne- c000000000082a9c <.xmon_core+0x25ec> > c000000000082aac: 7c 00 04 ac sync > c000000000082ab0: 79 09 07 e1 clrldi. r9,r8,63 > c000000000082ab4: 40 82 ec 10 bne+ c0000000000816c4 <.xmon_core+0x1214> > c000000000082ab8: 7c 00 04 ac sync > c000000000082abc: a1 4d 00 0a lhz r10,10(r13) > c000000000082ac0: e8 81 01 60 ld r4,352(r1) > c000000000082ac4: 39 3f 3e 10 addi r9,r31,15888 > c000000000082ac8: e8 61 01 b0 ld r3,432(r1) > c000000000082acc: 91 49 66 54 stw r10,26196(r9) > c000000000082ad0: 48 00 0d 71 bl c000000000083840 <.xmon_printf> > c000000000082ad4: 60 00 00 00 nop > c000000000082ad8: 4b ff df 38 b c000000000080a10 <.xmon_core+0x560> > > > c000000000082adc: 3d 22 00 0b addis r9,r2,11 > c000000000082ae0: 38 60 00 00 li r3,0 > c000000000082ae4: 39 29 6a 30 addi r9,r9,27184 > c000000000082ae8: e9 29 01 28 ld r9,296(r9) > c000000000082aec: e9 49 00 00 ld r10,0(r9) > c000000000082af0: f8 41 00 28 std r2,40(r1) > c000000000082af4: 7d 49 03 a6 mtctr r10 > c000000000082af8: e8 49 00 08 ld r2,8(r9) > c000000000082afc: 4e 80 04 21 bctrl > c000000000082b00: e8 41 00 28 ld r2,40(r1) > c000000000082b04: 4b ff df 0c b c000000000080a10 <.xmon_core+0x560> > > > /* > 2081 static void dump_pacas(void) > 2082 { > 2083 unsigned long num; > 2084 int c; > 2085 > 2086 c = inchar(); > 2087 if (c == 'a') { > 2088 dump_all_pacas(); > 2089 return; > 2090 } > 2091 > 2092 termch = c; \* Put c back, it wasn't 'a' *\ > 2093 > 2094 if (scanhex(&num)) > 2095 dump_one_paca(num); > */ > c000000000082b08: 4b ff c1 e9 bl c00000000007ecf0 <.inchar> > c000000000082b0c: 2f 83 00 61 cmpwi cr7,r3,97 > c000000000082b10: 7c 69 1b 78 mr r9,r3 > c000000000082b14: 41 9e 04 08 beq- cr7,c000000000082f1c <.xmon_core+0x2a6c> > c000000000082b18: 3b 9f 3e 10 addi r28,r31,15888 > c000000000082b1c: 38 61 01 60 addi r3,r1,352 ; r3 = &num > c000000000082b20: 91 3c 24 d8 stw r9,9432(r28) > c000000000082b24: 4b ff c8 9d bl c00000000007f3c0 <.scanhex> > c000000000082b28: 2f a3 00 00 cmpdi cr7,r3,0 > c000000000082b2c: 41 9e 03 c4 beq- cr7,c000000000082ef0 <.xmon_core+0x2a40> > c000000000082b30: e8 61 01 66 lwa r3,356(r1) ; r3 = (int) num > c000000000082b34: 4b ff 90 7d bl c00000000007bbb0 <.dump_one_paca> > c000000000082b38: 4b ff de d8 b c000000000080a10 <.xmon_core+0x560> > > > c000000000082b3c: 3d 22 00 0b addis r9,r2,11 > c000000000082b40: 39 29 6a 30 addi r9,r9,27184 > c000000000082b44: e9 29 01 38 ld r9,312(r9) > c000000000082b48: e9 49 00 00 ld r10,0(r9) > c000000000082b4c: f8 41 00 28 std r2,40(r1) > c000000000082b50: 7d 49 03 a6 mtctr r10 > c000000000082b54: e8 49 00 08 ld r2,8(r9) > c000000000082b58: 4e 80 04 21 bctrl > c000000000082b5c: e8 41 00 28 ld r2,40(r1) > c000000000082b60: 4b ff de b0 b c000000000080a10 <.xmon_core+0x560> > > > c000000000082b64: ea 69 25 f0 ld r19,9712(r9) > c000000000082b68: 41 9d f6 34 bgt+ cr7,c00000000008219c <.xmon_core+0x1cec> > c000000000082b6c: 4b ff f6 f4 b c000000000082260 <.xmon_core+0x1db0> > > > c000000000082b70: 39 3a 44 e8 addi r9,r26,17640 > c000000000082b74: 7c 83 23 78 mr r3,r4 > c000000000082b78: e8 a9 00 42 lwa r5,64(r9) > c000000000082b7c: 38 81 01 28 addi r4,r1,296 > c000000000082b80: 4b ff 98 41 bl c00000000007c3c0 <.mread> > c000000000082b84: e8 9c 25 f0 ld r4,9712(r28) > c000000000082b88: f8 61 01 60 std r3,352(r1) > c000000000082b8c: 4b ff e5 e8 b c000000000081174 <.xmon_core+0xcc4> > > > c000000000082b90: 4b ff c0 11 bl c00000000007eba0 <.dump_log_buf> > c000000000082b94: 4b ff de 7c b c000000000080a10 <.xmon_core+0x560> > > > c000000000082b98: e8 9c 25 f0 ld r4,9712(r28) > c000000000082b9c: 7c 94 22 14 add r4,r20,r4 > c000000000082ba0: f8 9c 25 f0 std r4,9712(r28) > c000000000082ba4: 4b ff e5 c4 b c000000000081168 <.xmon_core+0xcb8> > > > c000000000082ba8: 7f 44 07 b4 extsw r4,r26 > c000000000082bac: 4b ff e4 28 b c000000000080fd4 <.xmon_core+0xb24> > > > c000000000082bb0: 38 63 26 40 addi r3,r3,9792 > c000000000082bb4: 4b ff f1 5c b c000000000081d10 <.xmon_core+0x1860> > > > c000000000082bb8: e9 5c 25 f0 ld r10,9712(r28) > c000000000082bbc: 39 20 00 10 li r9,16 > c000000000082bc0: 3b 20 00 04 li r25,4 > c000000000082bc4: 4b ff f9 74 b c000000000082538 <.xmon_core+0x2088> > > > c000000000082bc8: 3c 62 ff d4 addis r3,r2,-44 > c000000000082bcc: 38 63 97 68 addi r3,r3,-26776 > c000000000082bd0: 48 00 0c 71 bl c000000000083840 <.xmon_printf> > c000000000082bd4: 60 00 00 00 nop > c000000000082bd8: 4b ff de 38 b c000000000080a10 <.xmon_core+0x560> > > > c000000000082bdc: 7d 19 00 d0 neg r8,r25 > c000000000082be0: 39 20 00 01 li r9,1 > c000000000082be4: e9 5c 25 f0 ld r10,9712(r28) > c000000000082be8: 3b 39 ff fc addi r25,r25,-4 > c000000000082bec: 7d 28 40 30 slw r8,r9,r8 > c000000000082bf0: 7c f9 00 d0 neg r7,r25 > c000000000082bf4: 7d 08 07 b4 extsw r8,r8 > c000000000082bf8: 7d 29 38 30 slw r9,r9,r7 > c000000000082bfc: 7d 48 52 14 add r10,r8,r10 > c000000000082c00: 7f 39 07 b4 extsw r25,r25 > c000000000082c04: 7d 29 07 b4 extsw r9,r9 > c000000000082c08: 4b ff f8 74 b c00000000008247c <.xmon_core+0x1fcc> > > > c000000000082c0c: e8 9a 26 46 lwa r4,9796(r26) > c000000000082c10: e8 7a 66 b0 ld r3,26288(r26) > c000000000082c14: e8 ba 66 b8 ld r5,26296(r26) > c000000000082c18: 4b fc c7 dd bl c00000000004f3f4 <.memset> > c000000000082c1c: 60 00 00 00 nop > c000000000082c20: 4b ff dd f0 b c000000000080a10 <.xmon_core+0x560> > > > c000000000082c24: e8 7a 66 b0 ld r3,26288(r26) > c000000000082c28: e8 9a 26 48 ld r4,9800(r26) > c000000000082c2c: e8 ba 66 b8 ld r5,26296(r26) > c000000000082c30: 4b fc c8 c1 bl c00000000004f4f0 <.memmove> > c000000000082c34: 60 00 00 00 nop > c000000000082c38: 4b ff dd d8 b c000000000080a10 <.xmon_core+0x560> > > > c000000000082c3c: 39 20 00 01 li r9,1 > c000000000082c40: 91 2a 00 40 stw r9,64(r10) > c000000000082c44: 4b ff e4 dc b c000000000081120 <.xmon_core+0xc70> > > > c000000000082c48: 2f 83 00 00 cmpwi cr7,r3,0 > c000000000082c4c: 40 9c db 70 bge+ cr7,c0000000000807bc <.xmon_core+0x30c> > c000000000082c50: 81 5f 00 08 lwz r10,8(r31) > c000000000082c54: 3d 20 fc 00 lis r9,-1024 > c000000000082c58: 61 29 07 fe ori r9,r9,2046 > c000000000082c5c: 7d 4a 48 38 and r10,r10,r9 > c000000000082c60: 6d 49 4c 00 xoris r9,r10,19456 > c000000000082c64: 2f 89 00 24 cmpwi cr7,r9,36 > c000000000082c68: 41 9e 03 8c beq- cr7,c000000000082ff4 <.xmon_core+0x2b44> > c000000000082c6c: 3c 82 ff d4 addis r4,r2,-44 > c000000000082c70: 38 84 8a 98 addi r4,r4,-30056 > c000000000082c74: 3c 62 ff d4 addis r3,r2,-44 > c000000000082c78: 38 63 91 f8 addi r3,r3,-28168 > c000000000082c7c: 48 00 0b c5 bl c000000000083840 <.xmon_printf> > c000000000082c80: 60 00 00 00 nop > c000000000082c84: 4b ff db 38 b c0000000000807bc <.xmon_core+0x30c> > > > c000000000082c88: 3d 22 ff b3 addis r9,r2,-77 > c000000000082c8c: 38 80 08 00 li r4,2048 > c000000000082c90: 39 29 19 60 addi r9,r9,6496 > c000000000082c94: e8 69 00 00 ld r3,0(r9) > c000000000082c98: 48 39 26 59 bl c0000000004152f0 <.__bitmap_weight> > c000000000082c9c: 60 00 00 00 nop > c000000000082ca0: e9 41 01 78 ld r10,376(r1) > c000000000082ca4: 7c 7e 1b 78 mr r30,r3 > c000000000082ca8: 91 5d 66 54 stw r10,26196(r29) > c000000000082cac: 7c 00 04 ac sync > c000000000082cb0: 2f 83 00 01 cmpwi cr7,r3,1 > c000000000082cb4: 40 9d 00 3c ble- cr7,c000000000082cf0 <.xmon_core+0x2840> > c000000000082cb8: 3f e0 05 f5 lis r31,1525 > c000000000082cbc: 4b fb 55 b5 bl c000000000038270 <.smp_send_debugger_break> > c000000000082cc0: 60 00 00 00 nop > c000000000082cc4: 63 ff e1 00 ori r31,r31,57600 > c000000000082cc8: 3b bd 24 e8 addi r29,r29,9448 > c000000000082ccc: 48 00 00 0c b c000000000082cd8 <.xmon_core+0x2828> > > > c000000000082cd0: 37 ff ff ff addic. r31,r31,-1 > c000000000082cd4: 41 82 00 1c beq- c000000000082cf0 <.xmon_core+0x2840> > c000000000082cd8: 7f a3 eb 78 mr r3,r29 > c000000000082cdc: 38 80 08 00 li r4,2048 > c000000000082ce0: 48 39 26 11 bl c0000000004152f0 <.__bitmap_weight> > c000000000082ce4: 60 00 00 00 nop > c000000000082ce8: 7f 83 f0 40 cmplw cr7,r3,r30 > c000000000082cec: 41 9c ff e4 blt+ cr7,c000000000082cd0 <.xmon_core+0x2820> > c000000000082cf0: 3f e2 00 0f addis r31,r2,15 > c000000000082cf4: 3f 42 ff d4 addis r26,r2,-44 > c000000000082cf8: 3b ff 3e 10 addi r31,r31,15888 > c000000000082cfc: 3f 62 ff ed addis r27,r2,-19 > c000000000082d00: 7f fd fb 78 mr r29,r31 > c000000000082d04: 3b 5a 8b 78 addi r26,r26,-29832 > c000000000082d08: 3b ff 00 08 addi r31,r31,8 > c000000000082d0c: 3b dd 20 08 addi r30,r29,8200 > c000000000082d10: 48 00 00 1c b c000000000082d2c <.xmon_core+0x287c> > c000000000082d14: 60 00 00 00 nop > c000000000082d18: 60 00 00 00 nop > c000000000082d1c: 60 00 00 00 nop > > > c000000000082d20: 3b ff 00 20 addi r31,r31,32 > c000000000082d24: 7f bf f0 00 cmpd cr7,r31,r30 > c000000000082d28: 41 9e 00 4c beq- cr7,c000000000082d74 <.xmon_core+0x28c4> > c000000000082d2c: 81 3f 00 14 lwz r9,20(r31) > c000000000082d30: 71 29 00 0a andi. r9,r9,10 > c000000000082d34: 2f 89 00 08 cmpwi cr7,r9,8 > c000000000082d38: 40 9e ff e8 bne+ cr7,c000000000082d20 <.xmon_core+0x2870> > c000000000082d3c: e8 7f 00 00 ld r3,0(r31) > c000000000082d40: 38 81 01 60 addi r4,r1,352 > c000000000082d44: 38 a0 00 04 li r5,4 > c000000000082d48: 4b ff 96 79 bl c00000000007c3c0 <.mread> > c000000000082d4c: 2f 83 00 04 cmpwi cr7,r3,4 > c000000000082d50: 41 9e 00 e0 beq- cr7,c000000000082e30 <.xmon_core+0x2980> > c000000000082d54: e9 3f 00 00 ld r9,0(r31) > c000000000082d58: 7c 00 48 6c dcbst 0,r9 > c000000000082d5c: 7c 00 04 ac sync > c000000000082d60: 7c 00 4f ac icbi 0,r9 > c000000000082d64: 4c 00 01 2c isync > c000000000082d68: 3b ff 00 20 addi r31,r31,32 > c000000000082d6c: 7f bf f0 00 cmpd cr7,r31,r30 > c000000000082d70: 40 9e ff bc bne+ cr7,c000000000082d2c <.xmon_core+0x287c> > c000000000082d74: 3c 62 ff d3 addis r3,r2,-45 > c000000000082d78: 38 63 c5 c8 addi r3,r3,-14904 > c000000000082d7c: 4b fa 38 85 bl c000000000026600 <.rtas_token> > c000000000082d80: 60 00 00 00 nop > c000000000082d84: 78 63 00 20 clrldi r3,r3,32 > c000000000082d88: 2f 83 ff ff cmpwi cr7,r3,-1 > c000000000082d8c: 90 7d 66 58 stw r3,26200(r29) > c000000000082d90: 41 9e 00 48 beq- cr7,c000000000082dd8 <.xmon_core+0x2928> > c000000000082d94: 3c 60 40 00 lis r3,16384 > c000000000082d98: 39 5d 66 70 addi r10,r29,26224 > c000000000082d9c: 78 63 07 c6 rldicr r3,r3,32,31 > c000000000082da0: 39 00 00 03 li r8,3 > c000000000082da4: 60 63 66 58 ori r3,r3,26200 > c000000000082da8: 39 20 00 00 li r9,0 > c000000000082dac: 91 1d 66 5c stw r8,26204(r29) > c000000000082db0: f9 5d 66 a8 std r10,26280(r29) > c000000000082db4: 39 00 00 01 li r8,1 > c000000000082db8: 39 40 23 28 li r10,9000 > c000000000082dbc: 7c 7d 1a 14 add r3,r29,r3 > c000000000082dc0: 91 1d 66 60 stw r8,26208(r29) > c000000000082dc4: 91 5d 66 64 stw r10,26212(r29) > c000000000082dc8: 91 3d 66 68 stw r9,26216(r29) > c000000000082dcc: 91 3d 66 6c stw r9,26220(r29) > c000000000082dd0: 4b f8 77 2d bl c00000000000a4fc <.enter_rtas> > c000000000082dd4: 60 00 00 00 nop > c000000000082dd8: e8 c1 01 70 ld r6,368(r1) > c000000000082ddc: 2f a6 00 00 cmpdi cr7,r6,0 > c000000000082de0: 41 9e 01 bc beq- cr7,c000000000082f9c <.xmon_core+0x2aec> > c000000000082de4: e9 01 02 a0 ld r8,672(r1) > c000000000082de8: 3d 22 ff f7 addis r9,r2,-9 > c000000000082dec: 38 80 00 01 li r4,1 > c000000000082df0: 38 c9 b4 68 addi r6,r9,-19352 > c000000000082df4: 38 a0 00 00 li r5,0 > c000000000082df8: e8 68 01 00 ld r3,256(r8) > c000000000082dfc: 4b ff 97 65 bl c00000000007c560 <.generic_inst_dump> > c000000000082e00: 3c 62 ff d4 addis r3,r2,-44 > c000000000082e04: 38 63 8b a0 addi r3,r3,-29792 > c000000000082e08: 48 00 0a 39 bl c000000000083840 <.xmon_printf> > c000000000082e0c: 60 00 00 00 nop > c000000000082e10: 7c 00 04 ac sync > c000000000082e14: 3d 22 00 0f addis r9,r2,15 > c000000000082e18: 39 40 00 01 li r10,1 > c000000000082e1c: 39 29 3e 10 addi r9,r9,15888 > c000000000082e20: 91 49 66 50 stw r10,26192(r9) > c000000000082e24: 3d 22 00 09 addis r9,r2,9 > c000000000082e28: e9 29 2f 00 ld r9,12032(r9) > c000000000082e2c: 4b ff d8 a0 b c0000000000806cc <.xmon_core+0x21c> > > > c000000000082e30: 81 3b 44 e8 lwz r9,17640(r27) > c000000000082e34: 81 41 01 60 lwz r10,352(r1) > c000000000082e38: 7f 8a 48 00 cmpw cr7,r10,r9 > c000000000082e3c: 40 9e ff 18 bne+ cr7,c000000000082d54 <.xmon_core+0x28a4> > c000000000082e40: e8 7f 00 00 ld r3,0(r31) > c000000000082e44: 38 9f 00 08 addi r4,r31,8 > c000000000082e48: 38 a0 00 04 li r5,4 > c000000000082e4c: 4b ff 9d d5 bl c00000000007cc20 <.mwrite> > c000000000082e50: 2f 83 00 04 cmpwi cr7,r3,4 > c000000000082e54: 41 9e ff 00 beq+ cr7,c000000000082d54 <.xmon_core+0x28a4> > c000000000082e58: e8 9f 00 00 ld r4,0(r31) > c000000000082e5c: 7f 43 d3 78 mr r3,r26 > c000000000082e60: 48 00 09 e1 bl c000000000083840 <.xmon_printf> > c000000000082e64: 60 00 00 00 nop > c000000000082e68: 4b ff fe b8 b c000000000082d20 <.xmon_core+0x2870> > > > c000000000082e6c: 7f 96 c8 40 cmplw cr7,r22,r25 > c000000000082e70: 40 9c db a0 bge+ cr7,c000000000080a10 <.xmon_core+0x560> > c000000000082e74: 3c 62 ff d4 addis r3,r2,-44 > c000000000082e78: 7f 24 cb 78 mr r4,r25 > c000000000082e7c: 38 63 8b e8 addi r3,r3,-29720 > c000000000082e80: 48 00 09 c1 bl c000000000083840 <.xmon_printf> > c000000000082e84: 60 00 00 00 nop > c000000000082e88: 4b ff db 88 b c000000000080a10 <.xmon_core+0x560> > > > c000000000082e8c: e9 01 01 78 ld r8,376(r1) > c000000000082e90: 81 4a 66 54 lwz r10,26196(r10) > c000000000082e94: 80 c1 01 90 lwz r6,400(r1) > c000000000082e98: 7d 4a 42 78 xor r10,r10,r8 > c000000000082e9c: 39 00 00 01 li r8,1 > c000000000082ea0: 7d 4a 00 34 cntlzw r10,r10 > c000000000082ea4: 7d 08 30 36 sld r8,r8,r6 > c000000000082ea8: f9 01 01 80 std r8,384(r1) > c000000000082eac: 55 4a d9 7e rlwinm r10,r10,27,5,31 > c000000000082eb0: 69 4a 00 01 xori r10,r10,1 > c000000000082eb4: 7d 5c 07 b4 extsw r28,r10 > c000000000082eb8: 4b ff d8 14 b c0000000000806cc <.xmon_core+0x21c> > > > c000000000082ebc: 38 61 01 28 addi r3,r1,296 > c000000000082ec0: 48 00 09 81 bl c000000000083840 <.xmon_printf> > c000000000082ec4: 60 00 00 00 nop > c000000000082ec8: 4b ff db 48 b c000000000080a10 <.xmon_core+0x560> > > > /* > 859 case 's': > 860 if (do_spu_cmd() == 0) > 861 break; > 862 if (do_step(excp)) > 863 return cmd; > 864 break; > */ > c000000000082ecc: e8 6f 01 00 ld r3,256(r15) > c000000000082ed0: 38 81 01 60 addi r4,r1,352 > c000000000082ed4: 38 a0 00 04 li r5,4 > c000000000082ed8: 4b ff 94 e9 bl c00000000007c3c0 <.mread> > c000000000082edc: 2f 83 00 04 cmpwi cr7,r3,4 > c000000000082ee0: 41 9e 01 20 beq- cr7,c000000000083000 <.xmon_core+0x2b50> > c000000000082ee4: e9 21 02 a0 ld r9,672(r1) > c000000000082ee8: e9 09 01 08 ld r8,264(r9) > c000000000082eec: 4b ff de 98 b c000000000080d84 <.xmon_core+0x8d4> > > > /* > 2096 else > 2097 dump_one_paca(xmon_owner); > 2098 } > */ > c000000000082ef0: e8 7c 66 56 lwa r3,26196(r28) > c000000000082ef4: 4b ff 8c bd bl c00000000007bbb0 <.dump_one_paca> > c000000000082ef8: 4b ff db 18 b c000000000080a10 <.xmon_core+0x560> > > > /* > 417 printf("WARNING: exception is not recoverable, " > 418 "can't continue\n"); > */ > c000000000082efc: 3c 62 ff d4 addis r3,r2,-44 > c000000000082f00: 38 63 8b 40 addi r3,r3,-29888 > c000000000082f04: 48 00 09 3d bl c000000000083840 <.xmon_printf> > c000000000082f08: 60 00 00 00 nop > c000000000082f0c: 4b ff fa a4 b c0000000000829b0 <.xmon_core+0x2500> > > > /* > 668 return NULL; > 669 } > */ > c000000000082f10: 39 00 00 00 li r8,0 > c000000000082f14: f9 01 01 70 std r8,368(r1) > c000000000082f18: 4b ff da 08 b c000000000080920 <.xmon_core+0x470> > > > /* > 2068 static void dump_all_pacas(void) > 2069 { > 2070 int cpu; > 2071 > 2072 if (num_possible_cpus() == 0) { > 2073 printf("No possible cpus, use 'dp #' to dump individual cpus\n"); > 2074 return; > 2075 } > 2077 for_each_possible_cpu(cpu) > 2078 dump_one_paca(cpu); > 2079 } > */ > c000000000082f1c: 3d 22 ff b3 addis r9,r2,-77 > c000000000082f20: 38 80 08 00 li r4,2048 > c000000000082f24: 39 29 19 68 addi r9,r9,6504 > c000000000082f28: 3b 80 ff ff li r28,-1 > c000000000082f2c: 3f 22 00 09 addis r25,r2,9 > c000000000082f30: eb 49 00 00 ld r26,0(r9) > c000000000082f34: 7f 43 d3 78 mr r3,r26 > c000000000082f38: 48 39 23 b9 bl c0000000004152f0 <.__bitmap_weight> > c000000000082f3c: 60 00 00 00 nop > c000000000082f40: 2f a3 00 00 cmpdi cr7,r3,0 > c000000000082f44: 40 9e 00 14 bne- cr7,c000000000082f58 <.xmon_core+0x2aa8> > c000000000082f48: 48 00 00 e4 b c00000000008302c <.xmon_core+0x2b7c> > c000000000082f4c: 60 00 00 00 nop > c000000000082f50: 7f 83 e3 78 mr r3,r28 > c000000000082f54: 4b ff 8c 5d bl c00000000007bbb0 <.dump_one_paca> > c000000000082f58: 38 bc 00 01 addi r5,r28,1 > c000000000082f5c: 7f 43 d3 78 mr r3,r26 > c000000000082f60: 38 80 08 00 li r4,2048 > c000000000082f64: 7c a5 07 b4 extsw r5,r5 > c000000000082f68: 48 39 51 d9 bl c000000000418140 <.find_next_bit> > c000000000082f6c: 60 00 00 00 nop > c000000000082f70: 39 39 33 b8 addi r9,r25,13240 > c000000000082f74: 81 29 00 00 lwz r9,0(r9) > c000000000082f78: 7c 7c 07 b4 extsw r28,r3 > c000000000082f7c: 7f 89 e0 00 cmpw cr7,r9,r28 > c000000000082f80: 41 9d ff d0 bgt+ cr7,c000000000082f50 <.xmon_core+0x2aa0> > c000000000082f84: 4b ff da 8c b c000000000080a10 <.xmon_core+0x560> > > > c000000000082f88: 3c 62 ff d4 addis r3,r2,-44 > c000000000082f8c: 38 63 8c 38 addi r3,r3,-29640 > c000000000082f90: 48 00 08 b1 bl c000000000083840 <.xmon_printf> > c000000000082f94: 60 00 00 00 nop > c000000000082f98: 4b ff da 78 b c000000000080a10 <.xmon_core+0x560> > > > c000000000082f9c: e8 e1 02 a0 ld r7,672(r1) > c000000000082fa0: e9 27 01 40 ld r9,320(r7) > c000000000082fa4: 79 29 06 e4 rldicr r9,r9,0,59 > c000000000082fa8: 2f a9 0d 00 cmpdi cr7,r9,3328 > c000000000082fac: 40 9e fe 54 bne+ cr7,c000000000082e00 <.xmon_core+0x2950> > c000000000082fb0: 4b ff fe 34 b c000000000082de4 <.xmon_core+0x2934> > > > c000000000082fb4: 3c 62 ff d9 addis r3,r2,-39 > c000000000082fb8: 38 63 ae e8 addi r3,r3,-20760 > c000000000082fbc: 48 00 08 85 bl c000000000083840 <.xmon_printf> > c000000000082fc0: 60 00 00 00 nop > c000000000082fc4: 4b ff fa b8 b c000000000082a7c <.xmon_core+0x25cc> > > > c000000000082fc8: 3c 62 ff da addis r3,r2,-38 > c000000000082fcc: 38 63 35 20 addi r3,r3,13600 > c000000000082fd0: 48 00 08 71 bl c000000000083840 <.xmon_printf> > c000000000082fd4: 60 00 00 00 nop > c000000000082fd8: e9 3c 66 fe lwa r9,26364(r28) > c000000000082fdc: 4b ff fa 98 b c000000000082a74 <.xmon_core+0x25c4> > > > c000000000082fe0: 38 80 ff ff li r4,-1 > c000000000082fe4: 78 84 04 20 clrldi r4,r4,48 > c000000000082fe8: 4b ff df ec b c000000000080fd4 <.xmon_core+0xb24> > > > c000000000082fec: 3b 20 00 00 li r25,0 > c000000000082ff0: 4b ff e2 14 b c000000000081204 <.xmon_core+0xd54> > > > c000000000082ff4: 3c 82 ff d4 addis r4,r2,-44 > c000000000082ff8: 38 84 8a 90 addi r4,r4,-30064 > c000000000082ffc: 4b ff fc 78 b c000000000082c74 <.xmon_core+0x27c4> > > > /* static int do_step(struct pt_regs *regs) */ > /* { */ > c000000000083000: 80 81 01 60 lwz r4,352(r1) > c000000000083004: 7d e3 7b 78 mr r3,r15 > c000000000083008: 48 79 a8 19 bl c00000000081d820 <.emulate_step> > c00000000008300c: 60 00 00 00 nop > c000000000083010: 2f 83 00 00 cmpwi cr7,r3,0 > c000000000083014: 41 9c 00 dc blt- cr7,c0000000000830f0 <.xmon_core+0x2c40> > c000000000083018: 2f a3 00 00 cmpdi cr7,r3,0 > c00000000008301c: 40 9e 00 80 bne- cr7,c00000000008309c <.xmon_core+0x2bec> > c000000000083020: e8 e1 02 a0 ld r7,672(r1) > c000000000083024: e9 07 01 08 ld r8,264(r7) > c000000000083028: 4b ff dd 5c b c000000000080d84 <.xmon_core+0x8d4> > /* } */ > > > /* > 3269 2073 printf("No possible cpus, use 'dp #' to dump individual cpus\n"); > 3270 2074 return; > */ > c00000000008302c: 3c 62 ff d4 addis r3,r2,-44 > c000000000083030: 38 63 90 e0 addi r3,r3,-28448 > c000000000083034: 48 00 08 0d bl c000000000083840 <.xmon_printf> > c000000000083038: 60 00 00 00 nop > c00000000008303c: 4b ff d9 d4 b c000000000080a10 <.xmon_core+0x560> > > > /* > 377 if (cpumask_test_cpu(cpu, &cpus_in_xmon)) { > 378 get_output_lock(); > 379 excprint(regs); > 380 printf("cpu 0x%x: Exception %lx %s in xmon, " > 381 "returning to main loop\n", > 382 cpu, regs->trap, getvecname(TRAP(regs))); > 383 release_output_lock(); > 384 longjmp(xmon_fault_jmp[cpu], 1); > 385 } > */ > c000000000083040: 4b ff 88 21 bl c00000000007b860 <.get_output_lock> > c000000000083044: e8 61 02 a0 ld r3,672(r1) > c000000000083048: 4b ff c0 19 bl c00000000007f060 <.excprint> > c00000000008304c: e9 21 02 a0 ld r9,672(r1) > c000000000083050: eb a9 01 40 ld r29,320(r9) > c000000000083054: 7b a3 06 e4 rldicr r3,r29,0,59 > c000000000083058: 4b ff 88 a9 bl c00000000007b900 <.getvecname> > c00000000008305c: e8 81 01 78 ld r4,376(r1) > c000000000083060: 7f a5 eb 78 mr r5,r29 > c000000000083064: 7c 66 1b 78 mr r6,r3 > c000000000083068: 3c 62 ff d4 addis r3,r2,-44 > c00000000008306c: 38 63 8a a8 addi r3,r3,-30040 > c000000000083070: 48 00 07 d1 bl c000000000083840 <.xmon_printf> > c000000000083074: 60 00 00 00 nop > c000000000083078: e9 41 01 78 ld r10,376(r1) > c00000000008307c: 38 80 00 01 li r4,1 > c000000000083080: 79 49 1f 24 rldicr r9,r10,3,60 > c000000000083084: 7f de 4a 14 add r30,r30,r9 > c000000000083088: 39 20 00 00 li r9,0 > c00000000008308c: e8 7e 26 50 ld r3,9808(r30) > c000000000083090: 91 3f 3e 10 stw r9,15888(r31) > c000000000083094: 4b f9 e5 c9 bl c00000000002165c <.longjmp> > c000000000083098: 60 00 00 00 nop > > > /* > 946 regs->trap = 0xd00 | (regs->trap & 1); > 947 printf("stepped to "); > 948 xmon_print_symbol(regs->nip, " ", "\n"); > 949 ppc_inst_dump(regs->nip, 1, 0); > 950 return 0; > */ > c00000000008309c: e9 2f 01 40 ld r9,320(r15) > c0000000000830a0: 3c 62 ff d4 addis r3,r2,-44 > c0000000000830a4: 38 63 92 20 addi r3,r3,-28128 > c0000000000830a8: 79 29 07 e0 clrldi r9,r9,63 > c0000000000830ac: 61 29 0d 00 ori r9,r9,3328 > c0000000000830b0: f9 2f 01 40 std r9,320(r15) > c0000000000830b4: 48 00 07 8d bl c000000000083840 <.xmon_printf> > c0000000000830b8: 60 00 00 00 nop > c0000000000830bc: e8 6f 01 00 ld r3,256(r15) > c0000000000830c0: 3c 82 ff d8 addis r4,r2,-40 > c0000000000830c4: 3c a2 ff d5 addis r5,r2,-43 > c0000000000830c8: 38 84 a6 70 addi r4,r4,-22928 > c0000000000830cc: 38 a5 0e 68 addi r5,r5,3688 > c0000000000830d0: 4b ff 91 91 bl c00000000007c260 <.xmon_print_symbol> > c0000000000830d4: 3d 22 ff f7 addis r9,r2,-9 > c0000000000830d8: e8 6f 01 00 ld r3,256(r15) > c0000000000830dc: 38 80 00 01 li r4,1 > c0000000000830e0: 38 c9 b4 68 addi r6,r9,-19352 > c0000000000830e4: 38 a0 00 00 li r5,0 > c0000000000830e8: 4b ff 94 79 bl c00000000007c560 <.generic_inst_dump> > c0000000000830ec: 4b ff d9 24 b c000000000080a10 <.xmon_core+0x560> > > > /* > 941 printf("Couldn't single-step %s instruction\n", > 942 (IS_RFID(instr)? "rfid": "mtmsrd")); > 943 return 0; > */ > c0000000000830f0: 3d 20 fc 00 lis r9,-1024 > c0000000000830f4: 81 41 01 60 lwz r10,352(r1) > c0000000000830f8: 61 29 07 fe ori r9,r9,2046 > c0000000000830fc: 7d 4a 48 38 and r10,r10,r9 > c000000000083100: 6d 49 4c 00 xoris r9,r10,19456 > c000000000083104: 2f 89 00 24 cmpwi cr7,r9,36 > c000000000083108: 41 9e 00 20 beq- cr7,c000000000083128 <.xmon_core+0x2c78> > c00000000008310c: 3c 82 ff d4 addis r4,r2,-44 > c000000000083110: 38 84 8a 98 addi r4,r4,-30056 > c000000000083114: 3c 62 ff d4 addis r3,r2,-44 > c000000000083118: 38 63 91 f8 addi r3,r3,-28168 > c00000000008311c: 48 00 07 25 bl c000000000083840 <.xmon_printf> > c000000000083120: 60 00 00 00 nop > c000000000083124: 4b ff d8 ec b c000000000080a10 <.xmon_core+0x560> > c000000000083128: 3c 82 ff d4 addis r4,r2,-44 > c00000000008312c: 38 84 8a 90 addi r4,r4,-30064 > c000000000083130: 4b ff ff e4 b c000000000083114 <.xmon_core+0x2c64> > c000000000083134: 60 00 00 00 nop > c000000000083138: 60 00 00 00 nop > c00000000008313c: 60 00 00 00 nop > > > > On 07/26/2013 12:11 PM, Chen Gang wrote: >> On 07/24/2013 08:38 AM, Chen Gang wrote: >>> On 07/23/2013 09:58 PM, Michael Ellerman wrote: >>>> On Mon, Jul 22, 2013 at 03:02:53PM +0800, Chen Gang wrote: >>>>> Hello Maintainers: >>>>> >>>>> With allmodconfig and EXTRA_CFLAGS=-W", it reports warnings below: >>>> >>>>> >>>>> arch/powerpc/xmon/xmon.c:3027:6: warning: variable ‘i’ might be clobbered by ‘longjmp’ or ‘vfork’ [-Wclobbered] >>>>> arch/powerpc/xmon/xmon.c:3068:6: warning: variable ‘i’ might be clobbered by ‘longjmp’ or ‘vfork’ [-Wclobbered] >>>> >>>> In both these cases we are inside the body of a for loop and we do a >>>> if (setjmp) / else block. Although looking at the source the value of i >>>> is not modified by the setjmp, I guess it's possible that the compiler >>>> might reorder the increment of i inside the setjmp and loose the value >>>> when we longjmp. >>>> >>> >>> I should continue to confirm the details based on your valuable >>> information, thanks. >>> >>> >> >> >> For stop_spus() and restart_spus(), at least now, the related warnings >> are not issue: the variable 'i' is stored in stack "120(r1)". >> >> The related warning: >> >> arch/powerpc/xmon/xmon.c:3027:6: warning: variable ‘i’ might be clobbered by ‘longjmp’ or ‘vfork’ [-Wclobbered] >> arch/powerpc/xmon/xmon.c:3068:6: warning: variable ‘i’ might be clobbered by ‘longjmp’ or ‘vfork’ [-Wclobbered] >> >> The related source code: >> >> 3024 static void stop_spus(void) >> 3025 { >> 3026 struct spu *spu; >> 3027 int i; >> 3028 u64 tmp; >> 3029 >> 3030 for (i = 0; i < XMON_NUM_SPUS; i++) { /* XMON_NUM_SPUS == 16 */ >> 3031 if (!spu_info[i].spu) >> 3032 continue; >> 3033 >> 3034 if (setjmp(bus_error_jmp) == 0) { >> 3035 catch_memory_errors = 1; >> 3036 sync(); >> 3037 >> 3038 spu = spu_info[i].spu; >> 3039 >> 3040 spu_info[i].saved_spu_runcntl_RW = >> 3041 in_be32(&spu->problem->spu_runcntl_RW); >> 3042 >> 3043 tmp = spu_mfc_sr1_get(spu); >> 3044 spu_info[i].saved_mfc_sr1_RW = tmp; >> 3045 >> 3046 tmp &= ~MFC_STATE1_MASTER_RUN_CONTROL_MASK; >> 3047 spu_mfc_sr1_set(spu, tmp); >> 3048 >> 3049 sync(); >> 3050 __delay(200); >> 3051 >> 3052 spu_info[i].stopped_ok = 1; >> 3053 >> 3054 printf("Stopped spu %.2d (was %s)\n", i, >> 3055 spu_info[i].saved_spu_runcntl_RW ? >> 3056 "running" : "stopped"); >> 3057 } else { >> 3058 catch_memory_errors = 0; >> 3059 printf("*** Error stopping spu %.2d\n", i); >> 3060 } >> 3061 catch_memory_errors = 0; >> 3062 } >> 3063 } >> 3064 >> >> >> >> The related disassembly code: >> >> "make ARCH=powerpc EXTRA_CFLAGS=-W" >> "powerpc64-linux-gnu-objdump -d vmlinux.o > vmlinux.S" >> "gcc version 4.7.1 20120606 (Red Hat 4.7.1-0.1.20120606) (GCC)" >> "GNU objdump version 2.23.51.0.3-1.fc16 20120918" >> >> c00000000007cfd0 <.stop_spus>: >> /* { */ >> c00000000007cfd0: 7c 08 02 a6 mflr r0 >> c00000000007cfd4: fb c1 ff f0 std r30,-16(r1) >> c00000000007cfd8: fb e1 ff f8 std r31,-8(r1) >> c00000000007cfdc: 3d 22 00 0f addis r9,r2,15 >> c00000000007cfe0: 39 29 3e 10 addi r9,r9,15888 >> c00000000007cfe4: 3d 02 ff d4 addis r8,r2,-44 >> c00000000007cfe8: 39 29 21 50 addi r9,r9,8528 >> c00000000007cfec: 3d 42 ff d4 addis r10,r2,-44 >> c00000000007cff0: 39 08 83 f8 addi r8,r8,-31752 >> c00000000007cff4: 39 4a 83 d8 addi r10,r10,-31784 >> c00000000007cff8: f8 01 00 10 std r0,16(r1) >> c00000000007cffc: f8 21 ff 51 stdu r1,-176(r1) >> c00000000007d000: f9 21 00 70 std r9,112(r1) >> c00000000007d004: 39 20 00 00 li r9,0 >> c00000000007d008: f9 21 00 78 std r9,120(r1) ; i = 0; >> c00000000007d00c: f9 01 00 88 std r8,136(r1) >> c00000000007d010: f9 41 00 90 std r10,144(r1) >> c00000000007d014: 48 00 01 28 b c00000000007d13c <.stop_spus+0x16c> >> c00000000007d018: 60 00 00 00 nop >> c00000000007d01c: 60 00 00 00 nop >> >> >> /* if (setjmp(bus_error_jmp) == 0) { */ >> c00000000007d020: 3d 22 00 0f addis r9,r2,15 >> c00000000007d024: 39 40 00 01 li r10,1 >> c00000000007d028: 39 29 3e 10 addi r9,r9,15888 >> c00000000007d02c: 91 49 20 c0 stw r10,8384(r9) >> c00000000007d030: 7c 00 04 ac sync >> c00000000007d034: 4c 00 01 2c isync >> c00000000007d038: e9 01 00 80 ld r8,128(r1) >> c00000000007d03c: eb e8 00 00 ld r31,0(r8) >> c00000000007d040: e9 3f 00 20 ld r9,32(r31) >> c00000000007d044: 7c 00 04 ac sync >> c00000000007d048: 81 29 40 1c lwz r9,16412(r9) >> c00000000007d04c: 0c 09 00 00 twi 0,r9,0 >> c00000000007d050: 4c 00 01 2c isync >> c00000000007d054: 91 28 00 10 stw r9,16(r8) >> c00000000007d058: 3d 22 00 0f addis r9,r2,15 >> c00000000007d05c: 3b c9 f5 e8 addi r30,r9,-2584 >> c00000000007d060: 7f e3 fb 78 mr r3,r31 >> c00000000007d064: e9 3e 00 00 ld r9,0(r30) >> c00000000007d068: e9 29 00 60 ld r9,96(r9) >> c00000000007d06c: e9 49 00 00 ld r10,0(r9) >> c00000000007d070: f8 41 00 28 std r2,40(r1) >> c00000000007d074: 7d 49 03 a6 mtctr r10 >> c00000000007d078: e8 49 00 08 ld r2,8(r9) >> c00000000007d07c: 4e 80 04 21 bctrl >> c00000000007d080: e8 41 00 28 ld r2,40(r1) >> c00000000007d084: e9 01 00 80 ld r8,128(r1) >> c00000000007d088: e9 3e 00 00 ld r9,0(r30) >> c00000000007d08c: f8 68 00 08 std r3,8(r8) >> c00000000007d090: 7c 64 1b 78 mr r4,r3 >> c00000000007d094: 78 84 d0 42 rldicl r4,r4,58,1 >> c00000000007d098: 7f e3 fb 78 mr r3,r31 >> c00000000007d09c: 78 84 30 00 rotldi r4,r4,6 >> c00000000007d0a0: e9 29 00 58 ld r9,88(r9) >> c00000000007d0a4: e9 49 00 00 ld r10,0(r9) >> c00000000007d0a8: f8 41 00 28 std r2,40(r1) >> c00000000007d0ac: 7d 49 03 a6 mtctr r10 >> c00000000007d0b0: e8 49 00 08 ld r2,8(r9) >> c00000000007d0b4: 4e 80 04 21 bctrl >> c00000000007d0b8: e8 41 00 28 ld r2,40(r1) >> c00000000007d0bc: 7c 00 04 ac sync >> c00000000007d0c0: 4c 00 01 2c isync >> c00000000007d0c4: 38 60 00 c8 li r3,200 >> c00000000007d0c8: 4b fa 01 e9 bl c00000000001d2b0 <.__delay> ; __delay(200) >> c00000000007d0cc: 60 00 00 00 nop >> c00000000007d0d0: e9 01 00 80 ld r8,128(r1) >> c00000000007d0d4: 39 40 00 01 li r10,1 >> c00000000007d0d8: 81 28 00 10 lwz r9,16(r8) >> c00000000007d0dc: 99 48 00 20 stb r10,32(r8) >> c00000000007d0e0: 3d 02 ff d4 addis r8,r2,-44 >> c00000000007d0e4: 38 a8 83 c8 addi r5,r8,-31800 >> c00000000007d0e8: 2f 89 00 00 cmpwi cr7,r9,0 >> c00000000007d0ec: 40 9e 00 0c bne- cr7,c00000000007d0f8 <.stop_spus+0x128> >> c00000000007d0f0: 3d 22 ff d4 addis r9,r2,-44 >> c00000000007d0f4: 38 a9 83 d0 addi r5,r9,-31792 >> c00000000007d0f8: e8 61 00 90 ld r3,144(r1) >> c00000000007d0fc: e8 81 00 78 ld r4,120(r1) ; 120(r1) = i >> c00000000007d100: 48 00 67 41 bl c000000000083840 <.xmon_printf> >> c00000000007d104: 60 00 00 00 nop >> >> >> /* catch_memory_errors = 0; */ >> c00000000007d108: 3d 22 00 0f addis r9,r2,15 >> c00000000007d10c: 39 40 00 00 li r10,0 >> c00000000007d110: 39 29 3e 10 addi r9,r9,15888 >> c00000000007d114: 91 49 20 c0 stw r10,8384(r9) >> >> >> /* for (i = 0; i < XMON_NUM_SPUS; i++) { */ >> c00000000007d118: e9 01 00 78 ld r8,120(r1) ; 120(r1) = i; >> c00000000007d11c: 39 28 00 01 addi r9,r8,1 ; i++ >> c00000000007d120: 2f 89 00 10 cmpwi cr7,r9,16 ; i < XMON_NUM_SPUS >> c00000000007d124: 7d 29 07 b4 extsw r9,r9 >> c00000000007d128: f9 21 00 78 std r9,120(r1) ; 120(r1) = i; >> c00000000007d12c: e9 21 00 70 ld r9,112(r1) ; >> c00000000007d130: 39 29 00 28 addi r9,r9,40 ; 112(r1) = [i] for spu_info; >> c00000000007d134: f9 21 00 70 std r9,112(r1) ; >> c00000000007d138: 41 9e 00 58 beq- cr7,c00000000007d190 <.stop_spus+0x1c0> >> >> /* if (!spu_info[i].spu) */ >> /* continue; */ >> c00000000007d13c: e9 01 00 70 ld r8,112(r1) >> c00000000007d140: 3d 42 00 0f addis r10,r2,15 >> c00000000007d144: 38 6a 5e 18 addi r3,r10,24088 >> c00000000007d148: e9 28 00 00 ld r9,0(r8) >> c00000000007d14c: f9 01 00 80 std r8,128(r1) >> c00000000007d150: 2f a9 00 00 cmpdi cr7,r9,0 >> c00000000007d154: 41 9e ff c4 beq+ cr7,c00000000007d118 <.stop_spus+0x148> >> >> /* if (setjmp(bus_error_jmp) == 0) { */ >> c00000000007d158: 4b fa 44 99 bl c0000000000215f0 <.setjmp> >> c00000000007d15c: 60 00 00 00 nop >> c00000000007d160: 2f a3 00 00 cmpdi cr7,r3,0 >> c00000000007d164: e8 81 00 78 ld r4,120(r1) ; 120(r1) = i for 2nd param of printf in exception processing after setjmp. >> c00000000007d168: e8 61 00 88 ld r3,136(r1) >> c00000000007d16c: 41 9e fe b4 beq+ cr7,c00000000007d020 <.stop_spus+0x50> >> >> /* } else { */ >> c00000000007d170: 3d 42 00 0f addis r10,r2,15 >> c00000000007d174: 39 00 00 00 li r8,0 >> c00000000007d178: 39 4a 3e 10 addi r10,r10,15888 >> c00000000007d17c: 91 0a 20 c0 stw r8,8384(r10) /* catch_memory_errors = 0; */ >> c00000000007d180: 48 00 66 c1 bl c000000000083840 <.xmon_printf> /* called with correct i */ >> c00000000007d184: 60 00 00 00 nop >> c00000000007d188: 4b ff ff 80 b c00000000007d108 <.stop_spus+0x138> >> c00000000007d18c: 60 00 00 00 nop >> /* } */ >> >> c00000000007d190: 38 21 00 b0 addi r1,r1,176 >> c00000000007d194: e8 01 00 10 ld r0,16(r1) >> c00000000007d198: eb c1 ff f0 ld r30,-16(r1) >> c00000000007d19c: eb e1 ff f8 ld r31,-8(r1) >> c00000000007d1a0: 7c 08 03 a6 mtlr r0 >> c00000000007d1a4: 4e 80 00 20 blr >> c00000000007d1a8: 60 00 00 00 nop >> c00000000007d1ac: 60 00 00 00 nop >> /* } */ >> >> >> The related assembly code (they really save and restore 'r1'): >> >> _GLOBAL(setjmp) >> mflr r0 >> PPC_STL r0,0(r3) >> PPC_STL r1,SZL(r3) >> PPC_STL r2,2*SZL(r3) >> mfcr r0 >> PPC_STL r0,3*SZL(r3) >> PPC_STL r13,4*SZL(r3) >> PPC_STL r14,5*SZL(r3) >> PPC_STL r15,6*SZL(r3) >> PPC_STL r16,7*SZL(r3) >> PPC_STL r17,8*SZL(r3) >> PPC_STL r18,9*SZL(r3) >> PPC_STL r19,10*SZL(r3) >> PPC_STL r20,11*SZL(r3) >> PPC_STL r21,12*SZL(r3) >> PPC_STL r22,13*SZL(r3) >> PPC_STL r23,14*SZL(r3) >> PPC_STL r24,15*SZL(r3) >> PPC_STL r25,16*SZL(r3) >> PPC_STL r26,17*SZL(r3) >> PPC_STL r27,18*SZL(r3) >> PPC_STL r28,19*SZL(r3) >> PPC_STL r29,20*SZL(r3) >> PPC_STL r30,21*SZL(r3) >> PPC_STL r31,22*SZL(r3) >> li r3,0 >> blr >> >> _GLOBAL(longjmp) >> PPC_LCMPI r4,0 >> bne 1f >> li r4,1 >> 1: PPC_LL r13,4*SZL(r3) >> PPC_LL r14,5*SZL(r3) >> PPC_LL r15,6*SZL(r3) >> PPC_LL r16,7*SZL(r3) >> PPC_LL r17,8*SZL(r3) >> PPC_LL r18,9*SZL(r3) >> PPC_LL r19,10*SZL(r3) >> PPC_LL r20,11*SZL(r3) >> PPC_LL r21,12*SZL(r3) >> PPC_LL r22,13*SZL(r3) >> PPC_LL r23,14*SZL(r3) >> PPC_LL r24,15*SZL(r3) >> PPC_LL r25,16*SZL(r3) >> PPC_LL r26,17*SZL(r3) >> PPC_LL r27,18*SZL(r3) >> PPC_LL r28,19*SZL(r3) >> PPC_LL r29,20*SZL(r3) >> PPC_LL r30,21*SZL(r3) >> PPC_LL r31,22*SZL(r3) >> PPC_LL r0,3*SZL(r3) >> mtcrf 0x38,r0 >> PPC_LL r0,0(r3) >> PPC_LL r1,SZL(r3) >> PPC_LL r2,2*SZL(r3) >> mtlr r0 >> mr r3,r4 >> blr >> >> >> >> >> The same to resetart_spus() >> >> >> 3065 static void restart_spus(void) >> 3066 { >> 3067 struct spu *spu; >> 3068 int i; >> 3069 >> 3070 for (i = 0; i < XMON_NUM_SPUS; i++) { >> 3071 if (!spu_info[i].spu) >> 3072 continue; >> 3073 >> 3074 if (!spu_info[i].stopped_ok) { >> 3075 printf("*** Error, spu %d was not successfully stopped" >> 3076 ", not restarting\n", i); >> 3077 continue; >> 3078 } >> 3079 >> 3080 if (setjmp(bus_error_jmp) == 0) { >> 3081 catch_memory_errors = 1; >> 3082 sync(); >> 3083 >> 3084 spu = spu_info[i].spu; >> 3085 spu_mfc_sr1_set(spu, spu_info[i].saved_mfc_sr1_RW); >> 3086 out_be32(&spu->problem->spu_runcntl_RW, >> 3087 spu_info[i].saved_spu_runcntl_RW); >> 3088 >> 3089 sync(); >> 3090 __delay(200); >> 3091 >> 3092 printf("Restarted spu %.2d\n", i); >> 3093 } else { >> 3094 catch_memory_errors = 0; >> 3095 printf("*** Error restarting spu %.2d\n", i); >> 3096 } >> 3097 catch_memory_errors = 0; >> 3098 } >> 3099 } >> 3100 >> >> c00000000007d1b0 <.restart_spus>: >> /* { */ >> c00000000007d1b0: 7c 08 02 a6 mflr r0 >> c00000000007d1b4: fb e1 ff f8 std r31,-8(r1) >> c00000000007d1b8: 3d 22 00 0f addis r9,r2,15 >> c00000000007d1bc: 3c e2 ff d4 addis r7,r2,-44 >> c00000000007d1c0: 39 29 3e 10 addi r9,r9,15888 >> c00000000007d1c4: 3d 02 ff d4 addis r8,r2,-44 >> c00000000007d1c8: 39 29 21 50 addi r9,r9,8528 >> c00000000007d1cc: 3d 42 ff d4 addis r10,r2,-44 >> c00000000007d1d0: 38 e7 84 70 addi r7,r7,-31632 >> c00000000007d1d4: 39 08 84 58 addi r8,r8,-31656 >> c00000000007d1d8: f8 01 00 10 std r0,16(r1) >> c00000000007d1dc: 39 4a 84 18 addi r10,r10,-31720 >> c00000000007d1e0: f8 21 ff 51 stdu r1,-176(r1) >> c00000000007d1e4: f9 21 00 70 std r9,112(r1) >> c00000000007d1e8: 39 20 00 00 li r9,0 >> c00000000007d1ec: f9 21 00 78 std r9,120(r1) ; i = 0; >> c00000000007d1f0: f8 e1 00 88 std r7,136(r1) >> c00000000007d1f4: f9 01 00 98 std r8,152(r1) >> c00000000007d1f8: f9 41 00 90 std r10,144(r1) >> c00000000007d1fc: 48 00 00 34 b c00000000007d230 <.restart_spus+0x80> >> >> /* if (!spu_info[i].stopped_ok) { */ >> /* printf(....); */ >> /* continue; */ >> c00000000007d200: e8 61 00 90 ld r3,144(r1) >> c00000000007d204: 48 00 66 3d bl c000000000083840 <.xmon_printf> >> c00000000007d208: 60 00 00 00 nop >> >> /* for (i = 0; i < XMON_NUM_SPUS; i++) { */ >> c00000000007d20c: e9 01 00 78 ld r8,120(r1) >> c00000000007d210: 39 28 00 01 addi r9,r8,1 ; i++ >> c00000000007d214: 2f 89 00 10 cmpwi cr7,r9,16 ; i < XMON_NUM_SPUS >> c00000000007d218: 7d 29 07 b4 extsw r9,r9 >> c00000000007d21c: f9 21 00 78 std r9,120(r1) >> c00000000007d220: e9 21 00 70 ld r9,112(r1) >> c00000000007d224: 39 29 00 28 addi r9,r9,40 >> c00000000007d228: f9 21 00 70 std r9,112(r1) >> c00000000007d22c: 41 9e 01 0c beq- cr7,c00000000007d338 <.restart_spus+0x188> >> >> /* if (!spu_info[i].spu) */ >> /* continue; */ >> c00000000007d230: e9 01 00 70 ld r8,112(r1) >> c00000000007d234: 3d 42 00 0f addis r10,r2,15 >> c00000000007d238: e8 81 00 78 ld r4,120(r1) ; i as 2nd parameter for xmon_printf(). >> c00000000007d23c: 38 6a 5e 18 addi r3,r10,24088 >> c00000000007d240: e9 28 00 00 ld r9,0(r8) >> c00000000007d244: f9 01 00 80 std r8,128(r1) >> c00000000007d248: 2f a9 00 00 cmpdi cr7,r9,0 >> c00000000007d24c: 41 9e ff c0 beq+ cr7,c00000000007d20c <.restart_spus+0x5c> >> >> /* if (!spu_info[i].stopped_ok) { */ >> c00000000007d250: 89 28 00 20 lbz r9,32(r8) >> c00000000007d254: 2f 89 00 00 cmpwi cr7,r9,0 >> c00000000007d258: 41 9e ff a8 beq+ cr7,c00000000007d200 <.restart_spus+0x50> >> /* } */ >> >> /* if (setjmp(bus_error_jmp) == 0) { */ >> c00000000007d25c: 4b fa 43 95 bl c0000000000215f0 <.setjmp> >> c00000000007d260: 60 00 00 00 nop >> c00000000007d264: 2f a3 00 00 cmpdi cr7,r3,0 >> c00000000007d268: e8 81 00 78 ld r4,120(r1) ; i as 2nd parameter for xmon_printf() after setjmp(). >> c00000000007d26c: e8 61 00 88 ld r3,136(r1) >> c00000000007d270: 40 9e 00 e0 bne- cr7,c00000000007d350 <.restart_spus+0x1a0> >> >> c00000000007d274: 3d 22 00 0f addis r9,r2,15 >> c00000000007d278: 39 40 00 01 li r10,1 >> c00000000007d27c: 39 29 3e 10 addi r9,r9,15888 >> c00000000007d280: 91 49 20 c0 stw r10,8384(r9) >> c00000000007d284: 7c 00 04 ac sync >> c00000000007d288: 4c 00 01 2c isync >> c00000000007d28c: 3d 02 00 0f addis r8,r2,15 >> c00000000007d290: e9 41 00 80 ld r10,128(r1) >> c00000000007d294: 39 28 f5 e8 addi r9,r8,-2584 >> c00000000007d298: eb ea 00 00 ld r31,0(r10) >> c00000000007d29c: e8 8a 00 08 ld r4,8(r10) >> c00000000007d2a0: e9 29 00 00 ld r9,0(r9) >> c00000000007d2a4: 7f e3 fb 78 mr r3,r31 >> c00000000007d2a8: e9 29 00 58 ld r9,88(r9) >> c00000000007d2ac: e9 49 00 00 ld r10,0(r9) >> c00000000007d2b0: f8 41 00 28 std r2,40(r1) >> c00000000007d2b4: 7d 49 03 a6 mtctr r10 >> c00000000007d2b8: e8 49 00 08 ld r2,8(r9) >> c00000000007d2bc: 4e 80 04 21 bctrl >> c00000000007d2c0: e8 41 00 28 ld r2,40(r1) >> c00000000007d2c4: e9 01 00 80 ld r8,128(r1) >> c00000000007d2c8: e9 3f 00 20 ld r9,32(r31) >> c00000000007d2cc: 81 48 00 10 lwz r10,16(r8) >> c00000000007d2d0: 7c 00 04 ac sync >> c00000000007d2d4: 91 49 40 1c stw r10,16412(r9) >> c00000000007d2d8: 39 20 00 01 li r9,1 >> c00000000007d2dc: 99 2d 02 74 stb r9,628(r13) >> c00000000007d2e0: 7c 00 04 ac sync >> c00000000007d2e4: 4c 00 01 2c isync >> c00000000007d2e8: 38 60 00 c8 li r3,200 >> c00000000007d2ec: 4b f9 ff c5 bl c00000000001d2b0 <.__delay> >> c00000000007d2f0: 60 00 00 00 nop >> c00000000007d2f4: e8 61 00 98 ld r3,152(r1) >> c00000000007d2f8: e8 81 00 78 ld r4,120(r1) >> c00000000007d2fc: 48 00 65 45 bl c000000000083840 <.xmon_printf> >> c00000000007d300: 60 00 00 00 nop >> /* } */ >> >> /* for (i = 0; i < XMON_NUM_SPUS; i++) { */ >> c00000000007d304: e9 01 00 78 ld r8,120(r1) >> c00000000007d308: 3d 22 00 0f addis r9,r2,15 >> c00000000007d30c: 39 40 00 00 li r10,0 >> c00000000007d310: 39 29 3e 10 addi r9,r9,15888 >> c00000000007d314: 91 49 20 c0 stw r10,8384(r9) ; catch_memory_errors = 0; >> c00000000007d318: 39 28 00 01 addi r9,r8,1 >> c00000000007d31c: 2f 89 00 10 cmpwi cr7,r9,16 ; i < XMON_NUM_SPUS >> c00000000007d320: 7d 29 07 b4 extsw r9,r9 >> c00000000007d324: f9 21 00 78 std r9,120(r1) ; i++; >> c00000000007d328: e9 21 00 70 ld r9,112(r1) >> c00000000007d32c: 39 29 00 28 addi r9,r9,40 ; [i] for spu_info >> c00000000007d330: f9 21 00 70 std r9,112(r1) >> c00000000007d334: 40 9e fe fc bne+ cr7,c00000000007d230 <.restart_spus+0x80> >> >> /* } */ >> c00000000007d338: 38 21 00 b0 addi r1,r1,176 >> c00000000007d33c: e8 01 00 10 ld r0,16(r1) >> c00000000007d340: eb e1 ff f8 ld r31,-8(r1) >> c00000000007d344: 7c 08 03 a6 mtlr r0 >> c00000000007d348: 4e 80 00 20 blr >> c00000000007d34c: 60 00 00 00 nop >> /* } */ >> >> /* } else { */ >> c00000000007d350: 3d 42 00 0f addis r10,r2,15 >> c00000000007d354: 39 00 00 00 li r8,0 >> c00000000007d358: 39 4a 3e 10 addi r10,r10,15888 >> c00000000007d35c: 91 0a 20 c0 stw r8,8384(r10) ; catch_memory_errors = 0; >> c00000000007d360: 48 00 64 e1 bl c000000000083840 <.xmon_printf> >> c00000000007d364: 60 00 00 00 nop >> c00000000007d368: 4b ff ff 9c b c00000000007d304 <.restart_spus+0x154> >> c00000000007d36c: 60 00 00 00 nop >> >> >> >>>>> arch/powerpc/xmon/xmon.c:352:48: warning: argument ‘fromipi’ might be clobbered by ‘longjmp’ or ‘vfork’ [-Wclobbered] >>>> >>>> This one I can't see, but I assume it's a similar case. >>>> >>> >>> OK, I should continue for it. >>> >>> >>>>> Excuse me, I am not quite sure about it whether can cause issue or not. >>>> >>>> I've never seen it get stuck in those loops or anything, but I guess >>>> it's possible. >>>> >>> >>> OK, I should make the confirmation. >>> >>>> The first thing to do would be to analyse the generated assembler code >>>> to determine if there really is any possiblity of the value being >>>> clobbered, or if it's just a theoretical bug. >>>> >>> >>> Thank you for your valuable information again. >>> >>> Excuse me, I have to do another things within this month, so I should >>> provide the confirmation within next month (2013-08-31), is it OK (no >>> reply means OK). >>> >>> Welcome any suggestions or completions. >>> >>> >>> Thanks. >>> >> >> > > -- Chen Gang ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Suggestion] powerpc: xmon: about 'longjmp' related warning. 2013-07-26 11:45 ` Chen Gang 2013-07-26 11:47 ` Chen Gang @ 2013-07-26 11:55 ` Chen Gang 1 sibling, 0 replies; 7+ messages in thread From: Chen Gang @ 2013-07-26 11:55 UTC (permalink / raw) To: Michael Ellerman Cc: Michael Neuling, paulus@samba.org, Andrew Morton, linuxppc-dev@lists.ozlabs.org, jovi.zhangwei On 07/26/2013 07:45 PM, Chen Gang wrote: > c000000000080d30: 00 00 04 ac .long 0x4ac > c000000000080d34: 60 00 00 00 nop > c000000000080d38: 60 00 00 00 nop > c000000000080d3c: 60 00 00 00 nop > 816 case 'm': > 817 cmd = inchar(); > 818 switch (cmd) { > 819 case 'm': > 820 case 's': > 821 case 'd': > 822 memops(cmd); > 823 break; > 824 case 'l': > 825 memlocate(); > 826 break; > 827 case 'z': > 828 memzcan(); > 829 break; > 830 case 'i': > 831 show_mem(0); > 832 break; > 833 default: > 834 termch = cmd; > 835 memex(); > 836 } > 837 break; > c000000000080d40: 4b ff df b1 bl c00000000007ecf0 <.inchar> Oh, sorry again, the comments above is incorrect, please skip them (816 -- 837) If want to see the related code directly, please search '680(r1)' (which mean 'fromipi') Thanks. -- Chen Gang ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2013-07-26 11:56 UTC | newest] Thread overview: 7+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2013-07-22 7:02 [Suggestion] powerpc: xmon: about 'longjmp' related warning Chen Gang 2013-07-23 13:58 ` Michael Ellerman 2013-07-24 0:38 ` Chen Gang 2013-07-26 4:11 ` Chen Gang 2013-07-26 11:45 ` Chen Gang 2013-07-26 11:47 ` Chen Gang 2013-07-26 11:55 ` Chen Gang
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).