[Webkit-unassigned] [Bug 125102] New: [Win] (32-bit) Warning about truncated constant value in X86Assembler

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Mon Dec 2 13:47:55 PST 2013


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

           Summary: [Win] (32-bit) Warning about truncated constant value
                    in X86Assembler
           Product: WebKit
           Version: 528+ (Nightly build)
          Platform: Unspecified
        OS/Version: Unspecified
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: JavaScriptCore
        AssignedTo: webkit-unassigned at lists.webkit.org
        ReportedBy: bfulgham at webkit.org


Building JavaScriptCore on Windows shows the following warning (dozens of times) during a 32-bit build:

6>c:\projects\webkit\opensource\webkitbuild\release\include\private\javascriptcore\X86Assembler.h(2342): warning C4309: 'argument' : truncation of constant value

The code generating the error is:

        void threeByteOp(ThreeByteOpcodeID opcode)
        {
            m_buffer.ensureSpace(maxInstructionSize);
            m_buffer.putByteUnchecked(OP_2BYTE_ESCAPE);
>>>            m_buffer.putByteUnchecked(OP2_3BYTE_ESCAPE);
            m_buffer.putByteUnchecked(opcode);
        }

The "putByteUnchecked" takes a signed int8_t value.
        void putByteUnchecked(int8_t value) { putIntegralUnchecked(value); }

OP2_3BYTE_ESCAPE is defined as:

        OP2_3BYTE_ESCAPE    = 0xAE

This resolves to decimal 174, which is outside the allowed range of -128 to +127.

I'm not aware of this causing any functional problems, but the warning is annoying, and might signify something bad if the compiler decided to pass (11010001) "-47" instead of (10101110) "+174".

-- 
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