diff options
| author | Jung-uk Kim <jkim@FreeBSD.org> | 2018-12-13 19:04:25 +0000 |
|---|---|---|
| committer | Jung-uk Kim <jkim@FreeBSD.org> | 2018-12-13 19:04:25 +0000 |
| commit | d28459aaaf532373b12c80aa5b869f8b591954e7 (patch) | |
| tree | 22941844047df08d63d286d7dfbf38f3a8f79e0f /source/components/parser | |
| parent | 4d4b15a0e8524e15826ac932bd05252dbd246422 (diff) | |
Notes
Diffstat (limited to 'source/components/parser')
| -rw-r--r-- | source/components/parser/psloop.c | 2 | ||||
| -rw-r--r-- | source/components/parser/psparse.c | 12 | ||||
| -rw-r--r-- | source/components/parser/psxface.c | 6 |
3 files changed, 19 insertions, 1 deletions
diff --git a/source/components/parser/psloop.c b/source/components/parser/psloop.c index 9625834c56f6..1fa2c880ca43 100644 --- a/source/components/parser/psloop.c +++ b/source/components/parser/psloop.c @@ -580,7 +580,7 @@ AcpiPsParseLoop ( ParserState = &WalkState->ParserState; WalkState->ArgTypes = 0; -#if (!defined (ACPI_NO_METHOD_EXECUTION) && !defined (ACPI_CONSTANT_EVAL_ONLY)) +#ifndef ACPI_CONSTANT_EVAL_ONLY if (WalkState->WalkType & ACPI_WALK_METHOD_RESTART) { diff --git a/source/components/parser/psparse.c b/source/components/parser/psparse.c index 0ad62b771bef..378bfab5b212 100644 --- a/source/components/parser/psparse.c +++ b/source/components/parser/psparse.c @@ -637,6 +637,18 @@ AcpiPsParseAml ( "Completed one call to walk loop, %s State=%p\n", AcpiFormatException (Status), WalkState)); + if (WalkState->MethodPathname && WalkState->MethodIsNested) + { + /* Optional object evaluation log */ + + ACPI_DEBUG_PRINT_RAW ((ACPI_DB_EVALUATION, "%-26s: %*s%s\n", + " Exit nested method", + (WalkState->MethodNestingDepth + 1) * 3, " ", + &WalkState->MethodPathname[1])); + + ACPI_FREE (WalkState->MethodPathname); + WalkState->MethodIsNested = FALSE; + } if (Status == AE_CTRL_TRANSFER) { /* diff --git a/source/components/parser/psxface.c b/source/components/parser/psxface.c index 8516fe3a35df..54f54eab15cd 100644 --- a/source/components/parser/psxface.c +++ b/source/components/parser/psxface.c @@ -307,6 +307,9 @@ AcpiPsExecuteMethod ( goto Cleanup; } + WalkState->MethodPathname = Info->FullPathname; + WalkState->MethodIsNested = FALSE; + if (Info->ObjDesc->Method.InfoFlags & ACPI_METHOD_MODULE_LEVEL) { WalkState->ParseFlags |= ACPI_PARSE_MODULE_LEVEL; @@ -437,6 +440,9 @@ AcpiPsExecuteTable ( goto Cleanup; } + WalkState->MethodPathname = Info->FullPathname; + WalkState->MethodIsNested = FALSE; + if (Info->ObjDesc->Method.InfoFlags & ACPI_METHOD_MODULE_LEVEL) { WalkState->ParseFlags |= ACPI_PARSE_MODULE_LEVEL; |
