I'll update the comment to state the that change was approved by Sun.

Doug
> -----Original Message-----
> From: s...@open64.net [mailto:s...@open64.net]
> Sent: Thursday, January 20, 2011 10:34 AM
> To: open64-devel@lists.sourceforge.net
> Subject: [Open64-devel] r3466 - in trunk/osprey: be/com common/com
> kg++fe wgen
> 
> Author: dgilmore
> Date: 2011-01-20 13:34:10 -0500 (Thu, 20 Jan 2011)
> New Revision: 3466
> 
> Modified:
>    trunk/osprey/be/com/emulate.cxx
>    trunk/osprey/common/com/intrn_entry.def
>    trunk/osprey/kg++fe/wfe_expr.cxx
>    trunk/osprey/wgen/wgen_expr.cxx
> Log:
> Fix to bug 628 (fix ported from PSC 3.2 compiler).
> 
> Modified: trunk/osprey/be/com/emulate.cxx
> ===================================================================
> --- trunk/osprey/be/com/emulate.cxx   2011-01-20 03:55:03 UTC (rev 3465)
> +++ trunk/osprey/be/com/emulate.cxx   2011-01-20 18:34:10 UTC (rev 3466)
> @@ -3,10 +3,14 @@
>   */
> 
>  /*
> - *  Copyright (C) 2006. QLogic Corporation. All Rights Reserved.
> + * Copyright (C) 2007, 2008 PathScale, LLC.  All Rights Reserved.
>   */
> 
>  /*
> + *  Copyright (C) 2006, 2007. QLogic Corporation. All Rights Reserved.
> + */
> +
> +/*
>   * Copyright 2003, 2004, 2005, 2006 PathScale, Inc.  All Rights
> Reserved.
>   */
> 
> @@ -4716,7 +4720,7 @@
>       st = Gen_Intrinsic_Function(ty, "__memcpy_pathscale_opteron");
>      }
>  #endif
> -    else if (WN_intrinsic(tree) == INTRN_I4POPCNT &&
> +    else if (WN_intrinsic(tree) == INTRN_POPCOUNT &&
>              MTYPE_byte_size(WN_rtype(WN_kid0(tree))) <= 4 &&
>                 Is_Target_32bit()) {
>        st = Gen_Intrinsic_Function(ty, "__popcountsi2");
> @@ -4732,7 +4736,7 @@
>      }
>  #elif defined(TARG_MIPS) && !defined(TARG_SL)
> 
> -    if (WN_intrinsic(tree) == INTRN_I4POPCNT &&
> +    if (WN_intrinsic(tree) == INTRN_POPCOUNT &&
>       MTYPE_byte_size(WN_rtype(WN_kid0(tree))) <= 4) {
>        // Zero extend U4 to U8
>        // args[0] = WN_Cvt(MTYPE_U4, MTYPE_U8, args[0]);
> @@ -5023,6 +5027,7 @@
>    case INTRN_I2POPCNT:
>    case INTRN_I4POPCNT:
>    case INTRN_I8POPCNT:
> +  case INTRN_POPCOUNT:
>      {
>        INT bitsize = MTYPE_size_reg(WN_rtype(by_value(tree, 0)));
>        switch (id) {
> 
> Modified: trunk/osprey/common/com/intrn_entry.def
> ===================================================================
> --- trunk/osprey/common/com/intrn_entry.def   2011-01-20 03:55:03 UTC
> (rev 3465)
> +++ trunk/osprey/common/com/intrn_entry.def   2011-01-20 18:34:10 UTC
> (rev 3466)
> @@ -1,4 +1,7 @@
>  /*
> + * Copyright (C) 2009-2010 Advanced Micro Devices, Inc.  All Rights
> Reserved.
> + */
> +/*
>   *  Copyright (C) 2007. QLogic Corporation. All Rights Reserved.
>   */
> 
> @@ -2819,6 +2822,10 @@
>  DEF_INTRN_ENTRY(INTRN_FQUNORDERED, "FQUNORDERED", BYVAL, PURE,
> NO_SIDEEFFECTS,
>                  DOES_RETURN, NOT_ACTUAL, NOT_CGINTRINSIC, NOT_SLAVE,
>                  IRETURN_I4, NULL, "FQUNORDERED", "unorderedl")
> +/* POPCOUNT */
> +DEF_INTRN_ENTRY(INTRN_POPCOUNT, "POPCOUNT", BYVAL, PURE,
> NO_SIDEEFFECTS,
> +                DOES_RETURN, NOT_ACTUAL, NOT_CGINTRINSIC, NOT_SLAVE,
> +                IRETURN_I4, NULL, "POPCOUNT", "__popcount")
>  /* I1POPCNT */
>  DEF_INTRN_ENTRY(INTRN_I1POPCNT, "I1POPCNT", BYVAL, PURE,
> NO_SIDEEFFECTS,
>                  DOES_RETURN, NOT_ACTUAL, NOT_CGINTRINSIC, NOT_SLAVE,
> 
> Modified: trunk/osprey/kg++fe/wfe_expr.cxx
> ===================================================================
> --- trunk/osprey/kg++fe/wfe_expr.cxx  2011-01-20 03:55:03 UTC (rev
> 3465)
> +++ trunk/osprey/kg++fe/wfe_expr.cxx  2011-01-20 18:34:10 UTC (rev
> 3466)
> @@ -3,9 +3,13 @@
>   */
> 
>  /*
> - * Copyright (C) 2006. QLogic Corporation. All Rights Reserved.
> + * Copyright (C) 2007, 2008 Pathscale, LLC.  All Rights Reserved.
>   */
> 
> +/*
> + * Copyright (C) 2006, 2007. QLogic Corporation. All Rights Reserved.
> + */
> +
>  /*
>     Copyright 2003, 2004, 2005, 2006 PathScale, Inc.  All Rights
> Reserved.
>     File modified October 9, 2003 by PathScale, Inc. to update Open64
> C/C++
> @@ -6606,15 +6610,9 @@
>               break;
> 
>             case BUILT_IN_POPCOUNT:
> -                iopc = INTRN_I4POPCNT;
> -                intrinsic_op = TRUE;
> -                break;
>             case BUILT_IN_POPCOUNTL:
> -                iopc = Is_Target_32bit() ? INTRN_I4POPCNT :
> INTRN_I8POPCNT;
> -                intrinsic_op = TRUE;
> -                break;
>             case BUILT_IN_POPCOUNTLL:
> -             iopc = INTRN_I8POPCNT;
> +             iopc = INTRN_POPCOUNT;
>               intrinsic_op = TRUE;
>               break;
> 
> 
> Modified: trunk/osprey/wgen/wgen_expr.cxx
> ===================================================================
> --- trunk/osprey/wgen/wgen_expr.cxx   2011-01-20 03:55:03 UTC (rev 3465)
> +++ trunk/osprey/wgen/wgen_expr.cxx   2011-01-20 18:34:10 UTC (rev 3466)
> @@ -3,7 +3,7 @@
>   */
> 
>  /*
> - * Copyright (C) 2007 PathScale, LLC.  All Rights Reserved.
> + * Copyright (C) 2007, 2008 PathScale, LLC.  All Rights Reserved.
>   */
> 
>  /*
> @@ -9069,15 +9069,9 @@
>               break;
> 
>             case GSBI_BUILT_IN_POPCOUNT:
> -             iopc = INTRN_I4POPCNT;
> -             intrinsic_op = TRUE;
> -             break;
>             case GSBI_BUILT_IN_POPCOUNTL:
> -             iopc = Is_Target_32bit() ? INTRN_I4POPCNT :
> INTRN_I8POPCNT;
> -             intrinsic_op = TRUE;
> -             break;
>             case GSBI_BUILT_IN_POPCOUNTLL:
> -             iopc = INTRN_I8POPCNT;
> +             iopc = INTRN_POPCOUNT;
>               intrinsic_op = TRUE;
>               break;
> 
> 
> 
> -----------------------------------------------------------------------
> -------
> Protect Your Site and Customers from Malware Attacks
> Learn about various malware tactics and how to avoid them. Understand
> malware threats, the impact they can have on your business, and how you
> can protect your company and customers by using code signing.
> http://p.sf.net/sfu/oracle-sfdevnl
> _______________________________________________
> Open64-devel mailing list
> Open64-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/open64-devel



------------------------------------------------------------------------------
Protect Your Site and Customers from Malware Attacks
Learn about various malware tactics and how to avoid them. Understand 
malware threats, the impact they can have on your business, and how you 
can protect your company and customers by using code signing.
http://p.sf.net/sfu/oracle-sfdevnl
_______________________________________________
Open64-devel mailing list
Open64-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/open64-devel

Reply via email to