Before check-in, I have again a check on 3681 check-in, I see a change like
this:
@@ -401,11 +402,11 @@
#ifdef TARG_X8664
0, /* Fission */
TRUE, /* Serial_distribute */
- 0, /* Iter_threshold */
+ 1, /* Iter_threshold */
#else
1, /* Fission */
FALSE, /* Serial_distribute */
- 0, /* Iter_threshold */
+ 1, /* Iter_threshold */
#endif
This is a change on Iter_Threshold, and this will affect the control on the
function Simd_Benefit for SIMD targets. Since SL has no SIMD support, it is
ok for SL. I would ask other non-x86 targets agree on this fix?
Thanks
Gang
On Fri, Jul 8, 2011 at 5:28 PM, Gang Yu <yugang...@gmail.com> wrote:
> Thanks, you are right. The LNO_Iter_threshold is set based on target.
> So,
>
> Index: osprey/common/com/config_lno.cxx
> ===================================================================
> --- osprey/common/com/config_lno.cxx (revision 3682)
> +++ osprey/common/com/config_lno.cxx (working copy)
> @@ -1232,7 +1232,9 @@
>
> the flag is set based on target. Otherwise use user-specified value.
> */
> if(LNO_Iter_threshold == 1) {
> +#ifdef TARG_X8664
>
> LNO_Iter_threshold = (Is_Target_SSE41())? 8 : 0;
> +#endif
> }
> }
>
> Index: osprey/be/cg/whirl2ops.cxx
> ==============================
> =====================================
> --- osprey/be/cg/whirl2ops.cxx (revision 3681)
> +++ osprey/cg/whirl2ops.cxx (working copy)
>
> @@ -3166,6 +3166,7 @@
> WN *compare;
> VARIANT variant;
>
> +#ifdef TARG_X8664
> if (opcode == OPC_V16I1V16I1SELECT) {
> TN* op1 = Expand_Expr(WN_kid0(select), select, NULL);
> TN* op2 = Expand_Expr(WN_kid1(select), select, NULL);
> @@ -3177,6 +3178,7 @@
> Expand_Select(result, op1, op2, op3, MTYPE_V16I1, FALSE, &New_OPs);
> //FALSE passed as dummy arg
> return result;
> }
> +#endif
>
>
> Gang
>
>
>
> On Fri, Jul 8, 2011 at 5:15 PM, Sun Chan <sun.c...@gmail.com> wrote:
>
>> the #ifdef can be done inside Is_target_SSE...
>> Sun
>>
>> On Fri, Jul 8, 2011 at 1:24 AM, Gang Yu <yugang...@gmail.com> wrote:
>> > Hi,
>> >
>> > SL target builds fail today due to the LNO check-in v3681, the build
>> fail
>> > comes from the patch:
>> >
>> > Index: config_lno.cxx
>> > ===================================================================
>> > --- config_lno.cxx (revision 3643)
>> > +++ config_lno.cxx (revision 3681)
>> > @@ -1224,5 +1227,12 @@
>> > Mhd_Options.L[i].TLB_Miss_Penalty;
>> > }
>> > }
>> > +
>> > + /* Value of 1 for LNO_Iter_threshold is interpreted as default in
>> which
>> > case
>> > + the flag is set based on target. Otherwise use user-specified
>> value.
>> > + */
>> > + if(LNO_Iter_threshold == 1) {
>> > + LNO_Iter_threshold = (Is_Target_SSE41())? 8 : 0;
>> > + }
>> > }
>> > Index: /home/yugang/trunk/trunk/osprey/be/cg/whirl2ops.cxx
>> > ===================================================================
>> > --- /home/yugang/trunk/trunk/osprey/be/cg/whirl2ops.cxx (revision 3666)
>> > +++ /home/yugang/trunk/trunk/osprey/be/cg/whirl2ops.cxx (revision 3681)
>> > @@ -3166,9 +3166,18 @@
>> > WN *compare;
>> > VARIANT variant;
>> >
>> > + if (opcode == OPC_V16I1V16I1SELECT) {
>> > + TN* op1 = Expand_Expr(WN_kid0(select), select, NULL);
>> > + TN* op2 = Expand_Expr(WN_kid1(select), select, NULL);
>> > + TN* op3 = Expand_Expr(WN_kid2(select), select, NULL);
>> >
>> > + if (result == NULL)
>> > + result = Allocate_Result_TN (select, NULL);
>> > +
>> > + Expand_Select(result, op1, op2, op3, MTYPE_V16I1, FALSE, &New_OPs);
>> > //FALSE passed as dummy arg
>> > + return result;
>> > + }
>> >
>> > the "Is_Target_SSE41()", "OPC_V16I1V16I1SELECT" and "MTYPE_V16I1" are
>> > specific to X86 targets, these patches will cause other targets fail,
>> >
>> > The suggest patche is:
>> > Index: config_lno.cxx
>> > ===================================================================
>> > --- config_lno.cxx (revision 3681)
>> > +++ config_lno.cxx (working copy)
>> > @@ -1228,11 +1228,13 @@
>> > }
>> > }
>> >
>> > +#ifdef TARG_X8664
>> > /* Value of 1 for LNO_Iter_threshold is interpreted as default in
>> which
>> > case
>> > the flag is set based on target. Otherwise use user-specified
>> value.
>> > */
>> > if(LNO_Iter_threshold == 1) {
>> > LNO_Iter_threshold = (Is_Target_SSE41())? 8 : 0;
>> > }
>> > +#endif
>> > }
>> >
>> > Index: ../../be/cg/whirl2ops.cxx
>> > ===================================================================
>> > --- ../../be/cg/whirl2ops.cxx (revision 3681)
>> > +++ ../../be/cg/whirl2ops.cxx (working copy)
>> > @@ -3166,6 +3166,7 @@
>> > WN *compare;
>> > VARIANT variant;
>> >
>> > +#ifdef TARG_X8664
>> > if (opcode == OPC_V16I1V16I1SELECT) {
>> > TN* op1 = Expand_Expr(WN_kid0(select), select, NULL);
>> > TN* op2 = Expand_Expr(WN_kid1(select), select, NULL);
>> > @@ -3177,6 +3178,7 @@
>> > Expand_Select(result, op1, op2, op3, MTYPE_V16I1, FALSE, &New_OPs);
>> > //FALSE passed as dummy arg
>> > return result;
>> > }
>> > +#endif
>> >
>> >
>> >
>> > Would a gatekeeper help a review?
>> >
>> > Thanks
>> >
>> >
>> > Gang
>> >
>> >
>> ------------------------------------------------------------------------------
>> > All of the data generated in your IT infrastructure is seriously
>> valuable.
>> > Why? It contains a definitive record of application performance,
>> security
>> > threats, fraudulent activity, and more. Splunk takes this data and makes
>> > sense of it. IT sense. And common sense.
>> > http://p.sf.net/sfu/splunk-d2d-c2
>> > _______________________________________________
>> > Open64-devel mailing list
>> > Open64-devel@lists.sourceforge.net
>> > https://lists.sourceforge.net/lists/listinfo/open64-devel
>> >
>> >
>>
>
>
------------------------------------------------------------------------------
All of the data generated in your IT infrastructure is seriously valuable.
Why? It contains a definitive record of application performance, security
threats, fraudulent activity, and more. Splunk takes this data and makes
sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-d2d-c2
_______________________________________________
Open64-devel mailing list
Open64-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/open64-devel