GDBserver
Macros | Functions | Variables
linux-s390-ipa.c File Reference
#include "server.h"
#include <sys/mman.h>
#include "tracepoint.h"
#include "linux-s390-tdesc.h"
#include <elf.h>

Go to the source code of this file.

Macros

#define FT_FPR(x)   (0x000 + (x) * 0x10)
 
#define FT_VR(x)   (0x000 + (x) * 0x10)
 
#define FT_VR_L(x)   (0x008 + (x) * 0x10)
 
#define FT_GPR(x)   (0x200 + (x) * 8)
 
#define FT_GPR_U(x)   (0x200 + (x) * 8)
 
#define FT_GPR_L(x)   (0x204 + (x) * 8)
 
#define FT_GPR(x)   (0x200 + (x) * 8)
 
#define FT_ACR(x)   (0x280 + (x) * 4)
 
#define FT_PSWM   0x2c0
 
#define FT_PSWM_U   0x2c0
 
#define FT_PSWA   0x2c8
 
#define FT_PSWA_L   0x2cc
 
#define FT_FPC   0x2d0
 
#define SET_REGMAP(regmap, skip_last)
 

Functions

void supply_fast_tracepoint_registers (struct regcache *regcache, const unsigned char *buf)
 
ULONGEST get_raw_reg (const unsigned char *raw_regs, int regnum)
 
const struct target_descget_ipa_tdesc (int idx)
 
void * alloc_jump_pad_buffer (size_t size)
 
void initialize_low_tracepoint (void)
 

Variables

static const int s390_linux32_ft_collect_regmap []
 
static const int s390_linux64_ft_collect_regmap []
 
static const int s390_te_linux64_ft_collect_regmap []
 
static const int * s390_regmap
 
static int s390_regnum
 

Macro Definition Documentation

◆ FT_ACR

#define FT_ACR (   x)    (0x280 + (x) * 4)

Definition at line 37 of file linux-s390-ipa.c.

Referenced by get_raw_reg().

◆ FT_FPC

#define FT_FPC   0x2d0

Definition at line 42 of file linux-s390-ipa.c.

Referenced by get_raw_reg().

◆ FT_FPR

#define FT_FPR (   x)    (0x000 + (x) * 0x10)

Definition at line 30 of file linux-s390-ipa.c.

◆ FT_GPR [1/2]

#define FT_GPR (   x)    (0x200 + (x) * 8)

Definition at line 36 of file linux-s390-ipa.c.

Referenced by get_raw_reg().

◆ FT_GPR [2/2]

#define FT_GPR (   x)    (0x200 + (x) * 8)

Definition at line 36 of file linux-s390-ipa.c.

◆ FT_GPR_L

#define FT_GPR_L (   x)    (0x204 + (x) * 8)

Definition at line 35 of file linux-s390-ipa.c.

◆ FT_GPR_U

#define FT_GPR_U (   x)    (0x200 + (x) * 8)

Definition at line 34 of file linux-s390-ipa.c.

◆ FT_PSWA

#define FT_PSWA   0x2c8

Definition at line 40 of file linux-s390-ipa.c.

Referenced by get_raw_reg().

◆ FT_PSWA_L

#define FT_PSWA_L   0x2cc

Definition at line 41 of file linux-s390-ipa.c.

Referenced by get_raw_reg().

◆ FT_PSWM

#define FT_PSWM   0x2c0

Definition at line 38 of file linux-s390-ipa.c.

Referenced by get_raw_reg().

◆ FT_PSWM_U

#define FT_PSWM_U   0x2c0

Definition at line 39 of file linux-s390-ipa.c.

Referenced by get_raw_reg().

◆ FT_VR

#define FT_VR (   x)    (0x000 + (x) * 0x10)

Definition at line 31 of file linux-s390-ipa.c.

Referenced by get_raw_reg().

◆ FT_VR_L

#define FT_VR_L (   x)    (0x008 + (x) * 0x10)

Definition at line 32 of file linux-s390-ipa.c.

◆ SET_REGMAP

#define SET_REGMAP (   regmap,
  skip_last 
)
Value:
do { \
s390_regmap = regmap; \
s390_regnum = (sizeof regmap / sizeof regmap[0]) - skip_last; \
} while(0)

Referenced by get_ipa_tdesc().

Function Documentation

◆ alloc_jump_pad_buffer()

void* alloc_jump_pad_buffer ( size_t  size)

Definition at line 384 of file linux-s390-ipa.c.

References perror_with_name().

◆ get_ipa_tdesc()

const struct target_desc* get_ipa_tdesc ( int  idx)

◆ get_raw_reg()

ULONGEST get_raw_reg ( const unsigned char *  raw_regs,
int  regnum 
)

◆ initialize_low_tracepoint()

void initialize_low_tracepoint ( void  )

◆ supply_fast_tracepoint_registers()

void supply_fast_tracepoint_registers ( struct regcache regcache,
const unsigned char *  buf 
)

Definition at line 260 of file linux-s390-ipa.c.

References s390_regmap, s390_regnum, and supply_register().

Variable Documentation

◆ s390_linux32_ft_collect_regmap

const int s390_linux32_ft_collect_regmap[]
static
Initial value:
= {
FT_GPR_L (0), FT_GPR_L (1), FT_GPR_L (2), FT_GPR_L (3),
FT_GPR_L (4), FT_GPR_L (5), FT_GPR_L (6), FT_GPR_L (7),
FT_GPR_L (8), FT_GPR_L (9), FT_GPR_L (10), FT_GPR_L (11),
FT_GPR_L (12), FT_GPR_L (13), FT_GPR_L (14), FT_GPR_L (15),
FT_ACR (0), FT_ACR (1), FT_ACR (2), FT_ACR (3),
FT_ACR (4), FT_ACR (5), FT_ACR (6), FT_ACR (7),
FT_ACR (8), FT_ACR (9), FT_ACR (10), FT_ACR (11),
FT_ACR (12), FT_ACR (13), FT_ACR (14), FT_ACR (15),
FT_FPR (0), FT_FPR (1), FT_FPR (2), FT_FPR (3),
FT_FPR (4), FT_FPR (5), FT_FPR (6), FT_FPR (7),
FT_FPR (8), FT_FPR (9), FT_FPR (10), FT_FPR (11),
FT_FPR (12), FT_FPR (13), FT_FPR (14), FT_FPR (15),
-1, -1, -1,
}
#define FT_GPR_L(x)
#define FT_PSWM_U
#define FT_PSWA_L
#define FT_ACR(x)
#define FT_FPR(x)

Definition at line 54 of file linux-s390-ipa.c.

Referenced by get_ipa_tdesc().

◆ s390_linux64_ft_collect_regmap

const int s390_linux64_ft_collect_regmap[]
static

Definition at line 78 of file linux-s390-ipa.c.

Referenced by get_ipa_tdesc().

◆ s390_regmap

const int* s390_regmap
static

Definition at line 254 of file linux-s390-ipa.c.

Referenced by get_raw_reg(), and supply_fast_tracepoint_registers().

◆ s390_regnum

int s390_regnum
static

Definition at line 255 of file linux-s390-ipa.c.

Referenced by get_raw_reg(), and supply_fast_tracepoint_registers().

◆ s390_te_linux64_ft_collect_regmap

const int s390_te_linux64_ft_collect_regmap[]
static

Definition at line 124 of file linux-s390-ipa.c.

Referenced by get_ipa_tdesc().