Changeset View
Changeset View
Standalone View
Standalone View
lib/Analysis/ScopInfo.cpp
Show First 20 Lines • Show All 612 Lines • ▼ Show 20 Lines | static isl_map *getEqualAndLarger(isl_space *setDomain) { | ||||
Map = isl_map_add_constraint(Map, c); | Map = isl_map_add_constraint(Map, c); | ||||
isl_local_space_free(MapLocalSpace); | isl_local_space_free(MapLocalSpace); | ||||
return Map; | return Map; | ||||
} | } | ||||
isl_set *MemoryAccess::getStride(__isl_take const isl_map *Schedule) const { | isl_set *MemoryAccess::getStride(__isl_take const isl_map *Schedule) const { | ||||
isl_map *S = const_cast<isl_map *>(Schedule); | isl_map *S = const_cast<isl_map *>(Schedule); | ||||
isl_map *AccessRelation = getAccessRelation(); | isl_map *AccessRelation = getNewAccessRelation(); | ||||
if (!AccessRelation) | |||||
AccessRelation = getAccessRelation(); | |||||
isl_space *Space = isl_space_range(isl_map_get_space(S)); | isl_space *Space = isl_space_range(isl_map_get_space(S)); | ||||
isl_map *NextScatt = getEqualAndLarger(Space); | isl_map *NextScatt = getEqualAndLarger(Space); | ||||
S = isl_map_reverse(S); | S = isl_map_reverse(S); | ||||
NextScatt = isl_map_lexmin(NextScatt); | NextScatt = isl_map_lexmin(NextScatt); | ||||
NextScatt = isl_map_apply_range(NextScatt, isl_map_copy(S)); | NextScatt = isl_map_apply_range(NextScatt, isl_map_copy(S)); | ||||
NextScatt = isl_map_apply_range(NextScatt, isl_map_copy(AccessRelation)); | NextScatt = isl_map_apply_range(NextScatt, isl_map_copy(AccessRelation)); | ||||
▲ Show 20 Lines • Show All 1,180 Lines • Show Last 20 Lines |