summaryrefslogtreecommitdiffstats
path: root/src/build/ifcompiler/initSymbols.H
diff options
context:
space:
mode:
authorCamVan Nguyen <ctnguyen@us.ibm.com>2011-11-10 13:22:16 -0600
committerA. Patrick Williams III <iawillia@us.ibm.com>2011-11-15 18:13:18 -0600
commit4d9344f1025ee77e24e88249dd3e32f3d4c9a3ba (patch)
treed3d41ed886b43bf0a0f955702d207b31c3050510 /src/build/ifcompiler/initSymbols.H
parent22b8b1dc178665eb32f923e47211f549b4d1913f (diff)
downloadtalos-hostboot-4d9344f1025ee77e24e88249dd3e32f3d4c9a3ba.tar.gz
talos-hostboot-4d9344f1025ee77e24e88249dd3e32f3d4c9a3ba.zip
Added initfile compiler support for attribute enums
Change-Id: I78a2a85831b545e7213e08a272fec482bd69cdf1 Reviewed-on: http://gfw160.austin.ibm.com:8080/gerrit/493 Tested-by: Jenkins Server Reviewed-by: MIKE J. JONES <mjjones@us.ibm.com> Reviewed-by: Andrew J. Geissler <andrewg@us.ibm.com> Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
Diffstat (limited to 'src/build/ifcompiler/initSymbols.H')
-rwxr-xr-xsrc/build/ifcompiler/initSymbols.H12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/build/ifcompiler/initSymbols.H b/src/build/ifcompiler/initSymbols.H
index 68ba70718..93613e059 100755
--- a/src/build/ifcompiler/initSymbols.H
+++ b/src/build/ifcompiler/initSymbols.H
@@ -21,6 +21,7 @@
// ---- -------- -------- -------- -------------------------------------------------------------
// D754106 dgilbert 06/14/10 Create
// andrewg 09/19/11 Updates based on review
+// camvanng 11/08/11 Added support for attribute enums
// End Change Log *********************************************************************************
/**
@@ -98,7 +99,7 @@ namespace init
/**
* Lookup the tag id from the rpn_id provided by use_symbol()
* @returns tag id
- * @param prn_id
+ * @param rpn_id
* @pre all the symbols have been marked used (no new symbols)
* @post tag table built if not already built.
* @note tag bits 0bttxxxxxx xxxxxxxx
@@ -158,6 +159,13 @@ namespace init
*/
uint64_t get_numeric_data(uint32_t i_rpn_id, uint32_t & o_size);
+ /**
+ * Get the attribute enum value for the attr enum
+ * @param string attribute enum name
+ * @returns uint64_t value
+ */
+ uint64_t get_attr_enum_val(string & i_attr_enum);
+
/**
* Store enum name & return rpn_id
@@ -231,6 +239,7 @@ namespace init
typedef map<string,MAP_DATA > SYMBOL_MAP;
typedef map<string,uint32_t> SPY_MAP;
typedef map<string,uint32_t> SYMBOL_ATTR_TYPE;
+ typedef map<string,uint64_t> SYMBOL_ATTR_ENUM;
typedef pair<Rpn,uint32_t> DEF_DATA;
typedef map<string,DEF_DATA> DEF_MAP;
@@ -245,6 +254,7 @@ namespace init
SYMBOL_MAP iv_symbols; ///< From ciniIfSymbols.H all vars and enumerated lits
SYMBOL_ATTR_TYPE iv_attr_type;
+ SYMBOL_ATTR_ENUM iv_attr_enum;
SYMBOL_MAP iv_not_found; ///< List of symbols not found
RPN_MAP iv_rpn_map; ///< Map rpn_id to symbol name/cini_id of used Symbols
SYMBOL_USED iv_used_var; ///< List of cini_ids of used vars ordered by name
OpenPOWER on IntegriCloud