Jlm
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
jlm::llvm::TracedPointerOrigin Struct Reference

#include <Trace.hpp>

Collaboration diagram for jlm::llvm::TracedPointerOrigin:
Collaboration graph
[legend]

Public Member Functions

std::optional< int64_t > getOffsetInBytes () const noexcept
 

Public Attributes

const rvsdg::OutputBasePointer = nullptr
 
std::optional< std::vector< GetElementPtrOperation::Constant > > gepConstants {}
 

Detailed Description

Represents the result of tracing a pointer p to some origin, as a traced base pointer value plus the encountered statically known GetElementPtrOperation offsets.

If the offsets are present, that means p = base pointer + offsets

If the offsets are not present, that means p = base pointer + [unknown offset]

Definition at line 93 of file Trace.hpp.

Member Function Documentation

◆ getOffsetInBytes()

std::optional< int64_t > jlm::llvm::TracedPointerOrigin::getOffsetInBytes ( ) const
noexcept
Returns
Return the offset in bytes of the traced pointer if possible, otherwise std::nullopt.

Definition at line 138 of file Trace.cpp.

Member Data Documentation

◆ BasePointer

const rvsdg::Output* jlm::llvm::TracedPointerOrigin::BasePointer = nullptr

Definition at line 101 of file Trace.hpp.

◆ gepConstants

std::optional<std::vector<GetElementPtrOperation::Constant> > jlm::llvm::TracedPointerOrigin::gepConstants {}

Definition at line 102 of file Trace.hpp.


The documentation for this struct was generated from the following files: