Index: boot/arch/ppc64/loader/Makefile
===================================================================
--- boot/arch/ppc64/loader/Makefile	(revision fcf907e132925e88117f57b22cfbc44d5c2dafa3)
+++ boot/arch/ppc64/loader/Makefile	(revision 3de8b81bc7884257542347042ecf0ec7c3a23e45)
@@ -62,5 +62,10 @@
 	$(USPACEDIR)/ns/ns \
 	$(USPACEDIR)/init/init \
-	$(USPACEDIR)/fb/fb
+	$(USPACEDIR)/fb/fb \
+	$(USPACEDIR)/kbd/kbd \
+	$(USPACEDIR)/console/console \
+	$(USPACEDIR)/tetris/tetris \
+	$(USPACEDIR)/ipcc/ipcc \
+	$(USPACEDIR)/klog/klog
 
 OBJECTS := $(addsuffix .o,$(basename $(SOURCES)))
Index: boot/arch/ppc64/loader/asm.S
===================================================================
--- boot/arch/ppc64/loader/asm.S	(revision fcf907e132925e88117f57b22cfbc44d5c2dafa3)
+++ boot/arch/ppc64/loader/asm.S	(revision 3de8b81bc7884257542347042ecf0ec7c3a23e45)
@@ -29,4 +29,5 @@
 #include "asm.h"
 #include "regname.h"
+#include "debug.inc"
 
 .text
@@ -109,4 +110,6 @@
 	# r6 = bytes to copy
 	# r7 = real_mode (pa)
+	# r8 = framebuffer (pa)
+	# r9 = scanline
 	
 	# disable interrupts
@@ -138,8 +141,13 @@
 real_mode:
 	
+	DEBUG_INIT
+	DEBUG_real_mode
+	
 	# copy kernel to proper location
 	#
 	# r5 = trans (pa)
 	# r6 = bytes to copy
+	# r8 = framebuffer (pa)
+	# r9 = scanline
 	
 	li r31, PAGE_SIZE >> 2
@@ -155,4 +163,7 @@
 		mtctr r31
 		lwz r29, 0(r5)
+		
+		DEBUG_INIT
+		DEBUG_copy_loop
 		
 		copy_loop:
@@ -169,4 +180,6 @@
 			
 			bdnz copy_loop
+			
+			DEBUG_end_copy_loop
 		
 		addi r5, r5, 4
@@ -175,25 +188,88 @@
 	copy_end:
 	
+	DEBUG_segments
+	
 	# initially fill segment registers
-
-	li r31, 16
-	mtctr r31
+	
 	li r31, 0
-	li r30, 0x2000
-
-	seg_fill:
+	
+	li r29, 8
+	mtctr r29
+	li r30, 0                     # ASID 0 (VSIDs 0 .. 7)
+
+	seg_fill_uspace:
 	
 		mtsrin r30, r31
-		addi r30, r30, 0x111
+		addi r30, r30, 1
 		addis r31, r31, 0x1000    # move to next SR
 		
-		bdnz seg_fill
+		bdnz seg_fill_uspace
+	
+	li r29, 8
+	mtctr r29
+	lis r30, 0x4000               # priviledged access only
+	ori r30, r30, 8               # ASID 0 (VSIDs 8 .. 15)
+	
+	seg_fill_kernel:
+	
+		mtsrin r30, r31
+		addi r30, r30, 1
+		addis r31, r31, 0x1000    # move to next SR
+		
+		bdnz seg_fill_kernel
+	
+	# create empty Page Hash Table
+	# on top of memory, size 64 KB
+	
+	DEBUG_pht
+	
+	lwz r31, 0(r3)                # r31 = memory size
+	
+	lis r30, 65536@h
+	ori r30, r30, 65536@l         # r30 = 65536
+	
+	subi r29, r30, 1              # r29 = 65535
+	
+	sub r31, r31, r30
+	andc r31, r31, r29            # pht = ALIGN_DOWN(memory_size - 65536, 65536)
+	
+	mtsdr1 r31
+	
+	li r29, 2
+	srw r30, r30, r29             # r30 = 16384
+	li r29, 0
+	
+	pht_clear:
+		
+		# write zeroes
+		
+		stw r29, 0(r31)
+		
+		addi r31, r31, 4
+		subi r30, r30, 4
+		
+		cmpwi r30, 0
+		beq clear_end
+		
+		bdnz pht_clear
+
+		DEBUG_end_pht_clear
+		
+	clear_end:
+	
+	DEBUG_tlb
 	
 	tlbia
 	tlbsync
 	
+	DEBUG_prepare
+	
 	# start the kernel
 	#
+	# pc = KERNEL_START_ADDR
 	# r3 = bootinfo (pa)
+	# sprg0 = KA2PA(KERNEL_START_ADDR)
+	# sprg3 = physical memory size
+	# sp = 0 (pa)
 	
 	lis r31, KERNEL_START_ADDR@ha
@@ -201,4 +277,12 @@
 	
 	mtspr srr0, r31
+	
+	subis r31, r31, 0x8000
+	mtsprg0 r31
+	
+	lwz r31, 0(r3)
+	mtsprg3 r31
+	
+	li sp, 0
 	
 	mfmsr r31
@@ -208,4 +292,6 @@
 	sync
 	isync
+	
+	DEBUG_rfi
 	rfid
 
Index: boot/arch/ppc64/loader/asm.h
===================================================================
--- boot/arch/ppc64/loader/asm.h	(revision fcf907e132925e88117f57b22cfbc44d5c2dafa3)
+++ boot/arch/ppc64/loader/asm.h	(revision 3de8b81bc7884257542347042ecf0ec7c3a23e45)
@@ -27,6 +27,6 @@
  */
 
-#ifndef __ASM_H__
-#define __ASM_H__
+#ifndef BOOT_ppc64_ASM_H_
+#define BOOT_ppc64_ASM_H_
 
 #define PAGE_SIZE 4096
@@ -36,5 +36,5 @@
 #define TRANS_ITEM_SIZE 8
 
-#define KERNEL_START_ADDR 0x80004000
+#define KERNEL_START_ADDR 0x80008000
 
 #ifndef __ASM__
@@ -45,5 +45,5 @@
 
 extern void halt();
-extern void jump_to_kernel(void *bootinfo, unsigned long bootinfo_size, void *trans, unsigned long kernel_size, void *real_mode) __attribute__((noreturn));
+extern void jump_to_kernel(void *bootinfo, unsigned long bootinfo_size, void *trans, unsigned long kernel_size, void *real_mode, void *fb, unsigned long scanline) __attribute__((noreturn));
 extern void real_mode();
 
