brintos

brintos / llvm-project-archived public Read only

0
0
Text · 8.6 KiB · 743c665 Raw
319 lines · c
1//===-- MachRegisterStatesX86_64.h --------------------------------*- C++2//-*-===//3//4// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.5// See https://llvm.org/LICENSE.txt for license information.6// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception7//8//===----------------------------------------------------------------------===//9//10//  Created by Sean Callanan on 3/16/11.11//12//===----------------------------------------------------------------------===//13 14#ifndef LLDB_TOOLS_DEBUGSERVER_SOURCE_MACOSX_X86_64_MACHREGISTERSTATESX86_64_H15#define LLDB_TOOLS_DEBUGSERVER_SOURCE_MACOSX_X86_64_MACHREGISTERSTATESX86_64_H16 17#include <cinttypes>18 19#define __x86_64_THREAD_STATE 420#define __x86_64_FLOAT_STATE 521#define __x86_64_EXCEPTION_STATE 622#define __x86_64_DEBUG_STATE 1123#define __x86_64_AVX_STATE 1724#define __x86_64_AVX512F_STATE 2025#define __x86_64_THREAD_FULL_STATE 2326 27typedef struct {28  uint64_t __rax;29  uint64_t __rbx;30  uint64_t __rcx;31  uint64_t __rdx;32  uint64_t __rdi;33  uint64_t __rsi;34  uint64_t __rbp;35  uint64_t __rsp;36  uint64_t __r8;37  uint64_t __r9;38  uint64_t __r10;39  uint64_t __r11;40  uint64_t __r12;41  uint64_t __r13;42  uint64_t __r14;43  uint64_t __r15;44  uint64_t __rip;45  uint64_t __rflags;46  uint64_t __cs;47  uint64_t __fs;48  uint64_t __gs;49  uint64_t __ds;50  uint64_t __es;51  uint64_t __ss;52  uint64_t __gsbase;53} __x86_64_thread_state_t;54 55typedef struct {56  uint16_t __invalid : 1;57  uint16_t __denorm : 1;58  uint16_t __zdiv : 1;59  uint16_t __ovrfl : 1;60  uint16_t __undfl : 1;61  uint16_t __precis : 1;62  uint16_t __PAD1 : 2;63  uint16_t __pc : 2;64  uint16_t __rc : 2;65  uint16_t __PAD2 : 1;66  uint16_t __PAD3 : 3;67} __x86_64_fp_control_t;68 69typedef struct {70  uint16_t __invalid : 1;71  uint16_t __denorm : 1;72  uint16_t __zdiv : 1;73  uint16_t __ovrfl : 1;74  uint16_t __undfl : 1;75  uint16_t __precis : 1;76  uint16_t __stkflt : 1;77  uint16_t __errsumm : 1;78  uint16_t __c0 : 1;79  uint16_t __c1 : 1;80  uint16_t __c2 : 1;81  uint16_t __tos : 3;82  uint16_t __c3 : 1;83  uint16_t __busy : 1;84} __x86_64_fp_status_t;85 86typedef struct {87  uint8_t __mmst_reg[10];88  uint8_t __mmst_rsrv[6];89} __x86_64_mmst_reg;90 91typedef struct { uint8_t __xmm_reg[16]; } __x86_64_xmm_reg;92 93typedef struct {94  uint32_t __fpu_reserved[2];95  __x86_64_fp_control_t __fpu_fcw;96  __x86_64_fp_status_t __fpu_fsw;97  uint8_t __fpu_ftw;98  uint8_t __fpu_rsrv1;99  uint16_t __fpu_fop;100  uint32_t __fpu_ip;101  uint16_t __fpu_cs;102  uint16_t __fpu_rsrv2;103  uint32_t __fpu_dp;104  uint16_t __fpu_ds;105  uint16_t __fpu_rsrv3;106  uint32_t __fpu_mxcsr;107  uint32_t __fpu_mxcsrmask;108  __x86_64_mmst_reg __fpu_stmm0;109  __x86_64_mmst_reg __fpu_stmm1;110  __x86_64_mmst_reg __fpu_stmm2;111  __x86_64_mmst_reg __fpu_stmm3;112  __x86_64_mmst_reg __fpu_stmm4;113  __x86_64_mmst_reg __fpu_stmm5;114  __x86_64_mmst_reg __fpu_stmm6;115  __x86_64_mmst_reg __fpu_stmm7;116  __x86_64_xmm_reg __fpu_xmm0;117  __x86_64_xmm_reg __fpu_xmm1;118  __x86_64_xmm_reg __fpu_xmm2;119  __x86_64_xmm_reg __fpu_xmm3;120  __x86_64_xmm_reg __fpu_xmm4;121  __x86_64_xmm_reg __fpu_xmm5;122  __x86_64_xmm_reg __fpu_xmm6;123  __x86_64_xmm_reg __fpu_xmm7;124  __x86_64_xmm_reg __fpu_xmm8;125  __x86_64_xmm_reg __fpu_xmm9;126  __x86_64_xmm_reg __fpu_xmm10;127  __x86_64_xmm_reg __fpu_xmm11;128  __x86_64_xmm_reg __fpu_xmm12;129  __x86_64_xmm_reg __fpu_xmm13;130  __x86_64_xmm_reg __fpu_xmm14;131  __x86_64_xmm_reg __fpu_xmm15;132  uint8_t __fpu_rsrv4[6 * 16];133  uint32_t __fpu_reserved1;134} __x86_64_float_state_t;135 136typedef struct {137  uint32_t __fpu_reserved[2];138  __x86_64_fp_control_t __fpu_fcw;139  __x86_64_fp_status_t __fpu_fsw;140  uint8_t __fpu_ftw;141  uint8_t __fpu_rsrv1;142  uint16_t __fpu_fop;143  uint32_t __fpu_ip;144  uint16_t __fpu_cs;145  uint16_t __fpu_rsrv2;146  uint32_t __fpu_dp;147  uint16_t __fpu_ds;148  uint16_t __fpu_rsrv3;149  uint32_t __fpu_mxcsr;150  uint32_t __fpu_mxcsrmask;151  __x86_64_mmst_reg __fpu_stmm0;152  __x86_64_mmst_reg __fpu_stmm1;153  __x86_64_mmst_reg __fpu_stmm2;154  __x86_64_mmst_reg __fpu_stmm3;155  __x86_64_mmst_reg __fpu_stmm4;156  __x86_64_mmst_reg __fpu_stmm5;157  __x86_64_mmst_reg __fpu_stmm6;158  __x86_64_mmst_reg __fpu_stmm7;159  __x86_64_xmm_reg __fpu_xmm0;160  __x86_64_xmm_reg __fpu_xmm1;161  __x86_64_xmm_reg __fpu_xmm2;162  __x86_64_xmm_reg __fpu_xmm3;163  __x86_64_xmm_reg __fpu_xmm4;164  __x86_64_xmm_reg __fpu_xmm5;165  __x86_64_xmm_reg __fpu_xmm6;166  __x86_64_xmm_reg __fpu_xmm7;167  __x86_64_xmm_reg __fpu_xmm8;168  __x86_64_xmm_reg __fpu_xmm9;169  __x86_64_xmm_reg __fpu_xmm10;170  __x86_64_xmm_reg __fpu_xmm11;171  __x86_64_xmm_reg __fpu_xmm12;172  __x86_64_xmm_reg __fpu_xmm13;173  __x86_64_xmm_reg __fpu_xmm14;174  __x86_64_xmm_reg __fpu_xmm15;175  uint8_t __fpu_rsrv4[6 * 16];176  uint32_t __fpu_reserved1;177  uint8_t __avx_reserved1[64];178  __x86_64_xmm_reg __fpu_ymmh0;179  __x86_64_xmm_reg __fpu_ymmh1;180  __x86_64_xmm_reg __fpu_ymmh2;181  __x86_64_xmm_reg __fpu_ymmh3;182  __x86_64_xmm_reg __fpu_ymmh4;183  __x86_64_xmm_reg __fpu_ymmh5;184  __x86_64_xmm_reg __fpu_ymmh6;185  __x86_64_xmm_reg __fpu_ymmh7;186  __x86_64_xmm_reg __fpu_ymmh8;187  __x86_64_xmm_reg __fpu_ymmh9;188  __x86_64_xmm_reg __fpu_ymmh10;189  __x86_64_xmm_reg __fpu_ymmh11;190  __x86_64_xmm_reg __fpu_ymmh12;191  __x86_64_xmm_reg __fpu_ymmh13;192  __x86_64_xmm_reg __fpu_ymmh14;193  __x86_64_xmm_reg __fpu_ymmh15;194} __x86_64_avx_state_t;195 196typedef struct { uint8_t __ymm_reg[32]; } __x86_64_ymm_reg;197typedef struct { uint8_t __zmm_reg[64]; } __x86_64_zmm_reg;198typedef struct { uint8_t __opmask_reg[8]; } __x86_64_opmask_reg;199 200typedef struct {201  uint32_t __fpu_reserved[2];202  __x86_64_fp_control_t __fpu_fcw;203  __x86_64_fp_status_t __fpu_fsw;204  uint8_t __fpu_ftw;205  uint8_t __fpu_rsrv1;206  uint16_t __fpu_fop;207  uint32_t __fpu_ip;208  uint16_t __fpu_cs;209  uint16_t __fpu_rsrv2;210  uint32_t __fpu_dp;211  uint16_t __fpu_ds;212  uint16_t __fpu_rsrv3;213  uint32_t __fpu_mxcsr;214  uint32_t __fpu_mxcsrmask;215  __x86_64_mmst_reg __fpu_stmm0;216  __x86_64_mmst_reg __fpu_stmm1;217  __x86_64_mmst_reg __fpu_stmm2;218  __x86_64_mmst_reg __fpu_stmm3;219  __x86_64_mmst_reg __fpu_stmm4;220  __x86_64_mmst_reg __fpu_stmm5;221  __x86_64_mmst_reg __fpu_stmm6;222  __x86_64_mmst_reg __fpu_stmm7;223  __x86_64_xmm_reg __fpu_xmm0;224  __x86_64_xmm_reg __fpu_xmm1;225  __x86_64_xmm_reg __fpu_xmm2;226  __x86_64_xmm_reg __fpu_xmm3;227  __x86_64_xmm_reg __fpu_xmm4;228  __x86_64_xmm_reg __fpu_xmm5;229  __x86_64_xmm_reg __fpu_xmm6;230  __x86_64_xmm_reg __fpu_xmm7;231  __x86_64_xmm_reg __fpu_xmm8;232  __x86_64_xmm_reg __fpu_xmm9;233  __x86_64_xmm_reg __fpu_xmm10;234  __x86_64_xmm_reg __fpu_xmm11;235  __x86_64_xmm_reg __fpu_xmm12;236  __x86_64_xmm_reg __fpu_xmm13;237  __x86_64_xmm_reg __fpu_xmm14;238  __x86_64_xmm_reg __fpu_xmm15;239  uint8_t __fpu_rsrv4[6 * 16];240  uint32_t __fpu_reserved1;241  uint8_t __avx_reserved1[64];242  __x86_64_xmm_reg __fpu_ymmh0;243  __x86_64_xmm_reg __fpu_ymmh1;244  __x86_64_xmm_reg __fpu_ymmh2;245  __x86_64_xmm_reg __fpu_ymmh3;246  __x86_64_xmm_reg __fpu_ymmh4;247  __x86_64_xmm_reg __fpu_ymmh5;248  __x86_64_xmm_reg __fpu_ymmh6;249  __x86_64_xmm_reg __fpu_ymmh7;250  __x86_64_xmm_reg __fpu_ymmh8;251  __x86_64_xmm_reg __fpu_ymmh9;252  __x86_64_xmm_reg __fpu_ymmh10;253  __x86_64_xmm_reg __fpu_ymmh11;254  __x86_64_xmm_reg __fpu_ymmh12;255  __x86_64_xmm_reg __fpu_ymmh13;256  __x86_64_xmm_reg __fpu_ymmh14;257  __x86_64_xmm_reg __fpu_ymmh15;258  __x86_64_opmask_reg __fpu_k0;259  __x86_64_opmask_reg __fpu_k1;260  __x86_64_opmask_reg __fpu_k2;261  __x86_64_opmask_reg __fpu_k3;262  __x86_64_opmask_reg __fpu_k4;263  __x86_64_opmask_reg __fpu_k5;264  __x86_64_opmask_reg __fpu_k6;265  __x86_64_opmask_reg __fpu_k7;266  __x86_64_ymm_reg __fpu_zmmh0;267  __x86_64_ymm_reg __fpu_zmmh1;268  __x86_64_ymm_reg __fpu_zmmh2;269  __x86_64_ymm_reg __fpu_zmmh3;270  __x86_64_ymm_reg __fpu_zmmh4;271  __x86_64_ymm_reg __fpu_zmmh5;272  __x86_64_ymm_reg __fpu_zmmh6;273  __x86_64_ymm_reg __fpu_zmmh7;274  __x86_64_ymm_reg __fpu_zmmh8;275  __x86_64_ymm_reg __fpu_zmmh9;276  __x86_64_ymm_reg __fpu_zmmh10;277  __x86_64_ymm_reg __fpu_zmmh11;278  __x86_64_ymm_reg __fpu_zmmh12;279  __x86_64_ymm_reg __fpu_zmmh13;280  __x86_64_ymm_reg __fpu_zmmh14;281  __x86_64_ymm_reg __fpu_zmmh15;282  __x86_64_zmm_reg __fpu_zmm16;283  __x86_64_zmm_reg __fpu_zmm17;284  __x86_64_zmm_reg __fpu_zmm18;285  __x86_64_zmm_reg __fpu_zmm19;286  __x86_64_zmm_reg __fpu_zmm20;287  __x86_64_zmm_reg __fpu_zmm21;288  __x86_64_zmm_reg __fpu_zmm22;289  __x86_64_zmm_reg __fpu_zmm23;290  __x86_64_zmm_reg __fpu_zmm24;291  __x86_64_zmm_reg __fpu_zmm25;292  __x86_64_zmm_reg __fpu_zmm26;293  __x86_64_zmm_reg __fpu_zmm27;294  __x86_64_zmm_reg __fpu_zmm28;295  __x86_64_zmm_reg __fpu_zmm29;296  __x86_64_zmm_reg __fpu_zmm30;297  __x86_64_zmm_reg __fpu_zmm31;298 299} __x86_64_avx512f_state_t;300 301typedef struct {302  uint32_t __trapno;303  uint32_t __err;304  uint64_t __faultvaddr;305} __x86_64_exception_state_t;306 307typedef struct {308  uint64_t __dr0;309  uint64_t __dr1;310  uint64_t __dr2;311  uint64_t __dr3;312  uint64_t __dr4;313  uint64_t __dr5;314  uint64_t __dr6;315  uint64_t __dr7;316} __x86_64_debug_state_t;317 318#endif319