summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Moore <Robert.Moore@intel.com>2013-07-18 12:24:06 -0700
committerRobert Moore <Robert.Moore@intel.com>2013-07-18 12:24:06 -0700
commit4265a6713e4158271fbe1144c3d811822e333bc0 (patch)
tree28079b0224c4fcb69338e5464a20571fef9fd13b
parent44a34fe66c0440a8642f4263e2b38bbf26e99645 (diff)
iASL: Add support for One/Ones/Zero opcodes for the -so option.
Emits an offset entry for Name() objects that are initialized with these AML opcodes.
-rw-r--r--source/compiler/asloffset.c15
1 files changed, 13 insertions, 2 deletions
diff --git a/source/compiler/asloffset.c b/source/compiler/asloffset.c
index 05185c76b..c9a60e772 100644
--- a/source/compiler/asloffset.c
+++ b/source/compiler/asloffset.c
@@ -223,8 +223,7 @@ LsAmlOffsetWalk (
{
/*
* We are only interested in integer constants that can be changed
- * at boot time. Note, the One/Ones/Zero opcodes are considered
- * non-changeable, so we ignore them here.
+ * at boot time.
*/
case AML_BYTE_OP:
case AML_WORD_OP:
@@ -239,6 +238,18 @@ LsAmlOffsetWalk (
(UINT8) Op->Asl.AmlOpcode);
break;
+ case AML_ONE_OP:
+ case AML_ONES_OP:
+ case AML_ZERO_OP:
+
+ /* For these, offset will point to the opcode */
+
+ LsEmitOffsetTableEntry (FileId, Node,
+ (Gbl_CurrentAmlOffset + OffsetOfOpcode),
+ Op->Asl.ParseOpName, Op->Asl.Value.Integer,
+ (UINT8) Op->Asl.AmlOpcode);
+ break;
+
case AML_PACKAGE_OP:
case AML_VAR_PACKAGE_OP: