[PATCH v2] powerpc: slightly improve cache helpers

Nathan Chancellor natechancellor at gmail.com
Sun Jul 21 17:58:46 AEST 2019


On Fri, Jul 19, 2019 at 09:04:55AM -0700, Nathan Chancellor wrote:
> On Fri, Jul 19, 2019 at 10:23:03AM -0500, Segher Boessenkool wrote:
> > On Thu, Jul 18, 2019 at 08:24:56PM -0700, Nathan Chancellor wrote:
> > > On Mon, Jul 08, 2019 at 11:49:52PM -0700, Nathan Chancellor wrote:
> > > > On Tue, Jul 09, 2019 at 07:04:43AM +0200, Christophe Leroy wrote:
> > > > > Is that a Clang bug ?
> > > > 
> > > > No idea, it happens with clang-8 and clang-9 though (pretty sure there
> > > > were fixes for PowerPC in clang-8 so something before it probably won't
> > > > work but I haven't tried).
> > > > 
> > > > > 
> > > > > Do you have a disassembly of the code both with and without this patch in
> > > > > order to compare ?
> > > > 
> > > > I can give you whatever disassembly you want (or I can upload the raw
> > > > files if that is easier).
> > > 
> > > What disassembly/files did you need to start taking a look at this? I
> > > can upload/send whatever you need.
> > 
> > A before and after of *only this patch*.  And then look at what changed;
> > it maybe be obvious what is the problem to you, as well, so look at it
> > yourself first?
> > 
> > 
> > Segher

Hi Segher,

Looks like the problematic function is dcbz, as there is no segfault
when only that function is reverted to a
pre-6c5875843b87c3adea2beade9d1b8b3d4523900a state.

I was able to expose a singular problematic callsite using the attached
patch (let me know if that is insufficient).

I have attached the disassembly of arch/powerpc/kernel/mem.o with
clear_page (working) and broken_clear_page (broken), along with the side
by side diff. My assembly knowledge is fairly limited as it stands and
it is certainly not up to snuff on PowerPC so I have no idea what I am
looking for. Please let me know if anything immediately looks off or if
there is anything else I can do to help out.

Cheers,
Nathan
-------------- next part --------------
>From 3d7f79f7601c312d47245141185bea7defffffa4 Mon Sep 17 00:00:00 2001
From: Nathan Chancellor <natechancellor at gmail.com>
Date: Sat, 20 Jul 2019 23:37:55 -0700
Subject: [PATCH] powerpc: Test broken dcbz

Signed-off-by: Nathan Chancellor <natechancellor at gmail.com>
---
 arch/powerpc/include/asm/cache.h   |  2 +-
 arch/powerpc/include/asm/page_32.h | 13 +++++++++++++
 arch/powerpc/mm/mem.c              |  2 +-
 3 files changed, 15 insertions(+), 2 deletions(-)

diff --git a/arch/powerpc/include/asm/cache.h b/arch/powerpc/include/asm/cache.h
index b3388d95f451..ba76291b4d4d 100644
--- a/arch/powerpc/include/asm/cache.h
+++ b/arch/powerpc/include/asm/cache.h
@@ -107,7 +107,7 @@ extern void _set_L3CR(unsigned long);
 
 static inline void dcbz(void *addr)
 {
-	__asm__ __volatile__ ("dcbz %y0" : : "Z"(*(u8 *)addr) : "memory");
+	__asm__ __volatile__ ("dcbz 0, %0" : : "r"(addr) : "memory");
 }
 
 static inline void dcbi(void *addr)
diff --git a/arch/powerpc/include/asm/page_32.h b/arch/powerpc/include/asm/page_32.h
index 683dfbc67ca8..125c2ba7cd79 100644
--- a/arch/powerpc/include/asm/page_32.h
+++ b/arch/powerpc/include/asm/page_32.h
@@ -40,6 +40,19 @@ typedef unsigned long long pte_basic_t;
 typedef unsigned long pte_basic_t;
 #endif
 
+static inline void broken_dcbz(void *addr)
+{
+	__asm__ __volatile__ ("dcbz %y0" : : "Z"(*(u8 *)addr) : "memory");
+}
+
+static inline void broken_clear_page(void *addr)
+{
+	unsigned int i;
+
+	for (i = 0; i < PAGE_SIZE / L1_CACHE_BYTES; i++, addr += L1_CACHE_BYTES)
+		broken_dcbz(addr);
+}
+
 /*
  * Clear page using the dcbz instruction, which doesn't cause any
  * memory traffic (except to write out any cache lines which get
diff --git a/arch/powerpc/mm/mem.c b/arch/powerpc/mm/mem.c
index 9259337d7374..7bb88e7a2e4c 100644
--- a/arch/powerpc/mm/mem.c
+++ b/arch/powerpc/mm/mem.c
@@ -361,7 +361,7 @@ EXPORT_SYMBOL(flush_dcache_icache_page);
 
 void clear_user_page(void *page, unsigned long vaddr, struct page *pg)
 {
-	clear_page(page);
+	broken_clear_page(page);
 
 	/*
 	 * We shouldn't have to do this, but some versions of glibc
-- 
2.22.0

-------------- next part --------------

mem-working.o:	file format ELF32-ppc


Disassembly of section .text:

00000000 phys_mem_access_prot:
       0: 7c 08 02 a6                  	mflr 0
       4: 90 01 00 04                  	stw 0, 4(1)
       8: 94 21 ff e0                  	stwu 1, -32(1)
       c: 93 a1 00 14                  	stw 29, 20(1)
      10: 7c fd 3b 78                  	mr 29, 7
      14: 3c e0 00 00                  	lis 7, 0
      18: 38 e7 00 00                  	addi 7, 7, 0
      1c: 81 07 00 a0                  	lwz 8, 160(7)
      20: 93 c1 00 18                  	stw 30, 24(1)
      24: 28 08 00 00                  	cmplwi	8, 0
      28: 7c 7e 1b 78                  	mr 30, 3
      2c: 41 82 00 20                  	bt	2, .+32
      30: 80 7d 00 00                  	lwz 3, 0(29)
      34: 38 e1 00 08                  	addi 7, 1, 8
      38: 7d 09 03 a6                  	mtctr 8
      3c: 90 61 00 08                  	stw 3, 8(1)
      40: 7f c3 f3 78                  	mr 3, 30
      44: 4e 80 04 21                  	bctrl
      48: 48 00 00 28                  	b .+40
      4c: 7c a3 2b 78                  	mr 3, 5
      50: 48 00 00 01                  	bl .+0
      54: 28 03 00 00                  	cmplwi	3, 0
      58: 80 7d 00 00                  	lwz 3, 0(29)
      5c: 40 82 00 10                  	bf	2, .+16
      60: 54 63 06 26                  	rlwinm 3, 3, 0, 24, 19
      64: 60 63 05 00                  	ori 3, 3, 1280
      68: 90 7d 00 00                  	stw 3, 0(29)
      6c: 90 7e 00 00                  	stw 3, 0(30)
      70: 83 c1 00 18                  	lwz 30, 24(1)
      74: 83 a1 00 14                  	lwz 29, 20(1)
      78: 80 01 00 24                  	lwz 0, 36(1)
      7c: 38 21 00 20                  	addi 1, 1, 32
      80: 7c 08 03 a6                  	mtlr 0
      84: 4e 80 00 20                  	blr

00000088 free_initmem:
      88: 7c 08 02 a6                  	mflr 0
      8c: 90 01 00 04                  	stw 0, 4(1)
      90: 94 21 ff f0                  	stwu 1, -16(1)
      94: 3c 60 00 00                  	lis 3, 0
      98: 3c 80 00 00                  	lis 4, 0
      9c: 38 63 00 00                  	addi 3, 3, 0
      a0: 38 84 00 00                  	addi 4, 4, 0
      a4: 90 83 00 60                  	stw 4, 96(3)
      a8: 48 00 00 01                  	bl .+0
      ac: 3c 60 00 00                  	lis 3, 0
      b0: 38 80 00 01                  	li 4, 1
      b4: 98 83 00 00                  	stb 4, 0(3)
      b8: 3c 60 00 00                  	lis 3, 0
      bc: 3c 80 00 00                  	lis 4, 0
      c0: 3c a0 00 00                  	lis 5, 0
      c4: 38 63 00 00                  	addi 3, 3, 0
      c8: 38 84 00 00                  	addi 4, 4, 0
      cc: 38 c5 00 00                  	addi 6, 5, 0
      d0: 38 a0 00 cc                  	li 5, 204
      d4: 48 00 00 01                  	bl .+0
      d8: 80 01 00 14                  	lwz 0, 20(1)
      dc: 38 21 00 10                  	addi 1, 1, 16
      e0: 7c 08 03 a6                  	mtlr 0
      e4: 4e 80 00 20                  	blr

000000e8 flush_dcache_page:
      e8: 80 83 00 00                  	lwz 4, 0(3)
      ec: 70 84 08 00                  	andi. 4, 4, 2048
      f0: 4d 82 00 20                  	bclr	12, 2
      f4: 38 80 08 00                  	li 4, 2048
      f8: 7c a0 18 28                  	lwarx 5, 0, 3
      fc: 7c a5 20 78                  	andc 5, 5, 4
     100: 7c a0 19 2d                  	stwcx. 5, 0, 3
     104: 40 a2 ff f4                  	bc 5, 2, .+65524
     108: 4e 80 00 20                  	blr

0000010c flush_dcache_icache_page:
     10c: 7c 08 02 a6                  	mflr 0
     110: 90 01 00 04                  	stw 0, 4(1)
     114: 94 21 ff f0                  	stwu 1, -16(1)
     118: 80 82 00 00                  	lwz 4, 0(2)
     11c: 38 84 00 01                  	addi 4, 4, 1
     120: 90 82 00 00                  	stw 4, 0(2)
     124: 80 82 0a e4                  	lwz 4, 2788(2)
     128: 38 84 00 01                  	addi 4, 4, 1
     12c: 90 82 0a e4                  	stw 4, 2788(2)
     130: 3c 80 00 00                  	lis 4, 0
     134: 80 84 00 00                  	lwz 4, 0(4)
     138: 7c 64 18 50                  	subf 3, 4, 3
     13c: 3c 80 cc cc                  	lis 4, -13108
     140: 54 63 e8 fe                  	srwi 3, 3, 3
     144: 60 84 d0 00                  	ori 4, 4, 53248
     148: 7c 63 21 d6                  	mullw 3, 3, 4
     14c: 3c 63 c0 00                  	addis 3, 3, -16384
     150: 48 00 00 01                  	bl .+0
     154: 80 62 0a e4                  	lwz 3, 2788(2)
     158: 38 63 ff ff                  	addi 3, 3, -1
     15c: 90 62 0a e4                  	stw 3, 2788(2)
     160: 80 62 00 00                  	lwz 3, 0(2)
     164: 38 63 ff ff                  	addi 3, 3, -1
     168: 90 62 00 00                  	stw 3, 0(2)
     16c: 80 01 00 14                  	lwz 0, 20(1)
     170: 38 21 00 10                  	addi 1, 1, 16
     174: 7c 08 03 a6                  	mtlr 0
     178: 4e 80 00 20                  	blr

0000017c clear_user_page:
     17c: 38 80 00 80                  	li 4, 128
     180: 7c 89 03 a6                  	mtctr 4
     184: 7c 00 1f ec                  	dcbz 0, 3
     188: 38 63 00 20                  	addi 3, 3, 32
     18c: 42 00 ff f8                  	bdnz .+65528
     190: 80 65 00 00                  	lwz 3, 0(5)
     194: 70 63 08 00                  	andi. 3, 3, 2048
     198: 4d 82 00 20                  	bclr	12, 2
     19c: 38 60 08 00                  	li 3, 2048
     1a0: 7c 80 28 28                  	lwarx 4, 0, 5
     1a4: 7c 84 18 78                  	andc 4, 4, 3
     1a8: 7c 80 29 2d                  	stwcx. 4, 0, 5
     1ac: 40 a2 ff f4                  	bc 5, 2, .+65524
     1b0: 4e 80 00 20                  	blr

000001b4 copy_user_page:
     1b4: 7c 08 02 a6                  	mflr 0
     1b8: 90 01 00 04                  	stw 0, 4(1)
     1bc: 94 21 ff f0                  	stwu 1, -16(1)
     1c0: 93 c1 00 08                  	stw 30, 8(1)
     1c4: 7c de 33 78                  	mr 30, 6
     1c8: 48 00 00 01                  	bl .+0
     1cc: 80 7e 00 00                  	lwz 3, 0(30)
     1d0: 70 63 08 00                  	andi. 3, 3, 2048
     1d4: 41 82 00 18                  	bt	2, .+24
     1d8: 38 60 08 00                  	li 3, 2048
     1dc: 7c 80 f0 28                  	lwarx 4, 0, 30
     1e0: 7c 84 18 78                  	andc 4, 4, 3
     1e4: 7c 80 f1 2d                  	stwcx. 4, 0, 30
     1e8: 40 a2 ff f4                  	bc 5, 2, .+65524
     1ec: 83 c1 00 08                  	lwz 30, 8(1)
     1f0: 80 01 00 14                  	lwz 0, 20(1)
     1f4: 38 21 00 10                  	addi 1, 1, 16
     1f8: 7c 08 03 a6                  	mtlr 0
     1fc: 4e 80 00 20                  	blr

00000200 flush_icache_user_range:
     200: 7c 08 02 a6                  	mflr 0
     204: 90 01 00 04                  	stw 0, 4(1)
     208: 94 21 ff e0                  	stwu 1, -32(1)
     20c: 3c 60 00 00                  	lis 3, 0
     210: 93 81 00 10                  	stw 28, 16(1)
     214: 7c 9c 23 78                  	mr 28, 4
     218: 38 63 00 00                  	addi 3, 3, 0
     21c: 38 80 00 53                  	li 4, 83
     220: 93 a1 00 14                  	stw 29, 20(1)
     224: 7c bd 2b 78                  	mr 29, 5
     228: 38 a0 00 00                  	li 5, 0
     22c: 93 c1 00 18                  	stw 30, 24(1)
     230: 7c de 33 78                  	mr 30, 6
     234: 48 00 00 01                  	bl .+0
     238: 3c 60 00 00                  	lis 3, 0
     23c: 3c 80 cc cc                  	lis 4, -13108
     240: 80 63 00 00                  	lwz 3, 0(3)
     244: 60 84 d0 00                  	ori 4, 4, 53248
     248: 7c 63 e0 50                  	subf 3, 3, 28
     24c: 54 63 e8 fe                  	srwi 3, 3, 3
     250: 7c 63 21 d6                  	mullw 3, 3, 4
     254: 57 a4 05 3e                  	clrlwi	4, 29, 20
     258: 50 64 00 26                  	rlwimi 4, 3, 0, 0, 19
     25c: 3c 64 c0 00                  	addis 3, 4, -16384
     260: 7c 83 f2 14                  	add 4, 3, 30
     264: 48 00 00 01                  	bl .+0
     268: 83 c1 00 18                  	lwz 30, 24(1)
     26c: 83 a1 00 14                  	lwz 29, 20(1)
     270: 83 81 00 10                  	lwz 28, 16(1)
     274: 80 01 00 24                  	lwz 0, 36(1)
     278: 38 21 00 20                  	addi 1, 1, 32
     27c: 7c 08 03 a6                  	mtlr 0
     280: 4e 80 00 20                  	blr

00000284 update_mmu_cache:
     284: 4e 80 00 20                  	blr

00000288 devmem_is_allowed:
     288: 7c 08 02 a6                  	mflr 0
     28c: 90 01 00 04                  	stw 0, 4(1)
     290: 94 21 ff f0                  	stwu 1, -16(1)
     294: 93 c1 00 08                  	stw 30, 8(1)
     298: 7c 7e 1b 78                  	mr 30, 3
     29c: 54 63 65 3e                  	srwi 3, 3, 20
     2a0: 57 c4 60 26                  	slwi 4, 30, 12
     2a4: 48 00 00 01                  	bl .+0
     2a8: 70 63 00 01                  	andi. 3, 3, 1
     2ac: 38 60 00 00                  	li 3, 0
     2b0: 41 81 00 14                  	bt	1, .+20
     2b4: 7f c3 f3 78                  	mr 3, 30
     2b8: 48 00 00 01                  	bl .+0
     2bc: 7c 63 00 34                  	cntlzw	3, 3
     2c0: 54 63 df fe                  	rlwinm 3, 3, 27, 31, 31
     2c4: 83 c1 00 08                  	lwz 30, 8(1)
     2c8: 80 01 00 14                  	lwz 0, 20(1)
     2cc: 38 21 00 10                  	addi 1, 1, 16
     2d0: 7c 08 03 a6                  	mtlr 0
     2d4: 4e 80 00 20                  	blr

Disassembly of section .init.text:

00000000 mem_topology_setup:
       0: 7c 08 02 a6                  	mflr 0
       4: 90 01 00 04                  	stw 0, 4(1)
       8: 94 21 ff f0                  	stwu 1, -16(1)
       c: 48 00 00 01                  	bl .+0
      10: 54 84 a0 3e                  	rotlwi	4, 4, 20
      14: 3c a0 00 00                  	lis 5, 0
      18: 50 64 a0 16                  	rlwimi 4, 3, 20, 0, 11
      1c: 3c 60 00 00                  	lis 3, 0
      20: 90 85 00 00                  	stw 4, 0(5)
      24: 38 a0 ff ff                  	li 5, -1
      28: 90 83 00 00                  	stw 4, 0(3)
      2c: 3c 60 00 00                  	lis 3, 0
      30: 38 80 00 00                  	li 4, 0
      34: 38 c0 ff ff                  	li 6, -1
      38: 39 00 00 00                  	li 8, 0
      3c: 90 83 00 00                  	stw 4, 0(3)
      40: 3c 60 00 00                  	lis 3, 0
      44: 38 80 00 00                  	li 4, 0
      48: 38 63 00 00                  	addi 3, 3, 0
      4c: 38 e3 00 10                  	addi 7, 3, 16
      50: 38 60 00 00                  	li 3, 0
      54: 48 00 00 01                  	bl .+0
      58: 80 01 00 14                  	lwz 0, 20(1)
      5c: 38 21 00 10                  	addi 1, 1, 16
      60: 7c 08 03 a6                  	mtlr 0
      64: 4e 80 00 20                  	blr

00000068 initmem_init:
      68: 7c 08 02 a6                  	mflr 0
      6c: 90 01 00 04                  	stw 0, 4(1)
      70: 94 21 ff f0                  	stwu 1, -16(1)
      74: 38 60 00 00                  	li 3, 0
      78: 48 00 00 01                  	bl .+0
      7c: 80 01 00 14                  	lwz 0, 20(1)
      80: 38 21 00 10                  	addi 1, 1, 16
      84: 7c 08 03 a6                  	mtlr 0
      88: 4e 80 00 20                  	blr

0000008c paging_init:
      8c: 7c 08 02 a6                  	mflr 0
      90: 90 01 00 04                  	stw 0, 4(1)
      94: 94 21 ff d0                  	stwu 1, -48(1)
      98: 93 21 00 14                  	stw 25, 20(1)
      9c: 93 41 00 18                  	stw 26, 24(1)
      a0: 93 61 00 1c                  	stw 27, 28(1)
      a4: 93 81 00 20                  	stw 28, 32(1)
      a8: 93 a1 00 24                  	stw 29, 36(1)
      ac: 93 c1 00 28                  	stw 30, 40(1)
      b0: 48 00 00 01                  	bl .+0
      b4: 7c 7e 1b 78                  	mr 30, 3
      b8: 7c 9d 23 78                  	mr 29, 4
      bc: 3f 40 ff fe                  	lis 26, -2
      c0: 48 00 00 01                  	bl .+0
      c4: 7c 7c 1b 78                  	mr 28, 3
      c8: 7c 9b 23 78                  	mr 27, 4
      cc: 3b 20 00 00                  	li 25, 0
      d0: 38 e1 00 08                  	addi 7, 1, 8
      d4: 7f 43 d3 78                  	mr 3, 26
      d8: 93 21 00 10                  	stw 25, 16(1)
      dc: 38 a0 00 00                  	li 5, 0
      e0: 38 c0 00 00                  	li 6, 0
      e4: 93 21 00 08                  	stw 25, 8(1)
      e8: 48 00 00 01                  	bl .+0
      ec: 3b 5a 10 00                  	addi 26, 26, 4096
      f0: 2c 1a f0 00                  	cmpwi	26, -4096
      f4: 40 82 ff dc                  	bf	2, .+65500
      f8: 3c 60 00 00                  	lis 3, 0
      fc: 4c c6 31 82                  	crclr	6
     100: 7f 85 e3 78                  	mr 5, 28
     104: 38 63 00 00                  	addi 3, 3, 0
     108: 7f 66 db 78                  	mr 6, 27
     10c: 7f c7 f3 78                  	mr 7, 30
     110: 7f a8 eb 78                  	mr 8, 29
     114: 48 00 00 01                  	bl .+0
     118: 7c 7d d8 10                  	subfc 3, 29, 27
     11c: 4c c6 31 82                  	crclr	6
     120: 7c be e1 10                  	subfe 5, 30, 28
     124: 54 64 60 3e                  	rotlwi	4, 3, 12
     128: 3c 60 00 00                  	lis 3, 0
     12c: 50 a4 60 26                  	rlwimi 4, 5, 12, 0, 19
     130: 38 63 00 00                  	addi 3, 3, 0
     134: 48 00 00 01                  	bl .+0
     138: 3c 60 00 00                  	lis 3, 0
     13c: 80 83 00 00                  	lwz 4, 0(3)
     140: 3c 60 00 00                  	lis 3, 0
     144: 94 83 00 00                  	stwu 4, 0(3)
     148: 48 00 00 01                  	bl .+0
     14c: 83 c1 00 28                  	lwz 30, 40(1)
     150: 83 a1 00 24                  	lwz 29, 36(1)
     154: 83 81 00 20                  	lwz 28, 32(1)
     158: 83 61 00 1c                  	lwz 27, 28(1)
     15c: 83 41 00 18                  	lwz 26, 24(1)
     160: 83 21 00 14                  	lwz 25, 20(1)
     164: 80 01 00 34                  	lwz 0, 52(1)
     168: 38 21 00 30                  	addi 1, 1, 48
     16c: 7c 08 03 a6                  	mtlr 0
     170: 4e 80 00 20                  	blr

00000174 mem_init:
     174: 7c 08 02 a6                  	mflr 0
     178: 90 01 00 04                  	stw 0, 4(1)
     17c: 94 21 ff e0                  	stwu 1, -32(1)
     180: 3c 60 00 00                  	lis 3, 0
     184: 3c 80 00 00                  	lis 4, 0
     188: 93 81 00 10                  	stw 28, 16(1)
     18c: 3f 80 00 00                  	lis 28, 0
     190: 80 63 00 00                  	lwz 3, 0(3)
     194: 80 84 00 00                  	lwz 4, 0(4)
     198: 54 63 60 26                  	slwi 3, 3, 12
     19c: 3c 63 c0 00                  	addis 3, 3, -16384
     1a0: 90 7c 00 00                  	stw 3, 0(28)
     1a4: 3c 60 00 00                  	lis 3, 0
     1a8: 93 a1 00 14                  	stw 29, 20(1)
     1ac: 93 c1 00 18                  	stw 30, 24(1)
     1b0: 90 83 00 00                  	stw 4, 0(3)
     1b4: 48 00 00 01                  	bl .+0
     1b8: 38 60 00 00                  	li 3, 0
     1bc: 48 00 00 01                  	bl .+0
     1c0: 3c 60 00 00                  	lis 3, 0
     1c4: 4c c6 31 82                  	crclr	6
     1c8: 38 63 00 00                  	addi 3, 3, 0
     1cc: 48 00 00 01                  	bl .+0
     1d0: 3c 80 ff fd                  	lis 4, -3
     1d4: 3c 60 00 00                  	lis 3, 0
     1d8: 4c c6 31 82                  	crclr	6
     1dc: 60 9e f0 00                  	ori 30, 4, 61440
     1e0: 38 63 00 00                  	addi 3, 3, 0
     1e4: 7f c4 f3 78                  	mr 4, 30
     1e8: 38 a0 f0 00                  	li 5, -4096
     1ec: 48 00 00 01                  	bl .+0
     1f0: 3c 80 ff dd                  	lis 4, -35
     1f4: 3c 60 00 00                  	lis 3, 0
     1f8: 4c c6 31 82                  	crclr	6
     1fc: 60 9d f0 00                  	ori 29, 4, 61440
     200: 38 63 00 00                  	addi 3, 3, 0
     204: 7f a4 eb 78                  	mr 4, 29
     208: 7f c5 f3 78                  	mr 5, 30
     20c: 48 00 00 01                  	bl .+0
     210: 3f c0 00 00                  	lis 30, 0
     214: 3c 60 00 00                  	lis 3, 0
     218: 4c c6 31 82                  	crclr	6
     21c: 80 9e 00 00                  	lwz 4, 0(30)
     220: 38 63 00 00                  	addi 3, 3, 0
     224: 7f a5 eb 78                  	mr 5, 29
     228: 48 00 00 01                  	bl .+0
     22c: 80 7c 00 00                  	lwz 3, 0(28)
     230: 3c 80 01 00                  	lis 4, 256
     234: 4c c6 31 82                  	crclr	6
     238: 38 63 ff ff                  	addi 3, 3, -1
     23c: 80 be 00 00                  	lwz 5, 0(30)
     240: 3c 63 10 00                  	addis 3, 3, 4096
     244: 54 63 00 06                  	rlwinm 3, 3, 0, 0, 3
     248: 50 64 02 0c                  	rlwimi 4, 3, 0, 8, 6
     24c: 3c 60 00 00                  	lis 3, 0
     250: 38 63 00 00                  	addi 3, 3, 0
     254: 48 00 00 01                  	bl .+0
     258: 83 c1 00 18                  	lwz 30, 24(1)
     25c: 83 a1 00 14                  	lwz 29, 20(1)
     260: 83 81 00 10                  	lwz 28, 16(1)
     264: 80 01 00 24                  	lwz 0, 36(1)
     268: 38 21 00 20                  	addi 1, 1, 32
     26c: 7c 08 03 a6                  	mtlr 0
     270: 4e 80 00 20                  	blr

00000274 add_system_ram_resources:
     274: 7c 08 02 a6                  	mflr 0
     278: 90 01 00 04                  	stw 0, 4(1)
     27c: 94 21 ff c0                  	stwu 1, -64(1)
     280: 3c 60 00 00                  	lis 3, 0
     284: 93 a1 00 34                  	stw 29, 52(1)
     288: 3b a3 00 00                  	addi 29, 3, 0
     28c: 80 7d 00 10                  	lwz 3, 16(29)
     290: 93 81 00 30                  	stw 28, 48(1)
     294: 1c 63 00 18                  	mulli 3, 3, 24
     298: 83 9d 00 20                  	lwz 28, 32(29)
     29c: 7c 7c 1a 14                  	add 3, 28, 3
     2a0: 92 a1 00 14                  	stw 21, 20(1)
     2a4: 7c 1c 18 40                  	cmplw	28, 3
     2a8: 92 c1 00 18                  	stw 22, 24(1)
     2ac: 92 e1 00 1c                  	stw 23, 28(1)
     2b0: 93 01 00 20                  	stw 24, 32(1)
     2b4: 93 21 00 24                  	stw 25, 36(1)
     2b8: 93 41 00 28                  	stw 26, 40(1)
     2bc: 93 61 00 2c                  	stw 27, 44(1)
     2c0: 93 c1 00 38                  	stw 30, 56(1)
     2c4: 40 80 00 ac                  	bf	0, .+172
     2c8: 3c 60 00 00                  	lis 3, 0
     2cc: 3c 80 00 00                  	lis 4, 0
     2d0: 3c a0 81 00                  	lis 5, -32512
     2d4: 3c c0 00 00                  	lis 6, 0
     2d8: 3b 7c ff e8                  	addi 27, 28, -24
     2dc: 3b 40 00 00                  	li 26, 0
     2e0: 3b 23 00 00                  	addi 25, 3, 0
     2e4: 3b 04 00 00                  	addi 24, 4, 0
     2e8: 60 b7 02 00                  	ori 23, 5, 512
     2ec: 3b c6 00 00                  	addi 30, 6, 0
     2f0: 80 79 00 18                  	lwz 3, 24(25)
     2f4: 38 80 0d c0                  	li 4, 3520
     2f8: 38 a0 00 28                  	li 5, 40
     2fc: 82 db 00 1c                  	lwz 22, 28(27)
     300: 82 bb 00 24                  	lwz 21, 36(27)
     304: 48 00 00 01                  	bl .+0
     308: 7c 64 1b 78                  	mr 4, 3
     30c: 7c 63 00 34                  	cntlzw	3, 3
     310: 28 04 00 00                  	cmplwi	4, 0
     314: 54 63 df fe                  	rlwinm 3, 3, 27, 31, 31
     318: 0f 03 00 00                  	twnei	3, 0
     31c: 41 82 00 34                  	bt	2, .+52
     320: 7c 76 aa 14                  	add 3, 22, 21
     324: 93 04 00 10                  	stw 24, 16(4)
     328: 38 63 ff ff                  	addi 3, 3, -1
     32c: 90 64 00 0c                  	stw 3, 12(4)
     330: 7f c3 f3 78                  	mr 3, 30
     334: 93 44 00 00                  	stw 26, 0(4)
     338: 92 c4 00 04                  	stw 22, 4(4)
     33c: 93 44 00 08                  	stw 26, 8(4)
     340: 92 e4 00 14                  	stw 23, 20(4)
     344: 48 00 00 01                  	bl .+0
     348: 54 63 0f fe                  	srwi 3, 3, 31
     34c: 0f 03 00 00                  	twnei	3, 0
     350: 80 7d 00 10                  	lwz 3, 16(29)
     354: 3b 9c 00 18                  	addi 28, 28, 24
     358: 3b 7b 00 18                  	addi 27, 27, 24
     35c: 80 9d 00 20                  	lwz 4, 32(29)
     360: 1c 63 00 18                  	mulli 3, 3, 24
     364: 7c 64 1a 14                  	add 3, 4, 3
     368: 7c 1c 18 40                  	cmplw	28, 3
     36c: 41 80 ff 84                  	bt	0, .+65412
     370: 38 60 00 00                  	li 3, 0
     374: 83 c1 00 38                  	lwz 30, 56(1)
     378: 83 a1 00 34                  	lwz 29, 52(1)
     37c: 83 81 00 30                  	lwz 28, 48(1)
     380: 83 61 00 2c                  	lwz 27, 44(1)
     384: 83 41 00 28                  	lwz 26, 40(1)
     388: 83 21 00 24                  	lwz 25, 36(1)
     38c: 83 01 00 20                  	lwz 24, 32(1)
     390: 82 e1 00 1c                  	lwz 23, 28(1)
     394: 82 c1 00 18                  	lwz 22, 24(1)
     398: 82 a1 00 14                  	lwz 21, 20(1)
     39c: 80 01 00 44                  	lwz 0, 68(1)
     3a0: 38 21 00 40                  	addi 1, 1, 64
     3a4: 7c 08 03 a6                  	mtlr 0
     3a8: 4e 80 00 20                  	blr
-------------- next part --------------

mem-broken.o:	file format ELF32-ppc


Disassembly of section .text:

00000000 phys_mem_access_prot:
       0: 7c 08 02 a6                  	mflr 0
       4: 90 01 00 04                  	stw 0, 4(1)
       8: 94 21 ff e0                  	stwu 1, -32(1)
       c: 93 a1 00 14                  	stw 29, 20(1)
      10: 7c fd 3b 78                  	mr 29, 7
      14: 3c e0 00 00                  	lis 7, 0
      18: 38 e7 00 00                  	addi 7, 7, 0
      1c: 81 07 00 a0                  	lwz 8, 160(7)
      20: 93 c1 00 18                  	stw 30, 24(1)
      24: 28 08 00 00                  	cmplwi	8, 0
      28: 7c 7e 1b 78                  	mr 30, 3
      2c: 41 82 00 20                  	bt	2, .+32
      30: 80 7d 00 00                  	lwz 3, 0(29)
      34: 38 e1 00 08                  	addi 7, 1, 8
      38: 7d 09 03 a6                  	mtctr 8
      3c: 90 61 00 08                  	stw 3, 8(1)
      40: 7f c3 f3 78                  	mr 3, 30
      44: 4e 80 04 21                  	bctrl
      48: 48 00 00 28                  	b .+40
      4c: 7c a3 2b 78                  	mr 3, 5
      50: 48 00 00 01                  	bl .+0
      54: 28 03 00 00                  	cmplwi	3, 0
      58: 80 7d 00 00                  	lwz 3, 0(29)
      5c: 40 82 00 10                  	bf	2, .+16
      60: 54 63 06 26                  	rlwinm 3, 3, 0, 24, 19
      64: 60 63 05 00                  	ori 3, 3, 1280
      68: 90 7d 00 00                  	stw 3, 0(29)
      6c: 90 7e 00 00                  	stw 3, 0(30)
      70: 83 c1 00 18                  	lwz 30, 24(1)
      74: 83 a1 00 14                  	lwz 29, 20(1)
      78: 80 01 00 24                  	lwz 0, 36(1)
      7c: 38 21 00 20                  	addi 1, 1, 32
      80: 7c 08 03 a6                  	mtlr 0
      84: 4e 80 00 20                  	blr

00000088 free_initmem:
      88: 7c 08 02 a6                  	mflr 0
      8c: 90 01 00 04                  	stw 0, 4(1)
      90: 94 21 ff f0                  	stwu 1, -16(1)
      94: 3c 60 00 00                  	lis 3, 0
      98: 3c 80 00 00                  	lis 4, 0
      9c: 38 63 00 00                  	addi 3, 3, 0
      a0: 38 84 00 00                  	addi 4, 4, 0
      a4: 90 83 00 60                  	stw 4, 96(3)
      a8: 48 00 00 01                  	bl .+0
      ac: 3c 60 00 00                  	lis 3, 0
      b0: 38 80 00 01                  	li 4, 1
      b4: 98 83 00 00                  	stb 4, 0(3)
      b8: 3c 60 00 00                  	lis 3, 0
      bc: 3c 80 00 00                  	lis 4, 0
      c0: 3c a0 00 00                  	lis 5, 0
      c4: 38 63 00 00                  	addi 3, 3, 0
      c8: 38 84 00 00                  	addi 4, 4, 0
      cc: 38 c5 00 00                  	addi 6, 5, 0
      d0: 38 a0 00 cc                  	li 5, 204
      d4: 48 00 00 01                  	bl .+0
      d8: 80 01 00 14                  	lwz 0, 20(1)
      dc: 38 21 00 10                  	addi 1, 1, 16
      e0: 7c 08 03 a6                  	mtlr 0
      e4: 4e 80 00 20                  	blr

000000e8 flush_dcache_page:
      e8: 80 83 00 00                  	lwz 4, 0(3)
      ec: 70 84 08 00                  	andi. 4, 4, 2048
      f0: 4d 82 00 20                  	bclr	12, 2
      f4: 38 80 08 00                  	li 4, 2048
      f8: 7c a0 18 28                  	lwarx 5, 0, 3
      fc: 7c a5 20 78                  	andc 5, 5, 4
     100: 7c a0 19 2d                  	stwcx. 5, 0, 3
     104: 40 a2 ff f4                  	bc 5, 2, .+65524
     108: 4e 80 00 20                  	blr

0000010c flush_dcache_icache_page:
     10c: 7c 08 02 a6                  	mflr 0
     110: 90 01 00 04                  	stw 0, 4(1)
     114: 94 21 ff f0                  	stwu 1, -16(1)
     118: 80 82 00 00                  	lwz 4, 0(2)
     11c: 38 84 00 01                  	addi 4, 4, 1
     120: 90 82 00 00                  	stw 4, 0(2)
     124: 80 82 0a e4                  	lwz 4, 2788(2)
     128: 38 84 00 01                  	addi 4, 4, 1
     12c: 90 82 0a e4                  	stw 4, 2788(2)
     130: 3c 80 00 00                  	lis 4, 0
     134: 80 84 00 00                  	lwz 4, 0(4)
     138: 7c 64 18 50                  	subf 3, 4, 3
     13c: 3c 80 cc cc                  	lis 4, -13108
     140: 54 63 e8 fe                  	srwi 3, 3, 3
     144: 60 84 d0 00                  	ori 4, 4, 53248
     148: 7c 63 21 d6                  	mullw 3, 3, 4
     14c: 3c 63 c0 00                  	addis 3, 3, -16384
     150: 48 00 00 01                  	bl .+0
     154: 80 62 0a e4                  	lwz 3, 2788(2)
     158: 38 63 ff ff                  	addi 3, 3, -1
     15c: 90 62 0a e4                  	stw 3, 2788(2)
     160: 80 62 00 00                  	lwz 3, 0(2)
     164: 38 63 ff ff                  	addi 3, 3, -1
     168: 90 62 00 00                  	stw 3, 0(2)
     16c: 80 01 00 14                  	lwz 0, 20(1)
     170: 38 21 00 10                  	addi 1, 1, 16
     174: 7c 08 03 a6                  	mtlr 0
     178: 4e 80 00 20                  	blr

0000017c clear_user_page:
     17c: 94 21 ff f0                  	stwu 1, -16(1)
     180: 38 80 00 80                  	li 4, 128
     184: 38 63 ff e0                  	addi 3, 3, -32
     188: 7c 89 03 a6                  	mtctr 4
     18c: 38 81 00 0f                  	addi 4, 1, 15
     190: 8c c3 00 20                  	lbzu 6, 32(3)
     194: 98 c1 00 0f                  	stb 6, 15(1)
     198: 7c 00 27 ec                  	dcbz 0, 4
     19c: 42 00 ff f4                  	bdnz .+65524
     1a0: 80 65 00 00                  	lwz 3, 0(5)
     1a4: 70 63 08 00                  	andi. 3, 3, 2048
     1a8: 41 82 00 18                  	bt	2, .+24
     1ac: 38 60 08 00                  	li 3, 2048
     1b0: 7c 80 28 28                  	lwarx 4, 0, 5
     1b4: 7c 84 18 78                  	andc 4, 4, 3
     1b8: 7c 80 29 2d                  	stwcx. 4, 0, 5
     1bc: 40 a2 ff f4                  	bc 5, 2, .+65524
     1c0: 38 21 00 10                  	addi 1, 1, 16
     1c4: 4e 80 00 20                  	blr

000001c8 copy_user_page:
     1c8: 7c 08 02 a6                  	mflr 0
     1cc: 90 01 00 04                  	stw 0, 4(1)
     1d0: 94 21 ff f0                  	stwu 1, -16(1)
     1d4: 93 c1 00 08                  	stw 30, 8(1)
     1d8: 7c de 33 78                  	mr 30, 6
     1dc: 48 00 00 01                  	bl .+0
     1e0: 80 7e 00 00                  	lwz 3, 0(30)
     1e4: 70 63 08 00                  	andi. 3, 3, 2048
     1e8: 41 82 00 18                  	bt	2, .+24
     1ec: 38 60 08 00                  	li 3, 2048
     1f0: 7c 80 f0 28                  	lwarx 4, 0, 30
     1f4: 7c 84 18 78                  	andc 4, 4, 3
     1f8: 7c 80 f1 2d                  	stwcx. 4, 0, 30
     1fc: 40 a2 ff f4                  	bc 5, 2, .+65524
     200: 83 c1 00 08                  	lwz 30, 8(1)
     204: 80 01 00 14                  	lwz 0, 20(1)
     208: 38 21 00 10                  	addi 1, 1, 16
     20c: 7c 08 03 a6                  	mtlr 0
     210: 4e 80 00 20                  	blr

00000214 flush_icache_user_range:
     214: 7c 08 02 a6                  	mflr 0
     218: 90 01 00 04                  	stw 0, 4(1)
     21c: 94 21 ff e0                  	stwu 1, -32(1)
     220: 3c 60 00 00                  	lis 3, 0
     224: 93 81 00 10                  	stw 28, 16(1)
     228: 7c 9c 23 78                  	mr 28, 4
     22c: 38 63 00 00                  	addi 3, 3, 0
     230: 38 80 00 53                  	li 4, 83
     234: 93 a1 00 14                  	stw 29, 20(1)
     238: 7c bd 2b 78                  	mr 29, 5
     23c: 38 a0 00 00                  	li 5, 0
     240: 93 c1 00 18                  	stw 30, 24(1)
     244: 7c de 33 78                  	mr 30, 6
     248: 48 00 00 01                  	bl .+0
     24c: 3c 60 00 00                  	lis 3, 0
     250: 3c 80 cc cc                  	lis 4, -13108
     254: 80 63 00 00                  	lwz 3, 0(3)
     258: 60 84 d0 00                  	ori 4, 4, 53248
     25c: 7c 63 e0 50                  	subf 3, 3, 28
     260: 54 63 e8 fe                  	srwi 3, 3, 3
     264: 7c 63 21 d6                  	mullw 3, 3, 4
     268: 57 a4 05 3e                  	clrlwi	4, 29, 20
     26c: 50 64 00 26                  	rlwimi 4, 3, 0, 0, 19
     270: 3c 64 c0 00                  	addis 3, 4, -16384
     274: 7c 83 f2 14                  	add 4, 3, 30
     278: 48 00 00 01                  	bl .+0
     27c: 83 c1 00 18                  	lwz 30, 24(1)
     280: 83 a1 00 14                  	lwz 29, 20(1)
     284: 83 81 00 10                  	lwz 28, 16(1)
     288: 80 01 00 24                  	lwz 0, 36(1)
     28c: 38 21 00 20                  	addi 1, 1, 32
     290: 7c 08 03 a6                  	mtlr 0
     294: 4e 80 00 20                  	blr

00000298 update_mmu_cache:
     298: 4e 80 00 20                  	blr

0000029c devmem_is_allowed:
     29c: 7c 08 02 a6                  	mflr 0
     2a0: 90 01 00 04                  	stw 0, 4(1)
     2a4: 94 21 ff f0                  	stwu 1, -16(1)
     2a8: 93 c1 00 08                  	stw 30, 8(1)
     2ac: 7c 7e 1b 78                  	mr 30, 3
     2b0: 54 63 65 3e                  	srwi 3, 3, 20
     2b4: 57 c4 60 26                  	slwi 4, 30, 12
     2b8: 48 00 00 01                  	bl .+0
     2bc: 70 63 00 01                  	andi. 3, 3, 1
     2c0: 38 60 00 00                  	li 3, 0
     2c4: 41 81 00 14                  	bt	1, .+20
     2c8: 7f c3 f3 78                  	mr 3, 30
     2cc: 48 00 00 01                  	bl .+0
     2d0: 7c 63 00 34                  	cntlzw	3, 3
     2d4: 54 63 df fe                  	rlwinm 3, 3, 27, 31, 31
     2d8: 83 c1 00 08                  	lwz 30, 8(1)
     2dc: 80 01 00 14                  	lwz 0, 20(1)
     2e0: 38 21 00 10                  	addi 1, 1, 16
     2e4: 7c 08 03 a6                  	mtlr 0
     2e8: 4e 80 00 20                  	blr

Disassembly of section .init.text:

00000000 mem_topology_setup:
       0: 7c 08 02 a6                  	mflr 0
       4: 90 01 00 04                  	stw 0, 4(1)
       8: 94 21 ff f0                  	stwu 1, -16(1)
       c: 48 00 00 01                  	bl .+0
      10: 54 84 a0 3e                  	rotlwi	4, 4, 20
      14: 3c a0 00 00                  	lis 5, 0
      18: 50 64 a0 16                  	rlwimi 4, 3, 20, 0, 11
      1c: 3c 60 00 00                  	lis 3, 0
      20: 90 85 00 00                  	stw 4, 0(5)
      24: 38 a0 ff ff                  	li 5, -1
      28: 90 83 00 00                  	stw 4, 0(3)
      2c: 3c 60 00 00                  	lis 3, 0
      30: 38 80 00 00                  	li 4, 0
      34: 38 c0 ff ff                  	li 6, -1
      38: 39 00 00 00                  	li 8, 0
      3c: 90 83 00 00                  	stw 4, 0(3)
      40: 3c 60 00 00                  	lis 3, 0
      44: 38 80 00 00                  	li 4, 0
      48: 38 63 00 00                  	addi 3, 3, 0
      4c: 38 e3 00 10                  	addi 7, 3, 16
      50: 38 60 00 00                  	li 3, 0
      54: 48 00 00 01                  	bl .+0
      58: 80 01 00 14                  	lwz 0, 20(1)
      5c: 38 21 00 10                  	addi 1, 1, 16
      60: 7c 08 03 a6                  	mtlr 0
      64: 4e 80 00 20                  	blr

00000068 initmem_init:
      68: 7c 08 02 a6                  	mflr 0
      6c: 90 01 00 04                  	stw 0, 4(1)
      70: 94 21 ff f0                  	stwu 1, -16(1)
      74: 38 60 00 00                  	li 3, 0
      78: 48 00 00 01                  	bl .+0
      7c: 80 01 00 14                  	lwz 0, 20(1)
      80: 38 21 00 10                  	addi 1, 1, 16
      84: 7c 08 03 a6                  	mtlr 0
      88: 4e 80 00 20                  	blr

0000008c paging_init:
      8c: 7c 08 02 a6                  	mflr 0
      90: 90 01 00 04                  	stw 0, 4(1)
      94: 94 21 ff d0                  	stwu 1, -48(1)
      98: 93 21 00 14                  	stw 25, 20(1)
      9c: 93 41 00 18                  	stw 26, 24(1)
      a0: 93 61 00 1c                  	stw 27, 28(1)
      a4: 93 81 00 20                  	stw 28, 32(1)
      a8: 93 a1 00 24                  	stw 29, 36(1)
      ac: 93 c1 00 28                  	stw 30, 40(1)
      b0: 48 00 00 01                  	bl .+0
      b4: 7c 7e 1b 78                  	mr 30, 3
      b8: 7c 9d 23 78                  	mr 29, 4
      bc: 3f 40 ff fe                  	lis 26, -2
      c0: 48 00 00 01                  	bl .+0
      c4: 7c 7c 1b 78                  	mr 28, 3
      c8: 7c 9b 23 78                  	mr 27, 4
      cc: 3b 20 00 00                  	li 25, 0
      d0: 38 e1 00 08                  	addi 7, 1, 8
      d4: 7f 43 d3 78                  	mr 3, 26
      d8: 93 21 00 10                  	stw 25, 16(1)
      dc: 38 a0 00 00                  	li 5, 0
      e0: 38 c0 00 00                  	li 6, 0
      e4: 93 21 00 08                  	stw 25, 8(1)
      e8: 48 00 00 01                  	bl .+0
      ec: 3b 5a 10 00                  	addi 26, 26, 4096
      f0: 2c 1a f0 00                  	cmpwi	26, -4096
      f4: 40 82 ff dc                  	bf	2, .+65500
      f8: 3c 60 00 00                  	lis 3, 0
      fc: 4c c6 31 82                  	crclr	6
     100: 7f 85 e3 78                  	mr 5, 28
     104: 38 63 00 00                  	addi 3, 3, 0
     108: 7f 66 db 78                  	mr 6, 27
     10c: 7f c7 f3 78                  	mr 7, 30
     110: 7f a8 eb 78                  	mr 8, 29
     114: 48 00 00 01                  	bl .+0
     118: 7c 7d d8 10                  	subfc 3, 29, 27
     11c: 4c c6 31 82                  	crclr	6
     120: 7c be e1 10                  	subfe 5, 30, 28
     124: 54 64 60 3e                  	rotlwi	4, 3, 12
     128: 3c 60 00 00                  	lis 3, 0
     12c: 50 a4 60 26                  	rlwimi 4, 5, 12, 0, 19
     130: 38 63 00 00                  	addi 3, 3, 0
     134: 48 00 00 01                  	bl .+0
     138: 3c 60 00 00                  	lis 3, 0
     13c: 80 83 00 00                  	lwz 4, 0(3)
     140: 3c 60 00 00                  	lis 3, 0
     144: 94 83 00 00                  	stwu 4, 0(3)
     148: 48 00 00 01                  	bl .+0
     14c: 83 c1 00 28                  	lwz 30, 40(1)
     150: 83 a1 00 24                  	lwz 29, 36(1)
     154: 83 81 00 20                  	lwz 28, 32(1)
     158: 83 61 00 1c                  	lwz 27, 28(1)
     15c: 83 41 00 18                  	lwz 26, 24(1)
     160: 83 21 00 14                  	lwz 25, 20(1)
     164: 80 01 00 34                  	lwz 0, 52(1)
     168: 38 21 00 30                  	addi 1, 1, 48
     16c: 7c 08 03 a6                  	mtlr 0
     170: 4e 80 00 20                  	blr

00000174 mem_init:
     174: 7c 08 02 a6                  	mflr 0
     178: 90 01 00 04                  	stw 0, 4(1)
     17c: 94 21 ff e0                  	stwu 1, -32(1)
     180: 3c 60 00 00                  	lis 3, 0
     184: 3c 80 00 00                  	lis 4, 0
     188: 93 81 00 10                  	stw 28, 16(1)
     18c: 3f 80 00 00                  	lis 28, 0
     190: 80 63 00 00                  	lwz 3, 0(3)
     194: 80 84 00 00                  	lwz 4, 0(4)
     198: 54 63 60 26                  	slwi 3, 3, 12
     19c: 3c 63 c0 00                  	addis 3, 3, -16384
     1a0: 90 7c 00 00                  	stw 3, 0(28)
     1a4: 3c 60 00 00                  	lis 3, 0
     1a8: 93 a1 00 14                  	stw 29, 20(1)
     1ac: 93 c1 00 18                  	stw 30, 24(1)
     1b0: 90 83 00 00                  	stw 4, 0(3)
     1b4: 48 00 00 01                  	bl .+0
     1b8: 38 60 00 00                  	li 3, 0
     1bc: 48 00 00 01                  	bl .+0
     1c0: 3c 60 00 00                  	lis 3, 0
     1c4: 4c c6 31 82                  	crclr	6
     1c8: 38 63 00 00                  	addi 3, 3, 0
     1cc: 48 00 00 01                  	bl .+0
     1d0: 3c 80 ff fd                  	lis 4, -3
     1d4: 3c 60 00 00                  	lis 3, 0
     1d8: 4c c6 31 82                  	crclr	6
     1dc: 60 9e f0 00                  	ori 30, 4, 61440
     1e0: 38 63 00 00                  	addi 3, 3, 0
     1e4: 7f c4 f3 78                  	mr 4, 30
     1e8: 38 a0 f0 00                  	li 5, -4096
     1ec: 48 00 00 01                  	bl .+0
     1f0: 3c 80 ff dd                  	lis 4, -35
     1f4: 3c 60 00 00                  	lis 3, 0
     1f8: 4c c6 31 82                  	crclr	6
     1fc: 60 9d f0 00                  	ori 29, 4, 61440
     200: 38 63 00 00                  	addi 3, 3, 0
     204: 7f a4 eb 78                  	mr 4, 29
     208: 7f c5 f3 78                  	mr 5, 30
     20c: 48 00 00 01                  	bl .+0
     210: 3f c0 00 00                  	lis 30, 0
     214: 3c 60 00 00                  	lis 3, 0
     218: 4c c6 31 82                  	crclr	6
     21c: 80 9e 00 00                  	lwz 4, 0(30)
     220: 38 63 00 00                  	addi 3, 3, 0
     224: 7f a5 eb 78                  	mr 5, 29
     228: 48 00 00 01                  	bl .+0
     22c: 80 7c 00 00                  	lwz 3, 0(28)
     230: 3c 80 01 00                  	lis 4, 256
     234: 4c c6 31 82                  	crclr	6
     238: 38 63 ff ff                  	addi 3, 3, -1
     23c: 80 be 00 00                  	lwz 5, 0(30)
     240: 3c 63 10 00                  	addis 3, 3, 4096
     244: 54 63 00 06                  	rlwinm 3, 3, 0, 0, 3
     248: 50 64 02 0c                  	rlwimi 4, 3, 0, 8, 6
     24c: 3c 60 00 00                  	lis 3, 0
     250: 38 63 00 00                  	addi 3, 3, 0
     254: 48 00 00 01                  	bl .+0
     258: 83 c1 00 18                  	lwz 30, 24(1)
     25c: 83 a1 00 14                  	lwz 29, 20(1)
     260: 83 81 00 10                  	lwz 28, 16(1)
     264: 80 01 00 24                  	lwz 0, 36(1)
     268: 38 21 00 20                  	addi 1, 1, 32
     26c: 7c 08 03 a6                  	mtlr 0
     270: 4e 80 00 20                  	blr

00000274 add_system_ram_resources:
     274: 7c 08 02 a6                  	mflr 0
     278: 90 01 00 04                  	stw 0, 4(1)
     27c: 94 21 ff c0                  	stwu 1, -64(1)
     280: 3c 60 00 00                  	lis 3, 0
     284: 93 a1 00 34                  	stw 29, 52(1)
     288: 3b a3 00 00                  	addi 29, 3, 0
     28c: 80 7d 00 10                  	lwz 3, 16(29)
     290: 93 81 00 30                  	stw 28, 48(1)
     294: 1c 63 00 18                  	mulli 3, 3, 24
     298: 83 9d 00 20                  	lwz 28, 32(29)
     29c: 7c 7c 1a 14                  	add 3, 28, 3
     2a0: 92 a1 00 14                  	stw 21, 20(1)
     2a4: 7c 1c 18 40                  	cmplw	28, 3
     2a8: 92 c1 00 18                  	stw 22, 24(1)
     2ac: 92 e1 00 1c                  	stw 23, 28(1)
     2b0: 93 01 00 20                  	stw 24, 32(1)
     2b4: 93 21 00 24                  	stw 25, 36(1)
     2b8: 93 41 00 28                  	stw 26, 40(1)
     2bc: 93 61 00 2c                  	stw 27, 44(1)
     2c0: 93 c1 00 38                  	stw 30, 56(1)
     2c4: 40 80 00 ac                  	bf	0, .+172
     2c8: 3c 60 00 00                  	lis 3, 0
     2cc: 3c 80 00 00                  	lis 4, 0
     2d0: 3c a0 81 00                  	lis 5, -32512
     2d4: 3c c0 00 00                  	lis 6, 0
     2d8: 3b 7c ff e8                  	addi 27, 28, -24
     2dc: 3b 40 00 00                  	li 26, 0
     2e0: 3b 23 00 00                  	addi 25, 3, 0
     2e4: 3b 04 00 00                  	addi 24, 4, 0
     2e8: 60 b7 02 00                  	ori 23, 5, 512
     2ec: 3b c6 00 00                  	addi 30, 6, 0
     2f0: 80 79 00 18                  	lwz 3, 24(25)
     2f4: 38 80 0d c0                  	li 4, 3520
     2f8: 38 a0 00 28                  	li 5, 40
     2fc: 82 db 00 1c                  	lwz 22, 28(27)
     300: 82 bb 00 24                  	lwz 21, 36(27)
     304: 48 00 00 01                  	bl .+0
     308: 7c 64 1b 78                  	mr 4, 3
     30c: 7c 63 00 34                  	cntlzw	3, 3
     310: 28 04 00 00                  	cmplwi	4, 0
     314: 54 63 df fe                  	rlwinm 3, 3, 27, 31, 31
     318: 0f 03 00 00                  	twnei	3, 0
     31c: 41 82 00 34                  	bt	2, .+52
     320: 7c 76 aa 14                  	add 3, 22, 21
     324: 93 04 00 10                  	stw 24, 16(4)
     328: 38 63 ff ff                  	addi 3, 3, -1
     32c: 90 64 00 0c                  	stw 3, 12(4)
     330: 7f c3 f3 78                  	mr 3, 30
     334: 93 44 00 00                  	stw 26, 0(4)
     338: 92 c4 00 04                  	stw 22, 4(4)
     33c: 93 44 00 08                  	stw 26, 8(4)
     340: 92 e4 00 14                  	stw 23, 20(4)
     344: 48 00 00 01                  	bl .+0
     348: 54 63 0f fe                  	srwi 3, 3, 31
     34c: 0f 03 00 00                  	twnei	3, 0
     350: 80 7d 00 10                  	lwz 3, 16(29)
     354: 3b 9c 00 18                  	addi 28, 28, 24
     358: 3b 7b 00 18                  	addi 27, 27, 24
     35c: 80 9d 00 20                  	lwz 4, 32(29)
     360: 1c 63 00 18                  	mulli 3, 3, 24
     364: 7c 64 1a 14                  	add 3, 4, 3
     368: 7c 1c 18 40                  	cmplw	28, 3
     36c: 41 80 ff 84                  	bt	0, .+65412
     370: 38 60 00 00                  	li 3, 0
     374: 83 c1 00 38                  	lwz 30, 56(1)
     378: 83 a1 00 34                  	lwz 29, 52(1)
     37c: 83 81 00 30                  	lwz 28, 48(1)
     380: 83 61 00 2c                  	lwz 27, 44(1)
     384: 83 41 00 28                  	lwz 26, 40(1)
     388: 83 21 00 24                  	lwz 25, 36(1)
     38c: 83 01 00 20                  	lwz 24, 32(1)
     390: 82 e1 00 1c                  	lwz 23, 28(1)
     394: 82 c1 00 18                  	lwz 22, 24(1)
     398: 82 a1 00 14                  	lwz 21, 20(1)
     39c: 80 01 00 44                  	lwz 0, 68(1)
     3a0: 38 21 00 40                  	addi 1, 1, 64
     3a4: 7c 08 03 a6                  	mtlr 0
     3a8: 4e 80 00 20                  	blr
-------------- next part --------------

mem-working.o:	file format ELF32-ppc			      |	mem-broken.o:	file format ELF32-ppc


Disassembly of section .text:					Disassembly of section .text:

00000000 phys_mem_access_prot:					00000000 phys_mem_access_prot:
       0: 7c 08 02 a6                  	mflr 0			       0: 7c 08 02 a6                  	mflr 0
       4: 90 01 00 04                  	stw 0, 4(1)		       4: 90 01 00 04                  	stw 0, 4(1)
       8: 94 21 ff e0                  	stwu 1, -32(1)		       8: 94 21 ff e0                  	stwu 1, -32(1)
       c: 93 a1 00 14                  	stw 29, 20(1)		       c: 93 a1 00 14                  	stw 29, 20(1)
      10: 7c fd 3b 78                  	mr 29, 7		      10: 7c fd 3b 78                  	mr 29, 7
      14: 3c e0 00 00                  	lis 7, 0		      14: 3c e0 00 00                  	lis 7, 0
      18: 38 e7 00 00                  	addi 7, 7, 0		      18: 38 e7 00 00                  	addi 7, 7, 0
      1c: 81 07 00 a0                  	lwz 8, 160(7)		      1c: 81 07 00 a0                  	lwz 8, 160(7)
      20: 93 c1 00 18                  	stw 30, 24(1)		      20: 93 c1 00 18                  	stw 30, 24(1)
      24: 28 08 00 00                  	cmplwi	8, 0		      24: 28 08 00 00                  	cmplwi	8, 0
      28: 7c 7e 1b 78                  	mr 30, 3		      28: 7c 7e 1b 78                  	mr 30, 3
      2c: 41 82 00 20                  	bt	2, .+32		      2c: 41 82 00 20                  	bt	2, .+32
      30: 80 7d 00 00                  	lwz 3, 0(29)		      30: 80 7d 00 00                  	lwz 3, 0(29)
      34: 38 e1 00 08                  	addi 7, 1, 8		      34: 38 e1 00 08                  	addi 7, 1, 8
      38: 7d 09 03 a6                  	mtctr 8			      38: 7d 09 03 a6                  	mtctr 8
      3c: 90 61 00 08                  	stw 3, 8(1)		      3c: 90 61 00 08                  	stw 3, 8(1)
      40: 7f c3 f3 78                  	mr 3, 30		      40: 7f c3 f3 78                  	mr 3, 30
      44: 4e 80 04 21                  	bctrl			      44: 4e 80 04 21                  	bctrl
      48: 48 00 00 28                  	b .+40			      48: 48 00 00 28                  	b .+40
      4c: 7c a3 2b 78                  	mr 3, 5			      4c: 7c a3 2b 78                  	mr 3, 5
      50: 48 00 00 01                  	bl .+0			      50: 48 00 00 01                  	bl .+0
      54: 28 03 00 00                  	cmplwi	3, 0		      54: 28 03 00 00                  	cmplwi	3, 0
      58: 80 7d 00 00                  	lwz 3, 0(29)		      58: 80 7d 00 00                  	lwz 3, 0(29)
      5c: 40 82 00 10                  	bf	2, .+16		      5c: 40 82 00 10                  	bf	2, .+16
      60: 54 63 06 26                  	rlwinm 3, 3, 0, 24, 1	      60: 54 63 06 26                  	rlwinm 3, 3, 0, 24, 1
      64: 60 63 05 00                  	ori 3, 3, 1280		      64: 60 63 05 00                  	ori 3, 3, 1280
      68: 90 7d 00 00                  	stw 3, 0(29)		      68: 90 7d 00 00                  	stw 3, 0(29)
      6c: 90 7e 00 00                  	stw 3, 0(30)		      6c: 90 7e 00 00                  	stw 3, 0(30)
      70: 83 c1 00 18                  	lwz 30, 24(1)		      70: 83 c1 00 18                  	lwz 30, 24(1)
      74: 83 a1 00 14                  	lwz 29, 20(1)		      74: 83 a1 00 14                  	lwz 29, 20(1)
      78: 80 01 00 24                  	lwz 0, 36(1)		      78: 80 01 00 24                  	lwz 0, 36(1)
      7c: 38 21 00 20                  	addi 1, 1, 32		      7c: 38 21 00 20                  	addi 1, 1, 32
      80: 7c 08 03 a6                  	mtlr 0			      80: 7c 08 03 a6                  	mtlr 0
      84: 4e 80 00 20                  	blr			      84: 4e 80 00 20                  	blr

00000088 free_initmem:						00000088 free_initmem:
      88: 7c 08 02 a6                  	mflr 0			      88: 7c 08 02 a6                  	mflr 0
      8c: 90 01 00 04                  	stw 0, 4(1)		      8c: 90 01 00 04                  	stw 0, 4(1)
      90: 94 21 ff f0                  	stwu 1, -16(1)		      90: 94 21 ff f0                  	stwu 1, -16(1)
      94: 3c 60 00 00                  	lis 3, 0		      94: 3c 60 00 00                  	lis 3, 0
      98: 3c 80 00 00                  	lis 4, 0		      98: 3c 80 00 00                  	lis 4, 0
      9c: 38 63 00 00                  	addi 3, 3, 0		      9c: 38 63 00 00                  	addi 3, 3, 0
      a0: 38 84 00 00                  	addi 4, 4, 0		      a0: 38 84 00 00                  	addi 4, 4, 0
      a4: 90 83 00 60                  	stw 4, 96(3)		      a4: 90 83 00 60                  	stw 4, 96(3)
      a8: 48 00 00 01                  	bl .+0			      a8: 48 00 00 01                  	bl .+0
      ac: 3c 60 00 00                  	lis 3, 0		      ac: 3c 60 00 00                  	lis 3, 0
      b0: 38 80 00 01                  	li 4, 1			      b0: 38 80 00 01                  	li 4, 1
      b4: 98 83 00 00                  	stb 4, 0(3)		      b4: 98 83 00 00                  	stb 4, 0(3)
      b8: 3c 60 00 00                  	lis 3, 0		      b8: 3c 60 00 00                  	lis 3, 0
      bc: 3c 80 00 00                  	lis 4, 0		      bc: 3c 80 00 00                  	lis 4, 0
      c0: 3c a0 00 00                  	lis 5, 0		      c0: 3c a0 00 00                  	lis 5, 0
      c4: 38 63 00 00                  	addi 3, 3, 0		      c4: 38 63 00 00                  	addi 3, 3, 0
      c8: 38 84 00 00                  	addi 4, 4, 0		      c8: 38 84 00 00                  	addi 4, 4, 0
      cc: 38 c5 00 00                  	addi 6, 5, 0		      cc: 38 c5 00 00                  	addi 6, 5, 0
      d0: 38 a0 00 cc                  	li 5, 204		      d0: 38 a0 00 cc                  	li 5, 204
      d4: 48 00 00 01                  	bl .+0			      d4: 48 00 00 01                  	bl .+0
      d8: 80 01 00 14                  	lwz 0, 20(1)		      d8: 80 01 00 14                  	lwz 0, 20(1)
      dc: 38 21 00 10                  	addi 1, 1, 16		      dc: 38 21 00 10                  	addi 1, 1, 16
      e0: 7c 08 03 a6                  	mtlr 0			      e0: 7c 08 03 a6                  	mtlr 0
      e4: 4e 80 00 20                  	blr			      e4: 4e 80 00 20                  	blr

000000e8 flush_dcache_page:					000000e8 flush_dcache_page:
      e8: 80 83 00 00                  	lwz 4, 0(3)		      e8: 80 83 00 00                  	lwz 4, 0(3)
      ec: 70 84 08 00                  	andi. 4, 4, 2048	      ec: 70 84 08 00                  	andi. 4, 4, 2048
      f0: 4d 82 00 20                  	bclr	12, 2		      f0: 4d 82 00 20                  	bclr	12, 2
      f4: 38 80 08 00                  	li 4, 2048		      f4: 38 80 08 00                  	li 4, 2048
      f8: 7c a0 18 28                  	lwarx 5, 0, 3		      f8: 7c a0 18 28                  	lwarx 5, 0, 3
      fc: 7c a5 20 78                  	andc 5, 5, 4		      fc: 7c a5 20 78                  	andc 5, 5, 4
     100: 7c a0 19 2d                  	stwcx. 5, 0, 3		     100: 7c a0 19 2d                  	stwcx. 5, 0, 3
     104: 40 a2 ff f4                  	bc 5, 2, .+65524	     104: 40 a2 ff f4                  	bc 5, 2, .+65524
     108: 4e 80 00 20                  	blr			     108: 4e 80 00 20                  	blr

0000010c flush_dcache_icache_page:				0000010c flush_dcache_icache_page:
     10c: 7c 08 02 a6                  	mflr 0			     10c: 7c 08 02 a6                  	mflr 0
     110: 90 01 00 04                  	stw 0, 4(1)		     110: 90 01 00 04                  	stw 0, 4(1)
     114: 94 21 ff f0                  	stwu 1, -16(1)		     114: 94 21 ff f0                  	stwu 1, -16(1)
     118: 80 82 00 00                  	lwz 4, 0(2)		     118: 80 82 00 00                  	lwz 4, 0(2)
     11c: 38 84 00 01                  	addi 4, 4, 1		     11c: 38 84 00 01                  	addi 4, 4, 1
     120: 90 82 00 00                  	stw 4, 0(2)		     120: 90 82 00 00                  	stw 4, 0(2)
     124: 80 82 0a e4                  	lwz 4, 2788(2)		     124: 80 82 0a e4                  	lwz 4, 2788(2)
     128: 38 84 00 01                  	addi 4, 4, 1		     128: 38 84 00 01                  	addi 4, 4, 1
     12c: 90 82 0a e4                  	stw 4, 2788(2)		     12c: 90 82 0a e4                  	stw 4, 2788(2)
     130: 3c 80 00 00                  	lis 4, 0		     130: 3c 80 00 00                  	lis 4, 0
     134: 80 84 00 00                  	lwz 4, 0(4)		     134: 80 84 00 00                  	lwz 4, 0(4)
     138: 7c 64 18 50                  	subf 3, 4, 3		     138: 7c 64 18 50                  	subf 3, 4, 3
     13c: 3c 80 cc cc                  	lis 4, -13108		     13c: 3c 80 cc cc                  	lis 4, -13108
     140: 54 63 e8 fe                  	srwi 3, 3, 3		     140: 54 63 e8 fe                  	srwi 3, 3, 3
     144: 60 84 d0 00                  	ori 4, 4, 53248		     144: 60 84 d0 00                  	ori 4, 4, 53248
     148: 7c 63 21 d6                  	mullw 3, 3, 4		     148: 7c 63 21 d6                  	mullw 3, 3, 4
     14c: 3c 63 c0 00                  	addis 3, 3, -16384	     14c: 3c 63 c0 00                  	addis 3, 3, -16384
     150: 48 00 00 01                  	bl .+0			     150: 48 00 00 01                  	bl .+0
     154: 80 62 0a e4                  	lwz 3, 2788(2)		     154: 80 62 0a e4                  	lwz 3, 2788(2)
     158: 38 63 ff ff                  	addi 3, 3, -1		     158: 38 63 ff ff                  	addi 3, 3, -1
     15c: 90 62 0a e4                  	stw 3, 2788(2)		     15c: 90 62 0a e4                  	stw 3, 2788(2)
     160: 80 62 00 00                  	lwz 3, 0(2)		     160: 80 62 00 00                  	lwz 3, 0(2)
     164: 38 63 ff ff                  	addi 3, 3, -1		     164: 38 63 ff ff                  	addi 3, 3, -1
     168: 90 62 00 00                  	stw 3, 0(2)		     168: 90 62 00 00                  	stw 3, 0(2)
     16c: 80 01 00 14                  	lwz 0, 20(1)		     16c: 80 01 00 14                  	lwz 0, 20(1)
     170: 38 21 00 10                  	addi 1, 1, 16		     170: 38 21 00 10                  	addi 1, 1, 16
     174: 7c 08 03 a6                  	mtlr 0			     174: 7c 08 03 a6                  	mtlr 0
     178: 4e 80 00 20                  	blr			     178: 4e 80 00 20                  	blr

0000017c clear_user_page:					0000017c clear_user_page:
     17c: 38 80 00 80                  	li 4, 128	      |	     17c: 94 21 ff f0                  	stwu 1, -16(1)
     180: 7c 89 03 a6                  	mtctr 4		      |	     180: 38 80 00 80                  	li 4, 128
     184: 7c 00 1f ec                  	dcbz 0, 3	      |	     184: 38 63 ff e0                  	addi 3, 3, -32
     188: 38 63 00 20                  	addi 3, 3, 32	      |	     188: 7c 89 03 a6                  	mtctr 4
     18c: 42 00 ff f8                  	bdnz .+65528	      |	     18c: 38 81 00 0f                  	addi 4, 1, 15
     190: 80 65 00 00                  	lwz 3, 0(5)	      |	     190: 8c c3 00 20                  	lbzu 6, 32(3)
     194: 70 63 08 00                  	andi. 3, 3, 2048      |	     194: 98 c1 00 0f                  	stb 6, 15(1)
     198: 4d 82 00 20                  	bclr	12, 2	      |	     198: 7c 00 27 ec                  	dcbz 0, 4
     19c: 38 60 08 00                  	li 3, 2048	      |	     19c: 42 00 ff f4                  	bdnz .+65524
     1a0: 7c 80 28 28                  	lwarx 4, 0, 5	      |	     1a0: 80 65 00 00                  	lwz 3, 0(5)
     1a4: 7c 84 18 78                  	andc 4, 4, 3	      |	     1a4: 70 63 08 00                  	andi. 3, 3, 2048
     1a8: 7c 80 29 2d                  	stwcx. 4, 0, 5	      |	     1a8: 41 82 00 18                  	bt	2, .+24
     1ac: 40 a2 ff f4                  	bc 5, 2, .+65524      |	     1ac: 38 60 08 00                  	li 3, 2048
     1b0: 4e 80 00 20                  	blr		      |	     1b0: 7c 80 28 28                  	lwarx 4, 0, 5
							      |	     1b4: 7c 84 18 78                  	andc 4, 4, 3
000001b4 copy_user_page:				      |	     1b8: 7c 80 29 2d                  	stwcx. 4, 0, 5
     1b4: 7c 08 02 a6                  	mflr 0		      |	     1bc: 40 a2 ff f4                  	bc 5, 2, .+65524
     1b8: 90 01 00 04                  	stw 0, 4(1)	      |	     1c0: 38 21 00 10                  	addi 1, 1, 16
     1bc: 94 21 ff f0                  	stwu 1, -16(1)	      |	     1c4: 4e 80 00 20                  	blr
     1c0: 93 c1 00 08                  	stw 30, 8(1)	      |
     1c4: 7c de 33 78                  	mr 30, 6	      |	000001c8 copy_user_page:
     1c8: 48 00 00 01                  	bl .+0		      |	     1c8: 7c 08 02 a6                  	mflr 0
     1cc: 80 7e 00 00                  	lwz 3, 0(30)	      |	     1cc: 90 01 00 04                  	stw 0, 4(1)
     1d0: 70 63 08 00                  	andi. 3, 3, 2048      |	     1d0: 94 21 ff f0                  	stwu 1, -16(1)
     1d4: 41 82 00 18                  	bt	2, .+24	      |	     1d4: 93 c1 00 08                  	stw 30, 8(1)
     1d8: 38 60 08 00                  	li 3, 2048	      |	     1d8: 7c de 33 78                  	mr 30, 6
     1dc: 7c 80 f0 28                  	lwarx 4, 0, 30	      |	     1dc: 48 00 00 01                  	bl .+0
     1e0: 7c 84 18 78                  	andc 4, 4, 3	      |	     1e0: 80 7e 00 00                  	lwz 3, 0(30)
     1e4: 7c 80 f1 2d                  	stwcx. 4, 0, 30	      |	     1e4: 70 63 08 00                  	andi. 3, 3, 2048
     1e8: 40 a2 ff f4                  	bc 5, 2, .+65524      |	     1e8: 41 82 00 18                  	bt	2, .+24
     1ec: 83 c1 00 08                  	lwz 30, 8(1)	      |	     1ec: 38 60 08 00                  	li 3, 2048
     1f0: 80 01 00 14                  	lwz 0, 20(1)	      |	     1f0: 7c 80 f0 28                  	lwarx 4, 0, 30
     1f4: 38 21 00 10                  	addi 1, 1, 16	      |	     1f4: 7c 84 18 78                  	andc 4, 4, 3
     1f8: 7c 08 03 a6                  	mtlr 0		      |	     1f8: 7c 80 f1 2d                  	stwcx. 4, 0, 30
     1fc: 4e 80 00 20                  	blr		      |	     1fc: 40 a2 ff f4                  	bc 5, 2, .+65524
							      |	     200: 83 c1 00 08                  	lwz 30, 8(1)
00000200 flush_icache_user_range:			      |	     204: 80 01 00 14                  	lwz 0, 20(1)
     200: 7c 08 02 a6                  	mflr 0		      |	     208: 38 21 00 10                  	addi 1, 1, 16
     204: 90 01 00 04                  	stw 0, 4(1)	      |	     20c: 7c 08 03 a6                  	mtlr 0
     208: 94 21 ff e0                  	stwu 1, -32(1)	      |	     210: 4e 80 00 20                  	blr
     20c: 3c 60 00 00                  	lis 3, 0	      |
     210: 93 81 00 10                  	stw 28, 16(1)	      |	00000214 flush_icache_user_range:
     214: 7c 9c 23 78                  	mr 28, 4	      |	     214: 7c 08 02 a6                  	mflr 0
     218: 38 63 00 00                  	addi 3, 3, 0	      |	     218: 90 01 00 04                  	stw 0, 4(1)
     21c: 38 80 00 53                  	li 4, 83	      |	     21c: 94 21 ff e0                  	stwu 1, -32(1)
     220: 93 a1 00 14                  	stw 29, 20(1)	      |	     220: 3c 60 00 00                  	lis 3, 0
     224: 7c bd 2b 78                  	mr 29, 5	      |	     224: 93 81 00 10                  	stw 28, 16(1)
     228: 38 a0 00 00                  	li 5, 0		      |	     228: 7c 9c 23 78                  	mr 28, 4
     22c: 93 c1 00 18                  	stw 30, 24(1)	      |	     22c: 38 63 00 00                  	addi 3, 3, 0
     230: 7c de 33 78                  	mr 30, 6	      |	     230: 38 80 00 53                  	li 4, 83
     234: 48 00 00 01                  	bl .+0		      |	     234: 93 a1 00 14                  	stw 29, 20(1)
     238: 3c 60 00 00                  	lis 3, 0	      |	     238: 7c bd 2b 78                  	mr 29, 5
     23c: 3c 80 cc cc                  	lis 4, -13108	      |	     23c: 38 a0 00 00                  	li 5, 0
     240: 80 63 00 00                  	lwz 3, 0(3)	      |	     240: 93 c1 00 18                  	stw 30, 24(1)
     244: 60 84 d0 00                  	ori 4, 4, 53248	      |	     244: 7c de 33 78                  	mr 30, 6
     248: 7c 63 e0 50                  	subf 3, 3, 28	      |	     248: 48 00 00 01                  	bl .+0
     24c: 54 63 e8 fe                  	srwi 3, 3, 3	      |	     24c: 3c 60 00 00                  	lis 3, 0
     250: 7c 63 21 d6                  	mullw 3, 3, 4	      |	     250: 3c 80 cc cc                  	lis 4, -13108
     254: 57 a4 05 3e                  	clrlwi	4, 29, 20     |	     254: 80 63 00 00                  	lwz 3, 0(3)
     258: 50 64 00 26                  	rlwimi 4, 3, 0, 0, 19 |	     258: 60 84 d0 00                  	ori 4, 4, 53248
     25c: 3c 64 c0 00                  	addis 3, 4, -16384    |	     25c: 7c 63 e0 50                  	subf 3, 3, 28
     260: 7c 83 f2 14                  	add 4, 3, 30	      |	     260: 54 63 e8 fe                  	srwi 3, 3, 3
     264: 48 00 00 01                  	bl .+0		      |	     264: 7c 63 21 d6                  	mullw 3, 3, 4
     268: 83 c1 00 18                  	lwz 30, 24(1)	      |	     268: 57 a4 05 3e                  	clrlwi	4, 29, 20
     26c: 83 a1 00 14                  	lwz 29, 20(1)	      |	     26c: 50 64 00 26                  	rlwimi 4, 3, 0, 0, 19
     270: 83 81 00 10                  	lwz 28, 16(1)	      |	     270: 3c 64 c0 00                  	addis 3, 4, -16384
     274: 80 01 00 24                  	lwz 0, 36(1)	      |	     274: 7c 83 f2 14                  	add 4, 3, 30
     278: 38 21 00 20                  	addi 1, 1, 32	      |	     278: 48 00 00 01                  	bl .+0
     27c: 7c 08 03 a6                  	mtlr 0		      |	     27c: 83 c1 00 18                  	lwz 30, 24(1)
     280: 4e 80 00 20                  	blr		      |	     280: 83 a1 00 14                  	lwz 29, 20(1)
							      |	     284: 83 81 00 10                  	lwz 28, 16(1)
00000284 update_mmu_cache:				      |	     288: 80 01 00 24                  	lwz 0, 36(1)
     284: 4e 80 00 20                  	blr		      |	     28c: 38 21 00 20                  	addi 1, 1, 32
							      |	     290: 7c 08 03 a6                  	mtlr 0
00000288 devmem_is_allowed:				      |	     294: 4e 80 00 20                  	blr
     288: 7c 08 02 a6                  	mflr 0		      |
     28c: 90 01 00 04                  	stw 0, 4(1)	      |	00000298 update_mmu_cache:
     290: 94 21 ff f0                  	stwu 1, -16(1)	      |	     298: 4e 80 00 20                  	blr
     294: 93 c1 00 08                  	stw 30, 8(1)	      |
     298: 7c 7e 1b 78                  	mr 30, 3	      |	0000029c devmem_is_allowed:
     29c: 54 63 65 3e                  	srwi 3, 3, 20	      |	     29c: 7c 08 02 a6                  	mflr 0
     2a0: 57 c4 60 26                  	slwi 4, 30, 12	      |	     2a0: 90 01 00 04                  	stw 0, 4(1)
     2a4: 48 00 00 01                  	bl .+0		      |	     2a4: 94 21 ff f0                  	stwu 1, -16(1)
     2a8: 70 63 00 01                  	andi. 3, 3, 1	      |	     2a8: 93 c1 00 08                  	stw 30, 8(1)
     2ac: 38 60 00 00                  	li 3, 0		      |	     2ac: 7c 7e 1b 78                  	mr 30, 3
     2b0: 41 81 00 14                  	bt	1, .+20	      |	     2b0: 54 63 65 3e                  	srwi 3, 3, 20
     2b4: 7f c3 f3 78                  	mr 3, 30	      |	     2b4: 57 c4 60 26                  	slwi 4, 30, 12
     2b8: 48 00 00 01                  	bl .+0			     2b8: 48 00 00 01                  	bl .+0
     2bc: 7c 63 00 34                  	cntlzw	3, 3	      |	     2bc: 70 63 00 01                  	andi. 3, 3, 1
     2c0: 54 63 df fe                  	rlwinm 3, 3, 27, 31,  |	     2c0: 38 60 00 00                  	li 3, 0
     2c4: 83 c1 00 08                  	lwz 30, 8(1)	      |	     2c4: 41 81 00 14                  	bt	1, .+20
     2c8: 80 01 00 14                  	lwz 0, 20(1)	      |	     2c8: 7f c3 f3 78                  	mr 3, 30
     2cc: 38 21 00 10                  	addi 1, 1, 16	      |	     2cc: 48 00 00 01                  	bl .+0
     2d0: 7c 08 03 a6                  	mtlr 0		      |	     2d0: 7c 63 00 34                  	cntlzw	3, 3
     2d4: 4e 80 00 20                  	blr		      |	     2d4: 54 63 df fe                  	rlwinm 3, 3, 27, 31, 
							      >	     2d8: 83 c1 00 08                  	lwz 30, 8(1)
							      >	     2dc: 80 01 00 14                  	lwz 0, 20(1)
							      >	     2e0: 38 21 00 10                  	addi 1, 1, 16
							      >	     2e4: 7c 08 03 a6                  	mtlr 0
							      >	     2e8: 4e 80 00 20                  	blr

Disassembly of section .init.text:				Disassembly of section .init.text:

00000000 mem_topology_setup:					00000000 mem_topology_setup:
       0: 7c 08 02 a6                  	mflr 0			       0: 7c 08 02 a6                  	mflr 0
       4: 90 01 00 04                  	stw 0, 4(1)		       4: 90 01 00 04                  	stw 0, 4(1)
       8: 94 21 ff f0                  	stwu 1, -16(1)		       8: 94 21 ff f0                  	stwu 1, -16(1)
       c: 48 00 00 01                  	bl .+0			       c: 48 00 00 01                  	bl .+0
      10: 54 84 a0 3e                  	rotlwi	4, 4, 20	      10: 54 84 a0 3e                  	rotlwi	4, 4, 20
      14: 3c a0 00 00                  	lis 5, 0		      14: 3c a0 00 00                  	lis 5, 0
      18: 50 64 a0 16                  	rlwimi 4, 3, 20, 0, 1	      18: 50 64 a0 16                  	rlwimi 4, 3, 20, 0, 1
      1c: 3c 60 00 00                  	lis 3, 0		      1c: 3c 60 00 00                  	lis 3, 0
      20: 90 85 00 00                  	stw 4, 0(5)		      20: 90 85 00 00                  	stw 4, 0(5)
      24: 38 a0 ff ff                  	li 5, -1		      24: 38 a0 ff ff                  	li 5, -1
      28: 90 83 00 00                  	stw 4, 0(3)		      28: 90 83 00 00                  	stw 4, 0(3)
      2c: 3c 60 00 00                  	lis 3, 0		      2c: 3c 60 00 00                  	lis 3, 0
      30: 38 80 00 00                  	li 4, 0			      30: 38 80 00 00                  	li 4, 0
      34: 38 c0 ff ff                  	li 6, -1		      34: 38 c0 ff ff                  	li 6, -1
      38: 39 00 00 00                  	li 8, 0			      38: 39 00 00 00                  	li 8, 0
      3c: 90 83 00 00                  	stw 4, 0(3)		      3c: 90 83 00 00                  	stw 4, 0(3)
      40: 3c 60 00 00                  	lis 3, 0		      40: 3c 60 00 00                  	lis 3, 0
      44: 38 80 00 00                  	li 4, 0			      44: 38 80 00 00                  	li 4, 0
      48: 38 63 00 00                  	addi 3, 3, 0		      48: 38 63 00 00                  	addi 3, 3, 0
      4c: 38 e3 00 10                  	addi 7, 3, 16		      4c: 38 e3 00 10                  	addi 7, 3, 16
      50: 38 60 00 00                  	li 3, 0			      50: 38 60 00 00                  	li 3, 0
      54: 48 00 00 01                  	bl .+0			      54: 48 00 00 01                  	bl .+0
      58: 80 01 00 14                  	lwz 0, 20(1)		      58: 80 01 00 14                  	lwz 0, 20(1)
      5c: 38 21 00 10                  	addi 1, 1, 16		      5c: 38 21 00 10                  	addi 1, 1, 16
      60: 7c 08 03 a6                  	mtlr 0			      60: 7c 08 03 a6                  	mtlr 0
      64: 4e 80 00 20                  	blr			      64: 4e 80 00 20                  	blr

00000068 initmem_init:						00000068 initmem_init:
      68: 7c 08 02 a6                  	mflr 0			      68: 7c 08 02 a6                  	mflr 0
      6c: 90 01 00 04                  	stw 0, 4(1)		      6c: 90 01 00 04                  	stw 0, 4(1)
      70: 94 21 ff f0                  	stwu 1, -16(1)		      70: 94 21 ff f0                  	stwu 1, -16(1)
      74: 38 60 00 00                  	li 3, 0			      74: 38 60 00 00                  	li 3, 0
      78: 48 00 00 01                  	bl .+0			      78: 48 00 00 01                  	bl .+0
      7c: 80 01 00 14                  	lwz 0, 20(1)		      7c: 80 01 00 14                  	lwz 0, 20(1)
      80: 38 21 00 10                  	addi 1, 1, 16		      80: 38 21 00 10                  	addi 1, 1, 16
      84: 7c 08 03 a6                  	mtlr 0			      84: 7c 08 03 a6                  	mtlr 0
      88: 4e 80 00 20                  	blr			      88: 4e 80 00 20                  	blr

0000008c paging_init:						0000008c paging_init:
      8c: 7c 08 02 a6                  	mflr 0			      8c: 7c 08 02 a6                  	mflr 0
      90: 90 01 00 04                  	stw 0, 4(1)		      90: 90 01 00 04                  	stw 0, 4(1)
      94: 94 21 ff d0                  	stwu 1, -48(1)		      94: 94 21 ff d0                  	stwu 1, -48(1)
      98: 93 21 00 14                  	stw 25, 20(1)		      98: 93 21 00 14                  	stw 25, 20(1)
      9c: 93 41 00 18                  	stw 26, 24(1)		      9c: 93 41 00 18                  	stw 26, 24(1)
      a0: 93 61 00 1c                  	stw 27, 28(1)		      a0: 93 61 00 1c                  	stw 27, 28(1)
      a4: 93 81 00 20                  	stw 28, 32(1)		      a4: 93 81 00 20                  	stw 28, 32(1)
      a8: 93 a1 00 24                  	stw 29, 36(1)		      a8: 93 a1 00 24                  	stw 29, 36(1)
      ac: 93 c1 00 28                  	stw 30, 40(1)		      ac: 93 c1 00 28                  	stw 30, 40(1)
      b0: 48 00 00 01                  	bl .+0			      b0: 48 00 00 01                  	bl .+0
      b4: 7c 7e 1b 78                  	mr 30, 3		      b4: 7c 7e 1b 78                  	mr 30, 3
      b8: 7c 9d 23 78                  	mr 29, 4		      b8: 7c 9d 23 78                  	mr 29, 4
      bc: 3f 40 ff fe                  	lis 26, -2		      bc: 3f 40 ff fe                  	lis 26, -2
      c0: 48 00 00 01                  	bl .+0			      c0: 48 00 00 01                  	bl .+0
      c4: 7c 7c 1b 78                  	mr 28, 3		      c4: 7c 7c 1b 78                  	mr 28, 3
      c8: 7c 9b 23 78                  	mr 27, 4		      c8: 7c 9b 23 78                  	mr 27, 4
      cc: 3b 20 00 00                  	li 25, 0		      cc: 3b 20 00 00                  	li 25, 0
      d0: 38 e1 00 08                  	addi 7, 1, 8		      d0: 38 e1 00 08                  	addi 7, 1, 8
      d4: 7f 43 d3 78                  	mr 3, 26		      d4: 7f 43 d3 78                  	mr 3, 26
      d8: 93 21 00 10                  	stw 25, 16(1)		      d8: 93 21 00 10                  	stw 25, 16(1)
      dc: 38 a0 00 00                  	li 5, 0			      dc: 38 a0 00 00                  	li 5, 0
      e0: 38 c0 00 00                  	li 6, 0			      e0: 38 c0 00 00                  	li 6, 0
      e4: 93 21 00 08                  	stw 25, 8(1)		      e4: 93 21 00 08                  	stw 25, 8(1)
      e8: 48 00 00 01                  	bl .+0			      e8: 48 00 00 01                  	bl .+0
      ec: 3b 5a 10 00                  	addi 26, 26, 4096	      ec: 3b 5a 10 00                  	addi 26, 26, 4096
      f0: 2c 1a f0 00                  	cmpwi	26, -4096	      f0: 2c 1a f0 00                  	cmpwi	26, -4096
      f4: 40 82 ff dc                  	bf	2, .+65500	      f4: 40 82 ff dc                  	bf	2, .+65500
      f8: 3c 60 00 00                  	lis 3, 0		      f8: 3c 60 00 00                  	lis 3, 0
      fc: 4c c6 31 82                  	crclr	6		      fc: 4c c6 31 82                  	crclr	6
     100: 7f 85 e3 78                  	mr 5, 28		     100: 7f 85 e3 78                  	mr 5, 28
     104: 38 63 00 00                  	addi 3, 3, 0		     104: 38 63 00 00                  	addi 3, 3, 0
     108: 7f 66 db 78                  	mr 6, 27		     108: 7f 66 db 78                  	mr 6, 27
     10c: 7f c7 f3 78                  	mr 7, 30		     10c: 7f c7 f3 78                  	mr 7, 30
     110: 7f a8 eb 78                  	mr 8, 29		     110: 7f a8 eb 78                  	mr 8, 29
     114: 48 00 00 01                  	bl .+0			     114: 48 00 00 01                  	bl .+0
     118: 7c 7d d8 10                  	subfc 3, 29, 27		     118: 7c 7d d8 10                  	subfc 3, 29, 27
     11c: 4c c6 31 82                  	crclr	6		     11c: 4c c6 31 82                  	crclr	6
     120: 7c be e1 10                  	subfe 5, 30, 28		     120: 7c be e1 10                  	subfe 5, 30, 28
     124: 54 64 60 3e                  	rotlwi	4, 3, 12	     124: 54 64 60 3e                  	rotlwi	4, 3, 12
     128: 3c 60 00 00                  	lis 3, 0		     128: 3c 60 00 00                  	lis 3, 0
     12c: 50 a4 60 26                  	rlwimi 4, 5, 12, 0, 1	     12c: 50 a4 60 26                  	rlwimi 4, 5, 12, 0, 1
     130: 38 63 00 00                  	addi 3, 3, 0		     130: 38 63 00 00                  	addi 3, 3, 0
     134: 48 00 00 01                  	bl .+0			     134: 48 00 00 01                  	bl .+0
     138: 3c 60 00 00                  	lis 3, 0		     138: 3c 60 00 00                  	lis 3, 0
     13c: 80 83 00 00                  	lwz 4, 0(3)		     13c: 80 83 00 00                  	lwz 4, 0(3)
     140: 3c 60 00 00                  	lis 3, 0		     140: 3c 60 00 00                  	lis 3, 0
     144: 94 83 00 00                  	stwu 4, 0(3)		     144: 94 83 00 00                  	stwu 4, 0(3)
     148: 48 00 00 01                  	bl .+0			     148: 48 00 00 01                  	bl .+0
     14c: 83 c1 00 28                  	lwz 30, 40(1)		     14c: 83 c1 00 28                  	lwz 30, 40(1)
     150: 83 a1 00 24                  	lwz 29, 36(1)		     150: 83 a1 00 24                  	lwz 29, 36(1)
     154: 83 81 00 20                  	lwz 28, 32(1)		     154: 83 81 00 20                  	lwz 28, 32(1)
     158: 83 61 00 1c                  	lwz 27, 28(1)		     158: 83 61 00 1c                  	lwz 27, 28(1)
     15c: 83 41 00 18                  	lwz 26, 24(1)		     15c: 83 41 00 18                  	lwz 26, 24(1)
     160: 83 21 00 14                  	lwz 25, 20(1)		     160: 83 21 00 14                  	lwz 25, 20(1)
     164: 80 01 00 34                  	lwz 0, 52(1)		     164: 80 01 00 34                  	lwz 0, 52(1)
     168: 38 21 00 30                  	addi 1, 1, 48		     168: 38 21 00 30                  	addi 1, 1, 48
     16c: 7c 08 03 a6                  	mtlr 0			     16c: 7c 08 03 a6                  	mtlr 0
     170: 4e 80 00 20                  	blr			     170: 4e 80 00 20                  	blr

00000174 mem_init:						00000174 mem_init:
     174: 7c 08 02 a6                  	mflr 0			     174: 7c 08 02 a6                  	mflr 0
     178: 90 01 00 04                  	stw 0, 4(1)		     178: 90 01 00 04                  	stw 0, 4(1)
     17c: 94 21 ff e0                  	stwu 1, -32(1)		     17c: 94 21 ff e0                  	stwu 1, -32(1)
     180: 3c 60 00 00                  	lis 3, 0		     180: 3c 60 00 00                  	lis 3, 0
     184: 3c 80 00 00                  	lis 4, 0		     184: 3c 80 00 00                  	lis 4, 0
     188: 93 81 00 10                  	stw 28, 16(1)		     188: 93 81 00 10                  	stw 28, 16(1)
     18c: 3f 80 00 00                  	lis 28, 0		     18c: 3f 80 00 00                  	lis 28, 0
     190: 80 63 00 00                  	lwz 3, 0(3)		     190: 80 63 00 00                  	lwz 3, 0(3)
     194: 80 84 00 00                  	lwz 4, 0(4)		     194: 80 84 00 00                  	lwz 4, 0(4)
     198: 54 63 60 26                  	slwi 3, 3, 12		     198: 54 63 60 26                  	slwi 3, 3, 12
     19c: 3c 63 c0 00                  	addis 3, 3, -16384	     19c: 3c 63 c0 00                  	addis 3, 3, -16384
     1a0: 90 7c 00 00                  	stw 3, 0(28)		     1a0: 90 7c 00 00                  	stw 3, 0(28)
     1a4: 3c 60 00 00                  	lis 3, 0		     1a4: 3c 60 00 00                  	lis 3, 0
     1a8: 93 a1 00 14                  	stw 29, 20(1)		     1a8: 93 a1 00 14                  	stw 29, 20(1)
     1ac: 93 c1 00 18                  	stw 30, 24(1)		     1ac: 93 c1 00 18                  	stw 30, 24(1)
     1b0: 90 83 00 00                  	stw 4, 0(3)		     1b0: 90 83 00 00                  	stw 4, 0(3)
     1b4: 48 00 00 01                  	bl .+0			     1b4: 48 00 00 01                  	bl .+0
     1b8: 38 60 00 00                  	li 3, 0			     1b8: 38 60 00 00                  	li 3, 0
     1bc: 48 00 00 01                  	bl .+0			     1bc: 48 00 00 01                  	bl .+0
     1c0: 3c 60 00 00                  	lis 3, 0		     1c0: 3c 60 00 00                  	lis 3, 0
     1c4: 4c c6 31 82                  	crclr	6		     1c4: 4c c6 31 82                  	crclr	6
     1c8: 38 63 00 00                  	addi 3, 3, 0		     1c8: 38 63 00 00                  	addi 3, 3, 0
     1cc: 48 00 00 01                  	bl .+0			     1cc: 48 00 00 01                  	bl .+0
     1d0: 3c 80 ff fd                  	lis 4, -3		     1d0: 3c 80 ff fd                  	lis 4, -3
     1d4: 3c 60 00 00                  	lis 3, 0		     1d4: 3c 60 00 00                  	lis 3, 0
     1d8: 4c c6 31 82                  	crclr	6		     1d8: 4c c6 31 82                  	crclr	6
     1dc: 60 9e f0 00                  	ori 30, 4, 61440	     1dc: 60 9e f0 00                  	ori 30, 4, 61440
     1e0: 38 63 00 00                  	addi 3, 3, 0		     1e0: 38 63 00 00                  	addi 3, 3, 0
     1e4: 7f c4 f3 78                  	mr 4, 30		     1e4: 7f c4 f3 78                  	mr 4, 30
     1e8: 38 a0 f0 00                  	li 5, -4096		     1e8: 38 a0 f0 00                  	li 5, -4096
     1ec: 48 00 00 01                  	bl .+0			     1ec: 48 00 00 01                  	bl .+0
     1f0: 3c 80 ff dd                  	lis 4, -35		     1f0: 3c 80 ff dd                  	lis 4, -35
     1f4: 3c 60 00 00                  	lis 3, 0		     1f4: 3c 60 00 00                  	lis 3, 0
     1f8: 4c c6 31 82                  	crclr	6		     1f8: 4c c6 31 82                  	crclr	6
     1fc: 60 9d f0 00                  	ori 29, 4, 61440	     1fc: 60 9d f0 00                  	ori 29, 4, 61440
     200: 38 63 00 00                  	addi 3, 3, 0		     200: 38 63 00 00                  	addi 3, 3, 0
     204: 7f a4 eb 78                  	mr 4, 29		     204: 7f a4 eb 78                  	mr 4, 29
     208: 7f c5 f3 78                  	mr 5, 30		     208: 7f c5 f3 78                  	mr 5, 30
     20c: 48 00 00 01                  	bl .+0			     20c: 48 00 00 01                  	bl .+0
     210: 3f c0 00 00                  	lis 30, 0		     210: 3f c0 00 00                  	lis 30, 0
     214: 3c 60 00 00                  	lis 3, 0		     214: 3c 60 00 00                  	lis 3, 0
     218: 4c c6 31 82                  	crclr	6		     218: 4c c6 31 82                  	crclr	6
     21c: 80 9e 00 00                  	lwz 4, 0(30)		     21c: 80 9e 00 00                  	lwz 4, 0(30)
     220: 38 63 00 00                  	addi 3, 3, 0		     220: 38 63 00 00                  	addi 3, 3, 0
     224: 7f a5 eb 78                  	mr 5, 29		     224: 7f a5 eb 78                  	mr 5, 29
     228: 48 00 00 01                  	bl .+0			     228: 48 00 00 01                  	bl .+0
     22c: 80 7c 00 00                  	lwz 3, 0(28)		     22c: 80 7c 00 00                  	lwz 3, 0(28)
     230: 3c 80 01 00                  	lis 4, 256		     230: 3c 80 01 00                  	lis 4, 256
     234: 4c c6 31 82                  	crclr	6		     234: 4c c6 31 82                  	crclr	6
     238: 38 63 ff ff                  	addi 3, 3, -1		     238: 38 63 ff ff                  	addi 3, 3, -1
     23c: 80 be 00 00                  	lwz 5, 0(30)		     23c: 80 be 00 00                  	lwz 5, 0(30)
     240: 3c 63 10 00                  	addis 3, 3, 4096	     240: 3c 63 10 00                  	addis 3, 3, 4096
     244: 54 63 00 06                  	rlwinm 3, 3, 0, 0, 3	     244: 54 63 00 06                  	rlwinm 3, 3, 0, 0, 3
     248: 50 64 02 0c                  	rlwimi 4, 3, 0, 8, 6	     248: 50 64 02 0c                  	rlwimi 4, 3, 0, 8, 6
     24c: 3c 60 00 00                  	lis 3, 0		     24c: 3c 60 00 00                  	lis 3, 0
     250: 38 63 00 00                  	addi 3, 3, 0		     250: 38 63 00 00                  	addi 3, 3, 0
     254: 48 00 00 01                  	bl .+0			     254: 48 00 00 01                  	bl .+0
     258: 83 c1 00 18                  	lwz 30, 24(1)		     258: 83 c1 00 18                  	lwz 30, 24(1)
     25c: 83 a1 00 14                  	lwz 29, 20(1)		     25c: 83 a1 00 14                  	lwz 29, 20(1)
     260: 83 81 00 10                  	lwz 28, 16(1)		     260: 83 81 00 10                  	lwz 28, 16(1)
     264: 80 01 00 24                  	lwz 0, 36(1)		     264: 80 01 00 24                  	lwz 0, 36(1)
     268: 38 21 00 20                  	addi 1, 1, 32		     268: 38 21 00 20                  	addi 1, 1, 32
     26c: 7c 08 03 a6                  	mtlr 0			     26c: 7c 08 03 a6                  	mtlr 0
     270: 4e 80 00 20                  	blr			     270: 4e 80 00 20                  	blr

00000274 add_system_ram_resources:				00000274 add_system_ram_resources:
     274: 7c 08 02 a6                  	mflr 0			     274: 7c 08 02 a6                  	mflr 0
     278: 90 01 00 04                  	stw 0, 4(1)		     278: 90 01 00 04                  	stw 0, 4(1)
     27c: 94 21 ff c0                  	stwu 1, -64(1)		     27c: 94 21 ff c0                  	stwu 1, -64(1)
     280: 3c 60 00 00                  	lis 3, 0		     280: 3c 60 00 00                  	lis 3, 0
     284: 93 a1 00 34                  	stw 29, 52(1)		     284: 93 a1 00 34                  	stw 29, 52(1)
     288: 3b a3 00 00                  	addi 29, 3, 0		     288: 3b a3 00 00                  	addi 29, 3, 0
     28c: 80 7d 00 10                  	lwz 3, 16(29)		     28c: 80 7d 00 10                  	lwz 3, 16(29)
     290: 93 81 00 30                  	stw 28, 48(1)		     290: 93 81 00 30                  	stw 28, 48(1)
     294: 1c 63 00 18                  	mulli 3, 3, 24		     294: 1c 63 00 18                  	mulli 3, 3, 24
     298: 83 9d 00 20                  	lwz 28, 32(29)		     298: 83 9d 00 20                  	lwz 28, 32(29)
     29c: 7c 7c 1a 14                  	add 3, 28, 3		     29c: 7c 7c 1a 14                  	add 3, 28, 3
     2a0: 92 a1 00 14                  	stw 21, 20(1)		     2a0: 92 a1 00 14                  	stw 21, 20(1)
     2a4: 7c 1c 18 40                  	cmplw	28, 3		     2a4: 7c 1c 18 40                  	cmplw	28, 3
     2a8: 92 c1 00 18                  	stw 22, 24(1)		     2a8: 92 c1 00 18                  	stw 22, 24(1)
     2ac: 92 e1 00 1c                  	stw 23, 28(1)		     2ac: 92 e1 00 1c                  	stw 23, 28(1)
     2b0: 93 01 00 20                  	stw 24, 32(1)		     2b0: 93 01 00 20                  	stw 24, 32(1)
     2b4: 93 21 00 24                  	stw 25, 36(1)		     2b4: 93 21 00 24                  	stw 25, 36(1)
     2b8: 93 41 00 28                  	stw 26, 40(1)		     2b8: 93 41 00 28                  	stw 26, 40(1)
     2bc: 93 61 00 2c                  	stw 27, 44(1)		     2bc: 93 61 00 2c                  	stw 27, 44(1)
     2c0: 93 c1 00 38                  	stw 30, 56(1)		     2c0: 93 c1 00 38                  	stw 30, 56(1)
     2c4: 40 80 00 ac                  	bf	0, .+172	     2c4: 40 80 00 ac                  	bf	0, .+172
     2c8: 3c 60 00 00                  	lis 3, 0		     2c8: 3c 60 00 00                  	lis 3, 0
     2cc: 3c 80 00 00                  	lis 4, 0		     2cc: 3c 80 00 00                  	lis 4, 0
     2d0: 3c a0 81 00                  	lis 5, -32512		     2d0: 3c a0 81 00                  	lis 5, -32512
     2d4: 3c c0 00 00                  	lis 6, 0		     2d4: 3c c0 00 00                  	lis 6, 0
     2d8: 3b 7c ff e8                  	addi 27, 28, -24	     2d8: 3b 7c ff e8                  	addi 27, 28, -24
     2dc: 3b 40 00 00                  	li 26, 0		     2dc: 3b 40 00 00                  	li 26, 0
     2e0: 3b 23 00 00                  	addi 25, 3, 0		     2e0: 3b 23 00 00                  	addi 25, 3, 0
     2e4: 3b 04 00 00                  	addi 24, 4, 0		     2e4: 3b 04 00 00                  	addi 24, 4, 0
     2e8: 60 b7 02 00                  	ori 23, 5, 512		     2e8: 60 b7 02 00                  	ori 23, 5, 512
     2ec: 3b c6 00 00                  	addi 30, 6, 0		     2ec: 3b c6 00 00                  	addi 30, 6, 0
     2f0: 80 79 00 18                  	lwz 3, 24(25)		     2f0: 80 79 00 18                  	lwz 3, 24(25)
     2f4: 38 80 0d c0                  	li 4, 3520		     2f4: 38 80 0d c0                  	li 4, 3520
     2f8: 38 a0 00 28                  	li 5, 40		     2f8: 38 a0 00 28                  	li 5, 40
     2fc: 82 db 00 1c                  	lwz 22, 28(27)		     2fc: 82 db 00 1c                  	lwz 22, 28(27)
     300: 82 bb 00 24                  	lwz 21, 36(27)		     300: 82 bb 00 24                  	lwz 21, 36(27)
     304: 48 00 00 01                  	bl .+0			     304: 48 00 00 01                  	bl .+0
     308: 7c 64 1b 78                  	mr 4, 3			     308: 7c 64 1b 78                  	mr 4, 3
     30c: 7c 63 00 34                  	cntlzw	3, 3		     30c: 7c 63 00 34                  	cntlzw	3, 3
     310: 28 04 00 00                  	cmplwi	4, 0		     310: 28 04 00 00                  	cmplwi	4, 0
     314: 54 63 df fe                  	rlwinm 3, 3, 27, 31, 	     314: 54 63 df fe                  	rlwinm 3, 3, 27, 31, 
     318: 0f 03 00 00                  	twnei	3, 0		     318: 0f 03 00 00                  	twnei	3, 0
     31c: 41 82 00 34                  	bt	2, .+52		     31c: 41 82 00 34                  	bt	2, .+52
     320: 7c 76 aa 14                  	add 3, 22, 21		     320: 7c 76 aa 14                  	add 3, 22, 21
     324: 93 04 00 10                  	stw 24, 16(4)		     324: 93 04 00 10                  	stw 24, 16(4)
     328: 38 63 ff ff                  	addi 3, 3, -1		     328: 38 63 ff ff                  	addi 3, 3, -1
     32c: 90 64 00 0c                  	stw 3, 12(4)		     32c: 90 64 00 0c                  	stw 3, 12(4)
     330: 7f c3 f3 78                  	mr 3, 30		     330: 7f c3 f3 78                  	mr 3, 30
     334: 93 44 00 00                  	stw 26, 0(4)		     334: 93 44 00 00                  	stw 26, 0(4)
     338: 92 c4 00 04                  	stw 22, 4(4)		     338: 92 c4 00 04                  	stw 22, 4(4)
     33c: 93 44 00 08                  	stw 26, 8(4)		     33c: 93 44 00 08                  	stw 26, 8(4)
     340: 92 e4 00 14                  	stw 23, 20(4)		     340: 92 e4 00 14                  	stw 23, 20(4)
     344: 48 00 00 01                  	bl .+0			     344: 48 00 00 01                  	bl .+0
     348: 54 63 0f fe                  	srwi 3, 3, 31		     348: 54 63 0f fe                  	srwi 3, 3, 31
     34c: 0f 03 00 00                  	twnei	3, 0		     34c: 0f 03 00 00                  	twnei	3, 0
     350: 80 7d 00 10                  	lwz 3, 16(29)		     350: 80 7d 00 10                  	lwz 3, 16(29)
     354: 3b 9c 00 18                  	addi 28, 28, 24		     354: 3b 9c 00 18                  	addi 28, 28, 24
     358: 3b 7b 00 18                  	addi 27, 27, 24		     358: 3b 7b 00 18                  	addi 27, 27, 24
     35c: 80 9d 00 20                  	lwz 4, 32(29)		     35c: 80 9d 00 20                  	lwz 4, 32(29)
     360: 1c 63 00 18                  	mulli 3, 3, 24		     360: 1c 63 00 18                  	mulli 3, 3, 24
     364: 7c 64 1a 14                  	add 3, 4, 3		     364: 7c 64 1a 14                  	add 3, 4, 3
     368: 7c 1c 18 40                  	cmplw	28, 3		     368: 7c 1c 18 40                  	cmplw	28, 3
     36c: 41 80 ff 84                  	bt	0, .+65412	     36c: 41 80 ff 84                  	bt	0, .+65412
     370: 38 60 00 00                  	li 3, 0			     370: 38 60 00 00                  	li 3, 0
     374: 83 c1 00 38                  	lwz 30, 56(1)		     374: 83 c1 00 38                  	lwz 30, 56(1)
     378: 83 a1 00 34                  	lwz 29, 52(1)		     378: 83 a1 00 34                  	lwz 29, 52(1)
     37c: 83 81 00 30                  	lwz 28, 48(1)		     37c: 83 81 00 30                  	lwz 28, 48(1)
     380: 83 61 00 2c                  	lwz 27, 44(1)		     380: 83 61 00 2c                  	lwz 27, 44(1)
     384: 83 41 00 28                  	lwz 26, 40(1)		     384: 83 41 00 28                  	lwz 26, 40(1)
     388: 83 21 00 24                  	lwz 25, 36(1)		     388: 83 21 00 24                  	lwz 25, 36(1)
     38c: 83 01 00 20                  	lwz 24, 32(1)		     38c: 83 01 00 20                  	lwz 24, 32(1)
     390: 82 e1 00 1c                  	lwz 23, 28(1)		     390: 82 e1 00 1c                  	lwz 23, 28(1)
     394: 82 c1 00 18                  	lwz 22, 24(1)		     394: 82 c1 00 18                  	lwz 22, 24(1)
     398: 82 a1 00 14                  	lwz 21, 20(1)		     398: 82 a1 00 14                  	lwz 21, 20(1)
     39c: 80 01 00 44                  	lwz 0, 68(1)		     39c: 80 01 00 44                  	lwz 0, 68(1)
     3a0: 38 21 00 40                  	addi 1, 1, 64		     3a0: 38 21 00 40                  	addi 1, 1, 64
     3a4: 7c 08 03 a6                  	mtlr 0			     3a4: 7c 08 03 a6                  	mtlr 0
     3a8: 4e 80 00 20                  	blr			     3a8: 4e 80 00 20                  	blr


More information about the Linuxppc-dev mailing list