1*6f52b16cSGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 243e40f25SDavid Howells /* 343e40f25SDavid Howells * Copyright (C) 2002,2003 Intel Corp. 443e40f25SDavid Howells * Jun Nakajima <jun.nakajima@intel.com> 543e40f25SDavid Howells * Suresh Siddha <suresh.b.siddha@intel.com> 643e40f25SDavid Howells */ 743e40f25SDavid Howells 843e40f25SDavid Howells #ifndef _ASM_IA64_IA64REGS_H 943e40f25SDavid Howells #define _ASM_IA64_IA64REGS_H 1043e40f25SDavid Howells 1143e40f25SDavid Howells /* 1243e40f25SDavid Howells * Register Names for getreg() and setreg(). 1343e40f25SDavid Howells * 1443e40f25SDavid Howells * The "magic" numbers happen to match the values used by the Intel compiler's 1543e40f25SDavid Howells * getreg()/setreg() intrinsics. 1643e40f25SDavid Howells */ 1743e40f25SDavid Howells 1843e40f25SDavid Howells /* Special Registers */ 1943e40f25SDavid Howells 2043e40f25SDavid Howells #define _IA64_REG_IP 1016 /* getreg only */ 2143e40f25SDavid Howells #define _IA64_REG_PSR 1019 2243e40f25SDavid Howells #define _IA64_REG_PSR_L 1019 2343e40f25SDavid Howells 2443e40f25SDavid Howells /* General Integer Registers */ 2543e40f25SDavid Howells 2643e40f25SDavid Howells #define _IA64_REG_GP 1025 /* R1 */ 2743e40f25SDavid Howells #define _IA64_REG_R8 1032 /* R8 */ 2843e40f25SDavid Howells #define _IA64_REG_R9 1033 /* R9 */ 2943e40f25SDavid Howells #define _IA64_REG_SP 1036 /* R12 */ 3043e40f25SDavid Howells #define _IA64_REG_TP 1037 /* R13 */ 3143e40f25SDavid Howells 3243e40f25SDavid Howells /* Application Registers */ 3343e40f25SDavid Howells 3443e40f25SDavid Howells #define _IA64_REG_AR_KR0 3072 3543e40f25SDavid Howells #define _IA64_REG_AR_KR1 3073 3643e40f25SDavid Howells #define _IA64_REG_AR_KR2 3074 3743e40f25SDavid Howells #define _IA64_REG_AR_KR3 3075 3843e40f25SDavid Howells #define _IA64_REG_AR_KR4 3076 3943e40f25SDavid Howells #define _IA64_REG_AR_KR5 3077 4043e40f25SDavid Howells #define _IA64_REG_AR_KR6 3078 4143e40f25SDavid Howells #define _IA64_REG_AR_KR7 3079 4243e40f25SDavid Howells #define _IA64_REG_AR_RSC 3088 4343e40f25SDavid Howells #define _IA64_REG_AR_BSP 3089 4443e40f25SDavid Howells #define _IA64_REG_AR_BSPSTORE 3090 4543e40f25SDavid Howells #define _IA64_REG_AR_RNAT 3091 4643e40f25SDavid Howells #define _IA64_REG_AR_FCR 3093 4743e40f25SDavid Howells #define _IA64_REG_AR_EFLAG 3096 4843e40f25SDavid Howells #define _IA64_REG_AR_CSD 3097 4943e40f25SDavid Howells #define _IA64_REG_AR_SSD 3098 5043e40f25SDavid Howells #define _IA64_REG_AR_CFLAG 3099 5143e40f25SDavid Howells #define _IA64_REG_AR_FSR 3100 5243e40f25SDavid Howells #define _IA64_REG_AR_FIR 3101 5343e40f25SDavid Howells #define _IA64_REG_AR_FDR 3102 5443e40f25SDavid Howells #define _IA64_REG_AR_CCV 3104 5543e40f25SDavid Howells #define _IA64_REG_AR_UNAT 3108 5643e40f25SDavid Howells #define _IA64_REG_AR_FPSR 3112 5743e40f25SDavid Howells #define _IA64_REG_AR_ITC 3116 5843e40f25SDavid Howells #define _IA64_REG_AR_PFS 3136 5943e40f25SDavid Howells #define _IA64_REG_AR_LC 3137 6043e40f25SDavid Howells #define _IA64_REG_AR_EC 3138 6143e40f25SDavid Howells 6243e40f25SDavid Howells /* Control Registers */ 6343e40f25SDavid Howells 6443e40f25SDavid Howells #define _IA64_REG_CR_DCR 4096 6543e40f25SDavid Howells #define _IA64_REG_CR_ITM 4097 6643e40f25SDavid Howells #define _IA64_REG_CR_IVA 4098 6743e40f25SDavid Howells #define _IA64_REG_CR_PTA 4104 6843e40f25SDavid Howells #define _IA64_REG_CR_IPSR 4112 6943e40f25SDavid Howells #define _IA64_REG_CR_ISR 4113 7043e40f25SDavid Howells #define _IA64_REG_CR_IIP 4115 7143e40f25SDavid Howells #define _IA64_REG_CR_IFA 4116 7243e40f25SDavid Howells #define _IA64_REG_CR_ITIR 4117 7343e40f25SDavid Howells #define _IA64_REG_CR_IIPA 4118 7443e40f25SDavid Howells #define _IA64_REG_CR_IFS 4119 7543e40f25SDavid Howells #define _IA64_REG_CR_IIM 4120 7643e40f25SDavid Howells #define _IA64_REG_CR_IHA 4121 7743e40f25SDavid Howells #define _IA64_REG_CR_LID 4160 7843e40f25SDavid Howells #define _IA64_REG_CR_IVR 4161 /* getreg only */ 7943e40f25SDavid Howells #define _IA64_REG_CR_TPR 4162 8043e40f25SDavid Howells #define _IA64_REG_CR_EOI 4163 8143e40f25SDavid Howells #define _IA64_REG_CR_IRR0 4164 /* getreg only */ 8243e40f25SDavid Howells #define _IA64_REG_CR_IRR1 4165 /* getreg only */ 8343e40f25SDavid Howells #define _IA64_REG_CR_IRR2 4166 /* getreg only */ 8443e40f25SDavid Howells #define _IA64_REG_CR_IRR3 4167 /* getreg only */ 8543e40f25SDavid Howells #define _IA64_REG_CR_ITV 4168 8643e40f25SDavid Howells #define _IA64_REG_CR_PMV 4169 8743e40f25SDavid Howells #define _IA64_REG_CR_CMCV 4170 8843e40f25SDavid Howells #define _IA64_REG_CR_LRR0 4176 8943e40f25SDavid Howells #define _IA64_REG_CR_LRR1 4177 9043e40f25SDavid Howells 9143e40f25SDavid Howells /* Indirect Registers for getindreg() and setindreg() */ 9243e40f25SDavid Howells 9343e40f25SDavid Howells #define _IA64_REG_INDR_CPUID 9000 /* getindreg only */ 9443e40f25SDavid Howells #define _IA64_REG_INDR_DBR 9001 9543e40f25SDavid Howells #define _IA64_REG_INDR_IBR 9002 9643e40f25SDavid Howells #define _IA64_REG_INDR_PKR 9003 9743e40f25SDavid Howells #define _IA64_REG_INDR_PMC 9004 9843e40f25SDavid Howells #define _IA64_REG_INDR_PMD 9005 9943e40f25SDavid Howells #define _IA64_REG_INDR_RR 9006 10043e40f25SDavid Howells 10143e40f25SDavid Howells #endif /* _ASM_IA64_IA64REGS_H */ 102