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

Bits2PtrTest class. More...

#include <TestRvsdgs.hpp>

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

Public Member Functions

const jlm::rvsdg::LambdaNodeGetLambdaBits2Ptr () const noexcept
 
const jlm::rvsdg::LambdaNodeGetLambdaTest () const noexcept
 
const rvsdg::SimpleNodeGetCallNode () const noexcept
 
const rvsdg::NodeGetBitsToPtrNode () 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::LambdaNodeLambdaBits2Ptr_ {}
 
jlm::rvsdg::LambdaNodeLambdaTest_ {}
 
rvsdg::NodeBitsToPtrNode_ {}
 
rvsdg::SimpleNodeCallNode_ {}
 

Detailed Description

Bits2PtrTest class.

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

static void*
bit2ptr(ptrdiff_t i)
{
return (void*)i;
}
void
test(ptrdiff_t i)
{
bit2ptr(i);
}

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

Definition at line 334 of file TestRvsdgs.hpp.

Member Function Documentation

◆ GetBitsToPtrNode()

const rvsdg::Node& jlm::llvm::Bits2PtrTest::GetBitsToPtrNode ( ) const
inlinenoexcept

Definition at line 356 of file TestRvsdgs.hpp.

◆ GetCallNode()

const rvsdg::SimpleNode& jlm::llvm::Bits2PtrTest::GetCallNode ( ) const
inlinenoexcept

Definition at line 350 of file TestRvsdgs.hpp.

◆ GetLambdaBits2Ptr()

const jlm::rvsdg::LambdaNode& jlm::llvm::Bits2PtrTest::GetLambdaBits2Ptr ( ) const
inlinenoexcept

Definition at line 338 of file TestRvsdgs.hpp.

◆ GetLambdaTest()

const jlm::rvsdg::LambdaNode& jlm::llvm::Bits2PtrTest::GetLambdaTest ( ) const
inlinenoexcept

Definition at line 344 of file TestRvsdgs.hpp.

◆ SetupRvsdg()

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

Create RVSDG for this test.

Implements jlm::llvm::RvsdgTest.

Definition at line 364 of file TestRvsdgs.cpp.

Member Data Documentation

◆ BitsToPtrNode_

rvsdg::Node* jlm::llvm::Bits2PtrTest::BitsToPtrNode_ {}
private

Definition at line 368 of file TestRvsdgs.hpp.

◆ CallNode_

rvsdg::SimpleNode* jlm::llvm::Bits2PtrTest::CallNode_ {}
private

Definition at line 370 of file TestRvsdgs.hpp.

◆ LambdaBits2Ptr_

jlm::rvsdg::LambdaNode* jlm::llvm::Bits2PtrTest::LambdaBits2Ptr_ {}
private

Definition at line 365 of file TestRvsdgs.hpp.

◆ LambdaTest_

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

Definition at line 366 of file TestRvsdgs.hpp.


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