brintos

brintos / llvm-project-archived public Read only

0
0
Text · 3.1 KiB · cd669fa Raw
48 lines · plain
1# In earlier versions of isl, this test case would cause2# the loop coalescing avoidance to break down because one of the dimensions3# (Id2 in S_1) has a fixed value in terms of the other dimensions.4# Check that this no longer happens.5# The actual schedule that is produced is not that important,6# but it is different depending on whether the whole-component scheduler7# is being used, so pick a particular setting.8# OPTIONS: --schedule-whole-component9domain: [_PB_M, _PB_N] -> { S_0[Id1, Id2, Id3] : _PB_M >= 2 and Id1 >=100 and 4Id1 < _PB_N and 2Id2 >= -_PB_M and 4Id2 <= -_PB_M and Id3 <=110 and 4Id3 >= -3 + _PB_M + 4Id2 and 4Id3 >= -1 - _PB_M; S_1[Id1, Id2,12Id3] : _PB_M >= 2 and Id1 >= 0 and 4Id1 < _PB_N and -_PB_M <= 2Id2 <=131 - _PB_M and Id3 <= 0 and 4Id3 >= -1 - _PB_M }14validity: [_PB_M, _PB_N] -> { S_0[Id1, Id2, Id3] -> S_0[Id1' = Id1, Id2',15Id3'] : Id1 >= 0 and 4Id1 < _PB_N and Id3 <= 0 and 4Id3 >= -3 + _PB_M +164Id2 and Id2' <= Id2 and 2Id2' >= -_PB_M and Id3' < 0 and Id3' <= Id317and Id3' < Id2 + Id3 - Id2' and 4Id3' >= -4 + _PB_M + 4Id2 and 4Id3' >=18-3 + _PB_M + 3Id2 + Id2' and -1 - _PB_M <= 4Id3' <= 2 + _PB_M + 4Id2;19S_0[Id1, Id2, Id3] -> S_0[Id1' = Id1, Id2', Id3' = Id3] : Id1 >= 0 and204Id1 < _PB_N and 4Id2 <= -_PB_M and Id3 <= 0 and 4Id3 >= -3 + _PB_M +214Id2 and Id2' < Id2 and 2Id2' >= -_PB_M; S_0[Id1, Id2, Id3] -> S_1[Id1'22= Id1, Id2', Id3'] : Id1 >= 0 and 4Id1 < _PB_N and Id3 <= 0 and 4Id3 >=23-3 + _PB_M + 4Id2 and Id2' < Id2 and -_PB_M <= 2Id2' <= 1 - _PB_M and24Id3' < 0 and Id3' <= Id3 and -4 + _PB_M + 4Id2 <= 4Id3' <= 2 + _PB_M +254Id2; S_0[Id1, Id2, Id3] -> S_1[Id1' = Id1, Id2' = Id2, Id3'] : Id1 >=260 and 4Id1 < _PB_N and -_PB_M <= 2Id2 <= 1 - _PB_M and Id3 <= 0 and Id3'27< Id3 and -1 - _PB_M <= 4Id3' <= 2 + _PB_M + 4Id2; S_0[Id1, Id2, Id3]28-> S_1[Id1' = Id1, Id2', Id3' = Id3] : Id1 >= 0 and 4Id1 < _PB_N and294Id2 <= -_PB_M and Id3 <= 0 and 4Id3 >= -3 + _PB_M + 4Id2 and Id2' <30Id2 and -_PB_M <= 2Id2' <= 1 - _PB_M }31proximity: [_PB_M, _PB_N] -> { S_0[Id1, Id2, Id3] -> S_0[Id1' = Id1, Id2',32Id3'] : Id1 >= 0 and 4Id1 < _PB_N and Id3 <= 0 and 4Id3 >= -3 + _PB_M +334Id2 and Id2' <= Id2 and 2Id2' >= -_PB_M and Id3' < 0 and Id3' <= Id334and Id3' < Id2 + Id3 - Id2' and 4Id3' >= -4 + _PB_M + 4Id2 and 4Id3' >=35-3 + _PB_M + 3Id2 + Id2' and -1 - _PB_M <= 4Id3' <= 2 + _PB_M + 4Id2;36S_0[Id1, Id2, Id3] -> S_0[Id1' = Id1, Id2', Id3' = Id3] : Id1 >= 0 and374Id1 < _PB_N and 4Id2 <= -_PB_M and Id3 <= 0 and 4Id3 >= -3 + _PB_M +384Id2 and Id2' < Id2 and 2Id2' >= -_PB_M; S_0[Id1, Id2, Id3] -> S_1[Id1'39= Id1, Id2', Id3'] : Id1 >= 0 and 4Id1 < _PB_N and Id3 <= 0 and 4Id3 >=40-3 + _PB_M + 4Id2 and Id2' < Id2 and -_PB_M <= 2Id2' <= 1 - _PB_M and41Id3' < 0 and Id3' <= Id3 and -4 + _PB_M + 4Id2 <= 4Id3' <= 2 + _PB_M +424Id2; S_0[Id1, Id2, Id3] -> S_1[Id1' = Id1, Id2' = Id2, Id3'] : Id1 >=430 and 4Id1 < _PB_N and -_PB_M <= 2Id2 <= 1 - _PB_M and Id3 <= 0 and Id3'44< Id3 and -1 - _PB_M <= 4Id3' <= 2 + _PB_M + 4Id2; S_0[Id1, Id2, Id3]45-> S_1[Id1' = Id1, Id2', Id3' = Id3] : Id1 >= 0 and 4Id1 < _PB_N and464Id2 <= -_PB_M and Id3 <= 0 and 4Id3 >= -3 + _PB_M + 4Id2 and Id2' <47Id2 and -_PB_M <= 2Id2' <= 1 - _PB_M }48