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_desc * | get_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 | ) |

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

References internal_error(), s390_linux32_ft_collect_regmap, s390_linux64_ft_collect_regmap, S390_TDESC_32, S390_TDESC_32V1, S390_TDESC_32V2, S390_TDESC_64, S390_TDESC_64V1, S390_TDESC_64V2, S390_TDESC_TE, S390_TDESC_TEVX, S390_TDESC_VX, s390_te_linux64_ft_collect_regmap, SET_REGMAP, tdesc_s390_linux32, tdesc_s390_linux32v1, tdesc_s390_linux32v2, tdesc_s390_linux64, tdesc_s390_linux64v1, tdesc_s390_linux64v2, tdesc_s390_te_linux64, tdesc_s390_tevx_linux64, and tdesc_s390_vx_linux64.

## ◆ get_raw_reg()

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

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

References aarch64_ft_collect_regmap, AARCH64_NUM_FT_COLLECT_GREGS, FT_ACR, FT_CR_SIZE, FT_FPC, FT_GPR, FT_PSWA, FT_PSWA_L, FT_PSWM, FT_PSWM_U, FT_VR, offset, s390_regmap, and s390_regnum.

## ◆ initialize_low_tracepoint()

void initialize_low_tracepoint | ( | void |  | ) |

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

References init_registers_s390_linux32(), init_registers_s390_linux32v1(), init_registers_s390_linux32v2(), init_registers_s390_linux64(), init_registers_s390_linux64v1(), init_registers_s390_linux64v2(), init_registers_s390_te_linux64(), init_registers_s390_tevx_linux64(), and init_registers_s390_vx_linux64().

## ◆ 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_PSWM_U, FT_PSWA_L,
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,
}
FT_GPR_L
#define FT_GPR_L(x)
Definition: linux-s390-ipa.c:35
FT_PSWM_U
#define FT_PSWM_U
Definition: linux-s390-ipa.c:39
FT_PSWA_L
#define FT_PSWA_L
Definition: linux-s390-ipa.c:41
FT_ACR
#define FT_ACR(x)
Definition: linux-s390-ipa.c:37
FT_FPR
#define FT_FPR(x)
Definition: linux-s390-ipa.c:30

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().