~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/arch/csky/kernel/asm-offsets.c

Version: ~ [ linux-5.16 ] ~ [ linux-5.15.13 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.90 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.170 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.224 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.261 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.296 ] ~ [ linux-4.8.17 ] ~ [ linux-4.7.10 ] ~ [ linux-4.6.7 ] ~ [ linux-4.5.7 ] ~ [ linux-4.4.298 ] ~ [ linux-4.3.6 ] ~ [ linux-4.2.8 ] ~ [ linux-4.1.52 ] ~ [ linux-4.0.9 ] ~ [ linux-3.18.140 ] ~ [ linux-3.16.85 ] ~ [ linux-3.14.79 ] ~ [ linux-3.12.74 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.5 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 // SPDX-License-Identifier: GPL-2.0
  2 // Copyright (C) 2018 Hangzhou C-SKY Microsystems co.,ltd.
  3 
  4 #include <linux/sched.h>
  5 #include <linux/kernel_stat.h>
  6 #include <linux/kbuild.h>
  7 #include <abi/regdef.h>
  8 
  9 int main(void)
 10 {
 11         /* offsets into the task struct */
 12         DEFINE(TASK_STATE,        offsetof(struct task_struct, state));
 13         DEFINE(TASK_THREAD_INFO,  offsetof(struct task_struct, stack));
 14         DEFINE(TASK_FLAGS,        offsetof(struct task_struct, flags));
 15         DEFINE(TASK_PTRACE,       offsetof(struct task_struct, ptrace));
 16         DEFINE(TASK_THREAD,       offsetof(struct task_struct, thread));
 17         DEFINE(TASK_MM,           offsetof(struct task_struct, mm));
 18         DEFINE(TASK_ACTIVE_MM,    offsetof(struct task_struct, active_mm));
 19 
 20         /* offsets into the thread struct */
 21         DEFINE(THREAD_KSP,        offsetof(struct thread_struct, ksp));
 22         DEFINE(THREAD_SR,         offsetof(struct thread_struct, sr));
 23         DEFINE(THREAD_FESR,       offsetof(struct thread_struct, user_fp.fesr));
 24         DEFINE(THREAD_FCR,        offsetof(struct thread_struct, user_fp.fcr));
 25         DEFINE(THREAD_FPREG,      offsetof(struct thread_struct, user_fp.vr));
 26 
 27         /* offsets into the thread_info struct */
 28         DEFINE(TINFO_FLAGS,       offsetof(struct thread_info, flags));
 29         DEFINE(TINFO_PREEMPT,     offsetof(struct thread_info, preempt_count));
 30         DEFINE(TINFO_ADDR_LIMIT,  offsetof(struct thread_info, addr_limit));
 31         DEFINE(TINFO_TP_VALUE,   offsetof(struct thread_info, tp_value));
 32         DEFINE(TINFO_TASK,        offsetof(struct thread_info, task));
 33 
 34         /* offsets into the pt_regs */
 35         DEFINE(PT_PC,             offsetof(struct pt_regs, pc));
 36         DEFINE(PT_ORIG_AO,        offsetof(struct pt_regs, orig_a0));
 37         DEFINE(PT_SR,             offsetof(struct pt_regs, sr));
 38 
 39         DEFINE(PT_A0,             offsetof(struct pt_regs, a0));
 40         DEFINE(PT_A1,             offsetof(struct pt_regs, a1));
 41         DEFINE(PT_A2,             offsetof(struct pt_regs, a2));
 42         DEFINE(PT_A3,             offsetof(struct pt_regs, a3));
 43         DEFINE(PT_REGS0,          offsetof(struct pt_regs, regs[0]));
 44         DEFINE(PT_REGS1,          offsetof(struct pt_regs, regs[1]));
 45         DEFINE(PT_REGS2,          offsetof(struct pt_regs, regs[2]));
 46         DEFINE(PT_REGS3,          offsetof(struct pt_regs, regs[3]));
 47         DEFINE(PT_REGS4,          offsetof(struct pt_regs, regs[4]));
 48         DEFINE(PT_REGS5,          offsetof(struct pt_regs, regs[5]));
 49         DEFINE(PT_REGS6,          offsetof(struct pt_regs, regs[6]));
 50         DEFINE(PT_REGS7,          offsetof(struct pt_regs, regs[7]));
 51         DEFINE(PT_REGS8,          offsetof(struct pt_regs, regs[8]));
 52         DEFINE(PT_REGS9,          offsetof(struct pt_regs, regs[9]));
 53         DEFINE(PT_R15,            offsetof(struct pt_regs, lr));
 54 #if defined(__CSKYABIV2__)
 55         DEFINE(PT_R16,            offsetof(struct pt_regs, exregs[0]));
 56         DEFINE(PT_R17,            offsetof(struct pt_regs, exregs[1]));
 57         DEFINE(PT_R18,            offsetof(struct pt_regs, exregs[2]));
 58         DEFINE(PT_R19,            offsetof(struct pt_regs, exregs[3]));
 59         DEFINE(PT_R20,            offsetof(struct pt_regs, exregs[4]));
 60         DEFINE(PT_R21,            offsetof(struct pt_regs, exregs[5]));
 61         DEFINE(PT_R22,            offsetof(struct pt_regs, exregs[6]));
 62         DEFINE(PT_R23,            offsetof(struct pt_regs, exregs[7]));
 63         DEFINE(PT_R24,            offsetof(struct pt_regs, exregs[8]));
 64         DEFINE(PT_R25,            offsetof(struct pt_regs, exregs[9]));
 65         DEFINE(PT_R26,            offsetof(struct pt_regs, exregs[10]));
 66         DEFINE(PT_R27,            offsetof(struct pt_regs, exregs[11]));
 67         DEFINE(PT_R28,            offsetof(struct pt_regs, exregs[12]));
 68         DEFINE(PT_R29,            offsetof(struct pt_regs, exregs[13]));
 69         DEFINE(PT_R30,            offsetof(struct pt_regs, exregs[14]));
 70         DEFINE(PT_R31,            offsetof(struct pt_regs, exregs[15]));
 71         DEFINE(PT_RHI,            offsetof(struct pt_regs, rhi));
 72         DEFINE(PT_RLO,            offsetof(struct pt_regs, rlo));
 73 #endif
 74         DEFINE(PT_USP,            offsetof(struct pt_regs, usp));
 75 
 76         /* offsets into the irq_cpustat_t struct */
 77         DEFINE(CPUSTAT_SOFTIRQ_PENDING, offsetof(irq_cpustat_t,
 78                                                 __softirq_pending));
 79 
 80         /* signal defines */
 81         DEFINE(SIGSEGV, SIGSEGV);
 82         DEFINE(SIGTRAP, SIGTRAP);
 83 
 84         return 0;
 85 }
 86 

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | Wiki (Japanese) | Wiki (English) | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

osdn.jp