fpreg.c (e534a583cc438ec2e9a7dc534c9d80d14b440718) | fpreg.c (c64c67c0748be5afb769a4eedbeb3ce6de36958f) |
---|---|
1// SPDX-License-Identifier: GPL-2.0 2/* 3 * arch/alpha/lib/fpreg.c 4 * 5 * (C) Copyright 1998 Linus Torvalds 6 */ 7 8#include <linux/compiler.h> --- 9 unchanged lines hidden (view full) --- 18 19unsigned long 20alpha_read_fp_reg (unsigned long reg) 21{ 22 unsigned long val; 23 24 if (unlikely(reg >= 32)) 25 return 0; | 1// SPDX-License-Identifier: GPL-2.0 2/* 3 * arch/alpha/lib/fpreg.c 4 * 5 * (C) Copyright 1998 Linus Torvalds 6 */ 7 8#include <linux/compiler.h> --- 9 unchanged lines hidden (view full) --- 18 19unsigned long 20alpha_read_fp_reg (unsigned long reg) 21{ 22 unsigned long val; 23 24 if (unlikely(reg >= 32)) 25 return 0; |
26 preempt_enable(); | 26 preempt_disable(); |
27 if (current_thread_info()->status & TS_SAVED_FP) 28 val = current_thread_info()->fp[reg]; 29 else switch (reg) { 30 case 0: STT( 0, val); break; 31 case 1: STT( 1, val); break; 32 case 2: STT( 2, val); break; 33 case 3: STT( 3, val); break; 34 case 4: STT( 4, val); break; --- 93 unchanged lines hidden (view full) --- 128unsigned long 129alpha_read_fp_reg_s (unsigned long reg) 130{ 131 unsigned long val; 132 133 if (unlikely(reg >= 32)) 134 return 0; 135 | 27 if (current_thread_info()->status & TS_SAVED_FP) 28 val = current_thread_info()->fp[reg]; 29 else switch (reg) { 30 case 0: STT( 0, val); break; 31 case 1: STT( 1, val); break; 32 case 2: STT( 2, val); break; 33 case 3: STT( 3, val); break; 34 case 4: STT( 4, val); break; --- 93 unchanged lines hidden (view full) --- 128unsigned long 129alpha_read_fp_reg_s (unsigned long reg) 130{ 131 unsigned long val; 132 133 if (unlikely(reg >= 32)) 134 return 0; 135 |
136 preempt_enable(); | 136 preempt_disable(); |
137 if (current_thread_info()->status & TS_SAVED_FP) { 138 LDT(0, current_thread_info()->fp[reg]); 139 STS(0, val); 140 } else switch (reg) { 141 case 0: STS( 0, val); break; 142 case 1: STS( 1, val); break; 143 case 2: STS( 2, val); break; 144 case 3: STS( 3, val); break; --- 88 unchanged lines hidden --- | 137 if (current_thread_info()->status & TS_SAVED_FP) { 138 LDT(0, current_thread_info()->fp[reg]); 139 STS(0, val); 140 } else switch (reg) { 141 case 0: STS( 0, val); break; 142 case 1: STS( 1, val); break; 143 case 2: STS( 2, val); break; 144 case 3: STS( 3, val); break; --- 88 unchanged lines hidden --- |