summaryrefslogtreecommitdiff
path: root/cuobjdump_to_ptxplus/cuobjdumpInst.h
diff options
context:
space:
mode:
Diffstat (limited to 'cuobjdump_to_ptxplus/cuobjdumpInst.h')
-rw-r--r--cuobjdump_to_ptxplus/cuobjdumpInst.h43
1 files changed, 41 insertions, 2 deletions
diff --git a/cuobjdump_to_ptxplus/cuobjdumpInst.h b/cuobjdump_to_ptxplus/cuobjdumpInst.h
index 20d31be..8cf0ebe 100644
--- a/cuobjdump_to_ptxplus/cuobjdumpInst.h
+++ b/cuobjdump_to_ptxplus/cuobjdumpInst.h
@@ -1,12 +1,45 @@
-#include "decudaInstList.h"
+#ifndef _CUOBJDUMPINST_H_
+#define _CUOBJDUMPINST_H_
-class cuobjdumpInst: public decudaInst
+// External includes
+#include <string.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <list>
+
+// Local includes
+//#include "cuobjdumpInstList.h"
+#include "stringList.h"
+
+class cuobjdumpInst
{
+protected:
+ //instruction data
+ const char* m_label; //instruction label
+ stringList* m_predicate; //instruction predicate
+ const char* m_base; //instruction mnemonic
+ stringList* m_baseModifiers; //base modifiers
+ stringList* m_typeModifiers; //operand types
+ stringList* m_operands; //operands
+ stringList* m_predicateModifiers; //predicate modifiers
public:
//Constructor
cuobjdumpInst();
+ //accessors
+ const char* getBase();
+ stringList* getTypeModifiers();
+
+ //Mutators
+ void setLabel(const char* setLabelValue);
+ void setPredicate(const char* setPredicateValue);
+ void addPredicateModifier(const char* addPredicateMod);
+ void setBase(const char* setBaseValue);
+ void addBaseModifier(const char* addBaseMod);
+ void addTypeModifier(const char* addTypeMod);
+ void addOperand(const char* addOp);
+
bool checkCubojdumpLabel(std::list<std::string> labelList, std::string label);
void printCuobjdumpLabel(std::list<std::string> labelList);
@@ -18,5 +51,11 @@ public:
void printCuobjdumpOperands();
void printCuobjdumpPtxPlus(std::list<std::string> labelList, std::list<std::string> texList);
+
+ //print representation
+ bool printHeaderInst();
+ void printCuobjdumpInst();
+ void printHeaderPtx();
};
+#endif //_CUOBJDUMPINST_H_