ALWAYS walk the tree for UPOINTERS
[fw/sdcc] / src / pic / pcode.h
index cdd4a1a6c1380542a1f10bd50c121ab2b6046329..4f2afc36d3e9ab4f40fcd879d5d4ea0963b697f4 100644 (file)
@@ -147,6 +147,7 @@ typedef enum
 #define  PCC_Z             (1<<2)
 #define  PCC_DC            (1<<3)
 #define  PCC_W             (1<<4)
+#define  PCC_EXAMINE_PCOP  (1<<5)
 
 /***********************************************************************
  *
@@ -361,7 +362,7 @@ typedef struct pCodeInstruction
 
   PIC_OPCODE op;        // The opcode of the instruction.
 
-  char *mnemonic;       // Pointer to mnemonic string
+  char const * const mnemonic;       // Pointer to mnemonic string
 
   pCodeOp *pcop;        // Operand
 
@@ -498,8 +499,11 @@ typedef struct pCodePeep {
 
   int     nvars;       // Number of wildcard registers in target.
   char  **vars;        // array of pointers to them
+  int     nops;             // Number of wildcard operands in target.
+  pCodeOp **wildpCodeOps;   // array of pointers to the pCodeOp's.
+
   int     nwildpCodes; // Number of wildcard pCodes in target/replace
-  pCode **wildpCodes;  // array of pointers to the pCodeOp's.
+  pCode **wildpCodes;  // array of pointers to the pCode's.
 
 
   /* (Note: a wildcard register is a place holder. Any register