Hi Hui,

This version will not apply assertion if (((mINT32)TCON_v0(*tc)) >= 0), so will only have half as much assertion coverage as what the original code intended.

Fred

On 04/28/2011 08:09 PM, Hui Shi wrote:

Would a gatekeeper help review?
I have update the patch with new error message in attachment.


On Thu, Apr 28, 2011 at 1:30 PM, Hui Shi <kalin....@gmail.com <mailto:kalin....@gmail.com>> wrote:

    you're right.

    I'll change message to "TCON_v1 not-sign extend result or High
    order word of %s TCON non zero"


    On Thu, Apr 28, 2011 at 1:26 PM, Yiran Wang <yiran.w...@gmail.com
    <mailto:yiran.w...@gmail.com>> wrote:

        I think it is good to improve the message, as we allow all 1s
        and all 0s.

        Regards,
        yiran

        On Thu, Apr 28, 2011 at 1:09 PM, Hui Shi <kalin....@gmail.com
        <mailto:kalin....@gmail.com>> wrote:


            Would gatekeeper help review this fix?

            I1,I2,I4 will be sign extend to I8 and store in TCON_I8,
            So when I1,I2,I4 is negative, TCON_V1 can be 0xffffffff.
            So the following assertion condition is not correct.

                 Is_True ( (TCON_v1(*tc)|TCON_v2(*tc)|TCON_v3(*tc)) == 0,
                       ("High order word of %s TCON non zero %x",
                    Mtype_Name(TCON_ty(*tc)), TCON_v1(*tc)) );
                 break;

            Fix is for I1,I2,I4 tcon value, assert if TCON_v0 is
            negative, TCON_V1 is 0xffffffff.
                 case MTYPE_I1:
                 case MTYPE_I2:
                 case MTYPE_I4:
            +      // since I1/I2/I4 is negative and sign extend to I8
            +      // then store to TCON, tcon_v1 wil be 0xffffffff
            +      if (((mINT32)TCON_v0(*tc)) < 0) {
            +        Is_True ( ((mINT32)TCON_v1(*tc) == ((mINT32)-1)) &&
            +                 ((TCON_v2(*tc)|TCON_v3(*tc)) == 0),
            +           ("High order word of %s TCON non zero %x",
            +          Mtype_Name(TCON_ty(*tc)), TCON_v1(*tc)) );
            +        break;
            +      }
                 case MTYPE_U1:
                 case MTYPE_U2:
                 case MTYPE_U4:

            Regards
            Shi Hui

            
------------------------------------------------------------------------------
            WhatsUp Gold - Download Free Network Management Software
            The most intuitive, comprehensive, and cost-effective network
            management toolset available today.  Delivers lowest initial
            acquisition cost and overall TCO of any competing solution.
            http://p.sf.net/sfu/whatsupgold-sd
            _______________________________________________
            Open64-devel mailing list
            Open64-devel@lists.sourceforge.net
            <mailto:Open64-devel@lists.sourceforge.net>
            https://lists.sourceforge.net/lists/listinfo/open64-devel





------------------------------------------------------------------------------
WhatsUp Gold - Download Free Network Management Software
The most intuitive, comprehensive, and cost-effective network
management toolset available today.  Delivers lowest initial
acquisition cost and overall TCO of any competing solution.
http://p.sf.net/sfu/whatsupgold-sd


_______________________________________________
Open64-devel mailing list
Open64-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/open64-devel

------------------------------------------------------------------------------
WhatsUp Gold - Download Free Network Management Software
The most intuitive, comprehensive, and cost-effective network 
management toolset available today.  Delivers lowest initial 
acquisition cost and overall TCO of any competing solution.
http://p.sf.net/sfu/whatsupgold-sd
_______________________________________________
Open64-devel mailing list
Open64-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/open64-devel

Reply via email to