This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] Do not constrain on REAL_TYPE


On Thu, Jun 25, 2015 at 9:13 AM, Sebastian Pop <sebpop@gmail.com> wrote:
> On Wed, Jun 24, 2015 at 5:24 PM, Aditya Kumar <hiraditya@msn.com> wrote:
>> From: Aditya Kumar <aditya.k7@samsung.com>
>>
>> gcc/ChangeLog:
>>
>> 2015-06-24  Aditya Kumar  <aditya.k7@samsung.com>
>>             Sebastian Pop <s.pop@samsung.com>
>>
>>         * graphite-sese-to-poly.c (parameter_index_in_region): Discard REAL_TYPE parameters.
>>         (scan_tree_for_params): Handle REAL_CST in scan_tree_for_params.
>>         (add_conditions_to_domain): Do not constrain on REAL_TYPE.
>
> The patch looks good to me.
> We should also mention that these cases appear in testcases already
> in the testsuite when commenting out the call to limit_scops.
> The intent is first to fix all the ICEs and then to remove limit_scops.
>
> If there are no other comments, I will commit the patch.

Yes, it looks good.  What about COMPLEX_CST and VECTOR_CST and
their types?

Richard.

> Sebastian
>
>>
>> ---
>>  gcc/graphite-sese-to-poly.c | 8 ++++++++
>>  1 file changed, 8 insertions(+)
>>
>> diff --git a/gcc/graphite-sese-to-poly.c b/gcc/graphite-sese-to-poly.c
>> index 271c499..5b37796 100644
>> --- a/gcc/graphite-sese-to-poly.c
>> +++ b/gcc/graphite-sese-to-poly.c
>> @@ -796,6 +796,9 @@ parameter_index_in_region (tree name, sese region)
>>
>>    gcc_assert (SESE_ADD_PARAMS (region));
>>
>> +  /* Cannot constrain on REAL_TYPE parameters.  */
>> +  if (TREE_CODE (TREE_TYPE (name)) == REAL_TYPE)
>> +    return -1;
>>    i = SESE_PARAMS (region).length ();
>>    SESE_PARAMS (region).safe_push (name);
>>    return i;
>> @@ -915,6 +918,7 @@ scan_tree_for_params (sese s, tree e)
>>
>>      case INTEGER_CST:
>>      case ADDR_EXPR:
>> +    case REAL_CST:
>>        break;
>>
>>     default:
>> @@ -1194,6 +1198,10 @@ add_conditions_to_domain (poly_bb_p pbb)
>>        {
>>        case GIMPLE_COND:
>>           {
>> +            /* Don't constrain on REAL_TYPE.  */
>> +           if (TREE_CODE (TREE_TYPE (gimple_cond_lhs (stmt))) == REAL_TYPE)
>> +              break;
>> +
>>             gcond *cond_stmt = as_a <gcond *> (stmt);
>>             enum tree_code code = gimple_cond_code (cond_stmt);
>>
>> --
>> 2.1.0.243.g30d45f7
>>


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]