1d2912cb1SThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-only */ 2080c3747SVineet Gupta /* 3080c3747SVineet Gupta * Copyright (C) 2004, 2007-2010, 2011-2012 Synopsys, Inc. (www.synopsys.com) 4080c3747SVineet Gupta * 5080c3747SVineet Gupta * Vineetg: May 16th, 2008 6080c3747SVineet Gupta * - Current macro is now implemented as "global register" r25 7080c3747SVineet Gupta */ 8080c3747SVineet Gupta 9080c3747SVineet Gupta #ifndef _ASM_ARC_CURRENT_H 10080c3747SVineet Gupta #define _ASM_ARC_CURRENT_H 11080c3747SVineet Gupta 12080c3747SVineet Gupta #ifndef __ASSEMBLY__ 13080c3747SVineet Gupta 14080c3747SVineet Gupta #ifdef CONFIG_ARC_CURR_IN_REG 15080c3747SVineet Gupta 16*cfca4b5aSVineet Gupta register struct task_struct *curr_arc asm("gp"); 17080c3747SVineet Gupta #define current (curr_arc) 18080c3747SVineet Gupta 19080c3747SVineet Gupta #else 20080c3747SVineet Gupta #include <asm-generic/current.h> 21080c3747SVineet Gupta #endif /* ! CONFIG_ARC_CURR_IN_REG */ 22080c3747SVineet Gupta 23080c3747SVineet Gupta #endif /* ! __ASSEMBLY__ */ 24080c3747SVineet Gupta 25080c3747SVineet Gupta #endif /* _ASM_ARC_CURRENT_H */ 26