Wed Jun 8 05:11:07 2011 UTC ()
In INIT_CPUINFO, make L_CPU to set the cpu_info (just to be safe).


(matt)
diff -r1.37 -r1.38 src/sys/arch/powerpc/include/asm.h

cvs diff -r1.37 -r1.38 src/sys/arch/powerpc/include/asm.h (expand / switch to unified diff)

--- src/sys/arch/powerpc/include/asm.h 2011/06/05 16:52:25 1.37
+++ src/sys/arch/powerpc/include/asm.h 2011/06/08 05:11:07 1.38
@@ -1,14 +1,14 @@ @@ -1,14 +1,14 @@
1/* $NetBSD: asm.h,v 1.37 2011/06/05 16:52:25 matt Exp $ */ 1/* $NetBSD: asm.h,v 1.38 2011/06/08 05:11:07 matt Exp $ */
2 2
3/* 3/*
4 * Copyright (C) 1995, 1996 Wolfgang Solfrank. 4 * Copyright (C) 1995, 1996 Wolfgang Solfrank.
5 * Copyright (C) 1995, 1996 TooLs GmbH. 5 * Copyright (C) 1995, 1996 TooLs GmbH.
6 * All rights reserved. 6 * All rights reserved.
7 * 7 *
8 * Redistribution and use in source and binary forms, with or without 8 * Redistribution and use in source and binary forms, with or without
9 * modification, are permitted provided that the following conditions 9 * modification, are permitted provided that the following conditions
10 * are met: 10 * are met:
11 * 1. Redistributions of source code must retain the above copyright 11 * 1. Redistributions of source code must retain the above copyright
12 * notice, this list of conditions and the following disclaimer. 12 * notice, this list of conditions and the following disclaimer.
13 * 2. Redistributions in binary form must reproduce the above copyright 13 * 2. Redistributions in binary form must reproduce the above copyright
14 * notice, this list of conditions and the following disclaimer in the 14 * notice, this list of conditions and the following disclaimer in the
@@ -204,26 +204,27 @@ y: .quad .y,.TOC.@tocbase,0; \ @@ -204,26 +204,27 @@ y: .quad .y,.TOC.@tocbase,0; \
204 lis tmp1,_C_LABEL(cpu_info)@ha; \ 204 lis tmp1,_C_LABEL(cpu_info)@ha; \
205 addi tmp1,tmp1,_C_LABEL(cpu_info)@l; \ 205 addi tmp1,tmp1,_C_LABEL(cpu_info)@l; \
206 mtsprg0 tmp1; /* save for later use */ \ 206 mtsprg0 tmp1; /* save for later use */ \
207 INIT_CPUINFO_INTSTK(er,tmp1); \ 207 INIT_CPUINFO_INTSTK(er,tmp1); \
208 lis tmp2,_C_LABEL(emptyidlespin)@h; \ 208 lis tmp2,_C_LABEL(emptyidlespin)@h; \
209 ori tmp2,tmp2,_C_LABEL(emptyidlespin)@l; \ 209 ori tmp2,tmp2,_C_LABEL(emptyidlespin)@l; \
210 stptr tmp2,CI_IDLESPIN(tmp1); \ 210 stptr tmp2,CI_IDLESPIN(tmp1); \
211 li tmp2,-1; \ 211 li tmp2,-1; \
212 stint tmp2,CI_IDEPTH(tmp1); \ 212 stint tmp2,CI_IDEPTH(tmp1); \
213 li tmp2,0; \ 213 li tmp2,0; \
214 lis %r13,_C_LABEL(lwp0)@h; \ 214 lis %r13,_C_LABEL(lwp0)@h; \
215 ori %r13,%r13,_C_LABEL(lwp0)@l; \ 215 ori %r13,%r13,_C_LABEL(lwp0)@l; \
216 stptr er,L_PCB(%r13); /* XXXuvm_lwp_getuarea */ \ 216 stptr er,L_PCB(%r13); /* XXXuvm_lwp_getuarea */ \
 217 stptr tmp1,L_CPU(%r13); \
217 addi er,er,USPACE; /* stackpointer for lwp0 */ \ 218 addi er,er,USPACE; /* stackpointer for lwp0 */ \
218 addi sp,er,-FRAMELEN-CALLFRAMELEN; /* stackpointer for lwp0 */ \ 219 addi sp,er,-FRAMELEN-CALLFRAMELEN; /* stackpointer for lwp0 */ \
219 stptr sp,L_MD_UTF(%r13); /* save in lwp0.l_md.md_utf */ \ 220 stptr sp,L_MD_UTF(%r13); /* save in lwp0.l_md.md_utf */ \
220 /* er = end of mem reserved for kernel */ \ 221 /* er = end of mem reserved for kernel */ \
221 li tmp2,0; \ 222 li tmp2,0; \
222 stptr tmp2,-CALLFRAMELEN(er); /* end of stack chain */ \ 223 stptr tmp2,-CALLFRAMELEN(er); /* end of stack chain */ \
223 stptru tmp2,-CALLFRAMELEN(sp) /* end of stack chain */ 224 stptru tmp2,-CALLFRAMELEN(sp) /* end of stack chain */
224 225
225#endif 226#endif
226 227
227/* Condition Register Bit Fields */ 228/* Condition Register Bit Fields */
228 229
229#if defined(_REGNAMES) 230#if defined(_REGNAMES)