1d9c52522SMasahiro Yamada /* SPDX-License-Identifier: GPL-2.0-only WITH Linux-syscall-note */ 2e2c0cdfbSPalmer Dabbelt /* 3e2c0cdfbSPalmer Dabbelt * Copied from arch/arm64/include/asm/hwcap.h 4e2c0cdfbSPalmer Dabbelt * 5e2c0cdfbSPalmer Dabbelt * Copyright (C) 2012 ARM Ltd. 6e2c0cdfbSPalmer Dabbelt * Copyright (C) 2017 SiFive 7e2c0cdfbSPalmer Dabbelt */ 86b57ba8eSZong Li #ifndef _UAPI_ASM_RISCV_HWCAP_H 96b57ba8eSZong Li #define _UAPI_ASM_RISCV_HWCAP_H 10e2c0cdfbSPalmer Dabbelt 11e2c0cdfbSPalmer Dabbelt /* 12e2c0cdfbSPalmer Dabbelt * Linux saves the floating-point registers according to the ISA Linux is 13e2c0cdfbSPalmer Dabbelt * executing on, as opposed to the ISA the user program is compiled for. This 1408b5985eSTobias Klauser * is necessary for a handful of esoteric use cases: for example, userspace 15e2c0cdfbSPalmer Dabbelt * threading libraries must be able to examine the actual machine state in 16e2c0cdfbSPalmer Dabbelt * order to fully reconstruct the state of a thread. 17e2c0cdfbSPalmer Dabbelt */ 18e2c0cdfbSPalmer Dabbelt #define COMPAT_HWCAP_ISA_I (1 << ('I' - 'A')) 19e2c0cdfbSPalmer Dabbelt #define COMPAT_HWCAP_ISA_M (1 << ('M' - 'A')) 20e2c0cdfbSPalmer Dabbelt #define COMPAT_HWCAP_ISA_A (1 << ('A' - 'A')) 21e2c0cdfbSPalmer Dabbelt #define COMPAT_HWCAP_ISA_F (1 << ('F' - 'A')) 22e2c0cdfbSPalmer Dabbelt #define COMPAT_HWCAP_ISA_D (1 << ('D' - 'A')) 23e2c0cdfbSPalmer Dabbelt #define COMPAT_HWCAP_ISA_C (1 << ('C' - 'A')) 24*dc6667a4SGuo Ren #define COMPAT_HWCAP_ISA_V (1 << ('V' - 'A')) 25e2c0cdfbSPalmer Dabbelt 266b57ba8eSZong Li #endif /* _UAPI_ASM_RISCV_HWCAP_H */ 27