user-offsets.c (cbecf716ca618fd44feda6bd9a64a8179d031fc5) | user-offsets.c (c7500c1b53bfc083e8968cdce13a5a9d1ca9bf83) |
---|---|
1// SPDX-License-Identifier: GPL-2.0 2#include <stdio.h> 3#include <stddef.h> 4#include <signal.h> 5#include <poll.h> 6#include <sys/mman.h> 7#include <sys/user.h> 8#define __FRAME_OFFSETS 9#include <linux/ptrace.h> 10#include <asm/types.h> | 1// SPDX-License-Identifier: GPL-2.0 2#include <stdio.h> 3#include <stddef.h> 4#include <signal.h> 5#include <poll.h> 6#include <sys/mman.h> 7#include <sys/user.h> 8#define __FRAME_OFFSETS 9#include <linux/ptrace.h> 10#include <asm/types.h> |
11#include <linux/kbuild.h> |
|
11 | 12 |
12#define DEFINE(sym, val) \ 13 asm volatile("\n->" #sym " %0 " #val : : "i" (val)) | 13#define DEFINE_LONGS(sym, val) \ 14 COMMENT(#val " / sizeof(unsigned long)"); \ 15 DEFINE(sym, val / sizeof(unsigned long)) |
14 | 16 |
15#define DEFINE_LONGS(sym, val) \ 16 asm volatile("\n->" #sym " %0 " #val : : "i" (val/sizeof(unsigned long))) 17 | |
18void foo(void) 19{ 20#ifdef __i386__ 21 DEFINE_LONGS(HOST_FP_SIZE, sizeof(struct user_fpregs_struct)); 22 DEFINE_LONGS(HOST_FPX_SIZE, sizeof(struct user_fpxregs_struct)); 23 24 DEFINE(HOST_IP, EIP); 25 DEFINE(HOST_SP, UESP); --- 60 unchanged lines hidden --- | 17void foo(void) 18{ 19#ifdef __i386__ 20 DEFINE_LONGS(HOST_FP_SIZE, sizeof(struct user_fpregs_struct)); 21 DEFINE_LONGS(HOST_FPX_SIZE, sizeof(struct user_fpxregs_struct)); 22 23 DEFINE(HOST_IP, EIP); 24 DEFINE(HOST_SP, UESP); --- 60 unchanged lines hidden --- |