Changeset View
Changeset View
Standalone View
Standalone View
sys/powerpc/powerpc/swtch32.S
Show First 20 Lines • Show All 98 Lines • ▼ Show 20 Lines | 1: | ||||
addis %r30, %r30, (_GLOBAL_OFFSET_TABLE_-1b)@ha | addis %r30, %r30, (_GLOBAL_OFFSET_TABLE_-1b)@ha | ||||
addi %r30, %r30, (_GLOBAL_OFFSET_TABLE_-1b)@l | addi %r30, %r30, (_GLOBAL_OFFSET_TABLE_-1b)@l | ||||
mr %r14,%r3 /* Copy the old thread ptr... */ | mr %r14,%r3 /* Copy the old thread ptr... */ | ||||
mr %r2,%r4 /* and the new thread ptr in curthread */ | mr %r2,%r4 /* and the new thread ptr in curthread */ | ||||
mr %r16,%r5 /* and the new lock */ | mr %r16,%r5 /* and the new lock */ | ||||
mr %r17,%r6 /* and the PCB */ | mr %r17,%r6 /* and the PCB */ | ||||
/* Keep this next section in sync with cpu_save_thread_regs()! */ | |||||
lwz %r18,PCB_FLAGS(%r17) | lwz %r18,PCB_FLAGS(%r17) | ||||
/* Save FPU context if needed */ | /* Save FPU context if needed */ | ||||
andi. %r7, %r18, PCB_FPU | andi. %r7, %r18, PCB_FPU | ||||
beq .L1 | beq .L1 | ||||
bl save_fpu | bl save_fpu | ||||
.L1: | .L1: | ||||
mr %r3,%r14 /* restore old thread ptr */ | mr %r3,%r14 /* restore old thread ptr */ | ||||
▲ Show 20 Lines • Show All 117 Lines • Show Last 20 Lines |