MCPcopy Create free account
hub / github.com/WasmEdge/WasmEdge / createArrayPtrLoad

Method createArrayPtrLoad

lib/llvm/llvm.h:1642–1654  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1640 }
1641
1642 std::vector<Value> createArrayPtrLoad(size_t RetSize, Type Ty, Value Ptr,
1643 Type PtrTy, uint32_t Align = 1,
1644 const char *Name = "") noexcept {
1645 std::vector<Value> ValVec;
1646 ValVec.reserve(RetSize);
1647 for (size_t I = 0; I < RetSize; ++I) {
1648 auto VPtr = createConstInBoundsGEP1_64(PtrTy, Ptr, I * Align, Name);
1649 auto TargetTy = Ty.getStructElementType(static_cast<unsigned int>(I));
1650 ValVec.push_back(
1651 createLoad(TargetTy, createBitCast(VPtr, TargetTy.getPointerTo())));
1652 }
1653 return ValVec;
1654 }
1655
1656 void createArrayPtrStore(Span<const Value> Vals, Value Ptr, Type PtrTy,
1657 uint32_t Align = 1, const char *Name = "") noexcept {

Callers 5

compileIndirectCallOpMethod · 0.80
compileCallRefOpMethod · 0.80
compileMethod · 0.80

Calls 2

getStructElementTypeMethod · 0.80
getPointerToMethod · 0.80

Tested by

no test coverage detected