[PATCH] powerpc: Eliminate "exceeds stub group size" linker warning

It turns out that the linker warnings on 64-bit powerpc about "section
blah exceeds stub group size" were being triggered by conditional
branches in head_64.S branching to global symbols, whether in
head_64.S or in other files. This eliminates the warnings by making
some global symbols in head_64.S no longer global, and by rearranging
some branches.

Signed-off-by: Paul Mackerras <paulus@samba.org>
[ Yee-haa. Maybe I'll notice newly introduced real warnings now - Linus ]
Signed-off-by: Linus Torvalds <torvalds@osdl.org>

authored by Paul Mackerras and committed by Linus Torvalds 3ccfc65c dd472546

+15 -12
+15 -12
arch/powerpc/kernel/head_64.S
··· 487 487 rlwimi r13,r12,16,0x20 488 488 mfcr r12 489 489 cmpwi r13,0x2c 490 - beq .do_stab_bolted_pSeries 490 + beq do_stab_bolted_pSeries 491 491 mtcrf 0x80,r12 492 492 mfspr r12,SPRN_SPRG2 493 493 END_FTR_SECTION_IFCLR(CPU_FTR_SLB) ··· 600 600 STD_EXCEPTION_PSERIES(., performance_monitor) 601 601 602 602 .align 7 603 - _GLOBAL(do_stab_bolted_pSeries) 603 + do_stab_bolted_pSeries: 604 604 mtcrf 0x80,r12 605 605 mfspr r12,SPRN_SPRG2 606 606 EXCEPTION_PROLOG_PSERIES(PACA_EXSLB, .do_stab_bolted) ··· 1046 1046 li r5,0 1047 1047 std r4,_DAR(r1) 1048 1048 std r5,_DSISR(r1) 1049 - b .handle_page_fault 1049 + b handle_page_fault 1050 1050 1051 1051 unrecov_user_slb: 1052 1052 EXCEPTION_PROLOG_COMMON(0x4200, PACA_EXGEN) ··· 1174 1174 .globl fp_unavailable_common 1175 1175 fp_unavailable_common: 1176 1176 EXCEPTION_PROLOG_COMMON(0x800, PACA_EXGEN) 1177 - bne .load_up_fpu /* if from user, just load it up */ 1177 + bne 1f /* if from user, just load it up */ 1178 1178 bl .save_nvgprs 1179 1179 addi r3,r1,STACK_FRAME_OVERHEAD 1180 1180 ENABLE_INTS 1181 1181 bl .kernel_fp_unavailable_exception 1182 1182 BUG_OPCODE 1183 + 1: b .load_up_fpu 1183 1184 1184 1185 .align 7 1185 1186 .globl altivec_unavailable_common ··· 1280 1279 std r4,_DSISR(r1) 1281 1280 1282 1281 andis. r0,r4,0xa450 /* weird error? */ 1283 - bne- .handle_page_fault /* if not, try to insert a HPTE */ 1282 + bne- handle_page_fault /* if not, try to insert a HPTE */ 1284 1283 BEGIN_FTR_SECTION 1285 1284 andis. r0,r4,0x0020 /* Is it a segment table fault? */ 1286 - bne- .do_ste_alloc /* If so handle it */ 1285 + bne- do_ste_alloc /* If so handle it */ 1287 1286 END_FTR_SECTION_IFCLR(CPU_FTR_SLB) 1288 1287 1289 1288 /* ··· 1325 1324 * because ret_from_except_lite will check for and handle pending 1326 1325 * interrupts if necessary. 1327 1326 */ 1328 - beq .ret_from_except_lite 1327 + beq 13f 1329 1328 /* For a hash failure, we don't bother re-enabling interrupts */ 1330 1329 ble- 12f 1331 1330 ··· 1347 1346 END_FW_FTR_SECTION_IFCLR(FW_FEATURE_ISERIES) 1348 1347 1349 1348 /* Here we have a page fault that hash_page can't handle. */ 1350 - _GLOBAL(handle_page_fault) 1349 + handle_page_fault: 1351 1350 ENABLE_INTS 1352 1351 11: ld r4,_DAR(r1) 1353 1352 ld r5,_DSISR(r1) 1354 1353 addi r3,r1,STACK_FRAME_OVERHEAD 1355 1354 bl .do_page_fault 1356 1355 cmpdi r3,0 1357 - beq+ .ret_from_except_lite 1356 + beq+ 13f 1358 1357 bl .save_nvgprs 1359 1358 mr r5,r3 1360 1359 addi r3,r1,STACK_FRAME_OVERHEAD ··· 1371 1370 bl .low_hash_fault 1372 1371 b .ret_from_except 1373 1372 1373 + 13: b .ret_from_except_lite 1374 + 1374 1375 /* here we have a segment miss */ 1375 - _GLOBAL(do_ste_alloc) 1376 + do_ste_alloc: 1376 1377 bl .ste_allocate /* try to insert stab entry */ 1377 1378 cmpdi r3,0 1378 - beq+ fast_exception_return 1379 - b .handle_page_fault 1379 + bne- handle_page_fault 1380 + b fast_exception_return 1380 1381 1381 1382 /* 1382 1383 * r13 points to the PACA, r9 contains the saved CR,