[Suggestion] powerpc: xmon: about 'longjmp' related warning.
Chen Gang
gang.chen at asianux.com
Fri Jul 26 21:45:40 EST 2013
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
More information about the Linuxppc-dev
mailing list