Skip to content
Snippets Groups Projects
Commit 9a469150 authored by Thomas Jahns's avatar Thomas Jahns :cartwheel: Committed by Sergey Kosukhin
Browse files

Replace plain macro with function-like.

* This messes less with syntax highlighting.
parent 64f86561
No related branches found
No related tags found
2 merge requests!34Version 2.2.0,!13Consolidation with CDI-PIO (develop)
......@@ -268,7 +268,7 @@ resizeVarGatherBuf(size_t size, void **buf, size_t *bufSize)
*buf = Realloc(*buf, *bufSize = size);
}
#define wHECast struct winHeaderEntry *)(void *
#define wHECast(buf) ((struct winHeaderEntry *) (void *) buf)
static Xt_xmap
buildVarXmap(struct Xt_offset_ext *restrict partExts, const struct clientBuf *restrict clientBuf, size_t headerIdx,
......@@ -277,23 +277,23 @@ buildVarXmap(struct Xt_offset_ext *restrict partExts, const struct clientBuf *re
{
size_t numClients = (size_t) numClients_;
Xt_idxlist *part = partDescPreset ? partDescPreset : Malloc(numClients * sizeof(part[0]));
int conversion = ((wHECast) clientBuf[0].mem)[headerIdx].id;
int conversion = (wHECast(clientBuf[0].mem))[headerIdx].id;
size_t elemSize = conversion == DATA_HEADER_FLOAT ? sizeof(float) : sizeof(double);
for (size_t clientIdx = 0; clientIdx < numClients; ++clientIdx)
{
unsigned char *clientMem = clientBuf[clientIdx].mem;
struct dataRecord *dataHeader = &((wHECast) clientMem)[headerIdx].specific.dataRecord;
xassert(dataHeader->varID == varID && ((wHECast) clientMem)[headerIdx].id == conversion
&& (((wHECast) clientMem)[headerIdx + 1].id == PARTDESCMARKER));
struct dataRecord *dataHeader = &(wHECast(clientMem))[headerIdx].specific.dataRecord;
xassert(dataHeader->varID == varID && (wHECast(clientMem))[headerIdx].id == conversion
&& ((wHECast(clientMem))[headerIdx + 1].id == PARTDESCMARKER));
if (!partDescPreset)
{
int position = ((wHECast) clientMem)[headerIdx + 1].offset;
int position = (wHECast(clientMem))[headerIdx + 1].offset;
xassert(position > 0 && ((size_t) position >= sizeof(struct winHeaderEntry) * (size_t) clientBuf[clientIdx].dictSize)
&& ((size_t) position < clientBuf[clientIdx].size));
part[clientIdx] = xt_idxlist_unpack(clientMem, (int) clientBuf[clientIdx].size, &position, pioInterComm);
}
unsigned partSize = (unsigned) xt_idxlist_get_num_indices(part[clientIdx]);
size_t charOfs = (size_t) ((clientMem + ((wHECast) clientMem)[headerIdx].offset) - clientBuf[0].mem);
size_t charOfs = (size_t) ((clientMem + (wHECast(clientMem))[headerIdx].offset) - clientBuf[0].mem);
xassert(charOfs % elemSize == 0 && charOfs / elemSize + partSize <= INT_MAX);
int elemOfs = (int) (charOfs / elemSize);
partExts[clientIdx].start = elemOfs;
......@@ -711,7 +711,7 @@ buildVarRedist(int headerIdx, size_t streamIdx,
Xt_idxlist dstList, Xt_idxlist *partDescPreset, const struct cdiPioConf *conf)
{
const struct clientBuf *restrict clientBuf = rxWin[streamIdx].clientBuf;
const struct winHeaderEntry *winDict = (wHECast) clientBuf[0].mem;
const struct winHeaderEntry *winDict = wHECast(clientBuf[0].mem);
int varID = winDict[headerIdx].specific.dataRecord.varID;
int conversion = winDict[headerIdx].id;
size_t elemSize = conversion == DATA_HEADER_FLOAT ? sizeof(float) : sizeof(double);
......@@ -730,7 +730,7 @@ buildVarRedist(int headerIdx, size_t streamIdx,
for (size_t clientIdx = 0; clientIdx < numClients; ++clientIdx)
{
unsigned char *clientMem = clientBuf[clientIdx].mem;
struct winHeaderEntry *partHeader = ((wHECast) clientMem) + headerIdx + 1;
struct winHeaderEntry *partHeader = (wHECast(clientMem)) + headerIdx + 1;
xassert(partHeader->id == PARTDESCMARKER);
uids[clientIdx + 1] = unpackXTUID(partHeader->specific.partDesc.packedUID);
}
......@@ -739,9 +739,9 @@ buildVarRedist(int headerIdx, size_t streamIdx,
for (size_t clientIdx = 0; clientIdx < numClients; ++clientIdx)
{
unsigned char *clientMem = clientBuf[clientIdx].mem;
struct dataRecord *dataHeader = &((wHECast) clientMem)[headerIdx].specific.dataRecord;
xassert(dataHeader->varID == varID && ((wHECast) clientMem)[headerIdx].id == conversion);
size_t charOfs = (size_t) ((clientMem + ((wHECast) clientMem)[headerIdx].offset) - clientBuf[0].mem);
struct dataRecord *dataHeader = &(wHECast(clientMem))[headerIdx].specific.dataRecord;
xassert(dataHeader->varID == varID && (wHECast(clientMem))[headerIdx].id == conversion);
size_t charOfs = (size_t) ((clientMem + (wHECast(clientMem))[headerIdx].offset) - clientBuf[0].mem);
int partSize = partSizes[clientIdx + 1];
xassert(charOfs % elemSize == 0 && charOfs / elemSize + (size_t) partSize <= INT_MAX);
int elemOfs = (int) (charOfs / elemSize);
......@@ -896,7 +896,7 @@ writeNetCDFStreamParallel(size_t streamIdx, struct streamMapping *mapping, void
const bool reuseRedists = conf->cacheRedists ? handleRedistCache(streamIdx, mapping, (size_t) nvars, vlistID, collComm) : false;
struct cacheRedist *restrict retained = rxWin[streamIdx].retained;
const struct clientBuf *restrict clientBuf = rxWin[streamIdx].clientBuf;
const struct winHeaderEntry *winDict = (wHECast) clientBuf[0].mem;
const struct winHeaderEntry *winDict = wHECast(clientBuf[0].mem);
Xt_idxlist *partDescPreset = rxWin[streamIdx].clientDeco.lists;
for (int varID = 0; varID < nvars; ++varID)
......@@ -1045,7 +1045,7 @@ writeNetCDFStreamSerial(size_t streamIdx, struct streamMapping *mapping, void **
struct cacheRedist *restrict retained = rxWin[streamIdx].retained;
const struct clientBuf *restrict clientBuf = rxWin[streamIdx].clientBuf;
const struct winHeaderEntry *winDict = (wHECast) clientBuf[0].mem;
const struct winHeaderEntry *winDict = wHECast(clientBuf[0].mem);
Xt_idxlist *partDescPreset = rxWin[streamIdx].clientDeco.lists;
for (int varID = 0; varID < nvars; ++varID)
......@@ -1118,7 +1118,7 @@ writeNetCDFStream(size_t streamIdx, struct streamMapping *mapping, void **data_,
static inline struct winHeaderEntry *
winDictEntry(size_t streamIdx, size_t client, size_t entry)
{
return ((wHECast) rxWin[streamIdx].clientBuf[client].mem) + entry;
return (wHECast(rxWin[streamIdx].clientBuf[client].mem)) + entry;
}
static struct streamMemLayout *
......@@ -1443,7 +1443,7 @@ writeGribStream(size_t streamIdx, struct streamMapping *mapping, void **data_, s
struct passDict *varsInPass = NULL;
size_t varsInPassSize = 0, maxNumVarsAlloc = 0;
MPI_Aint *displ = NULL;
const struct winHeaderEntry *winDict = (wHECast) clientBuf[0].mem;
const struct winHeaderEntry *winDict = wHECast(clientBuf[0].mem);
for (size_t pass = 0; pass < numPasses; ++pass)
{
size_t myRecordStart = passes[pass][collRank].recordAggStart, myRecordEnd = passes[pass][collRank].recordAggEnd;
......@@ -1559,7 +1559,7 @@ readGetBuffers(size_t streamIdx, const struct cdiPioConf *conf)
int streamID = openStreams.entries[streamIdx];
xdebug("%s", "START");
struct winHeaderEntry *winDict = (wHECast) rxWin[streamIdx].clientBuf[0].mem;
struct winHeaderEntry *winDict = wHECast(rxWin[streamIdx].clientBuf[0].mem);
xassert(winDict[0].id == HEADERSIZEMARKER);
{
int dictSize = rxWin[streamIdx].clientBuf[0].dictSize,
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment