.. | .. |
---|
| 1 | +/* SPDX-License-Identifier: GPL-2.0-or-later */ |
---|
1 | 2 | #ifndef _ASM_POWERPC_CURRENT_H |
---|
2 | 3 | #define _ASM_POWERPC_CURRENT_H |
---|
3 | 4 | #ifdef __KERNEL__ |
---|
4 | 5 | |
---|
5 | 6 | /* |
---|
6 | | - * This program is free software; you can redistribute it and/or |
---|
7 | | - * modify it under the terms of the GNU General Public License |
---|
8 | | - * as published by the Free Software Foundation; either version |
---|
9 | | - * 2 of the License, or (at your option) any later version. |
---|
10 | 7 | */ |
---|
11 | 8 | |
---|
12 | 9 | struct task_struct; |
---|
.. | .. |
---|
19 | 16 | { |
---|
20 | 17 | struct task_struct *task; |
---|
21 | 18 | |
---|
22 | | - __asm__ __volatile__("ld %0,%1(13)" |
---|
| 19 | + /* get_current can be cached by the compiler, so no volatile */ |
---|
| 20 | + asm ("ld %0,%1(13)" |
---|
23 | 21 | : "=r" (task) |
---|
24 | 22 | : "i" (offsetof(struct paca_struct, __current))); |
---|
25 | 23 | |
---|