include: Add more defines related to ARM64

André Hentschel nerv at dawncrow.de
Wed May 20 07:31:43 CDT 2015


---
 include/winnt.h | 60 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 60 insertions(+)

diff --git a/include/winnt.h b/include/winnt.h
index 9b08544..b25c25b 100644
--- a/include/winnt.h
+++ b/include/winnt.h
@@ -652,6 +652,7 @@ typedef DWORD FLONG;
 #define PROCESSOR_ARCHITECTURE_AMD64    9
 #define PROCESSOR_ARCHITECTURE_IA32_ON_WIN64    10
 #define PROCESSOR_ARCHITECTURE_NEUTRAL          11
+#define PROCESSOR_ARCHITECTURE_ARM64            12
 #define PROCESSOR_ARCHITECTURE_UNKNOWN	0xFFFF
 
 /* dwProcessorType */
@@ -873,6 +874,10 @@ typedef enum _HEAP_INFORMATION_CLASS {
 #define PF_ARM_64BIT_LOADSTORE_ATOMIC           25
 #define PF_ARM_EXTERNAL_CACHE_AVAILABLE         26
 #define PF_ARM_FMAC_INSTRUCTIONS_AVAILABLE      27
+#define PF_RDRAND_INSTRUCTION_AVAILABLE         28
+#define PF_ARM_V8_INSTRUCTIONS_AVAILABLE        29
+#define PF_ARM_V8_CRYPTO_INSTRUCTIONS_AVAILABLE 30
+#define PF_ARM_V8_CRC32_INSTRUCTIONS_AVAILABLE  31
 
 
 /* Execution state flags */
@@ -2097,6 +2102,8 @@ NTSYSAPI void WINAPI RtlCaptureContext(CONTEXT*);
 #define PRODUCT_SB_SOLUTION_SERVER_EM                   0x00000036
 #define PRODUCT_SERVER_FOR_SB_SOLUTIONS_EM              0x00000037
 #define PRODUCT_SOLUTION_EMBEDDEDSERVER                 0x00000038
+#define PRODUCT_SOLUTION_EMBEDDEDSERVER_CORE            0x00000039
+#define PRODUCT_PROFESSIONAL_EMBEDDED                   0x0000003A
 #define PRODUCT_ESSENTIALBUSINESS_SERVER_MGMT           0x0000003B
 #define PRODUCT_ESSENTIALBUSINESS_SERVER_ADDL           0x0000003C
 #define PRODUCT_ESSENTIALBUSINESS_SERVER_MGMTSVC        0x0000003D
@@ -2116,14 +2123,50 @@ NTSYSAPI void WINAPI RtlCaptureContext(CONTEXT*);
 #define PRODUCT_STANDARD_EVALUATION_SERVER              0x0000004F
 #define PRODUCT_DATACENTER_EVALUATION_SERVER            0x00000050
 #define PRODUCT_ENTERPRISE_N_EVALUATION                 0x00000054
+#define PRODUCT_EMBEDDED_AUTOMOTIVE                     0x00000055
+#define PRODUCT_EMBEDDED_INDUSTRY_A                     0x00000056
+#define PRODUCT_THINPC                                  0x00000057
+#define PRODUCT_EMBEDDED_A                              0x00000058
+#define PRODUCT_EMBEDDED_INDUSTRY                       0x00000059
+#define PRODUCT_EMBEDDED_E                              0x0000005A
+#define PRODUCT_EMBEDDED_INDUSTRY_E                     0x0000005B
+#define PRODUCT_EMBEDDED_INDUSTRY_A_E                   0x0000005C
 #define PRODUCT_STORAGE_WORKGROUP_EVALUATION_SERVER     0x0000005F
 #define PRODUCT_STORAGE_STANDARD_EVALUATION_SERVER      0x00000060
 #define PRODUCT_CORE_ARM                                0x00000061
 #define PRODUCT_CORE_N                                  0x00000062
 #define PRODUCT_CORE_COUNTRYSPECIFIC                    0x00000063
+#define PRODUCT_CORE_SINGLELANGUAGE                     0x00000064
 #define PRODUCT_CORE_LANGUAGESPECIFIC                   0x00000064
 #define PRODUCT_CORE                                    0x00000065
 #define PRODUCT_PROFESSIONAL_WMC                        0x00000067
+#define PRODUCT_MOBILE_CORE                             0x00000068
+#define PRODUCT_EMBEDDED_INDUSTRY_EVAL                  0x00000069
+#define PRODUCT_EMBEDDED_INDUSTRY_E_EVAL                0x0000006A
+#define PRODUCT_EMBEDDED_EVAL                           0x0000006B
+#define PRODUCT_EMBEDDED_E_EVAL                         0x0000006C
+#define PRODUCT_NANO_SERVER                             0x0000006D
+#define PRODUCT_CLOUD_STORAGE_SERVER                    0x0000006E
+#define PRODUCT_CORE_CONNECTED                          0x0000006F
+#define PRODUCT_PROFESSIONAL_STUDENT                    0x00000070
+#define PRODUCT_CORE_CONNECTED_N                        0x00000071
+#define PRODUCT_PROFESSIONAL_STUDENT_N                  0x00000072
+#define PRODUCT_CORE_CONNECTED_SINGLELANGUAGE           0x00000073
+#define PRODUCT_CORE_CONNECTED_COUNTRYSPECIFIC          0x00000074
+#define PRODUCT_CONNECTED_CAR                           0x00000075
+#define PRODUCT_INDUSTRY_HANDHELD                       0x00000076
+#define PRODUCT_PPI_PRO                                 0x00000077
+#define PRODUCT_ARM64_SERVER                            0x00000078
+#define PRODUCT_EDUCATION                               0x00000079
+#define PRODUCT_EDUCATION_N                             0x0000007A
+#define PRODUCT_IOTUAP                                  0x0000007B
+#define PRODUCT_CLOUD_HOST_INFRASTRUCTURE_SERVER        0x0000007C
+#define PRODUCT_ENTERPRISE_S                            0x0000007D
+#define PRODUCT_ENTERPRISE_S_N                          0x0000007E
+#define PRODUCT_PROFESSIONAL_S                          0x0000007F
+#define PRODUCT_PROFESSIONAL_S_N                        0x00000080
+#define PRODUCT_ENTERPRISE_S_EVALUATION                 0x00000081
+#define PRODUCT_ENTERPRISE_S_N_EVALUATION               0x00000082
 #define PRODUCT_UNLICENSED                              0xABCDABCD
 
 
@@ -3230,6 +3273,23 @@ typedef const IMAGE_DELAYLOAD_DESCRIPTOR *PCIMAGE_DELAYLOAD_DESCRIPTOR;
 #define IMAGE_REL_ARM_BRANCH24T	0x0014
 #define IMAGE_REL_ARM_BLX23T		0x0015
 
+/* ARM64 relocation types */
+#define IMAGE_REL_ARM64_ABSOLUTE        0x0000
+#define IMAGE_REL_ARM64_ADDR32          0x0001
+#define IMAGE_REL_ARM64_ADDR32NB        0x0002
+#define IMAGE_REL_ARM64_BRANCH26        0x0003
+#define IMAGE_REL_ARM64_PAGEBASE_REL21  0x0004
+#define IMAGE_REL_ARM64_REL21           0x0005
+#define IMAGE_REL_ARM64_PAGEOFFSET_12A  0x0006
+#define IMAGE_REL_ARM64_PAGEOFFSET_12L  0x0007
+#define IMAGE_REL_ARM64_SECREL          0x0008
+#define IMAGE_REL_ARM64_SECREL_LOW12A   0x0009
+#define IMAGE_REL_ARM64_SECREL_HIGH12A  0x000A
+#define IMAGE_REL_ARM64_SECREL_LOW12L   0x000B
+#define IMAGE_REL_ARM64_TOKEN           0x000C
+#define IMAGE_REL_ARM64_SECTION         0x000D
+#define IMAGE_REL_ARM64_ADDR64          0x000E
+
 /* IA64 relocation types */
 #define IMAGE_REL_IA64_ABSOLUTE		0x0000
 #define IMAGE_REL_IA64_IMM14		0x0001
-- 
1.9.1





More information about the wine-patches mailing list