mirror of
https://github.com/Mathewnd/Astral.git
synced 2026-10-27 20:58:22 +00:00
39 lines
579 B
C
39 lines
579 B
C
#ifndef _CONTEXT_H
|
|
#define _CONTEXT_H
|
|
|
|
#include <stdint.h>
|
|
|
|
typedef struct {
|
|
uint64_t cr2;
|
|
uint64_t gs;
|
|
uint64_t fs;
|
|
uint64_t es;
|
|
uint64_t ds;
|
|
uint64_t rax;
|
|
uint64_t rbx;
|
|
uint64_t rcx;
|
|
uint64_t rdx;
|
|
uint64_t r8;
|
|
uint64_t r9;
|
|
uint64_t r10;
|
|
uint64_t r11;
|
|
uint64_t r12;
|
|
uint64_t r13;
|
|
uint64_t r14;
|
|
uint64_t r15;
|
|
uint64_t rdi;
|
|
uint64_t rsi;
|
|
uint64_t rbp;
|
|
uint64_t error;
|
|
uint64_t rip;
|
|
uint64_t cs;
|
|
uint64_t rflags;
|
|
uint64_t rsp;
|
|
uint64_t ss;
|
|
} __attribute__((packed)) context_t;
|
|
|
|
#define ARCH_CTX_SP(x) x->rsp;
|
|
#define ARCH_CTX_IP(x) x->rip;
|
|
|
|
#endif
|