diff options
Diffstat (limited to 'source/components/dispatcher/dscontrol.c')
| -rw-r--r-- | source/components/dispatcher/dscontrol.c | 49 | 
1 files changed, 26 insertions, 23 deletions
| diff --git a/source/components/dispatcher/dscontrol.c b/source/components/dispatcher/dscontrol.c index fed1f4a9ed3f..f5344e83a0c5 100644 --- a/source/components/dispatcher/dscontrol.c +++ b/source/components/dispatcher/dscontrol.c @@ -47,6 +47,7 @@  #include "amlcode.h"  #include "acdispat.h"  #include "acinterp.h" +#include "acdebug.h"  #define _COMPONENT          ACPI_DISPATCHER          ACPI_MODULE_NAME    ("dscontrol") @@ -119,9 +120,12 @@ AcpiDsExecBeginControlOp (           * Save a pointer to the predicate for multiple executions           * of a loop           */ -        ControlState->Control.AmlPredicateStart = WalkState->ParserState.Aml - 1; -        ControlState->Control.PackageEnd = WalkState->ParserState.PkgEnd; -        ControlState->Control.Opcode = Op->Common.AmlOpcode; +        ControlState->Control.AmlPredicateStart = +            WalkState->ParserState.Aml - 1; +        ControlState->Control.PackageEnd = +            WalkState->ParserState.PkgEnd; +        ControlState->Control.Opcode = +            Op->Common.AmlOpcode;          /* Push the control state on this walk's control stack */ @@ -232,7 +236,8 @@ AcpiDsExecEndControlOp (               * another time               */              Status = AE_CTRL_PENDING; -            WalkState->AmlLastWhile = ControlState->Control.AmlPredicateStart; +            WalkState->AmlLastWhile = +                ControlState->Control.AmlPredicateStart;              break;          } @@ -276,7 +281,8 @@ AcpiDsExecEndControlOp (               * an arg or local), resolve it now because it may               * cease to exist at the end of the method.               */ -            Status = AcpiExResolveToValue (&WalkState->Operands [0], WalkState); +            Status = AcpiExResolveToValue ( +                &WalkState->Operands [0], WalkState);              if (ACPI_FAILURE (Status))              {                  return (Status); @@ -305,11 +311,15 @@ AcpiDsExecEndControlOp (               * Allow references created by the Index operator to return               * unchanged.               */ -            if ((ACPI_GET_DESCRIPTOR_TYPE (WalkState->Results->Results.ObjDesc[0]) == ACPI_DESC_TYPE_OPERAND) && -                ((WalkState->Results->Results.ObjDesc [0])->Common.Type == ACPI_TYPE_LOCAL_REFERENCE) && -                ((WalkState->Results->Results.ObjDesc [0])->Reference.Class != ACPI_REFCLASS_INDEX)) +            if ((ACPI_GET_DESCRIPTOR_TYPE (WalkState->Results->Results.ObjDesc[0]) == +                    ACPI_DESC_TYPE_OPERAND) && +                ((WalkState->Results->Results.ObjDesc [0])->Common.Type == +                    ACPI_TYPE_LOCAL_REFERENCE) && +                ((WalkState->Results->Results.ObjDesc [0])->Reference.Class != +                    ACPI_REFCLASS_INDEX))              { -                Status = AcpiExResolveToValue (&WalkState->Results->Results.ObjDesc [0], WalkState); +                Status = AcpiExResolveToValue ( +                    &WalkState->Results->Results.ObjDesc [0], WalkState);                  if (ACPI_FAILURE (Status))                  {                      return (Status); @@ -327,9 +337,9 @@ AcpiDsExecEndControlOp (                  AcpiUtRemoveReference (WalkState->Operands [0]);              } -            WalkState->Operands [0]     = NULL; -            WalkState->NumOperands      = 0; -            WalkState->ReturnDesc       = NULL; +            WalkState->Operands[0] = NULL; +            WalkState->NumOperands = 0; +            WalkState->ReturnDesc = NULL;          } @@ -350,20 +360,12 @@ AcpiDsExecEndControlOp (      case AML_BREAK_POINT_OP: -        /* -         * Set the single-step flag. This will cause the debugger (if present) -         * to break to the console within the AML debugger at the start of the -         * next AML instruction. -         */ -        ACPI_DEBUGGER_EXEC ( -            AcpiGbl_CmSingleStep = TRUE); -        ACPI_DEBUGGER_EXEC ( -            AcpiOsPrintf ("**break** Executed AML BreakPoint opcode\n")); +        AcpiDbSignalBreakPoint (WalkState);          /* Call to the OSL in case OS wants a piece of the action */          Status = AcpiOsSignal (ACPI_SIGNAL_BREAKPOINT, -                    "Executed AML Breakpoint opcode"); +            "Executed AML Breakpoint opcode");          break;      case AML_BREAK_OP: @@ -387,7 +389,8 @@ AcpiDsExecEndControlOp (          /* Was: WalkState->AmlLastWhile = WalkState->ControlState->Control.AmlPredicateStart; */ -        WalkState->AmlLastWhile = WalkState->ControlState->Control.PackageEnd; +        WalkState->AmlLastWhile = +            WalkState->ControlState->Control.PackageEnd;          /* Return status depending on opcode */ | 
