diff options
Diffstat (limited to 'cuobjdump_to_ptxplus')
| -rw-r--r-- | cuobjdump_to_ptxplus/cuobjdumpInst.cc | 19 | ||||
| -rw-r--r-- | cuobjdump_to_ptxplus/cuobjdumpInstList.cc | 5 | ||||
| -rw-r--r-- | cuobjdump_to_ptxplus/cuobjdump_to_ptxplus.cc | 2 | ||||
| -rw-r--r-- | cuobjdump_to_ptxplus/elf.y | 9 | ||||
| -rw-r--r-- | cuobjdump_to_ptxplus/ptx_parser.h | 6 |
5 files changed, 24 insertions, 17 deletions
diff --git a/cuobjdump_to_ptxplus/cuobjdumpInst.cc b/cuobjdump_to_ptxplus/cuobjdumpInst.cc index 6ad3e0c..256c6c8 100644 --- a/cuobjdump_to_ptxplus/cuobjdumpInst.cc +++ b/cuobjdump_to_ptxplus/cuobjdumpInst.cc @@ -1510,7 +1510,24 @@ void cuobjdumpInst::printCuobjdumpPtxPlus(std::list<std::string> labelList, std: printCuobjdumpOperands(); output(";"); } - else if(strcmp(m_base, "MOV")==0 || strcmp(m_base, "MVI")==0 || strcmp(m_base, "MVC")==0) + else if(strcmp(m_base, "MVC")==0){ + printCuobjdumpPredicate(); + //Use cvt if there is conversion involved (2 modifiers) otherwise mov + if(m_typeModifiers->getSize() < 2) + output("mov"); + else + output("cvt"); + + printCuobjdumpBaseModifiers(); + + if(m_typeModifiers->getSize() == 0) + output(int_default_mod()); //TODO: setting default type modifier but I'm not sure if this is right. + else + printCuobjdumpTypeModifiers(); + printCuobjdumpOperands(); + output(";"); + } + else if(strcmp(m_base, "MOV")==0 || strcmp(m_base, "MVI")==0) { printCuobjdumpPredicate(); output("mov"); diff --git a/cuobjdump_to_ptxplus/cuobjdumpInstList.cc b/cuobjdump_to_ptxplus/cuobjdumpInstList.cc index ea5df82..ecab488 100644 --- a/cuobjdump_to_ptxplus/cuobjdumpInstList.cc +++ b/cuobjdump_to_ptxplus/cuobjdumpInstList.cc @@ -30,7 +30,7 @@ #include <cassert> #include "cuobjdumpInstList.h" -#define P_DEBUG 1 +#define P_DEBUG 0 #define DPRINTF(...) \ if(P_DEBUG) { \ printf("(%s:%u) ", __FILE__, __LINE__); \ @@ -571,7 +571,6 @@ void cuobjdumpInstList::setConstMemoryMap(const char* kernelname, int index){ std::string kernel = kernelname; kernel = kernel.substr(14, kernel.length()-1); kernel = kernel.substr(0, kernel.find("\t")); - printf("Setting kernelcmemmap[%s]=%d\n", kernel.c_str(), index); kernelcmemmap[kernel] = index; } @@ -579,7 +578,6 @@ void cuobjdumpInstList::setLocalMemoryMap(const char* kernelname, int index){ std::string kernel = kernelname; kernel = kernel.substr(10, kernel.length()-1); kernel = kernel.substr(0, kernel.find("\t")); - printf("Setting kernellmemmap[%s]=%d\n", kernel.c_str(), index); kernellmemmap[kernel] = index; } @@ -727,6 +725,5 @@ void cuobjdumpInstList::addConstMemoryPtr(const char* offset, const char* size, ptr.name = name; ptr.destination = "constant0"; m_constMemoryPtrList.push_back(ptr); - printf("\naddConstMemoryPtr: %s, size: %d, offset: %d\n", ptr.name.c_str(), ptr.bytes, ptr.offset); } diff --git a/cuobjdump_to_ptxplus/cuobjdump_to_ptxplus.cc b/cuobjdump_to_ptxplus/cuobjdump_to_ptxplus.cc index d7436e4..af8babe 100644 --- a/cuobjdump_to_ptxplus/cuobjdump_to_ptxplus.cc +++ b/cuobjdump_to_ptxplus/cuobjdump_to_ptxplus.cc @@ -53,7 +53,7 @@ FILE *ptxplus_out; void output(const char * text) { - printf(text); + //printf(text); fprintf(ptxplus_out, text); } diff --git a/cuobjdump_to_ptxplus/elf.y b/cuobjdump_to_ptxplus/elf.y index 710ecfd..f521518 100644 --- a/cuobjdump_to_ptxplus/elf.y +++ b/cuobjdump_to_ptxplus/elf.y @@ -69,36 +69,27 @@ program : program cmemsection | program localmemsection | { g_instList->setKernelCount(cmemcount-1); - //g_instList->reverseConstMemory(); }; localmemsection : LOCALMEM { - printf("Found LocalMem section number %d\n", lmemcount); g_instList->addEntryLocalMemory(0, lmemcount); g_instList->setLocalMemoryMap($1, lmemcount); lmemcount++; }; cmemsection : C1BEGIN { - printf("Found ConstMem section number %d\n", cmemcount); - //g_instList->addEntryConstMemory(1, cmemcount); g_instList->addEntryConstMemory2($1); g_instList->setConstMemoryType2(".u32"); - //g_instList->setConstMemoryType(".u32"); - //g_instList->setConstMemoryMap($1,cmemcount); cmemcount++; lastcmem = true; } cmemvals | C0BEGIN { - printf("Found ConstMem c0 section\n"); g_instList->addConstMemory(0); g_instList->setConstMemoryType(".u32"); lastcmem = false; } cmemvals; cmemvals : cmemvals CMEMVAL SPACE2 { - //printf("Found ConstMem value\n"); - printf("addConstMemoryValue %s\n", $3); if (lastcmem) g_instList->addConstMemoryValue2($3); else diff --git a/cuobjdump_to_ptxplus/ptx_parser.h b/cuobjdump_to_ptxplus/ptx_parser.h index 6d855f6..da22f30 100644 --- a/cuobjdump_to_ptxplus/ptx_parser.h +++ b/cuobjdump_to_ptxplus/ptx_parser.h @@ -44,7 +44,7 @@ #define NON_ARRAY_IDENTIFIER 1 #define ARRAY_IDENTIFIER_NO_DIM 2 #define ARRAY_IDENTIFIER 3 -#define P_DEBUG 1 +#define P_DEBUG 0 #define DPRINTF(...) \ if(P_DEBUG) { \ printf("(%s:%s:%u) ", __FILE__, __FUNCTION__, __LINE__); \ @@ -348,7 +348,9 @@ void func_header_info(const char* headerInfo) } else if(inConstDirective){ } else { - printf("Unkown header info: #%s#\n", headerInfo); + // This information is supposed to be not needed. + // Suppressing printing it + // printf("Unkown header info: #%s#\n", headerInfo); } } |
