Esempio n. 1
0
 def loops(self) -> List[OP.Loop]:
     loops = flattern(program.loops for program in self.programs)
     return uniqueBy(loops, lambda l: l.kernel)
Esempio n. 2
0
 def consts(self) -> List[OP.Const]:
     consts = flattern(program.consts for program in self.programs)
     return uniqueBy(consts, lambda c: c.ptr)
Esempio n. 3
0
 def indirectIdxs(self) -> List[Arg]:
   return uniqueBy(self.indirects, lambda a: (a.map, a.idx))
Esempio n. 4
0
 def indirectMaps(self) -> List[Arg]:
   return uniqueBy(self.indirects, lambda a: a.map)
Esempio n. 5
0
 def indirectVars(self) -> List[Arg]:
   return uniqueBy(self.indirects, lambda a: a.var)
Esempio n. 6
0
 def uniqueVars(self) -> List[Arg]:
   return uniqueBy(self.args, lambda a: a.var)