Changeset: 6dd120b9153e for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=6dd120b9153e
Modified Files:
monetdb5/extras/bwd/bwd.c
monetdb5/extras/bwd/cl_program_utilities.c
monetdb5/extras/bwd/operations.c
monetdb5/extras/bwd/optimizer.c
monetdb5/extras/bwd/pusher.c
monetdb5/extras/bwd/utilities.c
Branch: bwd
Log Message:
* using malloc instead of alloca to make the (super bitchy) monetdb build
system happy
Unterschiede (113 Zeilen):
diff --git a/monetdb5/extras/bwd/bwd.c b/monetdb5/extras/bwd/bwd.c
--- a/monetdb5/extras/bwd/bwd.c
+++ b/monetdb5/extras/bwd/bwd.c
@@ -81,7 +81,7 @@ str deviceInfo(bat * resPlatform, bat *
{
size_t platformVersionBufferSize;
clGetPlatformInfo(platforms[i],
CL_PLATFORM_VERSION, 0, NULL, &platformVersionBufferSize);
- platformVersionBuffer =
alloca(platformVersionBufferSize);
+ platformVersionBuffer =
malloc(platformVersionBufferSize);
clGetPlatformInfo(platforms[i],
CL_PLATFORM_VERSION, platformVersionBufferSize, platformVersionBuffer, NULL);
}
@@ -89,6 +89,7 @@ str deviceInfo(bat * resPlatform, bat *
BUNappend(resultDevice, &j, FALSE);
BUNappend(resultDesc, deviceNameBuffer, 0);
BUNappend(resultPlatformDescription,
platformVersionBuffer, 0);
+ free(platformVersionBuffer);
}
}
diff --git a/monetdb5/extras/bwd/cl_program_utilities.c
b/monetdb5/extras/bwd/cl_program_utilities.c
--- a/monetdb5/extras/bwd/cl_program_utilities.c
+++ b/monetdb5/extras/bwd/cl_program_utilities.c
@@ -44,8 +44,9 @@ cl_program compileProgram(const char* so
printf("#%s, clBuildProgram: %s;\n", __func__, clError(err));
clGetProgramBuildInfo(program, getDeviceID(),
CL_PROGRAM_BUILD_LOG, 0, NULL, &bufferSize);
- clGetProgramBuildInfo(program, getDeviceID(),
CL_PROGRAM_BUILD_LOG, bufferSize, (buffer = alloca(bufferSize)), NULL);
+ clGetProgramBuildInfo(program, getDeviceID(),
CL_PROGRAM_BUILD_LOG, bufferSize, (buffer = malloc(bufferSize)), NULL);
printf("#%s, clBuildProgram log: %s;\n", __func__, buffer);
+ free(buffer);
}
/* clock_gettime(CLOCK_THREAD_CPUTIME_ID, &after); */
/* printf ("compilation took %ld
nanoseconds\n",(after.tv_sec*1000000000+after.tv_nsec)-(before.tv_sec*1000000000+before.tv_nsec));
*/
diff --git a/monetdb5/extras/bwd/operations.c b/monetdb5/extras/bwd/operations.c
--- a/monetdb5/extras/bwd/operations.c
+++ b/monetdb5/extras/bwd/operations.c
@@ -273,7 +273,7 @@ str BWDLeftJoinRefine(bat * res, bat * l
} else {
BAT* left = BATdescriptor(*l);
BAT* right = BATdescriptor(*r);
- BAT* refinement;
+ BAT* refinement = NULL;
BAT* approximation = BATdescriptor(*approx);
const size_t approximationBits =
batTailApproximationBits(right);
const size_t offsetBits = batTailOffsetBits(right);
diff --git a/monetdb5/extras/bwd/optimizer.c b/monetdb5/extras/bwd/optimizer.c
--- a/monetdb5/extras/bwd/optimizer.c
+++ b/monetdb5/extras/bwd/optimizer.c
@@ -23,10 +23,10 @@ static inline const char* deoperatify(ch
static inline int OPTBWDImplementation(Client client, MalBlkPtr malBlock,
MalStkPtr stack, InstrPtr instruction){
int actions = 0;
- InstrPtr* oldProgram = malBlock->stmt;
size_t instructionCount = malBlock->stop;
size_t initialNumberOfVariables = malBlock->vtop;
- int* approximations = alloca(initialNumberOfVariables*sizeof(int));
+ int* approximations = malloc(initialNumberOfVariables*sizeof(int));
+ InstrPtr* oldProgram = malBlock->stmt;
uint i;
for (i = 0; i < initialNumberOfVariables; ++i)
approximations[i] = 0;
@@ -140,6 +140,7 @@ static inline int OPTBWDImplementation(C
}
printf ("rewriting plan for bwd\n");
+ free(approximations);
return actions;
}
diff --git a/monetdb5/extras/bwd/pusher.c b/monetdb5/extras/bwd/pusher.c
--- a/monetdb5/extras/bwd/pusher.c
+++ b/monetdb5/extras/bwd/pusher.c
@@ -19,7 +19,7 @@ static inline int OPTBWDPusherImplementa
const size_t instructionCount = malBlock->stop;
char* pushedInstructionCursors = malloc(sizeof(char)*instructionCount);
- unsigned int* mapping = alloca(sizeof(unsigned int)*malBlock->vsize);
+ unsigned int* mapping = malloc(sizeof(unsigned int)*malBlock->vsize);
for (i = 0; i < (uint) malBlock->vsize; ++i)
mapping[i] = i;
for (i = 0; i < instructionCount; ++i)
@@ -37,7 +37,7 @@ static inline int OPTBWDPusherImplementa
{
uint firstUselectStatement = i;
int filterPathTop = getDestVar(oldProgram[i]);
- int selectionAttribute;
+ int selectionAttribute = 0;
int* variableProducers =
malloc(sizeof(InstrPtr)*malBlock->vsize);
{
@@ -104,7 +104,8 @@ static inline int OPTBWDPusherImplementa
}
i++;
}
-
+
+ free(mapping);
return actions;
}
diff --git a/monetdb5/extras/bwd/utilities.c b/monetdb5/extras/bwd/utilities.c
--- a/monetdb5/extras/bwd/utilities.c
+++ b/monetdb5/extras/bwd/utilities.c
@@ -357,7 +357,7 @@ unsigned int decomposeIntArray(const int
- printf ("using %s for approximation and %s for residuals \n",
humanreadablesize(approximationSize, alloca(64), 64),
humanreadablesize(ceil(size*residualBits/8.0) + 8, alloca(64), 64));
+ printf ("using %s for approximation and %s for residuals \n",
humanreadablesize(approximationSize, (char[64]){}, 64),
humanreadablesize(ceil(size*residualBits/8.0) + 8, (char[64]){}, 64));
slot->residuals = calloc(ceil(size*residualBits/8.0) + 8, sizeof(char));
approximation->base = subjectBounds.min;
slot->tailOffsetValue = approximation->base;
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list