cosmetics

This commit is contained in:
Quentin Carbonneaux 2015-07-17 16:54:01 -04:00
parent 77bdb3ae9e
commit 9ecfdf6334
2 changed files with 21 additions and 19 deletions

View file

@ -1,10 +1,10 @@
#include <assert.h>
#include <stdint.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
typedef unsigned int uint;
typedef unsigned short ushort;
typedef unsigned char uchar;
typedef unsigned long long ullong;
@ -39,27 +39,29 @@ struct Bits {
#define BCLR(b, n) ((b).t[n/NBit] &= ~((ullong)1<<(n%NBit)))
struct Ref {
ushort type:1;
ushort val:15;
uint16_t type:1;
uint16_t val:15;
};
#define R (Ref){0, 0} // Invalid reference
static inline int
req(Ref a, Ref b)
{
return a.type == b.type && a.val == b.val;
}
enum {
RSym = 0,
RConst = 1,
NRef = (1<<15) - 1
};
#define R (Ref){0, 0}
#define SYM(x) (Ref){RSym, x}
#define CONST(x) (Ref){RConst, x}
static inline int req(Ref a, Ref b)
{
return a.type == b.type && a.val == b.val;
}
static inline int rtype(Ref r)
{
return req(r, R) ? -1 : r.type;
}
enum {
OXXX = 0,
OAdd,