From 21313e52b42ac65ffc5c83a7bb344391bc4b734a Mon Sep 17 00:00:00 2001 From: Evghenii Date: Tue, 7 Jan 2014 18:54:23 +0100 Subject: [PATCH] added local ptr correction of store instruction. change compilation to llvm ptx for tests --- ctx.cpp | 1 + ptxtestcc.sh | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/ctx.cpp b/ctx.cpp index b0f4fbd6..bb4a7920 100644 --- a/ctx.cpp +++ b/ctx.cpp @@ -3049,6 +3049,7 @@ FunctionEmitContext::StoreInst(llvm::Value *value, llvm::Value *ptr) { llvm::dyn_cast(ptr->getType()); AssertPos(currentPos, pt != NULL); + ptr = lCorrectLocalPtr(this, ptr); /* NVPTX */ llvm::StoreInst *inst = new llvm::StoreInst(value, ptr, bblock); if (g->opt.forceAlignedMemory && diff --git a/ptxtestcc.sh b/ptxtestcc.sh index 80b672ca..2ba5e252 100755 --- a/ptxtestcc.sh +++ b/ptxtestcc.sh @@ -5,8 +5,8 @@ DIS=$HOME/usr/local/llvm/bin-3.2/bin/llvm-dis ISPC=ispc PTXCC=ptxcc PTXGEN=~/ptxgen -#$(cat $1 |grep -v 'width'|$ISPC --target=nvptx --emit-llvm -o -|$LLC -march=nvptx64 -mcpu=sm_35 -o $1.ptx) && \ -$(cat $1 |grep -v 'width'|$ISPC --target=nvptx --emit-llvm -o -|$DIS -o $1_32_ptx.ll && $PTXGEN $1_32_ptx.ll > $1.ptx) && \ +$(cat $1 |grep -v 'width'|$ISPC --target=nvptx --emit-llvm -o -|$LLC -march=nvptx64 -mcpu=sm_35 -o $1.ptx) && \ +#$(cat $1 |grep -v 'width'|$ISPC --target=nvptx --emit-llvm -o -|$DIS -o $1_32_ptx.ll && $PTXGEN $1_32_ptx.ll > $1.ptx) && \ $($PTXCC $1.ptx -Xptxas=-v -o $1.ptx.o) && \ nvcc -o test_nvptx test_static_nvptx.cpp examples_ptx/nvcc_helpers.cu examples_ptx/ispc_malloc.cpp $1.ptx.o -arch=sm_35 -Iexamples_ptx/ -D_CUDA_ -lcudadevrt -DTEST_SIG=$2