LLVM 17.0.0git
Public Attributes | List of all members
LoadOps Struct Reference

This is used by foldLoadsRecursive() to capture a Root Load node which is of type or(load, load) and recursively build the wide load. More...

Collaboration diagram for LoadOps:
Collaboration graph
[legend]

Public Attributes

LoadInstRoot = nullptr
 
LoadInstRootInsert = nullptr
 
bool FoundRoot = false
 
uint64_t LoadSize = 0
 
ValueShift = nullptr
 
TypeZextType
 
AAMDNodes AATags
 

Detailed Description

This is used by foldLoadsRecursive() to capture a Root Load node which is of type or(load, load) and recursively build the wide load.

Also capture the shift amount, zero extend type and loadSize.

Definition at line 609 of file AggressiveInstCombine.cpp.

Member Data Documentation

◆ AATags

AAMDNodes LoadOps::AATags

Definition at line 616 of file AggressiveInstCombine.cpp.

Referenced by foldConsecutiveLoads(), and foldLoadsRecursive().

◆ FoundRoot

bool LoadOps::FoundRoot = false

Definition at line 612 of file AggressiveInstCombine.cpp.

Referenced by foldConsecutiveLoads(), and foldLoadsRecursive().

◆ LoadSize

uint64_t LoadOps::LoadSize = 0

Definition at line 613 of file AggressiveInstCombine.cpp.

Referenced by foldConsecutiveLoads(), and foldLoadsRecursive().

◆ Root

LoadInst* LoadOps::Root = nullptr

Definition at line 610 of file AggressiveInstCombine.cpp.

Referenced by foldConsecutiveLoads(), and foldLoadsRecursive().

◆ RootInsert

LoadInst* LoadOps::RootInsert = nullptr

Definition at line 611 of file AggressiveInstCombine.cpp.

Referenced by foldConsecutiveLoads(), and foldLoadsRecursive().

◆ Shift

Value* LoadOps::Shift = nullptr

Definition at line 614 of file AggressiveInstCombine.cpp.

Referenced by foldConsecutiveLoads(), and foldLoadsRecursive().

◆ ZextType

Type* LoadOps::ZextType

Definition at line 615 of file AggressiveInstCombine.cpp.

Referenced by foldConsecutiveLoads(), and foldLoadsRecursive().


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