#include "source/opt/desc_sroa_util.h"
namespace spvtools {
namespace opt {
namespace {
constexpr uint32_t kOpAccessChainInOperandIndexes = …;
uint32_t GetLengthOfArrayType(IRContext* context, Instruction* type) { … }
bool HasDescriptorDecorations(IRContext* context, Instruction* var) { … }
Instruction* GetVariableType(IRContext* context, Instruction* var) { … }
}
namespace descsroautil {
bool IsDescriptorArray(IRContext* context, Instruction* var) { … }
bool IsDescriptorStruct(IRContext* context, Instruction* var) { … }
bool IsTypeOfStructuredBuffer(IRContext* context, const Instruction* type) { … }
const analysis::Constant* GetAccessChainIndexAsConst(
IRContext* context, Instruction* access_chain) { … }
uint32_t GetFirstIndexOfAccessChain(Instruction* access_chain) { … }
uint32_t GetNumberOfElementsForArrayOrStruct(IRContext* context,
Instruction* var) { … }
}
}
}