Skip to main content

class access_front

Declaration

class access_front { /* full declaration omitted */ };

Description

Maintains a set of concurrent instructions that are accessing a subrange of a buffer allocation. Instruction pointers are ordered by id to allow equality comparision on the internal vector structure.

Member Variables

gch::small_vector<instruction*> m_instructions
mode m_mode = none

Member Function Overview

Friend Function Overview

  • operator!=(const access_front & lhs, const access_front & rhs) → friend bool
  • operator==(const access_front & lhs, const access_front & rhs) → friend bool

Member Functions

access_front()


explicit access_front(mode mode)

Parameters

mode mode

explicit access_front(instruction* instr,
                      mode mode)

Parameters

instruction* instr
mode mode

void add_instruction(instruction* instr)

Parameters

instruction* instr

[[nodiscard]] access_front apply_epoch(
    instruction* epoch) const

Parameters

instruction* epoch

const gch::small_vector<instruction*>&
get_instructions() const


mode get_mode() const


Friend Functions

friend bool operator!=(const access_front& lhs,
                       const access_front& rhs)

Parameters

const access_front& lhs
const access_front& rhs

friend bool operator==(const access_front& lhs,
                       const access_front& rhs)

Parameters

const access_front& lhs
const access_front& rhs