tra added a comment.

In https://reviews.llvm.org/D43602#1015370, @jlebar wrote:

> For my information, how are we verifying that we've caught everything?




  for v in 8.0 9.0 9.1 ;  do 
    /usr/local/cuda-$v/bin/nvcc -c -x cu /dev/null -o /tmp/null.o -arch=sm_60 
-keep-dir=nvcc-$v -keep -v
    dump-func-sig nvcc-$v/empty.cpp1.ii -- -x cuda-cpp-output -nocudainc 
-nocudalib --cuda-host-only -ferror-limit=0 -std=c++11  > nvcc-$v/decls; 
    dump-func-sig /dev/null -- -x cuda --cuda-path=/usr/local/cuda-$v 
--cuda-host-only -ferror-limit=0 -std=c++11 --cuda-gpu-arch=sm_60 \
        |grep -v typename |grep -v curand | grep -v _Complex | grep -v 
fetch_builtin > clang-$v; 
  done 

dump-func-sig is a tool I hacked together which uses clang tooling to parse the 
files as much as it can and then prints out reconstructed function signature 
and it's location.

Ten do diff of clang-N and nvcc-N/decls with a lot of regex filtering for 
argument names, etc. No diff tool does good enough job, so I've missed few 
functions.


https://reviews.llvm.org/D43602



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to