1 /* 2 * Copyright (c) 2019 Intel Corp. 3 * SPDX-License-Identifier: Apache-2.0 4 */ 5 6 #ifndef _X86_OFFSETS_INC_ 7 #define _X86_OFFSETS_INC_ 8 9 GEN_OFFSET_SYM(_callee_saved_t, rsp); 10 GEN_OFFSET_SYM(_callee_saved_t, rbp); 11 GEN_OFFSET_SYM(_callee_saved_t, rbx); 12 GEN_OFFSET_SYM(_callee_saved_t, r12); 13 GEN_OFFSET_SYM(_callee_saved_t, r13); 14 GEN_OFFSET_SYM(_callee_saved_t, r14); 15 GEN_OFFSET_SYM(_callee_saved_t, r15); 16 GEN_OFFSET_SYM(_callee_saved_t, rip); 17 GEN_OFFSET_SYM(_callee_saved_t, rflags); 18 19 GEN_OFFSET_SYM(_thread_arch_t, rax); 20 GEN_OFFSET_SYM(_thread_arch_t, rcx); 21 GEN_OFFSET_SYM(_thread_arch_t, rdx); 22 GEN_OFFSET_SYM(_thread_arch_t, rsi); 23 GEN_OFFSET_SYM(_thread_arch_t, rdi); 24 GEN_OFFSET_SYM(_thread_arch_t, r8); 25 GEN_OFFSET_SYM(_thread_arch_t, r9); 26 GEN_OFFSET_SYM(_thread_arch_t, r10); 27 GEN_OFFSET_SYM(_thread_arch_t, r11); 28 GEN_OFFSET_SYM(_thread_arch_t, sse); 29 #ifdef CONFIG_USERSPACE 30 GEN_OFFSET_SYM(_thread_arch_t, ss); 31 GEN_OFFSET_SYM(_thread_arch_t, cs); 32 GEN_OFFSET_SYM(_thread_arch_t, psp); 33 #ifndef CONFIG_X86_COMMON_PAGE_TABLE 34 GEN_OFFSET_SYM(_thread_arch_t, ptables); 35 #endif 36 #endif /* CONFIG_USERSPACE */ 37 38 GEN_OFFSET_SYM(x86_tss64_t, ist1); 39 GEN_OFFSET_SYM(x86_tss64_t, ist2); 40 GEN_OFFSET_SYM(x86_tss64_t, ist6); 41 GEN_OFFSET_SYM(x86_tss64_t, ist7); 42 GEN_OFFSET_SYM(x86_tss64_t, cpu); 43 #ifdef CONFIG_USERSPACE 44 GEN_OFFSET_SYM(x86_tss64_t, psp); 45 GEN_OFFSET_SYM(x86_tss64_t, usp); 46 #endif /* CONFIG_USERSPACE */ 47 GEN_ABSOLUTE_SYM(__X86_TSS64_SIZEOF, sizeof(x86_tss64_t)); 48 49 GEN_OFFSET_SYM(x86_cpuboot_t, ready); 50 GEN_OFFSET_SYM(x86_cpuboot_t, tr); 51 GEN_OFFSET_SYM(x86_cpuboot_t, gs_base); 52 GEN_OFFSET_SYM(x86_cpuboot_t, sp); 53 GEN_OFFSET_SYM(x86_cpuboot_t, stack_size); 54 GEN_OFFSET_SYM(x86_cpuboot_t, fn); 55 GEN_OFFSET_SYM(x86_cpuboot_t, arg); 56 GEN_ABSOLUTE_SYM(__X86_CPUBOOT_SIZEOF, sizeof(x86_cpuboot_t)); 57 58 #endif /* _X86_OFFSETS_INC_ */ 59