* as/link/lkar.h: sgetl and sputl are independent of endianness
[fw/sdcc] / src / z80 / ralloc.h
index c798aca71a06f178a6b0ab2990a8b0f1a558bd3b..b0714af94c1551d5f441604e87ac89317ec4294a 100644 (file)
 
 #define DEBUG_FAKE_EXTRA_REGS  0
 
-enum { C_IDX = 0,
-       B_IDX, 
-       E_IDX,
-       D_IDX, 
-       L_IDX, 
-       H_IDX,
+enum
+  {
+    C_IDX = 0,
+    B_IDX,
+    E_IDX,
+    D_IDX,
+    L_IDX,
+    H_IDX,
 #if DEBUG_FAKE_EXTRA_REGS
-       M_IDX,
-       N_IDX,
-       O_IDX,
-       P_IDX,
-       Q_IDX,
-       R_IDX,
-       S_IDX,
-       T_IDX,
+    M_IDX,
+    N_IDX,
+    O_IDX,
+    P_IDX,
+    Q_IDX,
+    R_IDX,
+    S_IDX,
+    T_IDX,
 #endif
-       CND_IDX };
+    CND_IDX
+  };
+
+enum
+  {
+    REG_PTR = 1,
+    REG_GPR = 2,
+    REG_CND = 4,
+    REG_PAIR = 8
+  };
 
-#define REG_PTR 0x01
-#define REG_GPR 0x02
-#define REG_CND 0x04
 /* definition for the registers */
 typedef struct regs
-{
-    short type;          /* can have value 
-                           REG_GPR, REG_PTR or REG_CND */
-    short rIdx ;         /* index into register table */
-    char *name ;         /* name */
-    unsigned isFree :1;  /* is currently unassigned  */    
-} regs;
+  {
+    short type;                        /* can have value 
+                                  REG_GPR, REG_PTR or REG_CND */
+    short rIdx;                        /* index into register table */
+    char *name;                        /* name */
+    unsigned isFree:1;         /* is currently unassigned  */
+  }
+regs;
 
 extern regs *regsZ80;
 
-void   assignRegisters (eBBlock **, int );
-regs  *regWithIdx (int);
+void assignRegisters (eBBlock **, int);
+regs *regWithIdx (int);
 
-void z80_assignRegisters (eBBlock **ebbs, int count);
+void z80_assignRegisters (ebbIndex *);
+bitVect *z80_rUmaskForOp (operand * op);
 
 #endif