LLVM 24.0.0git
llvm::OpenMPIRBuilder::MapInfosTy Struct Reference

This structure contains combined information generated for mappable clauses, including base pointers, pointers, sizes, map types, user-defined mappers, and non-contiguous information. More...

#include "llvm/Frontend/OpenMP/OMPIRBuilder.h"

Classes

struct  StructNonContiguousInfo

Public Member Functions

void append (MapInfosTy &CurInfo)
 Append arrays in CurInfo.

Public Attributes

MapValuesArrayTy BasePointers
MapValuesArrayTy Pointers
MapDeviceInfoArrayTy DevicePointers
MapValuesArrayTy Sizes
MapFlagsArrayTy Types
MapNamesArrayTy Names
MapHasAttachPtrArrayTy HasAttachPtr
 True for entries that have an attach ptr, and thus an accompanying ATTACH entry linking that ptr to its ptee.
StructNonContiguousInfo NonContigInfo

Detailed Description

This structure contains combined information generated for mappable clauses, including base pointers, pointers, sizes, map types, user-defined mappers, and non-contiguous information.

Definition at line 2968 of file OMPIRBuilder.h.

Member Function Documentation

◆ append()

Member Data Documentation

◆ BasePointers

MapValuesArrayTy llvm::OpenMPIRBuilder::MapInfosTy::BasePointers

Definition at line 2976 of file OMPIRBuilder.h.

Referenced by append(), and llvm::OpenMPIRBuilder::emitOffloadingArrays().

◆ DevicePointers

MapDeviceInfoArrayTy llvm::OpenMPIRBuilder::MapInfosTy::DevicePointers

Definition at line 2978 of file OMPIRBuilder.h.

Referenced by append(), and llvm::OpenMPIRBuilder::emitOffloadingArrays().

◆ HasAttachPtr

MapHasAttachPtrArrayTy llvm::OpenMPIRBuilder::MapInfosTy::HasAttachPtr

True for entries that have an attach ptr, and thus an accompanying ATTACH entry linking that ptr to its ptee.

This is a property of the storage block an entry describes, not of the map clause list item: it is true iff the entry's storage is the pointee storage reached through some attach ptr. So, for int *p; map(p[1:10]), which produces &p[1], &p[1], 10*sizeof(int), TO|FROM <- HasAttachPtr = true &p, &p[1], sizeof(void*), ATTACH <- HasAttachPtr = false it is set on the pointee entry only. It is never set on the ATTACH entry itself, nor on an entry that maps the pointer as an object in its own right (e.g. the map(p) entry for the pointer's own storage).

It is set on every entry whose storage lies in a pointee block, including a combined struct entry for such a block and the individual member entries that are MEMBER_OF it. e.g. for map(s2.s1p->x, s2.s1p->y): &s2.s1p[0], &s2.s1p->x, sizeof(x..y), ALLOC <- true &s2.s1p[0], &s2.s1p->x, 4, MEMBER_OF(1)|TO|FROM <- true &s2.s1p[0], &s2.s1p->y, 4, MEMBER_OF(1)|TO|FROM <- true &s2.s1p, &s2.s1p->x, sizeof(void*), ATTACH <- false with s2.s1p as the attach ptr for all three.

Definition at line 3004 of file OMPIRBuilder.h.

Referenced by append().

◆ Names

MapNamesArrayTy llvm::OpenMPIRBuilder::MapInfosTy::Names

◆ NonContigInfo

StructNonContiguousInfo llvm::OpenMPIRBuilder::MapInfosTy::NonContigInfo

◆ Pointers

MapValuesArrayTy llvm::OpenMPIRBuilder::MapInfosTy::Pointers

Definition at line 2977 of file OMPIRBuilder.h.

Referenced by append(), and llvm::OpenMPIRBuilder::emitOffloadingArrays().

◆ Sizes

MapValuesArrayTy llvm::OpenMPIRBuilder::MapInfosTy::Sizes

Definition at line 2979 of file OMPIRBuilder.h.

Referenced by append(), and llvm::OpenMPIRBuilder::emitOffloadingArrays().

◆ Types

MapFlagsArrayTy llvm::OpenMPIRBuilder::MapInfosTy::Types

Definition at line 2980 of file OMPIRBuilder.h.

Referenced by append(), and llvm::OpenMPIRBuilder::emitOffloadingArrays().


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