GDB (xrefs)

Classes | Functions
/tmp/gdb-8.1/gdb/prologue-value.c File Reference
`#include "defs.h"`
`#include "prologue-value.h"`
`#include "regcache.h"`

Go to the source code of this file.

## Classes
struct | pv_area::area_entry

## Functions
pv_t | pv_unknown (void)
pv_t | pv_constant (CORE_ADDR k)
pv_t | pv_register (int reg, CORE_ADDR k)
static void | constant_last (pv_t *a, pv_t *b)
pv_t | pv_add (pv_t a, pv_t b)
pv_t | pv_add_constant (pv_t v, CORE_ADDR k)
pv_t | pv_subtract (pv_t a, pv_t b)
pv_t | pv_logical_and (pv_t a, pv_t b)
int | pv_is_identical (pv_t a, pv_t b)
int | pv_is_constant (pv_t a)
int | pv_is_register (pv_t a, int r)
int | pv_is_register_k (pv_t a, int r, CORE_ADDR k)
enum pv_boolean | pv_is_array_ref (pv_t addr, CORE_ADDR size, pv_t array_addr, CORE_ADDR array_len, CORE_ADDR elt_size, int *i)

## Function Documentation

## ◆ constant_last()

static void constant_last | ( | pv_t * | a,
|  | pv_t * | b
| ) |  |
| static

Definition at line 69 of file prologue-value.c.

References prologue_value::kind, and pvk_constant.

Referenced by pv_add(), pv_logical_and(), and pv_subtract().

## ◆ pv_add()

pv_t pv_add | ( | pv_t | a,
|  | pv_t | b
| ) |  |

Definition at line 82 of file prologue-value.c.

References constant_last(), prologue_value::k, prologue_value::kind, pv_constant(), pv_register(), pv_unknown(), pvk_constant, pvk_register, and prologue_value::reg.

Referenced by mn10300_analyze_prologue(), pv_add_constant(), s390_addr(), s390_analyze_prologue(), and thumb_analyze_prologue().

## ◆ pv_add_constant()

pv_t pv_add_constant | ( | pv_t | v,
|  | CORE_ADDR | k
| ) |  |

Definition at line 105 of file prologue-value.c.

References pv_add(), and pv_constant().

Referenced by aarch64_analyze_prologue(), arc_is_in_prologue(), arm_analyze_prologue(), BP_MANIPULATION(), m32c_decode_sd23(), m32c_decode_srcdest4(), m32c_pv_enter(), m32c_pv_push(), mep_analyze_prologue(), mn10300_analyze_prologue(), msp430_analyze_prologue(), rl78_analyze_prologue(), rx_analyze_prologue(), s390_analyze_prologue(), and thumb_analyze_prologue().

## ◆ pv_constant()

pv_t pv_constant | ( | CORE_ADDR | k | ) |

Definition at line 36 of file prologue-value.c.

References prologue_value::k, prologue_value::kind, pvk_constant, and prologue_value::reg.

Referenced by arc_is_in_prologue(), arc_pv_get_operand(), m32c_analyze_prologue(), m32c_decode_sd23(), m32c_decode_srcdest4(), mn10300_analyze_prologue(), pv_add(), pv_add_constant(), pv_logical_and(), pv_subtract(), s390_addr(), s390_analyze_prologue(), s390_load(), and thumb_analyze_prologue().

## ◆ pv_is_array_ref()

enum pv_boolean pv_is_array_ref | ( | pv_t | addr,
|  | CORE_ADDR | size,
|  | pv_t | array_addr,
|  | CORE_ADDR | array_len,
|  | CORE_ADDR | elt_size,
|  | int * | i
| ) |  |

Definition at line 233 of file prologue-value.c.

References offset, pv_definite_no, pv_definite_yes, pv_maybe, pv_subtract(), pvk_constant, and size.

## ◆ pv_is_constant()

int pv_is_constant | ( | pv_t | a | ) |

