51 #define _COMPONENT ACPI_EXECUTER
90 switch (obj_desc->reference.class) {
97 referenced_obj = obj_desc->
reference.object;
103 obj_desc->reference.class));
113 referenced_obj = obj_desc;
127 if (!reference_obj) {
132 reference_obj->
reference.object = referenced_obj;
133 *return_desc = reference_obj;
136 "Object %p Type [%s], returning Reference %p\n",
170 acpi_size new_length;
213 new_buf = return_desc->buffer.pointer;
219 new_buf[new_length - 1] = 0;
224 *actual_return_desc = return_desc;
263 switch (operand0->
common.type) {
301 switch (operand0->
common.type) {
315 new_buf = (
char *)return_desc->
buffer.pointer;
325 &local_operand1->
integer.value,
343 new_buf = return_desc->
string.pointer;
349 local_operand1->
string.pointer);
366 new_buf = (
char *)return_desc->
buffer.pointer;
373 local_operand1->
buffer.pointer,
374 local_operand1->
buffer.length);
387 *actual_return_desc = return_desc;
390 if (local_operand1 != operand1) {
420 return (integer0 + integer1);
424 return (integer0 & integer1);
428 return (~(integer0 & integer1));
432 return (integer0 | integer1);
436 return (~(integer0 | integer1));
440 return (integer0 ^ integer1);
444 return (integer0 * integer1);
455 return (integer0 << integer1);
466 return (integer0 >> integer1);
470 return (integer0 - integer1);
500 u64 integer0,
u64 integer1,
u8 *logical_result)
510 if (integer0 && integer1) {
517 if (integer0 || integer1) {
529 *logical_result = local_result;
582 switch (operand0->
common.type) {
614 integer0 = operand0->
integer.value;
615 integer1 = local_operand1->
integer.value;
620 if (integer0 == integer1) {
627 if (integer0 > integer1) {
634 if (integer0 < integer1) {
650 length0 = operand0->
buffer.length;
651 length1 = local_operand1->
buffer.length;
656 local_operand1->
buffer.pointer,
657 (length0 > length1) ? length1 : length0);
664 if ((length0 == length1) && (compare == 0)) {
684 if (length0 > length1) {
701 if (length0 < length1) {
716 if (local_operand1 != operand1) {
722 *logical_result = local_result;