Home | History | Annotate | Line # | Download | only in dist
      1 /*
      2  * Copyright 2020      Cerebras Systems
      3  *
      4  * Use of this software is governed by the MIT license
      5  *
      6  * Written by Sven Verdoolaege,
      7  * Cerebras Systems, 175 S San Antonio Rd, Los Altos, CA, USA
      8  */
      9 
     10 /* isl_union_*_every_* callback that checks whether "pw"
     11  * is free of local variables.
     12  */
     13 static isl_bool FN(UNION,no_locals_el)(__isl_keep PW *pw, void *user)
     14 {
     15 	return isl_bool_not(FN(PW,involves_locals)(pw));
     16 }
     17 
     18 /* Does "u" involve any local variables, i.e., integer divisions?
     19  */
     20 isl_bool FN(UNION,involves_locals)(__isl_keep UNION *u)
     21 {
     22 	isl_bool no_locals;
     23 
     24 	no_locals = FN(FN(UNION,every),BASE)(u, &FN(UNION,no_locals_el), NULL);
     25 
     26 	return isl_bool_not(no_locals);
     27 }
     28