Definition at line 209 of file prologue-value.c.

References prologue_value::kind, and pvk_constant.

Referenced by m32c_analyze_prologue(), s390_load(), s390_store(), and thumb_analyze_prologue().

## ◆ pv_is_identical()

int pv_is_identical | ( | pv_t | a,
|  | pv_t | b
| ) |  |

Definition at line 189 of file prologue-value.c.

References gdb_assert_not_reached, prologue_value::k, prologue_value::kind, pvk_constant, pvk_register, pvk_unknown, and prologue_value::reg.

Referenced by arc_is_in_prologue(), m32c_analyze_prologue(), mep_analyze_prologue(), s390_analyze_prologue(), and s390_prologue_frame_unwind_cache().

## ◆ pv_is_register()

int pv_is_register | ( | pv_t | a,
|  | int | r
| ) |  |

Definition at line 216 of file prologue-value.c.

References prologue_value::kind, pvk_register, and prologue_value::reg.

Referenced by aarch64_analyze_prologue(), arc_analyze_prologue(), arm_analyze_prologue(), check_for_saved(), is_arg_spill(), m32c_analyze_prologue(), m32c_is_arg_spill(), m32c_is_struct_return(), m32c_pushm_is_reg_save(), mep_analyze_prologue(), mn10300_analyze_prologue(), msp430_analyze_prologue(), rl78_analyze_prologue(), rx_analyze_prologue(), s390_check_for_saved(), s390_prologue_frame_unwind_cache(), and thumb_analyze_prologue().

## ◆ pv_is_register_k()

int pv_is_register_k | ( | pv_t | a,
|  | int | r,
|  | CORE_ADDR | k
| ) |  |

Definition at line 224 of file prologue-value.c.

References prologue_value::k, prologue_value::kind, pvk_register, and prologue_value::reg.

Referenced by m32c_analyze_prologue(), m32c_pushm_is_reg_save(), mep_analyze_prologue(), s390_analyze_prologue(), s390_check_for_saved(), and s390_store().

## ◆ pv_logical_and()

pv_t pv_logical_and | ( | pv_t | a,
|  | pv_t | b
| ) |  |

Definition at line 153 of file prologue-value.c.

References constant_last(), prologue_value::k, prologue_value::kind, pv_constant(), pv_unknown(), pvk_constant, pvk_register, and prologue_value::reg.

## ◆ pv_register()

pv_t pv_register | ( | int | reg,
|  | CORE_ADDR | k
| ) |  |

Definition at line 49 of file prologue-value.c.

References prologue_value::k, prologue_value::kind, pvk_register, and prologue_value::reg.

Referenced by aarch64_analyze_prologue(), arc_analyze_prologue(), arm_analyze_prologue(), m32c_analyze_prologue(), mep_analyze_prologue(), mn10300_analyze_prologue(), msp430_analyze_prologue(), pv_add(), pv_subtract(), rl78_analyze_prologue(), rx_analyze_prologue(), s390_analyze_prologue(), and thumb_analyze_prologue().

## ◆ pv_subtract()

pv_t pv_subtract | ( | pv_t | a,
|  | pv_t | b
| ) |  |

Definition at line 114 of file prologue-value.c.

References constant_last(), prologue_value::k, prologue_value::kind, pv_constant(), pv_register(), pv_unknown(), pvk_constant, pvk_register, and prologue_value::reg.

Referenced by arc_is_in_prologue(), pv_is_array_ref(), s390_analyze_prologue(), and s390_store().

## ◆ pv_unknown()

pv_t pv_unknown | ( | void |  | ) |

Definition at line 27 of file prologue-value.c.

References pvk_unknown.

Referenced by aarch64_analyze_prologue(), pv_area::fetch(), m32c_decode_sd23(), m32c_decode_srcdest4(), m32c_srcdest_fetch(), m32c_srcdest_store(), pv_add(), pv_logical_and(), and pv_subtract().