[Webkit-unassigned] [Bug 94051] New: JSC: getLineNumberForCallFrame() returns erroneous line number for LLint frame

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue Aug 14 17:27:12 PDT 2012


https://bugs.webkit.org/show_bug.cgi?id=94051

           Summary: JSC: getLineNumberForCallFrame() returns erroneous
                    line number for LLint frame
           Product: WebKit
           Version: 528+ (Nightly build)
          Platform: Unspecified
        OS/Version: Unspecified
            Status: UNCONFIRMED
          Severity: Normal
          Priority: P2
         Component: JavaScriptCore
        AssignedTo: webkit-unassigned at lists.webkit.org
        ReportedBy: mark.lam at apple.com


When the VM tries to get the stack trace, it will call getLineNumberForCallFrame() in interpreter.cpp.  If the the top frame is a LLint (interpreted) frame, then getLineNumberForCallFrame() will return a wrong line number.  This is because the LLint records the return PC after a call site and not the PC of the call instruction itself.  getLineNumberForCallFrame() needs to take this into account.

This issue causes a failure in webkit test fast/js/stack-trace.html when we disable both the baseline and DFG JITs.

Steps to reproduce:
1. In Options::initialize() (in runtime/Options.cpp), set:

    useJIT() = false;
    useDFGJIT() = false;

    Build JSC and webkit.

2. Run webkit test fast/js/stack-trace.html.  The test will fail.

    [7439/7504] fast/js/stack-trace.html failed unexpectedly (text diff)

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list