Bug 129192

Summary: A64DOpcodeBitfield::format contains unreachable code
Product: WebKit Reporter: Joseph Pecoraro <joepeck>
Component: JavaScriptCoreAssignee: Michael Saboff <msaboff>
Status: NEW ---    
Severity: Normal CC: joepeck, msaboff
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   

Description Joseph Pecoraro 2014-02-21 19:55:06 PST
There is unreachable code in A64DOpcodeBitfield::format:

    const char* A64DOpcodeBitfield::format()
    {
        ...

        if (opc() == 0x2 && immediateS() == (immediateR() + 1)) {
            // lsl
            ...
            return m_formatBuffer;
        } else if (!(opc() & 0x1) && ((immediateS() & 0x1f) == 0x1f) && (is64Bit() == (immediateS() >> 5))) {
            // asr/lsr
            ...
            return m_formatBuffer;
        } else if (immediateS() < immediateR()) {
            // bit field insert
            ...
            return m_formatBuffer;
        } else {
            // bit field extract
            ...
            return m_formatBuffer;
        }

        appendInstructionName(opName());
        appendRegisterName(rd(), is64Bit());
        appendSeparator();
        appendRegisterName(rn(), is64Bit());
        appendSeparator();
        appendUnsignedImmediate(immediateR());
        appendSeparator();
        appendUnsignedImmediate(immediateS());

        return m_formatBuffer;
    }

Should this code be reachable somehow, or can it just be removed.