50#define _COMPONENT ACPI_EXECUTER
96 switch (ObjDesc->Reference.Class)
110 ObjDesc->Reference.Class));
119 ReferencedObj = ObjDesc;
140 *ReturnDesc = ReferenceObj;
143 "Object %p Type [%s], returning Reference %p\n",
180 return (Integer0 + Integer1);
184 return (Integer0 & Integer1);
188 return (~(Integer0 & Integer1));
192 return (Integer0 | Integer1);
196 return (~(Integer0 | Integer1));
200 return (Integer0 ^ Integer1);
204 return (Integer0 * Integer1);
212 if (Integer1 >= AcpiGbl_IntegerBitWidth)
216 return (Integer0 << Integer1);
224 if (Integer1 >= AcpiGbl_IntegerBitWidth)
228 return (Integer0 >> Integer1);
232 return (Integer0 - Integer1);
279 if (Integer0 && Integer1)
287 if (Integer0 || Integer1)
296 "Invalid numeric logical opcode: %X",
Opcode));
303 *LogicalResult = LocalResult;
361 switch (Operand0->
Common.Type)
383 "Invalid object type for logical operator: %X",
410 if (Integer0 == Integer1)
418 if (Integer0 > Integer1)
426 if (Integer0 < Integer1)
435 "Invalid comparison opcode: %X",
Opcode));
448 Length0 = Operand0->
Buffer.Length;
454 LocalOperand1->
Buffer.Pointer,
515 "Invalid comparison opcode: %X",
Opcode));
525 if (LocalOperand1 != Operand1)
532 *LogicalResult = LocalResult;
unsigned long long UINT64
int memcmp(void *Buffer1, void *Buffer2, ACPI_SIZE Count)
#define AE_AML_OPERAND_TYPE
#define ACPI_IMPLICIT_CONVERT_HEX
#define ACPI_GET_DESCRIPTOR_TYPE(d)
#define ACPI_DESC_TYPE_OPERAND
#define ACPI_DESC_TYPE_NAMED
#define ACPI_DEBUG_PRINT(pl)
#define ACPI_MODULE_NAME(Name)
#define ACPI_FUNCTION_ENTRY()
#define ACPI_FUNCTION_TRACE_PTR(a, b)
#define return_ACPI_STATUS(s)
#define ACPI_FUNCTION_TRACE(a)
#define ACPI_ERROR(plist)
#define ACPI_TYPE_LOCAL_REFERENCE
#define ACPI_TYPE_INTEGER
#define AcpiUtCreateInternalObject(t)
void AcpiUtRemoveReference(ACPI_OPERAND_OBJECT *Object)
const char * AcpiUtGetObjectTypeName(ACPI_OPERAND_OBJECT *ObjDesc)
#define ACPI_IMPLICIT_CONVERSION
#define AML_SHIFT_RIGHT_OP
#define AML_LOGICAL_OR_OP
#define AML_LOGICAL_GREATER_OP
#define AML_LOGICAL_AND_OP
#define AML_LOGICAL_LESS_OP
#define AML_LOGICAL_EQUAL_OP
#define AML_SHIFT_LEFT_OP
static const WCHAR Cleanup[]
ACPI_STATUS AcpiExConvertToBuffer(ACPI_OPERAND_OBJECT *ObjDesc, ACPI_OPERAND_OBJECT **ResultDesc)
ACPI_STATUS AcpiExConvertToInteger(ACPI_OPERAND_OBJECT *ObjDesc, ACPI_OPERAND_OBJECT **ResultDesc, UINT32 ImplicitConversion)
ACPI_STATUS AcpiExConvertToString(ACPI_OPERAND_OBJECT *ObjDesc, ACPI_OPERAND_OBJECT **ResultDesc, UINT32 Type)
ACPI_STATUS AcpiExDoLogicalOp(UINT16 Opcode, ACPI_OPERAND_OBJECT *Operand0, ACPI_OPERAND_OBJECT *Operand1, BOOLEAN *LogicalResult)
ACPI_STATUS AcpiExDoLogicalNumericOp(UINT16 Opcode, UINT64 Integer0, UINT64 Integer1, BOOLEAN *LogicalResult)
UINT64 AcpiExDoMathOp(UINT16 Opcode, UINT64 Integer0, UINT64 Integer1)
ACPI_STATUS AcpiExGetObjectReference(ACPI_OPERAND_OBJECT *ObjDesc, ACPI_OPERAND_OBJECT **ReturnDesc, ACPI_WALK_STATE *WalkState)
_In_ PVOID _In_ ULONG Opcode
ACPI_OBJECT_COMMON_HEADER UINT8 Class
ACPI_OBJECT_INTEGER Integer
ACPI_OBJECT_REFERENCE Reference
ACPI_OBJECT_COMMON Common
ACPI_OBJECT_BUFFER Buffer