added some more macros as quick hack...

This commit is contained in:
Evghenii
2013-11-14 20:04:05 +01:00
parent 967a49dd66
commit 7aa37b19a9
4 changed files with 15 additions and 2 deletions

View File

@@ -1,5 +1,5 @@
PROG=sort_cu PROG=sort_cu
ISPC_SRC=sort1.ispc ISPC_SRC=sort.ispc
CXX_SRC=sort_cu.cpp sort_serial.cpp CXX_SRC=sort_cu.cpp sort_serial.cpp
CXX=g++ CXX=g++

View File

@@ -188,7 +188,7 @@ static void prefix_sum (uniform int num, uniform int h[])
export void sort_ispc (uniform int n, uniform unsigned int code[], uniform int order[], uniform int ntasks) export void sort_ispc (uniform int n, uniform unsigned int code[], uniform int order[], uniform int ntasks)
{ {
uniform int num = ntasks < 1 ? num_cores () : ntasks; uniform int num = ntasks ; //< 1 ? num_cores () : ntasks;
uniform int span = n / num; uniform int span = n / num;
uniform int hsize = 256*programCount*num; uniform int hsize = 256*programCount*num;
uniform int * uniform hist = uniform new uniform int [hsize]; uniform int * uniform hist = uniform new uniform int [hsize];

View File

@@ -45,6 +45,7 @@
#warning "emitting HOST code" #warning "emitting HOST code"
#endif #endif
task void histogram (uniform int span, uniform int n, uniform int64 code[], uniform int pass, uniform int hist[]) task void histogram (uniform int span, uniform int n, uniform int64 code[], uniform int pass, uniform int hist[])
{ {
if (taskIndex >= taskCount) return; if (taskIndex >= taskCount) return;

View File

@@ -1929,6 +1929,18 @@ Module::execPreprocessor(const char *infilename, llvm::raw_string_ostream *ostre
{ {
opts.addMacroDef("__NVPTX__"); opts.addMacroDef("__NVPTX__");
opts.addMacroDef("programIndex=laneIndex()"); opts.addMacroDef("programIndex=laneIndex()");
opts.addMacroDef("cif=if");
opts.addMacroDef("cfor=for");
opts.addMacroDef("cwhile=while");
opts.addMacroDef("cdo=do");
opts.addMacroDef("taskIndex=blockIndex0()");
opts.addMacroDef("taskCount=blockCount0()");
opts.addMacroDef("taskIndex0=blockIndex0()");
opts.addMacroDef("taskCount0=blockCount0()");
opts.addMacroDef("taskIndex1=blockIndex1()");
opts.addMacroDef("taskCount1=blockCount1()");
opts.addMacroDef("taskIndex2=blockIndex2()");
opts.addMacroDef("taskCount2=blockCount2()");
} }
#if defined(LLVM_3_1) #if defined(LLVM_3_1)