1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 2 /* 3 * Copyright (C) 2004, 2007-2010, 2011-2012 Synopsys, Inc. (www.synopsys.com) 4 * 5 * This program is free software; you can redistribute it and/or modify 6 * it under the terms of the GNU General Public License version 2 as 7 * published by the Free Software Foundation. 8 */ 9 10 #ifndef _UAPI__ASM_ARC_ELF_H 11 #define _UAPI__ASM_ARC_ELF_H 12 13 #include <asm/ptrace.h> /* for user_regs_struct */ 14 15 /* Machine specific ELF Hdr flags */ 16 #define EF_ARC_OSABI_MSK 0x00000f00 17 18 #define EF_ARC_OSABI_V3 0x00000300 /* v3 (no legacy syscalls) */ 19 #define EF_ARC_OSABI_V4 0x00000400 /* v4 (64bit data any reg align) */ 20 21 #if __GNUC__ < 6 22 #define EF_ARC_OSABI_CURRENT EF_ARC_OSABI_V3 23 #else 24 #define EF_ARC_OSABI_CURRENT EF_ARC_OSABI_V4 25 #endif 26 27 typedef unsigned long elf_greg_t; 28 typedef unsigned long elf_fpregset_t; 29 30 #define ELF_NGREG (sizeof(struct user_regs_struct) / sizeof(elf_greg_t)) 31 #define ELF_ARCV2REG (sizeof(struct user_regs_arcv2) / sizeof(elf_greg_t)) 32 33 typedef elf_greg_t elf_gregset_t[ELF_NGREG]; 34 35 #endif 36