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

DeltaTest3 class. More...

#include <TestRvsdgs.hpp>

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

Public Member Functions

const jlm::rvsdg::LambdaNodeLambdaF () const noexcept
 
const jlm::rvsdg::LambdaNodeLambdaTest () const noexcept
 
const jlm::rvsdg::DeltaNodeDeltaG1 () const noexcept
 
const jlm::rvsdg::DeltaNodeDeltaG2 () const noexcept
 
const rvsdg::SimpleNodeCallF () const noexcept
 
- Public Member Functions inherited from jlm::llvm::RvsdgTest
virtual ~RvsdgTest ()=default
 
jlm::llvm::LlvmRvsdgModulemodule ()
 
const rvsdg::Graphgraph ()
 
void InitializeTest ()
 

Private Member Functions

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

Private Attributes

jlm::rvsdg::LambdaNodeLambdaF_ {}
 
jlm::rvsdg::LambdaNodeLambdaTest_ {}
 
jlm::rvsdg::DeltaNodeDeltaG1_ {}
 
jlm::rvsdg::DeltaNodeDeltaG2_ {}
 
rvsdg::SimpleNodeCallF_ {}
 

Detailed Description

DeltaTest3 class.

This function sets up an RVSDG representing the following function:

static int32_t g1 = 1L;
static int32_t *g2 = &g1;
static int16_t
f()
{
g2 = g2;
return g1;
}
int16_t
test()
{
return f();
}

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

Definition at line 1256 of file TestRvsdgs.hpp.

Member Function Documentation

◆ CallF()

const rvsdg::SimpleNode& jlm::llvm::DeltaTest3::CallF ( ) const
inlinenoexcept

Definition at line 1284 of file TestRvsdgs.hpp.

◆ DeltaG1()

const jlm::rvsdg::DeltaNode& jlm::llvm::DeltaTest3::DeltaG1 ( ) const
inlinenoexcept

Definition at line 1272 of file TestRvsdgs.hpp.

◆ DeltaG2()

const jlm::rvsdg::DeltaNode& jlm::llvm::DeltaTest3::DeltaG2 ( ) const
inlinenoexcept

Definition at line 1278 of file TestRvsdgs.hpp.

◆ LambdaF()

const jlm::rvsdg::LambdaNode& jlm::llvm::DeltaTest3::LambdaF ( ) const
inlinenoexcept

Definition at line 1260 of file TestRvsdgs.hpp.

◆ LambdaTest()

const jlm::rvsdg::LambdaNode& jlm::llvm::DeltaTest3::LambdaTest ( ) const
inlinenoexcept

Definition at line 1266 of file TestRvsdgs.hpp.

◆ SetupRvsdg()

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

Create RVSDG for this test.

Implements jlm::llvm::RvsdgTest.

Definition at line 1923 of file TestRvsdgs.cpp.

Member Data Documentation

◆ CallF_

rvsdg::SimpleNode* jlm::llvm::DeltaTest3::CallF_ {}
private

Definition at line 1299 of file TestRvsdgs.hpp.

◆ DeltaG1_

jlm::rvsdg::DeltaNode* jlm::llvm::DeltaTest3::DeltaG1_ {}
private

Definition at line 1296 of file TestRvsdgs.hpp.

◆ DeltaG2_

jlm::rvsdg::DeltaNode* jlm::llvm::DeltaTest3::DeltaG2_ {}
private

Definition at line 1297 of file TestRvsdgs.hpp.

◆ LambdaF_

jlm::rvsdg::LambdaNode* jlm::llvm::DeltaTest3::LambdaF_ {}
private

Definition at line 1293 of file TestRvsdgs.hpp.

◆ LambdaTest_

jlm::rvsdg::LambdaNode* jlm::llvm::DeltaTest3::LambdaTest_ {}
private

Definition at line 1294 of file TestRvsdgs.hpp.


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