|
@@ -578,34 +578,15 @@ BEGIN_FTR_SECTION
|
|
|
ld r7,DSCR_DEFAULT@toc(2)
|
|
|
ld r0,THREAD_DSCR(r4)
|
|
|
cmpwi r6,0
|
|
|
- li r8, FSCR_DSCR
|
|
|
bne 1f
|
|
|
ld r0,0(r7)
|
|
|
- b 3f
|
|
|
1:
|
|
|
- BEGIN_FTR_SECTION_NESTED(70)
|
|
|
- mfspr r6, SPRN_FSCR
|
|
|
- or r6, r6, r8
|
|
|
- mtspr SPRN_FSCR, r6
|
|
|
- BEGIN_FTR_SECTION_NESTED(69)
|
|
|
- mfspr r6, SPRN_HFSCR
|
|
|
- or r6, r6, r8
|
|
|
- mtspr SPRN_HFSCR, r6
|
|
|
- END_FTR_SECTION_NESTED(CPU_FTR_HVMODE, CPU_FTR_HVMODE, 69)
|
|
|
- b 4f
|
|
|
- END_FTR_SECTION_NESTED(CPU_FTR_ARCH_207S, CPU_FTR_ARCH_207S, 70)
|
|
|
-3:
|
|
|
- BEGIN_FTR_SECTION_NESTED(70)
|
|
|
- mfspr r6, SPRN_FSCR
|
|
|
- andc r6, r6, r8
|
|
|
- mtspr SPRN_FSCR, r6
|
|
|
- BEGIN_FTR_SECTION_NESTED(69)
|
|
|
- mfspr r6, SPRN_HFSCR
|
|
|
- andc r6, r6, r8
|
|
|
- mtspr SPRN_HFSCR, r6
|
|
|
- END_FTR_SECTION_NESTED(CPU_FTR_HVMODE, CPU_FTR_HVMODE, 69)
|
|
|
- END_FTR_SECTION_NESTED(CPU_FTR_ARCH_207S, CPU_FTR_ARCH_207S, 70)
|
|
|
-4: cmpd r0,r25
|
|
|
+BEGIN_FTR_SECTION_NESTED(70)
|
|
|
+ mfspr r8, SPRN_FSCR
|
|
|
+ rldimi r8, r6, FSCR_DSCR_LG, (63 - FSCR_DSCR_LG)
|
|
|
+ mtspr SPRN_FSCR, r8
|
|
|
+END_FTR_SECTION_NESTED(CPU_FTR_ARCH_207S, CPU_FTR_ARCH_207S, 70)
|
|
|
+ cmpd r0,r25
|
|
|
beq 2f
|
|
|
mtspr SPRN_DSCR,r0
|
|
|
2:
|