summaryrefslogtreecommitdiff
path: root/register_address.h
diff options
context:
space:
mode:
authorTom Stellard <tstellar@gmail.com>2010-12-16 14:43:51 -0800
committerTom Stellard <tstellar@gmail.com>2010-12-16 14:43:51 -0800
commit962a4157f5492972a679fe6dbfaa0a7288304e9f (patch)
treef2162acc59f134247eb89c8f08396b42e59c234a /register_address.h
parent87da9b9035d27fb433a402d0e99d966b9bff1d78 (diff)
Add new register types.
Diffstat (limited to 'register_address.h')
-rw-r--r--register_address.h12
1 files changed, 11 insertions, 1 deletions
diff --git a/register_address.h b/register_address.h
index 293cfda..7f1d1ae 100644
--- a/register_address.h
+++ b/register_address.h
@@ -4,10 +4,12 @@
#define REGISTER_ADDRESS_H_
enum register_type {
+ REGISTER_TYPE_NONE,
REGISTER_TYPE_TEMP,
REGISTER_TYPE_CONST,
REGISTER_TYPE_IN,
- REGISTER_TYPE_OUT
+ REGISTER_TYPE_OUT,
+ REGISTER_TYPE_IMMEDIATE
};
enum swizzle {
@@ -26,11 +28,19 @@ public:
unsigned int index,
enum swizzle swizzle);
+ register_address();
+
+ register_address(
+ register_type type,
+ unsigned int int_val);
+
std::string to_string();
static std::string register_type_to_string(enum register_type type);
static std::string swizzle_to_string(enum swizzle swz);
+ unsigned int to_int();
+
register_type m_type;
unsigned int m_index;
enum swizzle m_swizzle;