Rev 4343 | Rev 4346 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 4343 | Rev 4345 | ||
|---|---|---|---|
| Line 136... | Line 136... | ||
| 136 | 136 | ||
| 137 | static void simd_fp_exception(int n __attribute__((unused)), istate_t *istate) |
137 | static void simd_fp_exception(int n __attribute__((unused)), istate_t *istate) |
| 138 | { |
138 | { |
| 139 | uint32_t mxcsr; |
139 | uint32_t mxcsr; |
| 140 | asm ( |
140 | asm ( |
| 141 | "stmxcsr %0;\n" |
141 | "stmxcsr %[mxcsr]\n" |
| 142 | : "=m" (mxcsr) |
142 | : [mxcsr] "=m" (mxcsr) |
| 143 | ); |
143 | ); |
| 144 | fault_if_from_uspace(istate, "SIMD FP exception(19), MXCSR: %#zx.", |
144 | fault_if_from_uspace(istate, "SIMD FP exception(19), MXCSR: %#zx.", |
| 145 | (unative_t) mxcsr); |
145 | (unative_t) mxcsr); |
| 146 | 146 | ||
| 147 | decode_istate(istate); |
147 | decode_istate(istate); |
| 148 | printf("MXCSR: %#lx\n", mxcsr); |
148 | printf("MXCSR: %#lx\n", mxcsr); |
| 149 | panic("SIMD FP exception(19)."); |
149 | panic("SIMD FP exception(19)."); |
| 150 | } |
150 | } |
| 151 | 151 | ||