Index: boot/arch/ppc64/loader/debug.inc
===================================================================
--- boot/arch/ppc64/loader/debug.inc	(revision 3de8b81bc7884257542347042ecf0ec7c3a23e45)
+++ boot/arch/ppc64/loader/debug.inc	(revision 3de8b81bc7884257542347042ecf0ec7c3a23e45)
@@ -0,0 +1,11479 @@
+#
+# Copyright (C) 2006 Martin Decky
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions
+# are met:
+#
+# - Redistributions of source code must retain the above copyright
+#   notice, this list of conditions and the following disclaimer.
+# - Redistributions in binary form must reproduce the above copyright
+#   notice, this list of conditions and the following disclaimer in the
+#   documentation and/or other materials provided with the distribution.
+# - The name of the author may not be used to endorse or promote products
+#   derived from this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+#
+
+.macro DEBUG_INIT
+#ifdef CONFIG_DEBUG
+	lis r11, 65535
+	ori r11, r11, 65535
+	
+	lis r12, 0
+	ori r12, r12, 0
+	
+	mr r10, r8
+#endif
+.endm
+
+.macro DEBUG_real_mode
+#ifdef CONFIG_DEBUG
+	
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r12, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r12, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r11, 108(r10)
+	stw r11, 112(r10)
+	stw r11, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r11, 240(r10)
+	stw r11, 244(r10)
+	stw r11, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r12, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r11, 112(r10)
+	stw r11, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r11, 244(r10)
+	stw r11, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r12, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r11, 112(r10)
+	stw r11, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r11, 244(r10)
+	stw r11, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r12, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r11, 4(r10)
+	stw r11, 8(r10)
+	stw r12, 12(r10)
+	stw r11, 16(r10)
+	stw r11, 20(r10)
+	stw r11, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r11, 48(r10)
+	stw r11, 52(r10)
+	stw r11, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r11, 72(r10)
+	stw r11, 76(r10)
+	stw r11, 80(r10)
+	stw r11, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r11, 112(r10)
+	stw r11, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r11, 164(r10)
+	stw r11, 168(r10)
+	stw r11, 172(r10)
+	stw r12, 176(r10)
+	stw r11, 180(r10)
+	stw r11, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r11, 200(r10)
+	stw r11, 204(r10)
+	stw r11, 208(r10)
+	stw r11, 212(r10)
+	stw r11, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r11, 236(r10)
+	stw r11, 240(r10)
+	stw r11, 244(r10)
+	stw r11, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r11, 264(r10)
+	stw r11, 268(r10)
+	stw r11, 272(r10)
+	stw r11, 276(r10)
+	stw r11, 280(r10)
+	stw r12, 284(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r11, 16(r10)
+	stw r12, 20(r10)
+	stw r11, 24(r10)
+	stw r11, 28(r10)
+	stw r12, 32(r10)
+	stw r11, 36(r10)
+	stw r11, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r11, 56(r10)
+	stw r11, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r11, 112(r10)
+	stw r11, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r11, 164(r10)
+	stw r11, 168(r10)
+	stw r11, 172(r10)
+	stw r11, 176(r10)
+	stw r11, 180(r10)
+	stw r11, 184(r10)
+	stw r11, 188(r10)
+	stw r12, 192(r10)
+	stw r11, 196(r10)
+	stw r11, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r11, 216(r10)
+	stw r11, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r11, 232(r10)
+	stw r11, 236(r10)
+	stw r12, 240(r10)
+	stw r11, 244(r10)
+	stw r11, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r11, 260(r10)
+	stw r11, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r11, 280(r10)
+	stw r11, 284(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r11, 24(r10)
+	stw r11, 28(r10)
+	stw r12, 32(r10)
+	stw r11, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r11, 48(r10)
+	stw r11, 52(r10)
+	stw r11, 56(r10)
+	stw r11, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r11, 72(r10)
+	stw r11, 76(r10)
+	stw r11, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r11, 112(r10)
+	stw r11, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r11, 164(r10)
+	stw r11, 168(r10)
+	stw r12, 172(r10)
+	stw r11, 176(r10)
+	stw r12, 180(r10)
+	stw r11, 184(r10)
+	stw r11, 188(r10)
+	stw r12, 192(r10)
+	stw r11, 196(r10)
+	stw r11, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r11, 216(r10)
+	stw r11, 220(r10)
+	stw r12, 224(r10)
+	stw r11, 228(r10)
+	stw r11, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r11, 244(r10)
+	stw r11, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r11, 260(r10)
+	stw r11, 264(r10)
+	stw r11, 268(r10)
+	stw r11, 272(r10)
+	stw r11, 276(r10)
+	stw r11, 280(r10)
+	stw r11, 284(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r11, 36(r10)
+	stw r11, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r11, 68(r10)
+	stw r11, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r11, 112(r10)
+	stw r11, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r11, 164(r10)
+	stw r11, 168(r10)
+	stw r12, 172(r10)
+	stw r11, 176(r10)
+	stw r12, 180(r10)
+	stw r11, 184(r10)
+	stw r11, 188(r10)
+	stw r12, 192(r10)
+	stw r11, 196(r10)
+	stw r11, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r11, 216(r10)
+	stw r11, 220(r10)
+	stw r12, 224(r10)
+	stw r11, 228(r10)
+	stw r11, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r11, 244(r10)
+	stw r11, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r11, 260(r10)
+	stw r11, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r11, 36(r10)
+	stw r11, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r11, 68(r10)
+	stw r11, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r11, 112(r10)
+	stw r11, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r11, 164(r10)
+	stw r11, 168(r10)
+	stw r12, 172(r10)
+	stw r11, 176(r10)
+	stw r12, 180(r10)
+	stw r11, 184(r10)
+	stw r11, 188(r10)
+	stw r12, 192(r10)
+	stw r11, 196(r10)
+	stw r11, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r11, 216(r10)
+	stw r11, 220(r10)
+	stw r12, 224(r10)
+	stw r11, 228(r10)
+	stw r11, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r11, 244(r10)
+	stw r11, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r11, 260(r10)
+	stw r11, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r11, 36(r10)
+	stw r11, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r11, 56(r10)
+	stw r11, 60(r10)
+	stw r12, 64(r10)
+	stw r11, 68(r10)
+	stw r11, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r11, 112(r10)
+	stw r11, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r11, 164(r10)
+	stw r11, 168(r10)
+	stw r12, 172(r10)
+	stw r11, 176(r10)
+	stw r12, 180(r10)
+	stw r11, 184(r10)
+	stw r11, 188(r10)
+	stw r12, 192(r10)
+	stw r11, 196(r10)
+	stw r11, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r11, 216(r10)
+	stw r11, 220(r10)
+	stw r12, 224(r10)
+	stw r11, 228(r10)
+	stw r11, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r11, 244(r10)
+	stw r11, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r11, 260(r10)
+	stw r11, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r11, 280(r10)
+	stw r11, 284(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r11, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r11, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r11, 48(r10)
+	stw r11, 52(r10)
+	stw r11, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r11, 72(r10)
+	stw r11, 76(r10)
+	stw r11, 80(r10)
+	stw r12, 84(r10)
+	stw r11, 88(r10)
+	stw r11, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r11, 108(r10)
+	stw r11, 112(r10)
+	stw r11, 116(r10)
+	stw r11, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r11, 164(r10)
+	stw r11, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r11, 184(r10)
+	stw r11, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r11, 200(r10)
+	stw r11, 204(r10)
+	stw r11, 208(r10)
+	stw r11, 212(r10)
+	stw r11, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r11, 232(r10)
+	stw r11, 236(r10)
+	stw r11, 240(r10)
+	stw r12, 244(r10)
+	stw r11, 248(r10)
+	stw r11, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r11, 264(r10)
+	stw r11, 268(r10)
+	stw r11, 272(r10)
+	stw r11, 276(r10)
+	stw r11, 280(r10)
+	stw r12, 284(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r12, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r11, 132(r10)
+	stw r11, 136(r10)
+	stw r11, 140(r10)
+	stw r11, 144(r10)
+	stw r11, 148(r10)
+	stw r11, 152(r10)
+	stw r11, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r12, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r12, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r12, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+#endif
+.endm
+
+.macro DEBUG_copy_loop
+#ifdef CONFIG_DEBUG
+	
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r12, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r12, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r11, 172(r10)
+	stw r11, 176(r10)
+	stw r11, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r12, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r11, 176(r10)
+	stw r11, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r12, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r11, 176(r10)
+	stw r11, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r12, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r11, 16(r10)
+	stw r11, 20(r10)
+	stw r11, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r11, 48(r10)
+	stw r11, 52(r10)
+	stw r11, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r11, 68(r10)
+	stw r11, 72(r10)
+	stw r12, 76(r10)
+	stw r11, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r11, 100(r10)
+	stw r11, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r11, 120(r10)
+	stw r11, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r11, 176(r10)
+	stw r11, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r11, 200(r10)
+	stw r11, 204(r10)
+	stw r11, 208(r10)
+	stw r11, 212(r10)
+	stw r11, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r11, 232(r10)
+	stw r11, 236(r10)
+	stw r11, 240(r10)
+	stw r11, 244(r10)
+	stw r11, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r11, 260(r10)
+	stw r11, 264(r10)
+	stw r12, 268(r10)
+	stw r11, 272(r10)
+	stw r11, 276(r10)
+	stw r11, 280(r10)
+	stw r12, 284(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r11, 4(r10)
+	stw r11, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r11, 24(r10)
+	stw r11, 28(r10)
+	stw r12, 32(r10)
+	stw r11, 36(r10)
+	stw r11, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r11, 56(r10)
+	stw r11, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r11, 72(r10)
+	stw r11, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r11, 88(r10)
+	stw r11, 92(r10)
+	stw r12, 96(r10)
+	stw r11, 100(r10)
+	stw r11, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r11, 120(r10)
+	stw r11, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r11, 176(r10)
+	stw r11, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r11, 196(r10)
+	stw r11, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r11, 216(r10)
+	stw r11, 220(r10)
+	stw r12, 224(r10)
+	stw r11, 228(r10)
+	stw r11, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r11, 248(r10)
+	stw r11, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r11, 264(r10)
+	stw r11, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r11, 280(r10)
+	stw r11, 284(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r11, 4(r10)
+	stw r11, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r11, 36(r10)
+	stw r11, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r11, 56(r10)
+	stw r11, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r11, 72(r10)
+	stw r11, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r11, 88(r10)
+	stw r11, 92(r10)
+	stw r12, 96(r10)
+	stw r11, 100(r10)
+	stw r11, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r11, 120(r10)
+	stw r11, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r11, 176(r10)
+	stw r11, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r11, 196(r10)
+	stw r11, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r11, 216(r10)
+	stw r11, 220(r10)
+	stw r12, 224(r10)
+	stw r11, 228(r10)
+	stw r11, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r11, 248(r10)
+	stw r11, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r11, 264(r10)
+	stw r11, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r11, 280(r10)
+	stw r11, 284(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r11, 4(r10)
+	stw r11, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r11, 36(r10)
+	stw r11, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r11, 56(r10)
+	stw r11, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r11, 72(r10)
+	stw r11, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r11, 88(r10)
+	stw r11, 92(r10)
+	stw r12, 96(r10)
+	stw r11, 100(r10)
+	stw r11, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r11, 120(r10)
+	stw r11, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r11, 176(r10)
+	stw r11, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r11, 196(r10)
+	stw r11, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r11, 216(r10)
+	stw r11, 220(r10)
+	stw r12, 224(r10)
+	stw r11, 228(r10)
+	stw r11, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r11, 248(r10)
+	stw r11, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r11, 264(r10)
+	stw r11, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r11, 280(r10)
+	stw r11, 284(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r11, 4(r10)
+	stw r11, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r11, 36(r10)
+	stw r11, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r11, 56(r10)
+	stw r11, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r11, 72(r10)
+	stw r11, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r11, 88(r10)
+	stw r11, 92(r10)
+	stw r12, 96(r10)
+	stw r11, 100(r10)
+	stw r11, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r11, 120(r10)
+	stw r11, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r11, 176(r10)
+	stw r11, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r11, 196(r10)
+	stw r11, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r11, 216(r10)
+	stw r11, 220(r10)
+	stw r12, 224(r10)
+	stw r11, 228(r10)
+	stw r11, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r11, 248(r10)
+	stw r11, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r11, 264(r10)
+	stw r11, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r11, 280(r10)
+	stw r11, 284(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r11, 4(r10)
+	stw r11, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r11, 24(r10)
+	stw r11, 28(r10)
+	stw r12, 32(r10)
+	stw r11, 36(r10)
+	stw r11, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r11, 56(r10)
+	stw r11, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r11, 72(r10)
+	stw r11, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r11, 88(r10)
+	stw r11, 92(r10)
+	stw r12, 96(r10)
+	stw r11, 100(r10)
+	stw r11, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r11, 120(r10)
+	stw r11, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r11, 176(r10)
+	stw r11, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r11, 196(r10)
+	stw r11, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r11, 216(r10)
+	stw r11, 220(r10)
+	stw r12, 224(r10)
+	stw r11, 228(r10)
+	stw r11, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r11, 248(r10)
+	stw r11, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r11, 264(r10)
+	stw r11, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r11, 280(r10)
+	stw r11, 284(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r11, 16(r10)
+	stw r11, 20(r10)
+	stw r11, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r11, 48(r10)
+	stw r11, 52(r10)
+	stw r11, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r11, 72(r10)
+	stw r11, 76(r10)
+	stw r11, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r11, 104(r10)
+	stw r11, 108(r10)
+	stw r11, 112(r10)
+	stw r11, 116(r10)
+	stw r11, 120(r10)
+	stw r11, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r11, 172(r10)
+	stw r11, 176(r10)
+	stw r11, 180(r10)
+	stw r11, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r11, 200(r10)
+	stw r11, 204(r10)
+	stw r11, 208(r10)
+	stw r11, 212(r10)
+	stw r11, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r11, 232(r10)
+	stw r11, 236(r10)
+	stw r11, 240(r10)
+	stw r11, 244(r10)
+	stw r11, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r11, 264(r10)
+	stw r11, 268(r10)
+	stw r11, 272(r10)
+	stw r11, 276(r10)
+	stw r11, 280(r10)
+	stw r12, 284(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r11, 72(r10)
+	stw r11, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r11, 120(r10)
+	stw r11, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r11, 264(r10)
+	stw r11, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r11, 72(r10)
+	stw r11, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r11, 116(r10)
+	stw r11, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r11, 132(r10)
+	stw r11, 136(r10)
+	stw r11, 140(r10)
+	stw r11, 144(r10)
+	stw r11, 148(r10)
+	stw r11, 152(r10)
+	stw r11, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r11, 264(r10)
+	stw r11, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r11, 68(r10)
+	stw r11, 72(r10)
+	stw r11, 76(r10)
+	stw r11, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r11, 100(r10)
+	stw r11, 104(r10)
+	stw r11, 108(r10)
+	stw r11, 112(r10)
+	stw r11, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r11, 260(r10)
+	stw r11, 264(r10)
+	stw r11, 268(r10)
+	stw r11, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r12, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+#endif
+.endm
+
+.macro DEBUG_end_copy_loop
+#ifdef CONFIG_DEBUG
+	
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r12, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+	stw r12, 288(r10)
+	stw r12, 292(r10)
+	stw r12, 296(r10)
+	stw r12, 300(r10)
+	stw r12, 304(r10)
+	stw r12, 308(r10)
+	stw r12, 312(r10)
+	stw r12, 316(r10)
+	stw r12, 320(r10)
+	stw r12, 324(r10)
+	stw r12, 328(r10)
+	stw r12, 332(r10)
+	stw r12, 336(r10)
+	stw r12, 340(r10)
+	stw r12, 344(r10)
+	stw r12, 348(r10)
+	stw r12, 352(r10)
+	stw r12, 356(r10)
+	stw r12, 360(r10)
+	stw r12, 364(r10)
+	stw r12, 368(r10)
+	stw r12, 372(r10)
+	stw r12, 376(r10)
+	stw r12, 380(r10)
+	stw r12, 384(r10)
+	stw r12, 388(r10)
+	stw r12, 392(r10)
+	stw r12, 396(r10)
+	stw r12, 400(r10)
+	stw r12, 404(r10)
+	stw r12, 408(r10)
+	stw r12, 412(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r12, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+	stw r12, 288(r10)
+	stw r12, 292(r10)
+	stw r12, 296(r10)
+	stw r12, 300(r10)
+	stw r12, 304(r10)
+	stw r12, 308(r10)
+	stw r12, 312(r10)
+	stw r12, 316(r10)
+	stw r12, 320(r10)
+	stw r12, 324(r10)
+	stw r12, 328(r10)
+	stw r12, 332(r10)
+	stw r12, 336(r10)
+	stw r12, 340(r10)
+	stw r12, 344(r10)
+	stw r12, 348(r10)
+	stw r12, 352(r10)
+	stw r12, 356(r10)
+	stw r12, 360(r10)
+	stw r12, 364(r10)
+	stw r12, 368(r10)
+	stw r12, 372(r10)
+	stw r12, 376(r10)
+	stw r12, 380(r10)
+	stw r12, 384(r10)
+	stw r12, 388(r10)
+	stw r12, 392(r10)
+	stw r12, 396(r10)
+	stw r12, 400(r10)
+	stw r12, 404(r10)
+	stw r12, 408(r10)
+	stw r12, 412(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r11, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r12, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+	stw r12, 288(r10)
+	stw r12, 292(r10)
+	stw r12, 296(r10)
+	stw r11, 300(r10)
+	stw r11, 304(r10)
+	stw r11, 308(r10)
+	stw r12, 312(r10)
+	stw r12, 316(r10)
+	stw r12, 320(r10)
+	stw r12, 324(r10)
+	stw r12, 328(r10)
+	stw r12, 332(r10)
+	stw r12, 336(r10)
+	stw r12, 340(r10)
+	stw r12, 344(r10)
+	stw r12, 348(r10)
+	stw r12, 352(r10)
+	stw r12, 356(r10)
+	stw r12, 360(r10)
+	stw r12, 364(r10)
+	stw r12, 368(r10)
+	stw r12, 372(r10)
+	stw r12, 376(r10)
+	stw r12, 380(r10)
+	stw r12, 384(r10)
+	stw r12, 388(r10)
+	stw r12, 392(r10)
+	stw r12, 396(r10)
+	stw r12, 400(r10)
+	stw r12, 404(r10)
+	stw r12, 408(r10)
+	stw r12, 412(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r12, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+	stw r12, 288(r10)
+	stw r12, 292(r10)
+	stw r12, 296(r10)
+	stw r12, 300(r10)
+	stw r11, 304(r10)
+	stw r11, 308(r10)
+	stw r12, 312(r10)
+	stw r12, 316(r10)
+	stw r12, 320(r10)
+	stw r12, 324(r10)
+	stw r12, 328(r10)
+	stw r12, 332(r10)
+	stw r12, 336(r10)
+	stw r12, 340(r10)
+	stw r12, 344(r10)
+	stw r12, 348(r10)
+	stw r12, 352(r10)
+	stw r12, 356(r10)
+	stw r12, 360(r10)
+	stw r12, 364(r10)
+	stw r12, 368(r10)
+	stw r12, 372(r10)
+	stw r12, 376(r10)
+	stw r12, 380(r10)
+	stw r12, 384(r10)
+	stw r12, 388(r10)
+	stw r12, 392(r10)
+	stw r12, 396(r10)
+	stw r12, 400(r10)
+	stw r12, 404(r10)
+	stw r12, 408(r10)
+	stw r12, 412(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r12, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+	stw r12, 288(r10)
+	stw r12, 292(r10)
+	stw r12, 296(r10)
+	stw r12, 300(r10)
+	stw r11, 304(r10)
+	stw r11, 308(r10)
+	stw r12, 312(r10)
+	stw r12, 316(r10)
+	stw r12, 320(r10)
+	stw r12, 324(r10)
+	stw r12, 328(r10)
+	stw r12, 332(r10)
+	stw r12, 336(r10)
+	stw r12, 340(r10)
+	stw r12, 344(r10)
+	stw r12, 348(r10)
+	stw r12, 352(r10)
+	stw r12, 356(r10)
+	stw r12, 360(r10)
+	stw r12, 364(r10)
+	stw r12, 368(r10)
+	stw r12, 372(r10)
+	stw r12, 376(r10)
+	stw r12, 380(r10)
+	stw r12, 384(r10)
+	stw r12, 388(r10)
+	stw r12, 392(r10)
+	stw r12, 396(r10)
+	stw r12, 400(r10)
+	stw r12, 404(r10)
+	stw r12, 408(r10)
+	stw r12, 412(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r11, 16(r10)
+	stw r11, 20(r10)
+	stw r11, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r11, 36(r10)
+	stw r11, 40(r10)
+	stw r12, 44(r10)
+	stw r11, 48(r10)
+	stw r11, 52(r10)
+	stw r11, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r11, 76(r10)
+	stw r11, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r11, 136(r10)
+	stw r11, 140(r10)
+	stw r11, 144(r10)
+	stw r11, 148(r10)
+	stw r11, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r11, 168(r10)
+	stw r11, 172(r10)
+	stw r11, 176(r10)
+	stw r11, 180(r10)
+	stw r11, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r11, 196(r10)
+	stw r11, 200(r10)
+	stw r12, 204(r10)
+	stw r11, 208(r10)
+	stw r11, 212(r10)
+	stw r11, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r11, 228(r10)
+	stw r11, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r11, 248(r10)
+	stw r11, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r12, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+	stw r12, 288(r10)
+	stw r12, 292(r10)
+	stw r12, 296(r10)
+	stw r12, 300(r10)
+	stw r11, 304(r10)
+	stw r11, 308(r10)
+	stw r12, 312(r10)
+	stw r12, 316(r10)
+	stw r12, 320(r10)
+	stw r12, 324(r10)
+	stw r11, 328(r10)
+	stw r11, 332(r10)
+	stw r11, 336(r10)
+	stw r11, 340(r10)
+	stw r11, 344(r10)
+	stw r12, 348(r10)
+	stw r12, 352(r10)
+	stw r12, 356(r10)
+	stw r11, 360(r10)
+	stw r11, 364(r10)
+	stw r11, 368(r10)
+	stw r11, 372(r10)
+	stw r11, 376(r10)
+	stw r12, 380(r10)
+	stw r12, 384(r10)
+	stw r11, 388(r10)
+	stw r11, 392(r10)
+	stw r12, 396(r10)
+	stw r11, 400(r10)
+	stw r11, 404(r10)
+	stw r11, 408(r10)
+	stw r12, 412(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r11, 4(r10)
+	stw r11, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r11, 24(r10)
+	stw r11, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r11, 56(r10)
+	stw r11, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r11, 72(r10)
+	stw r11, 76(r10)
+	stw r12, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r11, 132(r10)
+	stw r11, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r11, 152(r10)
+	stw r11, 156(r10)
+	stw r12, 160(r10)
+	stw r11, 164(r10)
+	stw r11, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r11, 184(r10)
+	stw r11, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r11, 200(r10)
+	stw r11, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r11, 216(r10)
+	stw r11, 220(r10)
+	stw r12, 224(r10)
+	stw r11, 228(r10)
+	stw r11, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r11, 248(r10)
+	stw r11, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r12, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+	stw r12, 288(r10)
+	stw r12, 292(r10)
+	stw r12, 296(r10)
+	stw r12, 300(r10)
+	stw r11, 304(r10)
+	stw r11, 308(r10)
+	stw r12, 312(r10)
+	stw r12, 316(r10)
+	stw r12, 320(r10)
+	stw r11, 324(r10)
+	stw r11, 328(r10)
+	stw r12, 332(r10)
+	stw r12, 336(r10)
+	stw r12, 340(r10)
+	stw r11, 344(r10)
+	stw r11, 348(r10)
+	stw r12, 352(r10)
+	stw r11, 356(r10)
+	stw r11, 360(r10)
+	stw r12, 364(r10)
+	stw r12, 368(r10)
+	stw r12, 372(r10)
+	stw r11, 376(r10)
+	stw r11, 380(r10)
+	stw r12, 384(r10)
+	stw r12, 388(r10)
+	stw r11, 392(r10)
+	stw r11, 396(r10)
+	stw r12, 400(r10)
+	stw r12, 404(r10)
+	stw r11, 408(r10)
+	stw r11, 412(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r11, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r11, 16(r10)
+	stw r11, 20(r10)
+	stw r11, 24(r10)
+	stw r11, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r11, 56(r10)
+	stw r11, 60(r10)
+	stw r12, 64(r10)
+	stw r11, 68(r10)
+	stw r11, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r11, 132(r10)
+	stw r11, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r11, 164(r10)
+	stw r11, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r11, 184(r10)
+	stw r11, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r11, 200(r10)
+	stw r11, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r11, 216(r10)
+	stw r11, 220(r10)
+	stw r12, 224(r10)
+	stw r11, 228(r10)
+	stw r11, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r11, 248(r10)
+	stw r11, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r12, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+	stw r12, 288(r10)
+	stw r12, 292(r10)
+	stw r12, 296(r10)
+	stw r12, 300(r10)
+	stw r11, 304(r10)
+	stw r11, 308(r10)
+	stw r12, 312(r10)
+	stw r12, 316(r10)
+	stw r12, 320(r10)
+	stw r11, 324(r10)
+	stw r11, 328(r10)
+	stw r12, 332(r10)
+	stw r12, 336(r10)
+	stw r12, 340(r10)
+	stw r11, 344(r10)
+	stw r11, 348(r10)
+	stw r12, 352(r10)
+	stw r11, 356(r10)
+	stw r11, 360(r10)
+	stw r12, 364(r10)
+	stw r12, 368(r10)
+	stw r12, 372(r10)
+	stw r11, 376(r10)
+	stw r11, 380(r10)
+	stw r12, 384(r10)
+	stw r12, 388(r10)
+	stw r11, 392(r10)
+	stw r11, 396(r10)
+	stw r12, 400(r10)
+	stw r12, 404(r10)
+	stw r11, 408(r10)
+	stw r11, 412(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r11, 4(r10)
+	stw r11, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r11, 56(r10)
+	stw r11, 60(r10)
+	stw r12, 64(r10)
+	stw r11, 68(r10)
+	stw r11, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r11, 132(r10)
+	stw r11, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r11, 164(r10)
+	stw r11, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r11, 184(r10)
+	stw r11, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r11, 200(r10)
+	stw r11, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r11, 216(r10)
+	stw r11, 220(r10)
+	stw r12, 224(r10)
+	stw r11, 228(r10)
+	stw r11, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r11, 248(r10)
+	stw r11, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r12, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+	stw r12, 288(r10)
+	stw r12, 292(r10)
+	stw r12, 296(r10)
+	stw r12, 300(r10)
+	stw r11, 304(r10)
+	stw r11, 308(r10)
+	stw r12, 312(r10)
+	stw r12, 316(r10)
+	stw r12, 320(r10)
+	stw r11, 324(r10)
+	stw r11, 328(r10)
+	stw r12, 332(r10)
+	stw r12, 336(r10)
+	stw r12, 340(r10)
+	stw r11, 344(r10)
+	stw r11, 348(r10)
+	stw r12, 352(r10)
+	stw r11, 356(r10)
+	stw r11, 360(r10)
+	stw r12, 364(r10)
+	stw r12, 368(r10)
+	stw r12, 372(r10)
+	stw r11, 376(r10)
+	stw r11, 380(r10)
+	stw r12, 384(r10)
+	stw r12, 388(r10)
+	stw r11, 392(r10)
+	stw r11, 396(r10)
+	stw r12, 400(r10)
+	stw r12, 404(r10)
+	stw r11, 408(r10)
+	stw r11, 412(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r11, 4(r10)
+	stw r11, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r11, 56(r10)
+	stw r11, 60(r10)
+	stw r12, 64(r10)
+	stw r11, 68(r10)
+	stw r11, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r11, 132(r10)
+	stw r11, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r11, 164(r10)
+	stw r11, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r11, 184(r10)
+	stw r11, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r11, 200(r10)
+	stw r11, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r11, 216(r10)
+	stw r11, 220(r10)
+	stw r12, 224(r10)
+	stw r11, 228(r10)
+	stw r11, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r11, 248(r10)
+	stw r11, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r12, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+	stw r12, 288(r10)
+	stw r12, 292(r10)
+	stw r12, 296(r10)
+	stw r12, 300(r10)
+	stw r11, 304(r10)
+	stw r11, 308(r10)
+	stw r12, 312(r10)
+	stw r12, 316(r10)
+	stw r12, 320(r10)
+	stw r11, 324(r10)
+	stw r11, 328(r10)
+	stw r12, 332(r10)
+	stw r12, 336(r10)
+	stw r12, 340(r10)
+	stw r11, 344(r10)
+	stw r11, 348(r10)
+	stw r12, 352(r10)
+	stw r11, 356(r10)
+	stw r11, 360(r10)
+	stw r12, 364(r10)
+	stw r12, 368(r10)
+	stw r12, 372(r10)
+	stw r11, 376(r10)
+	stw r11, 380(r10)
+	stw r12, 384(r10)
+	stw r12, 388(r10)
+	stw r11, 392(r10)
+	stw r11, 396(r10)
+	stw r12, 400(r10)
+	stw r12, 404(r10)
+	stw r11, 408(r10)
+	stw r11, 412(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r11, 4(r10)
+	stw r11, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r11, 24(r10)
+	stw r11, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r11, 56(r10)
+	stw r11, 60(r10)
+	stw r12, 64(r10)
+	stw r11, 68(r10)
+	stw r11, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r11, 132(r10)
+	stw r11, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r11, 152(r10)
+	stw r11, 156(r10)
+	stw r12, 160(r10)
+	stw r11, 164(r10)
+	stw r11, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r11, 184(r10)
+	stw r11, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r11, 200(r10)
+	stw r11, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r11, 216(r10)
+	stw r11, 220(r10)
+	stw r12, 224(r10)
+	stw r11, 228(r10)
+	stw r11, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r11, 248(r10)
+	stw r11, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r12, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+	stw r12, 288(r10)
+	stw r12, 292(r10)
+	stw r12, 296(r10)
+	stw r12, 300(r10)
+	stw r11, 304(r10)
+	stw r11, 308(r10)
+	stw r12, 312(r10)
+	stw r12, 316(r10)
+	stw r12, 320(r10)
+	stw r11, 324(r10)
+	stw r11, 328(r10)
+	stw r12, 332(r10)
+	stw r12, 336(r10)
+	stw r12, 340(r10)
+	stw r11, 344(r10)
+	stw r11, 348(r10)
+	stw r12, 352(r10)
+	stw r11, 356(r10)
+	stw r11, 360(r10)
+	stw r12, 364(r10)
+	stw r12, 368(r10)
+	stw r12, 372(r10)
+	stw r11, 376(r10)
+	stw r11, 380(r10)
+	stw r12, 384(r10)
+	stw r12, 388(r10)
+	stw r11, 392(r10)
+	stw r11, 396(r10)
+	stw r12, 400(r10)
+	stw r12, 404(r10)
+	stw r11, 408(r10)
+	stw r11, 412(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r11, 16(r10)
+	stw r11, 20(r10)
+	stw r11, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r11, 56(r10)
+	stw r11, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r11, 72(r10)
+	stw r11, 76(r10)
+	stw r11, 80(r10)
+	stw r12, 84(r10)
+	stw r11, 88(r10)
+	stw r11, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r11, 136(r10)
+	stw r11, 140(r10)
+	stw r11, 144(r10)
+	stw r11, 148(r10)
+	stw r11, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r11, 168(r10)
+	stw r11, 172(r10)
+	stw r11, 176(r10)
+	stw r11, 180(r10)
+	stw r11, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r11, 200(r10)
+	stw r11, 204(r10)
+	stw r11, 208(r10)
+	stw r11, 212(r10)
+	stw r11, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r11, 232(r10)
+	stw r11, 236(r10)
+	stw r11, 240(r10)
+	stw r11, 244(r10)
+	stw r11, 248(r10)
+	stw r11, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r12, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+	stw r12, 288(r10)
+	stw r12, 292(r10)
+	stw r12, 296(r10)
+	stw r11, 300(r10)
+	stw r11, 304(r10)
+	stw r11, 308(r10)
+	stw r11, 312(r10)
+	stw r12, 316(r10)
+	stw r12, 320(r10)
+	stw r12, 324(r10)
+	stw r11, 328(r10)
+	stw r11, 332(r10)
+	stw r11, 336(r10)
+	stw r11, 340(r10)
+	stw r11, 344(r10)
+	stw r12, 348(r10)
+	stw r12, 352(r10)
+	stw r12, 356(r10)
+	stw r11, 360(r10)
+	stw r11, 364(r10)
+	stw r11, 368(r10)
+	stw r11, 372(r10)
+	stw r11, 376(r10)
+	stw r12, 380(r10)
+	stw r12, 384(r10)
+	stw r12, 388(r10)
+	stw r11, 392(r10)
+	stw r11, 396(r10)
+	stw r11, 400(r10)
+	stw r11, 404(r10)
+	stw r11, 408(r10)
+	stw r12, 412(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r11, 200(r10)
+	stw r11, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r11, 248(r10)
+	stw r11, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r12, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+	stw r12, 288(r10)
+	stw r12, 292(r10)
+	stw r12, 296(r10)
+	stw r12, 300(r10)
+	stw r12, 304(r10)
+	stw r12, 308(r10)
+	stw r12, 312(r10)
+	stw r12, 316(r10)
+	stw r12, 320(r10)
+	stw r12, 324(r10)
+	stw r12, 328(r10)
+	stw r12, 332(r10)
+	stw r12, 336(r10)
+	stw r12, 340(r10)
+	stw r12, 344(r10)
+	stw r12, 348(r10)
+	stw r12, 352(r10)
+	stw r12, 356(r10)
+	stw r12, 360(r10)
+	stw r12, 364(r10)
+	stw r12, 368(r10)
+	stw r12, 372(r10)
+	stw r12, 376(r10)
+	stw r12, 380(r10)
+	stw r12, 384(r10)
+	stw r12, 388(r10)
+	stw r11, 392(r10)
+	stw r11, 396(r10)
+	stw r12, 400(r10)
+	stw r12, 404(r10)
+	stw r12, 408(r10)
+	stw r12, 412(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r11, 100(r10)
+	stw r11, 104(r10)
+	stw r11, 108(r10)
+	stw r11, 112(r10)
+	stw r11, 116(r10)
+	stw r11, 120(r10)
+	stw r11, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r11, 200(r10)
+	stw r11, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r11, 244(r10)
+	stw r11, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r11, 260(r10)
+	stw r11, 264(r10)
+	stw r11, 268(r10)
+	stw r11, 272(r10)
+	stw r11, 276(r10)
+	stw r11, 280(r10)
+	stw r11, 284(r10)
+	stw r12, 288(r10)
+	stw r12, 292(r10)
+	stw r12, 296(r10)
+	stw r12, 300(r10)
+	stw r12, 304(r10)
+	stw r12, 308(r10)
+	stw r12, 312(r10)
+	stw r12, 316(r10)
+	stw r12, 320(r10)
+	stw r12, 324(r10)
+	stw r12, 328(r10)
+	stw r12, 332(r10)
+	stw r12, 336(r10)
+	stw r12, 340(r10)
+	stw r12, 344(r10)
+	stw r12, 348(r10)
+	stw r12, 352(r10)
+	stw r12, 356(r10)
+	stw r12, 360(r10)
+	stw r12, 364(r10)
+	stw r12, 368(r10)
+	stw r12, 372(r10)
+	stw r12, 376(r10)
+	stw r12, 380(r10)
+	stw r12, 384(r10)
+	stw r12, 388(r10)
+	stw r11, 392(r10)
+	stw r11, 396(r10)
+	stw r12, 400(r10)
+	stw r12, 404(r10)
+	stw r12, 408(r10)
+	stw r12, 412(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r11, 196(r10)
+	stw r11, 200(r10)
+	stw r11, 204(r10)
+	stw r11, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r11, 228(r10)
+	stw r11, 232(r10)
+	stw r11, 236(r10)
+	stw r11, 240(r10)
+	stw r11, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r12, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+	stw r12, 288(r10)
+	stw r12, 292(r10)
+	stw r12, 296(r10)
+	stw r12, 300(r10)
+	stw r12, 304(r10)
+	stw r12, 308(r10)
+	stw r12, 312(r10)
+	stw r12, 316(r10)
+	stw r12, 320(r10)
+	stw r12, 324(r10)
+	stw r12, 328(r10)
+	stw r12, 332(r10)
+	stw r12, 336(r10)
+	stw r12, 340(r10)
+	stw r12, 344(r10)
+	stw r12, 348(r10)
+	stw r12, 352(r10)
+	stw r12, 356(r10)
+	stw r12, 360(r10)
+	stw r12, 364(r10)
+	stw r12, 368(r10)
+	stw r12, 372(r10)
+	stw r12, 376(r10)
+	stw r12, 380(r10)
+	stw r12, 384(r10)
+	stw r11, 388(r10)
+	stw r11, 392(r10)
+	stw r11, 396(r10)
+	stw r11, 400(r10)
+	stw r12, 404(r10)
+	stw r12, 408(r10)
+	stw r12, 412(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r12, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+	stw r12, 288(r10)
+	stw r12, 292(r10)
+	stw r12, 296(r10)
+	stw r12, 300(r10)
+	stw r12, 304(r10)
+	stw r12, 308(r10)
+	stw r12, 312(r10)
+	stw r12, 316(r10)
+	stw r12, 320(r10)
+	stw r12, 324(r10)
+	stw r12, 328(r10)
+	stw r12, 332(r10)
+	stw r12, 336(r10)
+	stw r12, 340(r10)
+	stw r12, 344(r10)
+	stw r12, 348(r10)
+	stw r12, 352(r10)
+	stw r12, 356(r10)
+	stw r12, 360(r10)
+	stw r12, 364(r10)
+	stw r12, 368(r10)
+	stw r12, 372(r10)
+	stw r12, 376(r10)
+	stw r12, 380(r10)
+	stw r12, 384(r10)
+	stw r12, 388(r10)
+	stw r12, 392(r10)
+	stw r12, 396(r10)
+	stw r12, 400(r10)
+	stw r12, 404(r10)
+	stw r12, 408(r10)
+	stw r12, 412(r10)
+#endif
+.endm
+
+.macro DEBUG_segments
+#ifdef CONFIG_DEBUG
+	
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r11, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r11, 204(r10)
+	stw r11, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r11, 204(r10)
+	stw r11, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r11, 16(r10)
+	stw r11, 20(r10)
+	stw r11, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r11, 48(r10)
+	stw r11, 52(r10)
+	stw r11, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r11, 72(r10)
+	stw r11, 76(r10)
+	stw r11, 80(r10)
+	stw r12, 84(r10)
+	stw r11, 88(r10)
+	stw r11, 92(r10)
+	stw r12, 96(r10)
+	stw r11, 100(r10)
+	stw r11, 104(r10)
+	stw r11, 108(r10)
+	stw r12, 112(r10)
+	stw r11, 116(r10)
+	stw r11, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r11, 136(r10)
+	stw r11, 140(r10)
+	stw r11, 144(r10)
+	stw r11, 148(r10)
+	stw r11, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r11, 164(r10)
+	stw r11, 168(r10)
+	stw r12, 172(r10)
+	stw r11, 176(r10)
+	stw r11, 180(r10)
+	stw r11, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r11, 196(r10)
+	stw r11, 200(r10)
+	stw r11, 204(r10)
+	stw r11, 208(r10)
+	stw r11, 212(r10)
+	stw r11, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r11, 232(r10)
+	stw r11, 236(r10)
+	stw r11, 240(r10)
+	stw r11, 244(r10)
+	stw r11, 248(r10)
+	stw r12, 252(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r11, 4(r10)
+	stw r11, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r11, 24(r10)
+	stw r11, 28(r10)
+	stw r12, 32(r10)
+	stw r11, 36(r10)
+	stw r11, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r11, 56(r10)
+	stw r11, 60(r10)
+	stw r12, 64(r10)
+	stw r11, 68(r10)
+	stw r11, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r11, 100(r10)
+	stw r11, 104(r10)
+	stw r11, 108(r10)
+	stw r11, 112(r10)
+	stw r11, 116(r10)
+	stw r11, 120(r10)
+	stw r11, 124(r10)
+	stw r12, 128(r10)
+	stw r11, 132(r10)
+	stw r11, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r11, 152(r10)
+	stw r11, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r11, 168(r10)
+	stw r11, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r11, 184(r10)
+	stw r11, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r11, 204(r10)
+	stw r11, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r11, 228(r10)
+	stw r11, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r11, 248(r10)
+	stw r11, 252(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r11, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r11, 48(r10)
+	stw r11, 52(r10)
+	stw r11, 56(r10)
+	stw r11, 60(r10)
+	stw r12, 64(r10)
+	stw r11, 68(r10)
+	stw r11, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r11, 100(r10)
+	stw r11, 104(r10)
+	stw r12, 108(r10)
+	stw r11, 112(r10)
+	stw r12, 116(r10)
+	stw r11, 120(r10)
+	stw r11, 124(r10)
+	stw r12, 128(r10)
+	stw r11, 132(r10)
+	stw r11, 136(r10)
+	stw r11, 140(r10)
+	stw r11, 144(r10)
+	stw r11, 148(r10)
+	stw r11, 152(r10)
+	stw r11, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r11, 168(r10)
+	stw r11, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r11, 184(r10)
+	stw r11, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r11, 204(r10)
+	stw r11, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r11, 232(r10)
+	stw r11, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r11, 12(r10)
+	stw r11, 16(r10)
+	stw r11, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r11, 36(r10)
+	stw r11, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r11, 68(r10)
+	stw r11, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r11, 100(r10)
+	stw r11, 104(r10)
+	stw r12, 108(r10)
+	stw r11, 112(r10)
+	stw r12, 116(r10)
+	stw r11, 120(r10)
+	stw r11, 124(r10)
+	stw r12, 128(r10)
+	stw r11, 132(r10)
+	stw r11, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r11, 168(r10)
+	stw r11, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r11, 184(r10)
+	stw r11, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r11, 204(r10)
+	stw r11, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r11, 236(r10)
+	stw r11, 240(r10)
+	stw r11, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r11, 20(r10)
+	stw r11, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r11, 36(r10)
+	stw r11, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r11, 68(r10)
+	stw r11, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r11, 100(r10)
+	stw r11, 104(r10)
+	stw r12, 108(r10)
+	stw r11, 112(r10)
+	stw r12, 116(r10)
+	stw r11, 120(r10)
+	stw r11, 124(r10)
+	stw r12, 128(r10)
+	stw r11, 132(r10)
+	stw r11, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r11, 168(r10)
+	stw r11, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r11, 184(r10)
+	stw r11, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r11, 204(r10)
+	stw r11, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r11, 244(r10)
+	stw r11, 248(r10)
+	stw r12, 252(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r11, 4(r10)
+	stw r11, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r11, 24(r10)
+	stw r11, 28(r10)
+	stw r12, 32(r10)
+	stw r11, 36(r10)
+	stw r11, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r11, 56(r10)
+	stw r11, 60(r10)
+	stw r12, 64(r10)
+	stw r11, 68(r10)
+	stw r11, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r11, 100(r10)
+	stw r11, 104(r10)
+	stw r12, 108(r10)
+	stw r11, 112(r10)
+	stw r12, 116(r10)
+	stw r11, 120(r10)
+	stw r11, 124(r10)
+	stw r12, 128(r10)
+	stw r11, 132(r10)
+	stw r11, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r11, 152(r10)
+	stw r11, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r11, 168(r10)
+	stw r11, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r11, 184(r10)
+	stw r11, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r11, 204(r10)
+	stw r11, 208(r10)
+	stw r12, 212(r10)
+	stw r11, 216(r10)
+	stw r11, 220(r10)
+	stw r12, 224(r10)
+	stw r11, 228(r10)
+	stw r11, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r11, 248(r10)
+	stw r11, 252(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r11, 16(r10)
+	stw r11, 20(r10)
+	stw r11, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r11, 48(r10)
+	stw r11, 52(r10)
+	stw r11, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r11, 72(r10)
+	stw r11, 76(r10)
+	stw r11, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r11, 100(r10)
+	stw r11, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r11, 120(r10)
+	stw r11, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r11, 136(r10)
+	stw r11, 140(r10)
+	stw r11, 144(r10)
+	stw r11, 148(r10)
+	stw r11, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r11, 168(r10)
+	stw r11, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r11, 184(r10)
+	stw r11, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r11, 208(r10)
+	stw r11, 212(r10)
+	stw r11, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r11, 232(r10)
+	stw r11, 236(r10)
+	stw r11, 240(r10)
+	stw r11, 244(r10)
+	stw r11, 248(r10)
+	stw r12, 252(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r11, 68(r10)
+	stw r11, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r11, 72(r10)
+	stw r11, 76(r10)
+	stw r11, 80(r10)
+	stw r11, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+#endif
+.endm
+
+.macro DEBUG_bat
+#ifdef CONFIG_DEBUG
+	
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r11, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r11, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r11, 76(r10)
+	stw r11, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r11, 76(r10)
+	stw r11, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r11, 16(r10)
+	stw r11, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r11, 48(r10)
+	stw r11, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r11, 68(r10)
+	stw r11, 72(r10)
+	stw r11, 76(r10)
+	stw r11, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r12, 16(r10)
+	stw r11, 20(r10)
+	stw r11, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r11, 52(r10)
+	stw r11, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r11, 76(r10)
+	stw r11, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r11, 24(r10)
+	stw r11, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r11, 48(r10)
+	stw r11, 52(r10)
+	stw r11, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r11, 76(r10)
+	stw r11, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r11, 24(r10)
+	stw r11, 28(r10)
+	stw r12, 32(r10)
+	stw r11, 36(r10)
+	stw r11, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r11, 52(r10)
+	stw r11, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r11, 76(r10)
+	stw r11, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r11, 24(r10)
+	stw r11, 28(r10)
+	stw r12, 32(r10)
+	stw r11, 36(r10)
+	stw r11, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r11, 52(r10)
+	stw r11, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r11, 76(r10)
+	stw r11, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r11, 24(r10)
+	stw r11, 28(r10)
+	stw r12, 32(r10)
+	stw r11, 36(r10)
+	stw r11, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r11, 52(r10)
+	stw r11, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r11, 76(r10)
+	stw r11, 80(r10)
+	stw r12, 84(r10)
+	stw r11, 88(r10)
+	stw r11, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r11, 16(r10)
+	stw r11, 20(r10)
+	stw r11, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r11, 48(r10)
+	stw r12, 52(r10)
+	stw r11, 56(r10)
+	stw r11, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r11, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+#endif
+.endm
+
+.macro DEBUG_mapping
+#ifdef CONFIG_DEBUG
+	
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r11, 144(r10)
+	stw r11, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r11, 144(r10)
+	stw r11, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r11, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r12, 16(r10)
+	stw r11, 20(r10)
+	stw r11, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r11, 48(r10)
+	stw r11, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r11, 68(r10)
+	stw r11, 72(r10)
+	stw r12, 76(r10)
+	stw r11, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r11, 100(r10)
+	stw r11, 104(r10)
+	stw r12, 108(r10)
+	stw r11, 112(r10)
+	stw r11, 116(r10)
+	stw r11, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r11, 140(r10)
+	stw r11, 144(r10)
+	stw r11, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r11, 164(r10)
+	stw r11, 168(r10)
+	stw r12, 172(r10)
+	stw r11, 176(r10)
+	stw r11, 180(r10)
+	stw r11, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r11, 200(r10)
+	stw r11, 204(r10)
+	stw r11, 208(r10)
+	stw r12, 212(r10)
+	stw r11, 216(r10)
+	stw r11, 220(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r11, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r11, 16(r10)
+	stw r11, 20(r10)
+	stw r11, 24(r10)
+	stw r11, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r11, 52(r10)
+	stw r11, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r11, 72(r10)
+	stw r11, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r11, 88(r10)
+	stw r11, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r11, 104(r10)
+	stw r11, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r11, 120(r10)
+	stw r11, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r11, 144(r10)
+	stw r11, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r11, 168(r10)
+	stw r11, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r11, 184(r10)
+	stw r11, 188(r10)
+	stw r12, 192(r10)
+	stw r11, 196(r10)
+	stw r11, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r11, 212(r10)
+	stw r11, 216(r10)
+	stw r12, 220(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r11, 4(r10)
+	stw r11, 8(r10)
+	stw r12, 12(r10)
+	stw r11, 16(r10)
+	stw r12, 20(r10)
+	stw r11, 24(r10)
+	stw r11, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r11, 48(r10)
+	stw r11, 52(r10)
+	stw r11, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r11, 72(r10)
+	stw r11, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r11, 88(r10)
+	stw r11, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r11, 104(r10)
+	stw r11, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r11, 120(r10)
+	stw r11, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r11, 144(r10)
+	stw r11, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r11, 168(r10)
+	stw r11, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r11, 184(r10)
+	stw r11, 188(r10)
+	stw r12, 192(r10)
+	stw r11, 196(r10)
+	stw r11, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r11, 212(r10)
+	stw r11, 216(r10)
+	stw r12, 220(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r11, 4(r10)
+	stw r11, 8(r10)
+	stw r12, 12(r10)
+	stw r11, 16(r10)
+	stw r12, 20(r10)
+	stw r11, 24(r10)
+	stw r11, 28(r10)
+	stw r12, 32(r10)
+	stw r11, 36(r10)
+	stw r11, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r11, 52(r10)
+	stw r11, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r11, 72(r10)
+	stw r11, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r11, 88(r10)
+	stw r11, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r11, 104(r10)
+	stw r11, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r11, 120(r10)
+	stw r11, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r11, 144(r10)
+	stw r11, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r11, 168(r10)
+	stw r11, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r11, 184(r10)
+	stw r11, 188(r10)
+	stw r12, 192(r10)
+	stw r11, 196(r10)
+	stw r11, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r11, 212(r10)
+	stw r11, 216(r10)
+	stw r12, 220(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r11, 4(r10)
+	stw r11, 8(r10)
+	stw r12, 12(r10)
+	stw r11, 16(r10)
+	stw r12, 20(r10)
+	stw r11, 24(r10)
+	stw r11, 28(r10)
+	stw r12, 32(r10)
+	stw r11, 36(r10)
+	stw r11, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r11, 52(r10)
+	stw r11, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r11, 72(r10)
+	stw r11, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r11, 88(r10)
+	stw r11, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r11, 104(r10)
+	stw r11, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r11, 120(r10)
+	stw r11, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r11, 144(r10)
+	stw r11, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r11, 168(r10)
+	stw r11, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r11, 184(r10)
+	stw r11, 188(r10)
+	stw r12, 192(r10)
+	stw r11, 196(r10)
+	stw r11, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r11, 212(r10)
+	stw r11, 216(r10)
+	stw r12, 220(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r11, 4(r10)
+	stw r11, 8(r10)
+	stw r12, 12(r10)
+	stw r11, 16(r10)
+	stw r12, 20(r10)
+	stw r11, 24(r10)
+	stw r11, 28(r10)
+	stw r12, 32(r10)
+	stw r11, 36(r10)
+	stw r11, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r11, 52(r10)
+	stw r11, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r11, 72(r10)
+	stw r11, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r11, 88(r10)
+	stw r11, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r11, 104(r10)
+	stw r11, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r11, 120(r10)
+	stw r11, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r11, 144(r10)
+	stw r11, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r11, 168(r10)
+	stw r11, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r11, 184(r10)
+	stw r11, 188(r10)
+	stw r12, 192(r10)
+	stw r11, 196(r10)
+	stw r11, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r11, 212(r10)
+	stw r11, 216(r10)
+	stw r12, 220(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r11, 4(r10)
+	stw r11, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r11, 24(r10)
+	stw r11, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r11, 48(r10)
+	stw r12, 52(r10)
+	stw r11, 56(r10)
+	stw r11, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r11, 72(r10)
+	stw r11, 76(r10)
+	stw r11, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r11, 104(r10)
+	stw r11, 108(r10)
+	stw r11, 112(r10)
+	stw r11, 116(r10)
+	stw r11, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r11, 140(r10)
+	stw r11, 144(r10)
+	stw r11, 148(r10)
+	stw r11, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r11, 168(r10)
+	stw r11, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r11, 184(r10)
+	stw r11, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r11, 200(r10)
+	stw r11, 204(r10)
+	stw r11, 208(r10)
+	stw r11, 212(r10)
+	stw r11, 216(r10)
+	stw r12, 220(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r11, 72(r10)
+	stw r11, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r11, 104(r10)
+	stw r11, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r11, 212(r10)
+	stw r11, 216(r10)
+	stw r12, 220(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r11, 72(r10)
+	stw r11, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r11, 104(r10)
+	stw r11, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r11, 196(r10)
+	stw r11, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r11, 212(r10)
+	stw r11, 216(r10)
+	stw r12, 220(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r11, 68(r10)
+	stw r11, 72(r10)
+	stw r11, 76(r10)
+	stw r11, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r11, 100(r10)
+	stw r11, 104(r10)
+	stw r11, 108(r10)
+	stw r11, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r11, 200(r10)
+	stw r11, 204(r10)
+	stw r11, 208(r10)
+	stw r11, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+#endif
+.endm
+
+.macro DEBUG_tlb
+#ifdef CONFIG_DEBUG
+	
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r11, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r11, 44(r10)
+	stw r11, 48(r10)
+	stw r11, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r11, 68(r10)
+	stw r11, 72(r10)
+	stw r11, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r11, 12(r10)
+	stw r11, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r11, 48(r10)
+	stw r11, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r11, 72(r10)
+	stw r11, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r11, 12(r10)
+	stw r11, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r11, 48(r10)
+	stw r11, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r11, 72(r10)
+	stw r11, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r11, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r11, 16(r10)
+	stw r11, 20(r10)
+	stw r11, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r11, 48(r10)
+	stw r11, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r11, 72(r10)
+	stw r11, 76(r10)
+	stw r11, 80(r10)
+	stw r11, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r11, 12(r10)
+	stw r11, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r11, 48(r10)
+	stw r11, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r11, 72(r10)
+	stw r11, 76(r10)
+	stw r12, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r11, 12(r10)
+	stw r11, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r11, 48(r10)
+	stw r11, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r11, 72(r10)
+	stw r11, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r11, 88(r10)
+	stw r11, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r11, 12(r10)
+	stw r11, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r11, 48(r10)
+	stw r11, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r11, 72(r10)
+	stw r11, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r11, 88(r10)
+	stw r11, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r11, 12(r10)
+	stw r11, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r11, 48(r10)
+	stw r11, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r11, 72(r10)
+	stw r11, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r11, 88(r10)
+	stw r11, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r11, 12(r10)
+	stw r11, 16(r10)
+	stw r12, 20(r10)
+	stw r11, 24(r10)
+	stw r11, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r11, 48(r10)
+	stw r11, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r11, 72(r10)
+	stw r11, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r11, 88(r10)
+	stw r11, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r11, 16(r10)
+	stw r11, 20(r10)
+	stw r11, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r11, 44(r10)
+	stw r11, 48(r10)
+	stw r11, 52(r10)
+	stw r11, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r11, 72(r10)
+	stw r11, 76(r10)
+	stw r11, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+#endif
+.endm
+
+.macro DEBUG_prepare
+#ifdef CONFIG_DEBUG
+	
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r11, 4(r10)
+	stw r11, 8(r10)
+	stw r12, 12(r10)
+	stw r11, 16(r10)
+	stw r11, 20(r10)
+	stw r11, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r11, 36(r10)
+	stw r11, 40(r10)
+	stw r12, 44(r10)
+	stw r11, 48(r10)
+	stw r11, 52(r10)
+	stw r11, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r11, 72(r10)
+	stw r11, 76(r10)
+	stw r11, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r11, 100(r10)
+	stw r11, 104(r10)
+	stw r12, 108(r10)
+	stw r11, 112(r10)
+	stw r11, 116(r10)
+	stw r11, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r11, 136(r10)
+	stw r11, 140(r10)
+	stw r11, 144(r10)
+	stw r11, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r11, 164(r10)
+	stw r11, 168(r10)
+	stw r12, 172(r10)
+	stw r11, 176(r10)
+	stw r11, 180(r10)
+	stw r11, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r11, 200(r10)
+	stw r11, 204(r10)
+	stw r11, 208(r10)
+	stw r11, 212(r10)
+	stw r11, 216(r10)
+	stw r12, 220(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r11, 24(r10)
+	stw r11, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r11, 48(r10)
+	stw r12, 52(r10)
+	stw r11, 56(r10)
+	stw r11, 60(r10)
+	stw r12, 64(r10)
+	stw r11, 68(r10)
+	stw r11, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r11, 88(r10)
+	stw r11, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r11, 104(r10)
+	stw r11, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r11, 120(r10)
+	stw r11, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r11, 148(r10)
+	stw r11, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r11, 168(r10)
+	stw r11, 172(r10)
+	stw r11, 176(r10)
+	stw r12, 180(r10)
+	stw r11, 184(r10)
+	stw r11, 188(r10)
+	stw r12, 192(r10)
+	stw r11, 196(r10)
+	stw r11, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r11, 216(r10)
+	stw r11, 220(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r11, 24(r10)
+	stw r11, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r11, 56(r10)
+	stw r11, 60(r10)
+	stw r12, 64(r10)
+	stw r11, 68(r10)
+	stw r11, 72(r10)
+	stw r11, 76(r10)
+	stw r11, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r11, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r11, 104(r10)
+	stw r11, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r11, 120(r10)
+	stw r11, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r11, 136(r10)
+	stw r11, 140(r10)
+	stw r11, 144(r10)
+	stw r11, 148(r10)
+	stw r11, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r11, 168(r10)
+	stw r11, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r11, 184(r10)
+	stw r11, 188(r10)
+	stw r12, 192(r10)
+	stw r11, 196(r10)
+	stw r11, 200(r10)
+	stw r11, 204(r10)
+	stw r11, 208(r10)
+	stw r11, 212(r10)
+	stw r11, 216(r10)
+	stw r11, 220(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r11, 24(r10)
+	stw r11, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r11, 68(r10)
+	stw r11, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r11, 104(r10)
+	stw r11, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r11, 120(r10)
+	stw r11, 124(r10)
+	stw r12, 128(r10)
+	stw r11, 132(r10)
+	stw r11, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r11, 148(r10)
+	stw r11, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r11, 168(r10)
+	stw r11, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r11, 196(r10)
+	stw r11, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r11, 24(r10)
+	stw r11, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r11, 68(r10)
+	stw r11, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r11, 104(r10)
+	stw r11, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r11, 120(r10)
+	stw r11, 124(r10)
+	stw r12, 128(r10)
+	stw r11, 132(r10)
+	stw r11, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r11, 148(r10)
+	stw r11, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r11, 168(r10)
+	stw r11, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r11, 196(r10)
+	stw r11, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r11, 24(r10)
+	stw r11, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r11, 68(r10)
+	stw r11, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r11, 88(r10)
+	stw r11, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r11, 104(r10)
+	stw r11, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r11, 120(r10)
+	stw r11, 124(r10)
+	stw r12, 128(r10)
+	stw r11, 132(r10)
+	stw r11, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r11, 148(r10)
+	stw r11, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r11, 168(r10)
+	stw r11, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r11, 196(r10)
+	stw r11, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r11, 216(r10)
+	stw r11, 220(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r11, 16(r10)
+	stw r11, 20(r10)
+	stw r11, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r11, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r11, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r11, 72(r10)
+	stw r11, 76(r10)
+	stw r11, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r11, 104(r10)
+	stw r11, 108(r10)
+	stw r11, 112(r10)
+	stw r11, 116(r10)
+	stw r11, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r11, 136(r10)
+	stw r11, 140(r10)
+	stw r11, 144(r10)
+	stw r12, 148(r10)
+	stw r11, 152(r10)
+	stw r11, 156(r10)
+	stw r12, 160(r10)
+	stw r11, 164(r10)
+	stw r11, 168(r10)
+	stw r11, 172(r10)
+	stw r11, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r11, 200(r10)
+	stw r11, 204(r10)
+	stw r11, 208(r10)
+	stw r11, 212(r10)
+	stw r11, 216(r10)
+	stw r12, 220(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r11, 104(r10)
+	stw r11, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r11, 104(r10)
+	stw r11, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r11, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r11, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r11, 100(r10)
+	stw r11, 104(r10)
+	stw r11, 108(r10)
+	stw r11, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+#endif
+.endm
+
+.macro DEBUG_rfi
+#ifdef CONFIG_DEBUG
+	
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r11, 48(r10)
+	stw r11, 52(r10)
+	stw r11, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r11, 80(r10)
+	stw r11, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r11, 44(r10)
+	stw r11, 48(r10)
+	stw r12, 52(r10)
+	stw r11, 56(r10)
+	stw r11, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r11, 80(r10)
+	stw r11, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r11, 44(r10)
+	stw r11, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r11, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r11, 4(r10)
+	stw r11, 8(r10)
+	stw r12, 12(r10)
+	stw r11, 16(r10)
+	stw r11, 20(r10)
+	stw r11, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r11, 44(r10)
+	stw r11, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r11, 76(r10)
+	stw r11, 80(r10)
+	stw r11, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r11, 16(r10)
+	stw r12, 20(r10)
+	stw r11, 24(r10)
+	stw r11, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r11, 48(r10)
+	stw r11, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r11, 80(r10)
+	stw r11, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r11, 24(r10)
+	stw r11, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r11, 44(r10)
+	stw r11, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r11, 80(r10)
+	stw r11, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r11, 44(r10)
+	stw r11, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r11, 80(r10)
+	stw r11, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r11, 44(r10)
+	stw r11, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r11, 80(r10)
+	stw r11, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r11, 44(r10)
+	stw r11, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r11, 80(r10)
+	stw r11, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r11, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r11, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r11, 48(r10)
+	stw r11, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r11, 76(r10)
+	stw r11, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+#endif
+.endm
+
+.macro DEBUG_pht
+#ifdef CONFIG_DEBUG
+	
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r11, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r11, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r11, 76(r10)
+	stw r11, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r11, 76(r10)
+	stw r11, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r11, 4(r10)
+	stw r11, 8(r10)
+	stw r12, 12(r10)
+	stw r11, 16(r10)
+	stw r11, 20(r10)
+	stw r11, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r12, 48(r10)
+	stw r11, 52(r10)
+	stw r11, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r11, 68(r10)
+	stw r11, 72(r10)
+	stw r11, 76(r10)
+	stw r11, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r11, 24(r10)
+	stw r11, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r11, 48(r10)
+	stw r12, 52(r10)
+	stw r11, 56(r10)
+	stw r11, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r11, 76(r10)
+	stw r11, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r11, 24(r10)
+	stw r11, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r11, 56(r10)
+	stw r11, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r11, 76(r10)
+	stw r11, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r11, 24(r10)
+	stw r11, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r11, 56(r10)
+	stw r11, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r11, 76(r10)
+	stw r11, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r11, 24(r10)
+	stw r11, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r11, 56(r10)
+	stw r11, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r11, 76(r10)
+	stw r11, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r11, 24(r10)
+	stw r11, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r11, 56(r10)
+	stw r11, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r11, 76(r10)
+	stw r11, 80(r10)
+	stw r12, 84(r10)
+	stw r11, 88(r10)
+	stw r11, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r11, 16(r10)
+	stw r11, 20(r10)
+	stw r11, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r11, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r11, 56(r10)
+	stw r11, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r11, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r11, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r11, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+#endif
+.endm
+
+.macro DEBUG_end_pht_clear
+#ifdef CONFIG_DEBUG
+	
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r12, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+	stw r12, 288(r10)
+	stw r12, 292(r10)
+	stw r12, 296(r10)
+	stw r12, 300(r10)
+	stw r12, 304(r10)
+	stw r12, 308(r10)
+	stw r12, 312(r10)
+	stw r12, 316(r10)
+	stw r12, 320(r10)
+	stw r12, 324(r10)
+	stw r12, 328(r10)
+	stw r12, 332(r10)
+	stw r12, 336(r10)
+	stw r12, 340(r10)
+	stw r12, 344(r10)
+	stw r12, 348(r10)
+	stw r12, 352(r10)
+	stw r12, 356(r10)
+	stw r12, 360(r10)
+	stw r12, 364(r10)
+	stw r12, 368(r10)
+	stw r12, 372(r10)
+	stw r12, 376(r10)
+	stw r12, 380(r10)
+	stw r12, 384(r10)
+	stw r12, 388(r10)
+	stw r12, 392(r10)
+	stw r12, 396(r10)
+	stw r12, 400(r10)
+	stw r12, 404(r10)
+	stw r12, 408(r10)
+	stw r12, 412(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r12, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+	stw r12, 288(r10)
+	stw r12, 292(r10)
+	stw r12, 296(r10)
+	stw r12, 300(r10)
+	stw r12, 304(r10)
+	stw r12, 308(r10)
+	stw r12, 312(r10)
+	stw r12, 316(r10)
+	stw r12, 320(r10)
+	stw r12, 324(r10)
+	stw r12, 328(r10)
+	stw r12, 332(r10)
+	stw r12, 336(r10)
+	stw r12, 340(r10)
+	stw r12, 344(r10)
+	stw r12, 348(r10)
+	stw r12, 352(r10)
+	stw r12, 356(r10)
+	stw r12, 360(r10)
+	stw r12, 364(r10)
+	stw r12, 368(r10)
+	stw r12, 372(r10)
+	stw r12, 376(r10)
+	stw r12, 380(r10)
+	stw r12, 384(r10)
+	stw r12, 388(r10)
+	stw r12, 392(r10)
+	stw r12, 396(r10)
+	stw r12, 400(r10)
+	stw r12, 404(r10)
+	stw r12, 408(r10)
+	stw r12, 412(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r11, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r11, 164(r10)
+	stw r11, 168(r10)
+	stw r11, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r11, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r12, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+	stw r12, 288(r10)
+	stw r12, 292(r10)
+	stw r12, 296(r10)
+	stw r11, 300(r10)
+	stw r11, 304(r10)
+	stw r11, 308(r10)
+	stw r12, 312(r10)
+	stw r12, 316(r10)
+	stw r12, 320(r10)
+	stw r12, 324(r10)
+	stw r12, 328(r10)
+	stw r12, 332(r10)
+	stw r12, 336(r10)
+	stw r12, 340(r10)
+	stw r12, 344(r10)
+	stw r12, 348(r10)
+	stw r12, 352(r10)
+	stw r12, 356(r10)
+	stw r12, 360(r10)
+	stw r12, 364(r10)
+	stw r12, 368(r10)
+	stw r12, 372(r10)
+	stw r12, 376(r10)
+	stw r12, 380(r10)
+	stw r12, 384(r10)
+	stw r12, 388(r10)
+	stw r12, 392(r10)
+	stw r12, 396(r10)
+	stw r12, 400(r10)
+	stw r12, 404(r10)
+	stw r12, 408(r10)
+	stw r12, 412(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r11, 168(r10)
+	stw r11, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r11, 204(r10)
+	stw r11, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r12, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+	stw r12, 288(r10)
+	stw r12, 292(r10)
+	stw r12, 296(r10)
+	stw r12, 300(r10)
+	stw r11, 304(r10)
+	stw r11, 308(r10)
+	stw r12, 312(r10)
+	stw r12, 316(r10)
+	stw r12, 320(r10)
+	stw r12, 324(r10)
+	stw r12, 328(r10)
+	stw r12, 332(r10)
+	stw r12, 336(r10)
+	stw r12, 340(r10)
+	stw r12, 344(r10)
+	stw r12, 348(r10)
+	stw r12, 352(r10)
+	stw r12, 356(r10)
+	stw r12, 360(r10)
+	stw r12, 364(r10)
+	stw r12, 368(r10)
+	stw r12, 372(r10)
+	stw r12, 376(r10)
+	stw r12, 380(r10)
+	stw r12, 384(r10)
+	stw r12, 388(r10)
+	stw r12, 392(r10)
+	stw r12, 396(r10)
+	stw r12, 400(r10)
+	stw r12, 404(r10)
+	stw r12, 408(r10)
+	stw r12, 412(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r11, 168(r10)
+	stw r11, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r11, 204(r10)
+	stw r11, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r12, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+	stw r12, 288(r10)
+	stw r12, 292(r10)
+	stw r12, 296(r10)
+	stw r12, 300(r10)
+	stw r11, 304(r10)
+	stw r11, 308(r10)
+	stw r12, 312(r10)
+	stw r12, 316(r10)
+	stw r12, 320(r10)
+	stw r12, 324(r10)
+	stw r12, 328(r10)
+	stw r12, 332(r10)
+	stw r12, 336(r10)
+	stw r12, 340(r10)
+	stw r12, 344(r10)
+	stw r12, 348(r10)
+	stw r12, 352(r10)
+	stw r12, 356(r10)
+	stw r12, 360(r10)
+	stw r12, 364(r10)
+	stw r12, 368(r10)
+	stw r12, 372(r10)
+	stw r12, 376(r10)
+	stw r12, 380(r10)
+	stw r12, 384(r10)
+	stw r12, 388(r10)
+	stw r12, 392(r10)
+	stw r12, 396(r10)
+	stw r12, 400(r10)
+	stw r12, 404(r10)
+	stw r12, 408(r10)
+	stw r12, 412(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r11, 16(r10)
+	stw r11, 20(r10)
+	stw r11, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r11, 36(r10)
+	stw r11, 40(r10)
+	stw r12, 44(r10)
+	stw r11, 48(r10)
+	stw r11, 52(r10)
+	stw r11, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r11, 76(r10)
+	stw r11, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r11, 132(r10)
+	stw r11, 136(r10)
+	stw r12, 140(r10)
+	stw r11, 144(r10)
+	stw r11, 148(r10)
+	stw r11, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r11, 168(r10)
+	stw r11, 172(r10)
+	stw r12, 176(r10)
+	stw r11, 180(r10)
+	stw r11, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r11, 196(r10)
+	stw r11, 200(r10)
+	stw r11, 204(r10)
+	stw r11, 208(r10)
+	stw r11, 212(r10)
+	stw r11, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r11, 264(r10)
+	stw r11, 268(r10)
+	stw r11, 272(r10)
+	stw r11, 276(r10)
+	stw r11, 280(r10)
+	stw r12, 284(r10)
+	stw r12, 288(r10)
+	stw r12, 292(r10)
+	stw r12, 296(r10)
+	stw r12, 300(r10)
+	stw r11, 304(r10)
+	stw r11, 308(r10)
+	stw r12, 312(r10)
+	stw r12, 316(r10)
+	stw r12, 320(r10)
+	stw r12, 324(r10)
+	stw r11, 328(r10)
+	stw r11, 332(r10)
+	stw r11, 336(r10)
+	stw r11, 340(r10)
+	stw r11, 344(r10)
+	stw r12, 348(r10)
+	stw r12, 352(r10)
+	stw r12, 356(r10)
+	stw r11, 360(r10)
+	stw r11, 364(r10)
+	stw r11, 368(r10)
+	stw r11, 372(r10)
+	stw r12, 376(r10)
+	stw r12, 380(r10)
+	stw r12, 384(r10)
+	stw r11, 388(r10)
+	stw r11, 392(r10)
+	stw r12, 396(r10)
+	stw r11, 400(r10)
+	stw r11, 404(r10)
+	stw r11, 408(r10)
+	stw r12, 412(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r11, 4(r10)
+	stw r11, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r11, 24(r10)
+	stw r11, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r11, 56(r10)
+	stw r11, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r11, 72(r10)
+	stw r11, 76(r10)
+	stw r12, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r11, 136(r10)
+	stw r11, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r11, 152(r10)
+	stw r11, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r11, 168(r10)
+	stw r11, 172(r10)
+	stw r11, 176(r10)
+	stw r12, 180(r10)
+	stw r11, 184(r10)
+	stw r11, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r11, 204(r10)
+	stw r11, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r11, 260(r10)
+	stw r11, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r11, 280(r10)
+	stw r11, 284(r10)
+	stw r12, 288(r10)
+	stw r12, 292(r10)
+	stw r12, 296(r10)
+	stw r12, 300(r10)
+	stw r11, 304(r10)
+	stw r11, 308(r10)
+	stw r12, 312(r10)
+	stw r12, 316(r10)
+	stw r12, 320(r10)
+	stw r11, 324(r10)
+	stw r11, 328(r10)
+	stw r12, 332(r10)
+	stw r12, 336(r10)
+	stw r12, 340(r10)
+	stw r11, 344(r10)
+	stw r11, 348(r10)
+	stw r12, 352(r10)
+	stw r12, 356(r10)
+	stw r12, 360(r10)
+	stw r12, 364(r10)
+	stw r12, 368(r10)
+	stw r11, 372(r10)
+	stw r11, 376(r10)
+	stw r12, 380(r10)
+	stw r12, 384(r10)
+	stw r12, 388(r10)
+	stw r11, 392(r10)
+	stw r11, 396(r10)
+	stw r11, 400(r10)
+	stw r12, 404(r10)
+	stw r11, 408(r10)
+	stw r11, 412(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r11, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r11, 16(r10)
+	stw r11, 20(r10)
+	stw r11, 24(r10)
+	stw r11, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r11, 56(r10)
+	stw r11, 60(r10)
+	stw r12, 64(r10)
+	stw r11, 68(r10)
+	stw r11, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r11, 136(r10)
+	stw r11, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r11, 152(r10)
+	stw r11, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r11, 168(r10)
+	stw r11, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r11, 184(r10)
+	stw r11, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r11, 204(r10)
+	stw r11, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r11, 260(r10)
+	stw r11, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+	stw r12, 288(r10)
+	stw r12, 292(r10)
+	stw r12, 296(r10)
+	stw r12, 300(r10)
+	stw r11, 304(r10)
+	stw r11, 308(r10)
+	stw r12, 312(r10)
+	stw r12, 316(r10)
+	stw r12, 320(r10)
+	stw r11, 324(r10)
+	stw r11, 328(r10)
+	stw r11, 332(r10)
+	stw r11, 336(r10)
+	stw r11, 340(r10)
+	stw r11, 344(r10)
+	stw r11, 348(r10)
+	stw r12, 352(r10)
+	stw r12, 356(r10)
+	stw r11, 360(r10)
+	stw r11, 364(r10)
+	stw r11, 368(r10)
+	stw r11, 372(r10)
+	stw r11, 376(r10)
+	stw r12, 380(r10)
+	stw r12, 384(r10)
+	stw r12, 388(r10)
+	stw r11, 392(r10)
+	stw r11, 396(r10)
+	stw r12, 400(r10)
+	stw r12, 404(r10)
+	stw r11, 408(r10)
+	stw r11, 412(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r11, 4(r10)
+	stw r11, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r11, 56(r10)
+	stw r11, 60(r10)
+	stw r12, 64(r10)
+	stw r11, 68(r10)
+	stw r11, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r11, 136(r10)
+	stw r11, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r11, 152(r10)
+	stw r11, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r11, 168(r10)
+	stw r11, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r11, 184(r10)
+	stw r11, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r11, 204(r10)
+	stw r11, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r11, 260(r10)
+	stw r11, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+	stw r12, 288(r10)
+	stw r12, 292(r10)
+	stw r12, 296(r10)
+	stw r12, 300(r10)
+	stw r11, 304(r10)
+	stw r11, 308(r10)
+	stw r12, 312(r10)
+	stw r12, 316(r10)
+	stw r12, 320(r10)
+	stw r11, 324(r10)
+	stw r11, 328(r10)
+	stw r12, 332(r10)
+	stw r12, 336(r10)
+	stw r12, 340(r10)
+	stw r12, 344(r10)
+	stw r12, 348(r10)
+	stw r12, 352(r10)
+	stw r11, 356(r10)
+	stw r11, 360(r10)
+	stw r12, 364(r10)
+	stw r12, 368(r10)
+	stw r11, 372(r10)
+	stw r11, 376(r10)
+	stw r12, 380(r10)
+	stw r12, 384(r10)
+	stw r12, 388(r10)
+	stw r11, 392(r10)
+	stw r11, 396(r10)
+	stw r12, 400(r10)
+	stw r12, 404(r10)
+	stw r12, 408(r10)
+	stw r12, 412(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r11, 4(r10)
+	stw r11, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r11, 56(r10)
+	stw r11, 60(r10)
+	stw r12, 64(r10)
+	stw r11, 68(r10)
+	stw r11, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r11, 136(r10)
+	stw r11, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r11, 152(r10)
+	stw r11, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r11, 168(r10)
+	stw r11, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r11, 184(r10)
+	stw r11, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r11, 204(r10)
+	stw r11, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r11, 260(r10)
+	stw r11, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+	stw r12, 288(r10)
+	stw r12, 292(r10)
+	stw r12, 296(r10)
+	stw r12, 300(r10)
+	stw r11, 304(r10)
+	stw r11, 308(r10)
+	stw r12, 312(r10)
+	stw r12, 316(r10)
+	stw r12, 320(r10)
+	stw r11, 324(r10)
+	stw r11, 328(r10)
+	stw r12, 332(r10)
+	stw r12, 336(r10)
+	stw r12, 340(r10)
+	stw r12, 344(r10)
+	stw r12, 348(r10)
+	stw r12, 352(r10)
+	stw r11, 356(r10)
+	stw r11, 360(r10)
+	stw r12, 364(r10)
+	stw r12, 368(r10)
+	stw r11, 372(r10)
+	stw r11, 376(r10)
+	stw r12, 380(r10)
+	stw r12, 384(r10)
+	stw r12, 388(r10)
+	stw r11, 392(r10)
+	stw r11, 396(r10)
+	stw r12, 400(r10)
+	stw r12, 404(r10)
+	stw r12, 408(r10)
+	stw r12, 412(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r11, 4(r10)
+	stw r11, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r11, 24(r10)
+	stw r11, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r11, 56(r10)
+	stw r11, 60(r10)
+	stw r12, 64(r10)
+	stw r11, 68(r10)
+	stw r11, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r11, 136(r10)
+	stw r11, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r11, 152(r10)
+	stw r11, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r11, 168(r10)
+	stw r11, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r11, 184(r10)
+	stw r11, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r11, 204(r10)
+	stw r11, 208(r10)
+	stw r12, 212(r10)
+	stw r11, 216(r10)
+	stw r11, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r11, 260(r10)
+	stw r11, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r11, 280(r10)
+	stw r11, 284(r10)
+	stw r12, 288(r10)
+	stw r12, 292(r10)
+	stw r12, 296(r10)
+	stw r12, 300(r10)
+	stw r11, 304(r10)
+	stw r11, 308(r10)
+	stw r12, 312(r10)
+	stw r12, 316(r10)
+	stw r12, 320(r10)
+	stw r11, 324(r10)
+	stw r11, 328(r10)
+	stw r12, 332(r10)
+	stw r12, 336(r10)
+	stw r12, 340(r10)
+	stw r11, 344(r10)
+	stw r11, 348(r10)
+	stw r12, 352(r10)
+	stw r11, 356(r10)
+	stw r11, 360(r10)
+	stw r12, 364(r10)
+	stw r12, 368(r10)
+	stw r11, 372(r10)
+	stw r11, 376(r10)
+	stw r12, 380(r10)
+	stw r12, 384(r10)
+	stw r12, 388(r10)
+	stw r11, 392(r10)
+	stw r11, 396(r10)
+	stw r12, 400(r10)
+	stw r12, 404(r10)
+	stw r12, 408(r10)
+	stw r12, 412(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r11, 16(r10)
+	stw r11, 20(r10)
+	stw r11, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r11, 56(r10)
+	stw r11, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r11, 72(r10)
+	stw r11, 76(r10)
+	stw r11, 80(r10)
+	stw r12, 84(r10)
+	stw r11, 88(r10)
+	stw r11, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r11, 136(r10)
+	stw r11, 140(r10)
+	stw r11, 144(r10)
+	stw r11, 148(r10)
+	stw r11, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r11, 164(r10)
+	stw r11, 168(r10)
+	stw r11, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r11, 184(r10)
+	stw r11, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r11, 208(r10)
+	stw r11, 212(r10)
+	stw r11, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r11, 264(r10)
+	stw r11, 268(r10)
+	stw r11, 272(r10)
+	stw r11, 276(r10)
+	stw r11, 280(r10)
+	stw r12, 284(r10)
+	stw r12, 288(r10)
+	stw r12, 292(r10)
+	stw r12, 296(r10)
+	stw r11, 300(r10)
+	stw r11, 304(r10)
+	stw r11, 308(r10)
+	stw r11, 312(r10)
+	stw r12, 316(r10)
+	stw r12, 320(r10)
+	stw r12, 324(r10)
+	stw r11, 328(r10)
+	stw r11, 332(r10)
+	stw r11, 336(r10)
+	stw r11, 340(r10)
+	stw r11, 344(r10)
+	stw r12, 348(r10)
+	stw r12, 352(r10)
+	stw r12, 356(r10)
+	stw r11, 360(r10)
+	stw r11, 364(r10)
+	stw r11, 368(r10)
+	stw r12, 372(r10)
+	stw r11, 376(r10)
+	stw r11, 380(r10)
+	stw r12, 384(r10)
+	stw r11, 388(r10)
+	stw r11, 392(r10)
+	stw r11, 396(r10)
+	stw r11, 400(r10)
+	stw r12, 404(r10)
+	stw r12, 408(r10)
+	stw r12, 412(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r11, 136(r10)
+	stw r11, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r12, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+	stw r12, 288(r10)
+	stw r12, 292(r10)
+	stw r12, 296(r10)
+	stw r12, 300(r10)
+	stw r12, 304(r10)
+	stw r12, 308(r10)
+	stw r12, 312(r10)
+	stw r12, 316(r10)
+	stw r12, 320(r10)
+	stw r12, 324(r10)
+	stw r12, 328(r10)
+	stw r12, 332(r10)
+	stw r12, 336(r10)
+	stw r12, 340(r10)
+	stw r12, 344(r10)
+	stw r12, 348(r10)
+	stw r12, 352(r10)
+	stw r12, 356(r10)
+	stw r12, 360(r10)
+	stw r12, 364(r10)
+	stw r12, 368(r10)
+	stw r12, 372(r10)
+	stw r12, 376(r10)
+	stw r12, 380(r10)
+	stw r12, 384(r10)
+	stw r12, 388(r10)
+	stw r12, 392(r10)
+	stw r12, 396(r10)
+	stw r12, 400(r10)
+	stw r12, 404(r10)
+	stw r12, 408(r10)
+	stw r12, 412(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r11, 100(r10)
+	stw r11, 104(r10)
+	stw r11, 108(r10)
+	stw r11, 112(r10)
+	stw r11, 116(r10)
+	stw r11, 120(r10)
+	stw r11, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r11, 136(r10)
+	stw r11, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r11, 228(r10)
+	stw r11, 232(r10)
+	stw r11, 236(r10)
+	stw r11, 240(r10)
+	stw r11, 244(r10)
+	stw r11, 248(r10)
+	stw r11, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r12, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+	stw r12, 288(r10)
+	stw r12, 292(r10)
+	stw r12, 296(r10)
+	stw r12, 300(r10)
+	stw r12, 304(r10)
+	stw r12, 308(r10)
+	stw r12, 312(r10)
+	stw r12, 316(r10)
+	stw r12, 320(r10)
+	stw r12, 324(r10)
+	stw r12, 328(r10)
+	stw r12, 332(r10)
+	stw r12, 336(r10)
+	stw r12, 340(r10)
+	stw r12, 344(r10)
+	stw r12, 348(r10)
+	stw r12, 352(r10)
+	stw r12, 356(r10)
+	stw r12, 360(r10)
+	stw r12, 364(r10)
+	stw r12, 368(r10)
+	stw r12, 372(r10)
+	stw r12, 376(r10)
+	stw r12, 380(r10)
+	stw r12, 384(r10)
+	stw r12, 388(r10)
+	stw r12, 392(r10)
+	stw r12, 396(r10)
+	stw r12, 400(r10)
+	stw r12, 404(r10)
+	stw r12, 408(r10)
+	stw r12, 412(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r11, 132(r10)
+	stw r11, 136(r10)
+	stw r11, 140(r10)
+	stw r11, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r12, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+	stw r12, 288(r10)
+	stw r12, 292(r10)
+	stw r12, 296(r10)
+	stw r12, 300(r10)
+	stw r12, 304(r10)
+	stw r12, 308(r10)
+	stw r12, 312(r10)
+	stw r12, 316(r10)
+	stw r12, 320(r10)
+	stw r12, 324(r10)
+	stw r12, 328(r10)
+	stw r12, 332(r10)
+	stw r12, 336(r10)
+	stw r12, 340(r10)
+	stw r12, 344(r10)
+	stw r12, 348(r10)
+	stw r12, 352(r10)
+	stw r12, 356(r10)
+	stw r12, 360(r10)
+	stw r12, 364(r10)
+	stw r12, 368(r10)
+	stw r12, 372(r10)
+	stw r12, 376(r10)
+	stw r12, 380(r10)
+	stw r12, 384(r10)
+	stw r12, 388(r10)
+	stw r12, 392(r10)
+	stw r12, 396(r10)
+	stw r12, 400(r10)
+	stw r12, 404(r10)
+	stw r12, 408(r10)
+	stw r12, 412(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	stw r12, 256(r10)
+	stw r12, 260(r10)
+	stw r12, 264(r10)
+	stw r12, 268(r10)
+	stw r12, 272(r10)
+	stw r12, 276(r10)
+	stw r12, 280(r10)
+	stw r12, 284(r10)
+	stw r12, 288(r10)
+	stw r12, 292(r10)
+	stw r12, 296(r10)
+	stw r12, 300(r10)
+	stw r12, 304(r10)
+	stw r12, 308(r10)
+	stw r12, 312(r10)
+	stw r12, 316(r10)
+	stw r12, 320(r10)
+	stw r12, 324(r10)
+	stw r12, 328(r10)
+	stw r12, 332(r10)
+	stw r12, 336(r10)
+	stw r12, 340(r10)
+	stw r12, 344(r10)
+	stw r12, 348(r10)
+	stw r12, 352(r10)
+	stw r12, 356(r10)
+	stw r12, 360(r10)
+	stw r12, 364(r10)
+	stw r12, 368(r10)
+	stw r12, 372(r10)
+	stw r12, 376(r10)
+	stw r12, 380(r10)
+	stw r12, 384(r10)
+	stw r12, 388(r10)
+	stw r12, 392(r10)
+	stw r12, 396(r10)
+	stw r12, 400(r10)
+	stw r12, 404(r10)
+	stw r12, 408(r10)
+	stw r12, 412(r10)
+#endif
+.endm
+
+.macro DEBUG_bat_mask
+#ifdef CONFIG_DEBUG
+	
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r11, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r11, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r11, 228(r10)
+	stw r11, 232(r10)
+	stw r11, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r11, 76(r10)
+	stw r11, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r11, 232(r10)
+	stw r11, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r11, 76(r10)
+	stw r11, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r11, 232(r10)
+	stw r11, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r11, 16(r10)
+	stw r11, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r11, 48(r10)
+	stw r11, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r11, 68(r10)
+	stw r11, 72(r10)
+	stw r11, 76(r10)
+	stw r11, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r11, 132(r10)
+	stw r11, 136(r10)
+	stw r11, 140(r10)
+	stw r12, 144(r10)
+	stw r11, 148(r10)
+	stw r11, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r11, 168(r10)
+	stw r11, 172(r10)
+	stw r11, 176(r10)
+	stw r11, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r11, 200(r10)
+	stw r11, 204(r10)
+	stw r11, 208(r10)
+	stw r11, 212(r10)
+	stw r11, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r11, 232(r10)
+	stw r11, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r11, 248(r10)
+	stw r11, 252(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r12, 16(r10)
+	stw r11, 20(r10)
+	stw r11, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r11, 52(r10)
+	stw r11, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r11, 76(r10)
+	stw r11, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r11, 132(r10)
+	stw r11, 136(r10)
+	stw r11, 140(r10)
+	stw r11, 144(r10)
+	stw r11, 148(r10)
+	stw r11, 152(r10)
+	stw r11, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r11, 180(r10)
+	stw r11, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r11, 196(r10)
+	stw r11, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r11, 216(r10)
+	stw r11, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r11, 232(r10)
+	stw r11, 236(r10)
+	stw r12, 240(r10)
+	stw r11, 244(r10)
+	stw r11, 248(r10)
+	stw r12, 252(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r11, 24(r10)
+	stw r11, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r11, 48(r10)
+	stw r11, 52(r10)
+	stw r11, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r11, 76(r10)
+	stw r11, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r11, 132(r10)
+	stw r11, 136(r10)
+	stw r12, 140(r10)
+	stw r11, 144(r10)
+	stw r12, 148(r10)
+	stw r11, 152(r10)
+	stw r11, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r11, 168(r10)
+	stw r11, 172(r10)
+	stw r11, 176(r10)
+	stw r11, 180(r10)
+	stw r11, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r11, 200(r10)
+	stw r11, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r11, 232(r10)
+	stw r11, 236(r10)
+	stw r11, 240(r10)
+	stw r11, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r11, 24(r10)
+	stw r11, 28(r10)
+	stw r12, 32(r10)
+	stw r11, 36(r10)
+	stw r11, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r11, 52(r10)
+	stw r11, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r11, 76(r10)
+	stw r11, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r11, 132(r10)
+	stw r11, 136(r10)
+	stw r12, 140(r10)
+	stw r11, 144(r10)
+	stw r12, 148(r10)
+	stw r11, 152(r10)
+	stw r11, 156(r10)
+	stw r12, 160(r10)
+	stw r11, 164(r10)
+	stw r11, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r11, 180(r10)
+	stw r11, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r11, 204(r10)
+	stw r11, 208(r10)
+	stw r11, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r11, 232(r10)
+	stw r11, 236(r10)
+	stw r11, 240(r10)
+	stw r11, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r11, 24(r10)
+	stw r11, 28(r10)
+	stw r12, 32(r10)
+	stw r11, 36(r10)
+	stw r11, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r11, 52(r10)
+	stw r11, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r11, 76(r10)
+	stw r11, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r11, 132(r10)
+	stw r11, 136(r10)
+	stw r12, 140(r10)
+	stw r11, 144(r10)
+	stw r12, 148(r10)
+	stw r11, 152(r10)
+	stw r11, 156(r10)
+	stw r12, 160(r10)
+	stw r11, 164(r10)
+	stw r11, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r11, 180(r10)
+	stw r11, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r11, 212(r10)
+	stw r11, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r11, 232(r10)
+	stw r11, 236(r10)
+	stw r12, 240(r10)
+	stw r11, 244(r10)
+	stw r11, 248(r10)
+	stw r12, 252(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r11, 24(r10)
+	stw r11, 28(r10)
+	stw r12, 32(r10)
+	stw r11, 36(r10)
+	stw r11, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r11, 52(r10)
+	stw r11, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r11, 76(r10)
+	stw r11, 80(r10)
+	stw r12, 84(r10)
+	stw r11, 88(r10)
+	stw r11, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r11, 132(r10)
+	stw r11, 136(r10)
+	stw r12, 140(r10)
+	stw r11, 144(r10)
+	stw r12, 148(r10)
+	stw r11, 152(r10)
+	stw r11, 156(r10)
+	stw r12, 160(r10)
+	stw r11, 164(r10)
+	stw r11, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r11, 180(r10)
+	stw r11, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r11, 196(r10)
+	stw r11, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r11, 216(r10)
+	stw r11, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r11, 232(r10)
+	stw r11, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r11, 248(r10)
+	stw r11, 252(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r11, 8(r10)
+	stw r11, 12(r10)
+	stw r11, 16(r10)
+	stw r11, 20(r10)
+	stw r11, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r11, 40(r10)
+	stw r11, 44(r10)
+	stw r11, 48(r10)
+	stw r12, 52(r10)
+	stw r11, 56(r10)
+	stw r11, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r11, 80(r10)
+	stw r11, 84(r10)
+	stw r11, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r11, 132(r10)
+	stw r11, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r11, 152(r10)
+	stw r11, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r11, 168(r10)
+	stw r11, 172(r10)
+	stw r11, 176(r10)
+	stw r12, 180(r10)
+	stw r11, 184(r10)
+	stw r11, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r11, 200(r10)
+	stw r11, 204(r10)
+	stw r11, 208(r10)
+	stw r11, 212(r10)
+	stw r11, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r11, 228(r10)
+	stw r11, 232(r10)
+	stw r11, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r11, 248(r10)
+	stw r11, 252(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r11, 100(r10)
+	stw r11, 104(r10)
+	stw r11, 108(r10)
+	stw r11, 112(r10)
+	stw r11, 116(r10)
+	stw r11, 120(r10)
+	stw r11, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+	
+	add r10, r10, r9
+	stw r12, 0(r10)
+	stw r12, 4(r10)
+	stw r12, 8(r10)
+	stw r12, 12(r10)
+	stw r12, 16(r10)
+	stw r12, 20(r10)
+	stw r12, 24(r10)
+	stw r12, 28(r10)
+	stw r12, 32(r10)
+	stw r12, 36(r10)
+	stw r12, 40(r10)
+	stw r12, 44(r10)
+	stw r12, 48(r10)
+	stw r12, 52(r10)
+	stw r12, 56(r10)
+	stw r12, 60(r10)
+	stw r12, 64(r10)
+	stw r12, 68(r10)
+	stw r12, 72(r10)
+	stw r12, 76(r10)
+	stw r12, 80(r10)
+	stw r12, 84(r10)
+	stw r12, 88(r10)
+	stw r12, 92(r10)
+	stw r12, 96(r10)
+	stw r12, 100(r10)
+	stw r12, 104(r10)
+	stw r12, 108(r10)
+	stw r12, 112(r10)
+	stw r12, 116(r10)
+	stw r12, 120(r10)
+	stw r12, 124(r10)
+	stw r12, 128(r10)
+	stw r12, 132(r10)
+	stw r12, 136(r10)
+	stw r12, 140(r10)
+	stw r12, 144(r10)
+	stw r12, 148(r10)
+	stw r12, 152(r10)
+	stw r12, 156(r10)
+	stw r12, 160(r10)
+	stw r12, 164(r10)
+	stw r12, 168(r10)
+	stw r12, 172(r10)
+	stw r12, 176(r10)
+	stw r12, 180(r10)
+	stw r12, 184(r10)
+	stw r12, 188(r10)
+	stw r12, 192(r10)
+	stw r12, 196(r10)
+	stw r12, 200(r10)
+	stw r12, 204(r10)
+	stw r12, 208(r10)
+	stw r12, 212(r10)
+	stw r12, 216(r10)
+	stw r12, 220(r10)
+	stw r12, 224(r10)
+	stw r12, 228(r10)
+	stw r12, 232(r10)
+	stw r12, 236(r10)
+	stw r12, 240(r10)
+	stw r12, 244(r10)
+	stw r12, 248(r10)
+	stw r12, 252(r10)
+#endif
+.endm
Index: boot/arch/ppc64/loader/main.c
===================================================================
--- boot/arch/ppc64/loader/main.c	(revision fcf907e132925e88117f57b22cfbc44d5c2dafa3)
+++ boot/arch/ppc64/loader/main.c	(revision 3de8b81bc7884257542347042ecf0ec7c3a23e45)
@@ -32,4 +32,5 @@
 #include "_components.h"
 #include <ofw.h>
+#include <align.h>
 
 #define HEAP_GAP 1024000
@@ -102,6 +103,12 @@
 	}
 	
+	if (!ofw_keyboard(&bootinfo.keyboard)) {
+		printf("Error: unable to get keyboard properties, halting.\n");
+		halt();
+	}
+	
 	printf("\nDevice statistics\n");
 	printf(" screen at %L, resolution %dx%d, %d bpp (scanline %d bytes)\n", bootinfo.screen.addr, bootinfo.screen.width, bootinfo.screen.height, bootinfo.screen.bpp, bootinfo.screen.scanline);
+	printf(" keyboard at %L (size %d bytes)\n", bootinfo.keyboard.addr, bootinfo.keyboard.size);
 	
 	void *real_mode_pa = ofw_translate(&real_mode);
@@ -152,4 +159,4 @@
 	
 	printf("\nBooting the kernel...\n");
-	jump_to_kernel(bootinfo_pa, sizeof(bootinfo), trans_pa, pages << PAGE_WIDTH, real_mode_pa);
+	jump_to_kernel(bootinfo_pa, sizeof(bootinfo), trans_pa, pages << PAGE_WIDTH, real_mode_pa, (void *) bootinfo.screen.addr, bootinfo.screen.scanline);
 }
Index: boot/arch/ppc64/loader/main.h
===================================================================
--- boot/arch/ppc64/loader/main.h	(revision fcf907e132925e88117f57b22cfbc44d5c2dafa3)
+++ boot/arch/ppc64/loader/main.h	(revision 3de8b81bc7884257542347042ecf0ec7c3a23e45)
@@ -30,5 +30,5 @@
 #define BOOT_ppc64_MAIN_H_
 
-#include <ofw.h>
+#include "ofw.h"
 
 #define TASKMAP_MAX_RECORDS 32
@@ -40,12 +40,13 @@
 
 typedef struct {
-	unsigned int count;
+	unsigned long count;
 	task_t tasks[TASKMAP_MAX_RECORDS];
 } taskmap_t;
 
 typedef struct {
+	memmap_t memmap;
 	taskmap_t taskmap;
-	memmap_t memmap;
 	screen_t screen;
+	keyboard_t keyboard;
 } bootinfo_t;
 
Index: boot/arch/ppc64/loader/ofwarch.c
===================================================================
--- boot/arch/ppc64/loader/ofwarch.c	(revision fcf907e132925e88117f57b22cfbc44d5c2dafa3)
+++ boot/arch/ppc64/loader/ofwarch.c	(revision 3de8b81bc7884257542347042ecf0ec7c3a23e45)
@@ -57,5 +57,5 @@
 	if (ofw_get_property(device, "assigned-addresses", &macio, sizeof(macio)) <= 0)
 		return false;
-	keyboard->addr = (void *) macio.addr.addr_lo;
+	keyboard->addr = (void *) (((unsigned long) macio.addr.addr_lo) | (((unsigned long) macio.addr.addr_hi) << 32));
 	keyboard->size = macio.size_lo;
 
