Jlm
Public Attributes | Private Member Functions | List of all members
jlm::llvm::EscapedMemoryTest1 Class Referencefinal

EscapedMemoryTest1 class. More...

#include <TestRvsdgs.hpp>

Inheritance diagram for jlm::llvm::EscapedMemoryTest1:
Inheritance graph
[legend]
Collaboration diagram for jlm::llvm::EscapedMemoryTest1:
Collaboration graph
[legend]

Public Attributes

jlm::rvsdg::LambdaNodeLambdaTest
 
jlm::rvsdg::DeltaNodeDeltaA
 
jlm::rvsdg::DeltaNodeDeltaB
 
jlm::rvsdg::DeltaNodeDeltaX
 
jlm::rvsdg::DeltaNodeDeltaY
 
rvsdg::SimpleNodeLoadNode1
 

Private Member Functions

std::unique_ptr< jlm::llvm::LlvmRvsdgModuleSetupRvsdg () override
 Create RVSDG for this test. More...
 

Additional Inherited Members

- Public Member Functions inherited from jlm::llvm::RvsdgTest
virtual ~RvsdgTest ()=default
 
jlm::llvm::LlvmRvsdgModulemodule ()
 
const rvsdg::Graphgraph ()
 
void InitializeTest ()
 

Detailed Description

EscapedMemoryTest1 class.

This class sets up an RVSDG representing the following code snippet:

static int a = 1;
static int *x = &a;
int **y = &x;
static int b = 2;
int
test(int **p)
{
b = 5;
return **p;
}

It uses a single memory state to sequentialize the respective memory operations.

Definition at line 1723 of file TestRvsdgs.hpp.

Member Function Documentation

◆ SetupRvsdg()

std::unique_ptr< jlm::llvm::LlvmRvsdgModule > jlm::llvm::EscapedMemoryTest1::SetupRvsdg ( )
overrideprivatevirtual

Create RVSDG for this test.

Implements jlm::llvm::RvsdgTest.

Definition at line 2761 of file TestRvsdgs.cpp.

Member Data Documentation

◆ DeltaA

jlm::rvsdg::DeltaNode* jlm::llvm::EscapedMemoryTest1::DeltaA

Definition at line 1732 of file TestRvsdgs.hpp.

◆ DeltaB

jlm::rvsdg::DeltaNode* jlm::llvm::EscapedMemoryTest1::DeltaB

Definition at line 1733 of file TestRvsdgs.hpp.

◆ DeltaX

jlm::rvsdg::DeltaNode* jlm::llvm::EscapedMemoryTest1::DeltaX

Definition at line 1734 of file TestRvsdgs.hpp.

◆ DeltaY

jlm::rvsdg::DeltaNode* jlm::llvm::EscapedMemoryTest1::DeltaY

Definition at line 1735 of file TestRvsdgs.hpp.

◆ LambdaTest

jlm::rvsdg::LambdaNode* jlm::llvm::EscapedMemoryTest1::LambdaTest

Definition at line 1730 of file TestRvsdgs.hpp.

◆ LoadNode1

rvsdg::SimpleNode* jlm::llvm::EscapedMemoryTest1::LoadNode1

Definition at line 1737 of file TestRvsdgs.hpp.


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