aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/arm/vfp/vfphw.S10
1 files changed, 4 insertions, 6 deletions
diff --git a/arch/arm/vfp/vfphw.S b/arch/arm/vfp/vfphw.S
index c75443e204b..404538ae591 100644
--- a/arch/arm/vfp/vfphw.S
+++ b/arch/arm/vfp/vfphw.S
@@ -81,11 +81,8 @@ ENTRY(vfp_support_entry)
81 orr r1, r1, #FPEXC_EN @ user FPEXC has the enable bit set 81 orr r1, r1, #FPEXC_EN @ user FPEXC has the enable bit set
82 ldr r4, [r3, r11, lsl #2] @ vfp_current_hw_state pointer 82 ldr r4, [r3, r11, lsl #2] @ vfp_current_hw_state pointer
83 bic r5, r1, #FPEXC_EX @ make sure exceptions are disabled 83 bic r5, r1, #FPEXC_EX @ make sure exceptions are disabled
84 cmp r4, r10 84 cmp r4, r10 @ this thread owns the hw context?
85 beq check_for_exception @ we are returning to the same 85 beq vfp_hw_state_valid
86 @ process, so the registers are
87 @ still there. In this case, we do
88 @ not want to drop a pending exception.
89 86
90 VFPFMXR FPEXC, r5 @ enable VFP, disable any pending 87 VFPFMXR FPEXC, r5 @ enable VFP, disable any pending
91 @ exceptions, so we can get at the 88 @ exceptions, so we can get at the
@@ -132,7 +129,8 @@ no_old_VFP_process:
132#endif 129#endif
133 VFPFMXR FPSCR, r5 @ restore status 130 VFPFMXR FPSCR, r5 @ restore status
134 131
135check_for_exception: 132@ The context stored in the VFP hardware is up to date with this thread
133vfp_hw_state_valid:
136 tst r1, #FPEXC_EX 134 tst r1, #FPEXC_EX
137 bne process_exception @ might as well handle the pending 135 bne process_exception @ might as well handle the pending
138 @ exception before retrying branch 136 @ exception before retrying branch