Du bist nicht angemeldet.

#1 14.08.2015 09:43:54

brikler
Mitglied

ein verständnis problem...

salve

ich beseitige gerade warnings in meinem DSDT file...das ist das letzte warning big_smile
leider verstehe ich nicht was der compiler geändert haben möchte... für mich ist die methode nämlich logisch sad

[tom@frija ~]$ iasl -tc -vr dsdt.dsl 

Intel ACPI Component Architecture
ASL+ Optimizing Compiler version 20150717-64
Copyright (c) 2000 - 2015 Intel Corporation

dsdt.dsl  11433:             Method (HSWC, 1, Serialized)
Warning  3115 -                        ^ Not all control paths return a value (HSWC)

Compilation complete. 0 Errors, 1 Warnings, 108 Remarks, 61 Optimizations
14433 Method (HSWC, 1, Serialized)

die dazugehörige  methode:

 Method (HSWC, 1, Serialized)
            {
                If ((Arg0 < 0x02))
                {
                    OWGD (Arg0)
                    Return (One)
                }

                If ((Arg0 == 0x02))
                {
                    Return (OWGS ())
                }

                If ((Arg0 == 0x03))
                {
                    Return (0xFF)
                }

                If ((Arg0 == 0x80))
                {
                    Return (One)
                }
                
            }

die im zweiten if block aufgerufene methode:

      Method (OWGS, 0, Serialized)
        {
            Local0 = RGPL (0x0F, One)
            Return (Local0)
        }

Offline

#2 14.08.2015 10:50:30

k.osmoff
Gast

Re: ein verständnis problem...

MIndestens einer der über die Tabelle angesprochenen Schalter wird nur unter Microsoft Windows® initialisiert und gibt sonst keinen Wert zurück, weil er standardmäßig nicht existiert? (welcher wäre das und was hat der für eine Funktion *grmpf* *grübel*)

#3 14.08.2015 11:53:43

Schard-nologin
Gast

Re: ein verständnis problem...

brikler schrieb:

dsdt.dsl  11433:             Method (HSWC, 1, Serialized)
Warning  3115 -                        ^ Not all control paths return a value (HSWC)

Compilation complete. 0 Errors, 1 Warnings, 108 Remarks, 61 Optimizations

Durch die Kontrollstrukturen ("If" in dem konkreten Fall), gibt deine Methode nicht unbedingt einen Wert zurück, nämlich genau dann, wenn keines der Ifs zutrifft.
Am Besten fügst du em Ende nach allen Ifs noch ein default-Return an.

#4 14.08.2015 12:57:42

brikler
Mitglied

Re: ein verständnis problem...

Schard-nologin schrieb:

Am Besten fügst du em Ende nach allen Ifs noch ein default-Return an.

wie peinlich, daß mir das nicht auf viel...
danke dir smile
... jetzt motzt der compiler nicht mehr smile

Offline

#5 05.02.2017 14:09:18

brikler
Mitglied

Re: ein verständnis problem...

ich versteh grad nicht, was mir der compiler sagen will...

dsdt.dsl   8370:                 CreateByteField (RSRC, \_SB.PCI0.LPCB.FDC._Y2E._DMA, DMA1)  // _DMA: Direct Memory Access
Optimize 1075 -                                                NamePath optimized ^  (^_Y2E._DMA)

wie muß ich die zeile ab ändern, damits als "optimiert" gilt? ich kapiers nicht... sad

Offline

Schnellantwort auf dieses Thema

Schreibe deinen Beitrag und versende ihn
Deine Antwort

Fußzeile des Forums