Spamworldpro Mini Shell
Spamworldpro


Server : Apache
System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64
User : corals ( 1002)
PHP Version : 7.4.33
Disable Function : exec,passthru,shell_exec,system
Directory :  /proc/thread-self/root/opt/rh/gcc-toolset-11/root/usr/share/systemtap/runtime/unwind/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //proc/thread-self/root/opt/rh/gcc-toolset-11/root/usr/share/systemtap/runtime/unwind/s390x.h
/* -*- linux-c -*-
 *
 * s390x dwarf unwinder header file
 * Copyright (C) 2011 Red Hat, Inc.
 *
 * This file is part of systemtap, and is free software.  You can
 * redistribute it and/or modify it under the terms of the GNU General
 * Public License (GPL); either version 2, or (at your option) any
 * later version.
 */
#ifndef _STP_S390X_UNWIND_H
#define _STP_S390X_UNWIND_H

#include <linux/sched.h>
#include <asm/ptrace.h>

#define _stp_get_unaligned(ptr) (*(ptr))

#define UNW_PC(frame)        (frame)->regs.psw.addr
#define UNW_SP(frame)        (frame)->regs.gprs[15]

#define STACK_LIMIT(ptr)     (((ptr) - 1) & ~(THREAD_SIZE - 1))

#define UNW_REGISTER_INFO \
	PTREGS_INFO(gprs[0]), \
	PTREGS_INFO(gprs[1]), \
	PTREGS_INFO(gprs[2]), \
	PTREGS_INFO(gprs[3]), \
	PTREGS_INFO(gprs[4]), \
	PTREGS_INFO(gprs[5]), \
	PTREGS_INFO(gprs[6]), \
	PTREGS_INFO(gprs[7]), \
	PTREGS_INFO(gprs[8]), \
	PTREGS_INFO(gprs[9]), \
	PTREGS_INFO(gprs[10]), \
	PTREGS_INFO(gprs[11]), \
	PTREGS_INFO(gprs[12]), \
	PTREGS_INFO(gprs[13]), \
	PTREGS_INFO(gprs[14]), \
	PTREGS_INFO(gprs[15]), \
	PTREGS_INFO(psw.addr), \
	PTREGS_INFO(psw.mask)

#define DWARF_REG_MAP(r) \
        ((r >= 0 && r <= 15) ? r /* gpr0-15 */	\
         : (r == 64) ? 16 /* PSW addr */	\
         : (r == 65) ? 17 /* PSW mask */	\
         : 9999)

#define UNW_PC_IDX 16
#define UNW_SP_IDX 15

#define UNW_SP_FROM_CFA 0 /* Stack pointer is just gprs15, normal cfi. */

static inline void arch_unw_init_frame_info(struct unwind_frame_info *info,
                                            /*const*/ struct pt_regs *regs,
					    int sanitize)
{
	if (&info->regs == regs) { /* happens when unwinding kernel->user */
		info->call_frame = 1;
		return;
	}

	memset(info, 0, sizeof(*info));
	/* XXX handle sanitize??? */
	info->regs = *regs;
}

#endif /* _STP_S390X_UNWIND_H */

Spamworldpro Mini