diff options
Diffstat (limited to 'framework/src/suricata/src/ptxdump.py')
-rw-r--r-- | framework/src/suricata/src/ptxdump.py | 71 |
1 files changed, 0 insertions, 71 deletions
diff --git a/framework/src/suricata/src/ptxdump.py b/framework/src/suricata/src/ptxdump.py deleted file mode 100644 index 097e5173..00000000 --- a/framework/src/suricata/src/ptxdump.py +++ /dev/null @@ -1,71 +0,0 @@ -#!/usr/bin/env python -from string import * -import os, getopt, sys, platform - -header = '''/* Auto-generated by ptxdump.py DO NOT EDIT -* -* This file contains the ptx code of the Cuda kernels. -* A kernel is identified by its name and the compute capability (e.g. _sm_10). -*/ -''' - -def FormatCharHex(d): - s = hex(ord(d)) - if len(s) == 3: - s = "0x0" + s[2] - return s - -def CleanFileName(f): - v = f.replace("-","_") - v = v.replace(".ptx","") - return v - -if not(len(sys.argv[1:]) >= 2): - print("Usage: ptx2c.py <output> <in.ptx ..> ") - print("Description: creates a header file containing the ptx files as character array" + os.linesep) - sys.exit(0) - -out_h = sys.argv[1] + ".h" -out = open(out_h, 'w') - -out.writelines(header) -out.writelines("#ifdef __SC_CUDA_SUPPORT__\n") -out.writelines("#ifndef __ptxdump_h__\n") -out.writelines("#define __ptxdump_h__\n\n") - -# write char arrays -for file in sys.argv[2:]: - in_ptx = open(file, 'r') - source = in_ptx.read() - source_len = len(source) - - varname = CleanFileName(file) - - out.writelines("const unsigned char " + varname + "[" + str(source_len+1) + "] = {\n") - newlinecnt = 0 - for i in range(0, source_len): - out.write(FormatCharHex(source[i]) + ", ") - newlinecnt += 1 - if newlinecnt == 16: - newlinecnt = 0 - out.write("\n") - out.write("0x00\n};\n\n") - - print(sys.argv[0] + ": CUmodule " + varname + " packed successfully") - -# write retrieval function -out.writelines("const unsigned char* SCCudaPtxDumpGetModule(const char* module){\n"); -for file in sys.argv[2:]: - out.writelines('\tif (!strcmp(module, "' + file.replace(".ptx","")+'"))\n') - out.writelines("\t\treturn " + CleanFileName(file)+";\n") -out.writelines('\tSCLogError(SC_ERR_FATAL, "Error in SCCudaPtxDumpGetModule, module %s not found. Exiting...",module);\n') -out.writelines("\texit(EXIT_FAILURE);\n") -out.writelines("};\n") - -out.writelines("#endif /* __ptxdump_h__ */\n") -out.writelines("#endif /* __SC_CUDA_SUPPORT__ */\n") - -print(sys.argv[0] + ": " + out_h + " written successfully") - -in_ptx.close() -out.close() |