xref: /linux/arch/arc/include/asm/current.h (revision 3d0fe49454652117522f60bfbefb978ba0e5300b)
1 /* SPDX-License-Identifier: GPL-2.0-only */
2 /*
3  * Copyright (C) 2004, 2007-2010, 2011-2012 Synopsys, Inc. (www.synopsys.com)
4  *
5  * Vineetg: May 16th, 2008
6  *  - Current macro is now implemented as "global register" r25
7  */
8 
9 #ifndef _ASM_ARC_CURRENT_H
10 #define _ASM_ARC_CURRENT_H
11 
12 #ifndef __ASSEMBLY__
13 
14 #ifdef CONFIG_ARC_CURR_IN_REG
15 
16 register struct task_struct *curr_arc asm("gp");
17 #define current (curr_arc)
18 
19 #else
20 #include <asm-generic/current.h>
21 #endif /* ! CONFIG_ARC_CURR_IN_REG */
22 
23 #endif /* ! __ASSEMBLY__ */
24 
25 #endif /* _ASM_ARC_CURRENT_H */
26