ofs | hex dump | ascii |
---|
0000 | 54 68 69 73 20 69 73 20 63 6c 6f 6f 67 2e 69 6e 66 6f 2c 20 70 72 6f 64 75 63 65 64 20 62 79 20 | This.is.cloog.info,.produced.by. |
0020 | 6d 61 6b 65 69 6e 66 6f 20 76 65 72 73 69 6f 6e 20 34 2e 31 31 20 66 72 6f 6d 20 63 6c 6f 6f 67 | makeinfo.version.4.11.from.cloog |
0040 | 2e 74 65 78 69 2e 0a 0a 49 4e 46 4f 2d 44 49 52 2d 53 45 43 54 49 4f 4e 20 53 6f 66 74 77 61 72 | .texi...INFO-DIR-SECTION.Softwar |
0060 | 65 20 6c 69 62 72 61 72 69 65 73 0a 53 54 41 52 54 2d 49 4e 46 4f 2d 44 49 52 2d 45 4e 54 52 59 | e.libraries.START-INFO-DIR-ENTRY |
0080 | 0a 2a 20 63 6c 6f 6f 67 3a 20 28 63 6c 6f 6f 67 29 2e 20 20 41 20 6c 6f 6f 70 20 67 65 6e 65 72 | .*.cloog:.(cloog)...A.loop.gener |
00a0 | 61 74 6f 72 20 66 6f 72 20 73 63 61 6e 6e 69 6e 67 20 70 6f 6c 79 68 65 64 72 61 0a 45 4e 44 2d | ator.for.scanning.polyhedra.END- |
00c0 | 49 4e 46 4f 2d 44 49 52 2d 45 4e 54 52 59 0a 0a 20 20 20 54 68 69 73 20 6d 61 6e 75 61 6c 20 69 | INFO-DIR-ENTRY.....This.manual.i |
00e0 | 73 20 66 6f 72 20 43 4c 6f 6f 47 20 76 65 72 73 69 6f 6e 20 2c 20 61 20 73 6f 66 74 77 61 72 65 | s.for.CLooG.version.,.a.software |
0100 | 20 77 68 69 63 68 20 67 65 6e 65 72 61 74 65 73 20 6c 6f 6f 70 73 0a 66 6f 72 20 73 63 61 6e 6e | .which.generates.loops.for.scann |
0120 | 69 6e 67 20 5a 2d 70 6f 6c 79 68 65 64 72 61 2e 20 54 68 61 74 20 69 73 2c 20 43 4c 6f 6f 47 20 | ing.Z-polyhedra..That.is,.CLooG. |
0140 | 70 72 6f 64 75 63 65 73 20 61 20 63 6f 64 65 20 76 69 73 69 74 69 6e 67 20 65 61 63 68 0a 69 6e | produces.a.code.visiting.each.in |
0160 | 74 65 67 72 61 6c 20 70 6f 69 6e 74 20 6f 66 20 61 20 75 6e 69 6f 6e 20 6f 66 20 70 61 72 61 6d | tegral.point.of.a.union.of.param |
0180 | 65 74 72 69 7a 65 64 20 70 6f 6c 79 68 65 64 72 61 2e 20 43 4c 6f 6f 47 20 69 73 20 64 65 73 69 | etrized.polyhedra..CLooG.is.desi |
01a0 | 67 6e 65 64 0a 74 6f 20 61 76 6f 69 64 20 63 6f 6e 74 72 6f 6c 20 6f 76 65 72 68 65 61 64 20 61 | gned.to.avoid.control.overhead.a |
01c0 | 6e 64 20 74 6f 20 70 72 6f 64 75 63 65 20 61 20 76 65 72 79 20 65 66 66 69 63 69 65 6e 74 20 63 | nd.to.produce.a.very.efficient.c |
01e0 | 6f 64 65 2e 0a 0a 20 20 20 49 74 20 77 6f 75 6c 64 20 62 65 20 71 75 69 74 65 20 6b 69 6e 64 20 | ode......It.would.be.quite.kind. |
0200 | 74 6f 20 72 65 66 65 72 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 70 61 70 65 72 20 69 6e 20 | to.refer.the.following.paper.in. |
0220 | 61 6e 79 0a 70 75 62 6c 69 63 61 74 69 6f 6e 20 74 68 61 74 20 72 65 73 75 6c 74 73 20 66 72 6f | any.publication.that.results.fro |
0240 | 6d 20 74 68 65 20 75 73 65 20 6f 66 20 74 68 65 20 43 4c 6f 6f 47 20 73 6f 66 74 77 61 72 65 20 | m.the.use.of.the.CLooG.software. |
0260 | 6f 72 20 69 74 73 0a 6c 69 62 72 61 72 79 3a 0a 0a 20 20 20 20 20 40 49 6e 50 72 6f 63 65 65 64 | or.its.library:.......@InProceed |
0280 | 69 6e 67 73 7b 42 61 73 30 34 2c 0a 20 20 20 20 20 20 20 61 75 74 68 6f 72 20 3d 20 20 20 20 7b | ings{Bas04,........author.=....{ |
02a0 | 43 2e 20 42 61 73 74 6f 75 6c 7d 2c 0a 20 20 20 20 20 20 20 74 69 74 6c 65 20 3d 20 20 20 20 20 | C..Bastoul},........title.=..... |
02c0 | 7b 43 6f 64 65 20 47 65 6e 65 72 61 74 69 6f 6e 20 69 6e 20 74 68 65 20 50 6f 6c 79 68 65 64 72 | {Code.Generation.in.the.Polyhedr |
02e0 | 61 6c 20 4d 6f 64 65 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 49 73 20 | al.Model.....................Is. |
0300 | 45 61 73 69 65 72 20 54 68 61 6e 20 59 6f 75 20 54 68 69 6e 6b 7d 2c 0a 20 20 20 20 20 20 20 62 | Easier.Than.You.Think},........b |
0320 | 6f 6f 6b 74 69 74 6c 65 20 3d 20 7b 50 41 43 54 27 31 33 20 49 45 45 45 20 49 6e 74 65 72 6e 61 | ooktitle.=.{PACT'13.IEEE.Interna |
0340 | 74 69 6f 6e 61 6c 20 43 6f 6e 66 65 72 65 6e 63 65 20 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 | tional.Conference.on............ |
0360 | 20 20 20 20 20 20 20 20 20 50 61 72 61 6c 6c 65 6c 20 41 72 63 68 69 74 65 63 74 75 72 65 20 61 | .........Parallel.Architecture.a |
0380 | 6e 64 20 43 6f 6d 70 69 6c 61 74 69 6f 6e 20 54 65 63 68 6e 69 71 75 65 73 7d 2c 0a 20 20 20 20 | nd.Compilation.Techniques},..... |
03a0 | 20 20 20 79 65 61 72 20 3d 20 20 20 20 20 20 32 30 30 34 2c 0a 20 20 20 20 20 20 20 70 61 67 65 | ...year.=......2004,........page |
03c0 | 73 20 3d 20 20 20 20 20 7b 37 2d 2d 31 36 7d 2c 0a 20 20 20 20 20 20 20 6d 6f 6e 74 68 20 3d 20 | s.=.....{7--16},........month.=. |
03e0 | 20 20 20 20 7b 73 65 70 74 65 6d 62 65 72 7d 2c 0a 20 20 20 20 20 20 20 61 64 64 72 65 73 73 20 | ....{september},........address. |
0400 | 3d 20 20 20 7b 4a 75 61 6e 2d 6c 65 73 2d 50 69 6e 73 7d 0a 20 20 20 20 20 7d 0a 0a 20 20 20 43 | =...{Juan-les-Pins}......}.....C |
0420 | 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 30 32 2d 32 30 30 35 20 43 65 27 64 72 69 63 20 42 | opyright.(C).2002-2005.Ce'dric.B |
0440 | 61 73 74 6f 75 6c 2e 0a 0a 20 20 20 50 65 72 6d 69 73 73 69 6f 6e 20 69 73 20 67 72 61 6e 74 65 | astoul......Permission.is.grante |
0460 | 64 20 74 6f 20 63 6f 70 79 2c 20 64 69 73 74 72 69 62 75 74 65 20 61 6e 64 2f 6f 72 20 6d 6f 64 | d.to.copy,.distribute.and/or.mod |
0480 | 69 66 79 20 74 68 69 73 0a 64 6f 63 75 6d 65 6e 74 20 75 6e 64 65 72 20 74 68 65 20 74 65 72 6d | ify.this.document.under.the.term |
04a0 | 73 20 6f 66 20 74 68 65 20 47 4e 55 20 46 72 65 65 20 44 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 | s.of.the.GNU.Free.Documentation. |
04c0 | 4c 69 63 65 6e 73 65 2c 20 56 65 72 73 69 6f 6e 0a 31 2e 32 20 70 75 62 6c 69 73 68 65 64 20 62 | License,.Version.1.2.published.b |
04e0 | 79 20 74 68 65 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e 2e 20 | y.the.Free.Software.Foundation.. |
0500 | 54 6f 20 72 65 63 65 69 76 65 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 0a 47 4e 55 20 46 72 65 | To.receive.a.copy.of.the.GNU.Fre |
0520 | 65 20 44 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 4c 69 63 65 6e 73 65 2c 20 77 72 69 74 65 20 74 | e.Documentation.License,.write.t |
0540 | 6f 20 74 68 65 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e 2c 0a | o.the.Free.Software.Foundation,. |
0560 | 49 6e 63 2e 2c 20 35 39 20 54 65 6d 70 6c 65 20 50 6c 61 63 65 2c 20 53 75 69 74 65 20 33 33 30 | Inc.,.59.Temple.Place,.Suite.330 |
0580 | 2c 20 42 6f 73 74 6f 6e 2c 20 4d 41 20 20 30 32 31 31 31 2d 31 33 30 37 20 55 53 41 2e 0a 0a 1f | ,.Boston,.MA..02111-1307.USA.... |
05a0 | 0a 46 69 6c 65 3a 20 63 6c 6f 6f 67 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 54 6f 70 2c 20 20 | .File:.cloog.info,..Node:.Top,.. |
05c0 | 4e 65 78 74 3a 20 49 6e 74 72 6f 64 75 63 74 69 6f 6e 2c 20 20 55 70 3a 20 28 64 69 72 29 0a 0a | Next:.Introduction,..Up:.(dir).. |
05e0 | 43 4c 6f 6f 47 0a 2a 2a 2a 2a 2a 0a 0a 54 68 69 73 20 6d 61 6e 75 61 6c 20 69 73 20 66 6f 72 20 | CLooG.*****..This.manual.is.for. |
0600 | 43 4c 6f 6f 47 20 76 65 72 73 69 6f 6e 20 2c 20 61 20 73 6f 66 74 77 61 72 65 20 77 68 69 63 68 | CLooG.version.,.a.software.which |
0620 | 20 67 65 6e 65 72 61 74 65 73 20 6c 6f 6f 70 73 20 66 6f 72 0a 73 63 61 6e 6e 69 6e 67 20 5a 2d | .generates.loops.for.scanning.Z- |
0640 | 70 6f 6c 79 68 65 64 72 61 2e 20 54 68 61 74 20 69 73 2c 20 43 4c 6f 6f 47 20 70 72 6f 64 75 63 | polyhedra..That.is,.CLooG.produc |
0660 | 65 73 20 61 20 63 6f 64 65 20 76 69 73 69 74 69 6e 67 20 65 61 63 68 0a 69 6e 74 65 67 72 61 6c | es.a.code.visiting.each.integral |
0680 | 20 70 6f 69 6e 74 20 6f 66 20 61 20 75 6e 69 6f 6e 20 6f 66 20 70 61 72 61 6d 65 74 72 69 7a 65 | .point.of.a.union.of.parametrize |
06a0 | 64 20 70 6f 6c 79 68 65 64 72 61 2e 20 43 4c 6f 6f 47 20 69 73 20 64 65 73 69 67 6e 65 64 0a 74 | d.polyhedra..CLooG.is.designed.t |
06c0 | 6f 20 61 76 6f 69 64 20 63 6f 6e 74 72 6f 6c 20 6f 76 65 72 68 65 61 64 20 61 6e 64 20 74 6f 20 | o.avoid.control.overhead.and.to. |
06e0 | 70 72 6f 64 75 63 65 20 61 20 76 65 72 79 20 65 66 66 69 63 69 65 6e 74 20 63 6f 64 65 2e 0a 0a | produce.a.very.efficient.code... |
0700 | 20 20 20 49 74 20 77 6f 75 6c 64 20 62 65 20 71 75 69 74 65 20 6b 69 6e 64 20 74 6f 20 72 65 66 | ...It.would.be.quite.kind.to.ref |
0720 | 65 72 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 70 61 70 65 72 20 69 6e 20 61 6e 79 0a 70 75 | er.the.following.paper.in.any.pu |
0740 | 62 6c 69 63 61 74 69 6f 6e 20 74 68 61 74 20 72 65 73 75 6c 74 73 20 66 72 6f 6d 20 74 68 65 20 | blication.that.results.from.the. |
0760 | 75 73 65 20 6f 66 20 74 68 65 20 43 4c 6f 6f 47 20 73 6f 66 74 77 61 72 65 20 6f 72 20 69 74 73 | use.of.the.CLooG.software.or.its |
0780 | 0a 6c 69 62 72 61 72 79 3a 0a 0a 20 20 20 20 20 40 49 6e 50 72 6f 63 65 65 64 69 6e 67 73 7b 42 | .library:.......@InProceedings{B |
07a0 | 61 73 30 34 2c 0a 20 20 20 20 20 20 20 61 75 74 68 6f 72 20 3d 20 20 20 20 7b 43 2e 20 42 61 73 | as04,........author.=....{C..Bas |
07c0 | 74 6f 75 6c 7d 2c 0a 20 20 20 20 20 20 20 74 69 74 6c 65 20 3d 20 20 20 20 20 7b 43 6f 64 65 20 | toul},........title.=.....{Code. |
07e0 | 47 65 6e 65 72 61 74 69 6f 6e 20 69 6e 20 74 68 65 20 50 6f 6c 79 68 65 64 72 61 6c 20 4d 6f 64 | Generation.in.the.Polyhedral.Mod |
0800 | 65 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 49 73 20 45 61 73 69 65 72 | el.....................Is.Easier |
0820 | 20 54 68 61 6e 20 59 6f 75 20 54 68 69 6e 6b 7d 2c 0a 20 20 20 20 20 20 20 62 6f 6f 6b 74 69 74 | .Than.You.Think},........booktit |
0840 | 6c 65 20 3d 20 7b 50 41 43 54 27 31 33 20 49 45 45 45 20 49 6e 74 65 72 6e 61 74 69 6f 6e 61 6c | le.=.{PACT'13.IEEE.International |
0860 | 20 43 6f 6e 66 65 72 65 6e 63 65 20 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .Conference.on.................. |
0880 | 20 20 20 50 61 72 61 6c 6c 65 6c 20 41 72 63 68 69 74 65 63 74 75 72 65 20 61 6e 64 20 43 6f 6d | ...Parallel.Architecture.and.Com |
08a0 | 70 69 6c 61 74 69 6f 6e 20 54 65 63 68 6e 69 71 75 65 73 7d 2c 0a 20 20 20 20 20 20 20 79 65 61 | pilation.Techniques},........yea |
08c0 | 72 20 3d 20 20 20 20 20 20 32 30 30 34 2c 0a 20 20 20 20 20 20 20 70 61 67 65 73 20 3d 20 20 20 | r.=......2004,........pages.=... |
08e0 | 20 20 7b 37 2d 2d 31 36 7d 2c 0a 20 20 20 20 20 20 20 6d 6f 6e 74 68 20 3d 20 20 20 20 20 7b 73 | ..{7--16},........month.=.....{s |
0900 | 65 70 74 65 6d 62 65 72 7d 2c 0a 20 20 20 20 20 20 20 61 64 64 72 65 73 73 20 3d 20 20 20 7b 4a | eptember},........address.=...{J |
0920 | 75 61 6e 2d 6c 65 73 2d 50 69 6e 73 7d 0a 20 20 20 20 20 7d 0a 0a 20 20 20 43 6f 70 79 72 69 67 | uan-les-Pins}......}.....Copyrig |
0940 | 68 74 20 28 43 29 20 32 30 30 32 2d 32 30 30 35 20 43 65 27 64 72 69 63 20 42 61 73 74 6f 75 6c | ht.(C).2002-2005.Ce'dric.Bastoul |
0960 | 2e 0a 0a 20 20 20 50 65 72 6d 69 73 73 69 6f 6e 20 69 73 20 67 72 61 6e 74 65 64 20 74 6f 20 63 | ......Permission.is.granted.to.c |
0980 | 6f 70 79 2c 20 64 69 73 74 72 69 62 75 74 65 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 66 79 20 74 68 | opy,.distribute.and/or.modify.th |
09a0 | 69 73 0a 64 6f 63 75 6d 65 6e 74 20 75 6e 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74 | is.document.under.the.terms.of.t |
09c0 | 68 65 20 47 4e 55 20 46 72 65 65 20 44 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 4c 69 63 65 6e 73 | he.GNU.Free.Documentation.Licens |
09e0 | 65 2c 20 56 65 72 73 69 6f 6e 0a 31 2e 32 20 70 75 62 6c 69 73 68 65 64 20 62 79 20 74 68 65 20 | e,.Version.1.2.published.by.the. |
0a00 | 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e 2e 20 54 6f 20 72 65 63 | Free.Software.Foundation..To.rec |
0a20 | 65 69 76 65 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 0a 47 4e 55 20 46 72 65 65 20 44 6f 63 75 | eive.a.copy.of.the.GNU.Free.Docu |
0a40 | 6d 65 6e 74 61 74 69 6f 6e 20 4c 69 63 65 6e 73 65 2c 20 77 72 69 74 65 20 74 6f 20 74 68 65 20 | mentation.License,.write.to.the. |
0a60 | 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e 2c 0a 49 6e 63 2e 2c 20 | Free.Software.Foundation,.Inc.,. |
0a80 | 35 39 20 54 65 6d 70 6c 65 20 50 6c 61 63 65 2c 20 53 75 69 74 65 20 33 33 30 2c 20 42 6f 73 74 | 59.Temple.Place,.Suite.330,.Bost |
0aa0 | 6f 6e 2c 20 4d 41 20 20 30 32 31 31 31 2d 31 33 30 37 20 55 53 41 2e 0a 0a 2a 20 4d 65 6e 75 3a | on,.MA..02111-1307.USA...*.Menu: |
0ac0 | 0a 0a 2a 20 49 6e 74 72 6f 64 75 63 74 69 6f 6e 3a 3a 0a 2a 20 43 4c 6f 6f 47 20 53 6f 66 74 77 | ..*.Introduction::.*.CLooG.Softw |
0ae0 | 61 72 65 3a 3a 0a 2a 20 43 4c 6f 6f 47 20 4c 69 62 72 61 72 79 3a 3a 0a 2a 20 49 6e 73 74 61 6c | are::.*.CLooG.Library::.*.Instal |
0b00 | 6c 69 6e 67 3a 3a 0a 2a 20 44 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 3a 3a 0a 2a 20 52 65 66 65 72 | ling::.*.Documentation::.*.Refer |
0b20 | 65 6e 63 65 73 3a 3a 0a 0a 1f 0a 46 69 6c 65 3a 20 63 6c 6f 6f 67 2e 69 6e 66 6f 2c 20 20 4e 6f | ences::....File:.cloog.info,..No |
0b40 | 64 65 3a 20 49 6e 74 72 6f 64 75 63 74 69 6f 6e 2c 20 20 4e 65 78 74 3a 20 43 4c 6f 6f 47 20 53 | de:.Introduction,..Next:.CLooG.S |
0b60 | 6f 66 74 77 61 72 65 2c 20 20 50 72 65 76 3a 20 54 6f 70 2c 20 20 55 70 3a 20 54 6f 70 0a 0a 31 | oftware,..Prev:.Top,..Up:.Top..1 |
0b80 | 20 49 6e 74 72 6f 64 75 63 74 69 6f 6e 0a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 0a 0a 43 4c | .Introduction.**************..CL |
0ba0 | 6f 6f 47 20 69 73 20 61 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 20 61 6e 64 20 6c 69 62 72 61 | ooG.is.a.free.software.and.libra |
0bc0 | 72 79 20 67 65 6e 65 72 61 74 69 6e 67 20 6c 6f 6f 70 73 20 66 6f 72 20 73 63 61 6e 6e 69 6e 67 | ry.generating.loops.for.scanning |
0be0 | 0a 5a 2d 70 6f 6c 79 68 65 64 72 61 2e 20 20 54 68 61 74 20 69 73 2c 20 69 74 20 66 69 6e 64 73 | .Z-polyhedra...That.is,.it.finds |
0c00 | 20 61 20 63 6f 64 65 20 28 65 2e 67 2e 20 69 6e 20 43 2c 20 46 4f 52 54 52 41 4e 2e 2e 2e 29 20 | .a.code.(e.g..in.C,.FORTRAN...). |
0c20 | 74 68 61 74 0a 72 65 61 63 68 65 73 20 65 61 63 68 20 69 6e 74 65 67 72 61 6c 20 70 6f 69 6e 74 | that.reaches.each.integral.point |
0c40 | 20 6f 66 20 6f 6e 65 20 6f 72 20 6d 6f 72 65 20 70 61 72 61 6d 65 74 65 72 69 7a 65 64 20 70 6f | .of.one.or.more.parameterized.po |
0c60 | 6c 79 68 65 64 72 61 2e 0a 43 4c 6f 6f 47 20 68 61 73 20 62 65 65 6e 20 6f 72 69 67 69 6e 61 6c | lyhedra..CLooG.has.been.original |
0c80 | 6c 79 20 77 72 69 74 74 65 6e 20 74 6f 20 73 6f 6c 76 65 20 74 68 65 20 63 6f 64 65 20 67 65 6e | ly.written.to.solve.the.code.gen |
0ca0 | 65 72 61 74 69 6f 6e 20 70 72 6f 62 6c 65 6d 0a 66 6f 72 20 6f 70 74 69 6d 69 7a 69 6e 67 20 63 | eration.problem.for.optimizing.c |
0cc0 | 6f 6d 70 69 6c 65 72 73 20 62 61 73 65 64 20 6f 6e 20 74 68 65 20 70 6f 6c 79 74 6f 70 65 20 6d | ompilers.based.on.the.polytope.m |
0ce0 | 6f 64 65 6c 2e 20 4e 65 76 65 72 74 68 65 6c 65 73 73 20 69 74 0a 69 73 20 75 73 65 64 20 6e 6f | odel..Nevertheless.it.is.used.no |
0d00 | 77 20 69 6e 20 76 61 72 69 6f 75 73 20 61 72 65 61 2c 20 65 2e 67 2e 2c 20 74 6f 20 62 75 69 6c | w.in.various.area,.e.g.,.to.buil |
0d20 | 64 20 63 6f 6e 74 72 6f 6c 20 61 75 74 6f 6d 61 74 61 20 66 6f 72 0a 68 69 67 68 2d 6c 65 76 65 | d.control.automata.for.high-leve |
0d40 | 6c 20 73 79 6e 74 68 65 73 69 73 20 6f 72 20 74 6f 20 66 69 6e 64 20 74 68 65 20 62 65 73 74 20 | l.synthesis.or.to.find.the.best. |
0d60 | 70 6f 6c 79 6e 6f 6d 69 61 6c 20 61 70 70 72 6f 78 69 6d 61 74 69 6f 6e 20 6f 66 20 61 0a 66 75 | polynomial.approximation.of.a.fu |
0d80 | 6e 63 74 69 6f 6e 2e 20 43 4c 6f 6f 47 20 6d 61 79 20 68 65 6c 70 20 69 6e 20 61 6e 79 20 73 69 | nction..CLooG.may.help.in.any.si |
0da0 | 74 75 61 74 69 6f 6e 20 77 68 65 72 65 20 73 63 61 6e 6e 69 6e 67 20 70 6f 6c 79 68 65 64 72 61 | tuation.where.scanning.polyhedra |
0dc0 | 0a 6d 61 74 74 65 72 73 2e 20 49 74 20 75 73 65 73 20 74 68 65 20 62 65 73 74 20 73 74 61 74 65 | .matters..It.uses.the.best.state |
0de0 | 2d 6f 66 2d 74 68 65 2d 61 72 74 20 63 6f 64 65 20 67 65 6e 65 72 61 74 69 6f 6e 20 61 6c 67 6f | -of-the-art.code.generation.algo |
0e00 | 72 69 74 68 6d 0a 6b 6e 6f 77 6e 20 61 73 20 74 68 65 20 51 75 69 6c 6c 65 72 65 27 20 65 74 20 | rithm.known.as.the.Quillere'.et. |
0e20 | 61 6c 2e 20 61 6c 67 6f 72 69 74 68 6d 20 28 2a 6e 6f 74 65 20 51 75 69 30 30 3a 3a 29 20 77 69 | al..algorithm.(*note.Qui00::).wi |
0e40 | 74 68 20 6f 75 72 20 6f 77 6e 0a 69 6d 70 72 6f 76 65 6d 65 6e 74 73 20 61 6e 64 20 65 78 74 65 | th.our.own.improvements.and.exte |
0e60 | 6e 73 69 6f 6e 73 20 28 2a 6e 6f 74 65 20 42 61 73 30 34 3a 3a 29 2e 20 20 54 68 65 20 75 73 65 | nsions.(*note.Bas04::)...The.use |
0e80 | 72 20 68 61 73 20 66 75 6c 6c 20 63 6f 6e 74 72 6f 6c 0a 6f 6e 20 67 65 6e 65 72 61 74 65 64 20 | r.has.full.control.on.generated. |
0ea0 | 63 6f 64 65 20 71 75 61 6c 69 74 79 2e 20 20 4f 6e 20 6f 6e 65 20 68 61 6e 64 2c 20 67 65 6e 65 | code.quality...On.one.hand,.gene |
0ec0 | 72 61 74 65 64 20 63 6f 64 65 20 73 69 7a 65 20 68 61 73 20 74 6f 20 62 65 0a 74 75 6e 65 64 20 | rated.code.size.has.to.be.tuned. |
0ee0 | 66 6f 72 20 73 61 6b 65 20 6f 66 20 72 65 61 64 61 62 69 6c 69 74 79 20 6f 72 20 69 6e 73 74 72 | for.sake.of.readability.or.instr |
0f00 | 75 63 74 69 6f 6e 20 63 61 63 68 65 20 75 73 65 2e 20 4f 6e 20 74 68 65 20 6f 74 68 65 72 0a 68 | uction.cache.use..On.the.other.h |
0f20 | 61 6e 64 2c 20 77 65 20 6d 75 73 74 20 65 6e 73 75 72 65 20 74 68 61 74 20 61 20 62 61 64 20 63 | and,.we.must.ensure.that.a.bad.c |
0f40 | 6f 6e 74 72 6f 6c 20 6d 61 6e 61 67 65 6d 65 6e 74 20 64 6f 65 73 20 6e 6f 74 20 68 61 6d 70 65 | ontrol.management.does.not.hampe |
0f60 | 72 0a 70 65 72 66 6f 72 6d 61 6e 63 65 20 6f 66 20 74 68 65 20 67 65 6e 65 72 61 74 65 64 20 63 | r.performance.of.the.generated.c |
0f80 | 6f 64 65 2c 20 66 6f 72 20 69 6e 73 74 61 6e 63 65 20 62 79 20 70 72 6f 64 75 63 69 6e 67 20 72 | ode,.for.instance.by.producing.r |
0fa0 | 65 64 75 6e 64 61 6e 74 0a 67 75 61 72 64 73 20 6f 72 20 63 6f 6d 70 6c 65 78 20 6c 6f 6f 70 20 | edundant.guards.or.complex.loop. |
0fc0 | 62 6f 75 6e 64 73 2e 20 20 43 4c 6f 6f 47 20 69 73 20 73 70 65 63 69 61 6c 6c 79 20 64 65 73 69 | bounds...CLooG.is.specially.desi |
0fe0 | 67 6e 65 64 20 74 6f 20 61 76 6f 69 64 0a 63 6f 6e 74 72 6f 6c 20 6f 76 65 72 68 65 61 64 20 61 | gned.to.avoid.control.overhead.a |
1000 | 6e 64 20 74 6f 20 70 72 6f 64 75 63 65 20 61 20 76 65 72 79 20 65 66 66 69 63 69 65 6e 74 20 63 | nd.to.produce.a.very.efficient.c |
1020 | 6f 64 65 2e 0a 0a 20 20 20 43 4c 6f 6f 47 20 73 74 61 6e 64 73 20 66 6f 72 20 5f 43 68 75 6e 6b | ode......CLooG.stands.for._Chunk |
1040 | 79 20 4c 6f 6f 70 20 47 65 6e 65 72 61 74 6f 72 5f 3a 20 69 74 20 69 73 20 61 20 70 61 72 74 20 | y.Loop.Generator_:.it.is.a.part. |
1060 | 6f 66 20 74 68 65 20 43 68 75 6e 6b 79 0a 70 72 6f 6a 65 63 74 2c 20 61 20 72 65 73 65 61 72 63 | of.the.Chunky.project,.a.researc |
1080 | 68 20 74 6f 6f 6c 20 66 6f 72 20 64 61 74 61 20 6c 6f 63 61 6c 69 74 79 20 69 6d 70 72 6f 76 65 | h.tool.for.data.locality.improve |
10a0 | 6d 65 6e 74 20 28 2a 6e 6f 74 65 20 42 61 73 30 33 61 3a 3a 29 2e 0a 49 74 20 69 73 20 64 65 73 | ment.(*note.Bas03a::)..It.is.des |
10c0 | 69 67 6e 65 64 20 61 6c 73 6f 20 74 6f 20 62 65 20 74 68 65 20 62 61 63 6b 2d 65 6e 64 20 6f 66 | igned.also.to.be.the.back-end.of |
10e0 | 20 61 75 74 6f 6d 61 74 69 63 20 70 61 72 61 6c 6c 65 6c 69 7a 65 72 73 20 6c 69 6b 65 0a 4c 6f | .automatic.parallelizers.like.Lo |
1100 | 6f 50 6f 20 28 2a 6e 6f 74 65 20 47 72 69 30 34 3a 3a 29 2e 20 20 54 68 75 73 20 69 74 20 69 73 | oPo.(*note.Gri04::)...Thus.it.is |
1120 | 20 76 65 72 79 20 63 6f 6d 70 69 6c 61 62 6c 65 20 63 6f 64 65 20 6f 72 69 65 6e 74 65 64 20 61 | .very.compilable.code.oriented.a |
1140 | 6e 64 0a 70 72 6f 76 69 64 65 73 20 70 6f 77 65 72 66 75 6c 20 70 72 6f 67 72 61 6d 20 74 72 61 | nd.provides.powerful.program.tra |
1160 | 6e 73 66 6f 72 6d 61 74 69 6f 6e 20 66 61 63 69 6c 69 74 69 65 73 2e 20 4d 61 69 6e 6c 79 2c 20 | nsformation.facilities..Mainly,. |
1180 | 69 74 20 61 6c 6c 6f 77 73 0a 74 68 65 20 75 73 65 72 20 74 6f 20 73 70 65 63 69 66 79 20 76 65 | it.allows.the.user.to.specify.ve |
11a0 | 72 79 20 67 65 6e 65 72 61 6c 20 73 63 68 65 64 75 6c 65 73 20 77 68 65 72 65 2c 20 65 2e 67 2e | ry.general.schedules.where,.e.g. |
11c0 | 2c 20 75 6e 69 6d 6f 64 75 6c 61 72 69 74 79 0a 6f 72 20 69 6e 76 65 72 74 69 62 69 6c 69 74 79 | ,.unimodularity.or.invertibility |
11e0 | 20 6f 66 20 74 68 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 20 64 6f 65 73 6e 27 74 20 6d | .of.the.transformation.doesn't.m |
1200 | 61 74 74 65 72 2e 0a 0a 20 20 20 54 68 65 20 63 75 72 72 65 6e 74 20 76 65 72 73 69 6f 6e 20 69 | atter......The.current.version.i |
1220 | 73 20 73 74 69 6c 6c 20 75 6e 64 65 72 20 65 76 61 6c 75 61 74 69 6f 6e 2c 20 61 6e 64 20 74 68 | s.still.under.evaluation,.and.th |
1240 | 65 72 65 20 69 73 20 6e 6f 0a 67 75 61 72 61 6e 74 65 65 20 74 68 61 74 20 74 68 65 20 75 70 77 | ere.is.no.guarantee.that.the.upw |
1260 | 61 72 64 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 77 69 6c 6c 20 62 65 20 72 65 73 70 65 63 | ard.compatibility.will.be.respec |
1280 | 74 65 64 20 28 62 75 74 20 74 68 65 0a 70 72 65 76 69 6f 75 73 20 41 50 49 20 68 61 73 20 62 65 | ted.(but.the.previous.API.has.be |
12a0 | 65 6e 20 73 74 61 62 6c 65 20 66 6f 72 20 74 77 6f 20 79 65 61 72 73 2c 20 77 65 20 68 6f 70 65 | en.stable.for.two.years,.we.hope |
12c0 | 20 74 68 69 73 20 6f 6e 65 20 77 69 6c 6c 20 62 65 20 61 73 0a 73 75 63 63 65 73 73 66 75 6c 20 | .this.one.will.be.as.successful. |
12e0 | 2d 61 6e 64 20 77 65 20 62 65 6c 69 65 76 65 20 69 74 2d 29 2e 20 20 41 20 6c 6f 74 20 6f 66 20 | -and.we.believe.it-)...A.lot.of. |
1300 | 72 65 70 6f 72 74 73 20 61 72 65 20 6e 65 63 65 73 73 61 72 79 20 74 6f 0a 66 72 65 65 7a 65 20 | reports.are.necessary.to.freeze. |
1320 | 74 68 65 20 6c 69 62 72 61 72 79 20 41 50 49 20 61 6e 64 20 74 68 65 20 69 6e 70 75 74 20 66 69 | the.library.API.and.the.input.fi |
1340 | 6c 65 20 73 68 61 70 65 2e 20 4d 6f 73 74 20 41 50 49 20 63 68 61 6e 67 65 73 20 66 72 6f 6d 0a | le.shape..Most.API.changes.from. |
1360 | 30 2e 31 32 2e 78 20 74 6f 20 30 2e 31 34 2e 78 20 68 61 76 65 20 62 65 65 6e 20 72 65 71 75 65 | 0.12.x.to.0.14.x.have.been.reque |
1380 | 73 74 65 64 20 62 79 20 74 68 65 20 75 73 65 72 73 20 74 68 65 6d 73 65 6c 76 65 73 2e 20 20 54 | sted.by.the.users.themselves...T |
13a0 | 68 75 73 20 79 6f 75 0a 61 72 65 20 76 65 72 79 20 77 65 6c 63 6f 6d 65 20 61 6e 64 20 65 6e 63 | hus.you.are.very.welcome.and.enc |
13c0 | 6f 75 72 61 67 65 64 20 74 6f 20 70 6f 73 74 20 72 65 70 6f 72 74 73 20 6f 6e 20 62 75 67 73 2c | ouraged.to.post.reports.on.bugs, |
13e0 | 20 77 69 73 68 65 73 2c 0a 63 72 69 74 69 63 73 2c 20 63 6f 6d 6d 65 6e 74 73 2c 20 73 75 67 67 | .wishes,.critics,.comments,.sugg |
1400 | 65 73 74 69 6f 6e 73 20 6f 72 20 73 75 63 63 65 73 73 66 75 6c 20 65 78 70 65 72 69 65 6e 63 65 | estions.or.successful.experience |
1420 | 73 20 69 6e 20 74 68 65 20 66 6f 72 75 6d 0a 6f 66 20 60 68 74 74 70 3a 2f 2f 77 77 77 2e 43 4c | s.in.the.forum.of.`http://www.CL |
1440 | 6f 6f 47 2e 6f 72 67 27 20 6f 72 20 74 6f 20 73 65 6e 64 20 74 68 65 6d 20 74 6f 20 63 65 64 72 | ooG.org'.or.to.send.them.to.cedr |
1460 | 69 63 2e 62 61 73 74 6f 75 6c 40 69 6e 72 69 61 2e 66 72 0a 64 69 72 65 63 74 6c 79 2e 0a 0a 2a | ic.bastoul@inria.fr.directly...* |
1480 | 20 4d 65 6e 75 3a 0a 0a 2a 20 42 61 73 69 63 73 3a 3a 0a 2a 20 53 63 61 74 74 65 72 69 6e 67 3a | .Menu:..*.Basics::.*.Scattering: |
14a0 | 3a 0a 0a 1f 0a 46 69 6c 65 3a 20 63 6c 6f 6f 67 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 42 61 | :....File:.cloog.info,..Node:.Ba |
14c0 | 73 69 63 73 2c 20 20 4e 65 78 74 3a 20 53 63 61 74 74 65 72 69 6e 67 2c 20 20 55 70 3a 20 49 6e | sics,..Next:.Scattering,..Up:.In |
14e0 | 74 72 6f 64 75 63 74 69 6f 6e 0a 0a 31 2e 31 20 42 61 73 69 63 61 6c 6c 79 2c 20 77 68 61 74 27 | troduction..1.1.Basically,.what' |
1500 | 73 20 74 68 65 20 70 6f 69 6e 74 20 3f 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d | s.the.point.?.================== |
1520 | 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 0a 49 66 20 79 6f 75 20 77 61 6e 74 20 74 6f 20 | ===============..If.you.want.to. |
1540 | 75 73 65 20 43 4c 6f 6f 47 2c 20 74 68 69 73 20 69 73 20 62 65 63 61 75 73 65 20 79 6f 75 20 77 | use.CLooG,.this.is.because.you.w |
1560 | 61 6e 74 20 74 6f 20 73 63 61 6e 20 6f 72 20 74 6f 20 66 69 6e 64 0a 73 6f 6d 65 74 68 69 6e 67 | ant.to.scan.or.to.find.something |
1580 | 20 69 6e 73 69 64 65 20 74 68 65 20 69 6e 74 65 67 72 61 6c 20 70 6f 69 6e 74 73 20 6f 66 20 61 | .inside.the.integral.points.of.a |
15a0 | 20 73 65 74 20 6f 66 20 70 6f 6c 79 68 65 64 72 61 2e 20 54 68 65 72 65 20 61 72 65 0a 6d 61 6e | .set.of.polyhedra..There.are.man |
15c0 | 79 20 72 65 61 73 6f 6e 73 20 66 6f 72 20 74 68 61 74 2e 20 4d 61 79 62 65 20 79 6f 75 20 6e 65 | y.reasons.for.that..Maybe.you.ne |
15e0 | 65 64 20 74 68 65 20 67 65 6e 65 72 61 74 65 64 20 63 6f 64 65 20 69 74 73 65 6c 66 20 62 65 63 | ed.the.generated.code.itself.bec |
1600 | 61 75 73 65 0a 69 74 20 61 63 74 75 61 6c 6c 79 20 69 6d 70 6c 65 6d 65 6e 74 73 20 61 20 76 65 | ause.it.actually.implements.a.ve |
1620 | 72 79 20 73 6d 61 72 74 20 70 72 6f 67 72 61 6d 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 20 | ry.smart.program.transformation. |
1640 | 79 6f 75 20 66 6f 75 6e 64 2e 0a 4d 61 79 62 65 20 79 6f 75 20 77 61 6e 74 20 74 6f 20 75 73 65 | you.found..Maybe.you.want.to.use |
1660 | 20 74 68 65 20 67 65 6e 65 72 61 74 65 64 20 63 6f 64 65 20 62 65 63 61 75 73 65 20 79 6f 75 20 | .the.generated.code.because.you. |
1680 | 6b 6e 6f 77 20 74 68 61 74 20 74 68 65 0a 73 6f 6c 75 74 69 6f 6e 20 6f 66 20 79 6f 75 72 20 70 | know.that.the.solution.of.your.p |
16a0 | 72 6f 62 6c 65 6d 20 62 65 6c 6f 6e 67 73 20 74 6f 20 74 68 65 20 69 6e 74 65 67 72 61 6c 20 70 | roblem.belongs.to.the.integral.p |
16c0 | 6f 69 6e 74 73 20 6f 66 20 74 68 6f 73 65 20 64 61 6d 6e 65 64 0a 70 6f 6c 79 68 65 64 72 61 20 | oints.of.those.damned.polyhedra. |
16e0 | 61 6e 64 20 79 6f 75 20 64 6f 6e 27 74 20 6b 6e 6f 77 20 77 68 69 63 68 20 6f 6e 65 2e 20 4d 61 | and.you.don't.know.which.one..Ma |
1700 | 79 62 65 20 79 6f 75 20 6a 75 73 74 20 77 61 6e 74 20 74 6f 20 6b 6e 6f 77 20 69 66 0a 61 20 70 | ybe.you.just.want.to.know.if.a.p |
1720 | 6f 6c 79 68 65 64 72 6f 6e 20 68 61 73 20 69 6e 74 65 67 72 61 6c 20 70 6f 69 6e 74 73 20 64 65 | olyhedron.has.integral.points.de |
1740 | 70 65 6e 64 69 6e 67 20 6f 6e 20 73 6f 6d 65 20 70 61 72 61 6d 65 74 65 72 73 2c 20 77 68 69 63 | pending.on.some.parameters,.whic |
1760 | 68 20 69 73 0a 74 68 65 20 6c 65 78 69 63 6f 67 72 61 70 68 69 63 20 6d 69 6e 69 6d 75 6d 2c 20 | h.is.the.lexicographic.minimum,. |
1780 | 6d 61 78 69 6d 75 6d 2c 20 74 68 65 20 74 68 69 72 64 20 6f 6e 20 74 68 65 20 62 61 73 69 73 20 | maximum,.the.third.on.the.basis. |
17a0 | 6f 66 20 74 68 65 20 6c 65 66 74 0a 65 74 63 2e 20 50 72 6f 62 61 62 6c 79 20 79 6f 75 20 68 61 | of.the.left.etc..Probably.you.ha |
17c0 | 76 65 20 79 6f 75 72 20 6f 77 6e 20 72 65 61 73 6f 6e 73 20 74 6f 20 75 73 65 20 43 4c 6f 6f 47 | ve.your.own.reasons.to.use.CLooG |
17e0 | 2e 0a 0a 20 20 20 4c 65 74 20 75 73 20 69 6c 6c 75 73 74 72 61 74 65 20 61 20 62 61 73 69 63 20 | ......Let.us.illustrate.a.basic. |
1800 | 75 73 65 20 6f 66 20 43 4c 6f 6f 47 2e 20 53 75 70 70 6f 73 65 20 77 65 20 68 61 76 65 20 61 20 | use.of.CLooG..Suppose.we.have.a. |
1820 | 73 65 74 20 6f 66 0a 61 66 66 69 6e 65 20 63 6f 6e 73 74 72 61 69 6e 74 73 20 74 68 61 74 20 64 | set.of.affine.constraints.that.d |
1840 | 65 73 63 72 69 62 65 73 20 61 20 70 61 72 74 20 6f 66 20 61 20 77 68 61 74 65 76 65 72 2d 64 69 | escribes.a.part.of.a.whatever-di |
1860 | 6d 65 6e 73 69 6f 6e 61 6c 0a 73 70 61 63 65 2c 20 63 61 6c 6c 65 64 20 61 20 2a 64 6f 6d 61 69 | mensional.space,.called.a.*domai |
1880 | 6e 2a 2c 20 61 6e 64 20 77 65 20 77 61 6e 74 20 74 6f 20 73 63 61 6e 20 69 74 2e 20 4c 65 74 20 | n*,.and.we.want.to.scan.it..Let. |
18a0 | 75 73 20 63 6f 6e 73 69 64 65 72 20 66 6f 72 0a 69 6e 73 74 61 6e 63 65 20 74 68 65 20 66 6f 6c | us.consider.for.instance.the.fol |
18c0 | 6c 6f 77 69 6e 67 20 73 65 74 20 6f 66 20 63 6f 6e 73 74 72 61 69 6e 74 73 20 77 68 65 72 65 20 | lowing.set.of.constraints.where. |
18e0 | 60 69 27 20 61 6e 64 20 60 6a 27 20 61 72 65 20 74 68 65 0a 75 6e 6b 6e 6f 77 6e 20 28 74 68 65 | `i'.and.`j'.are.the.unknown.(the |
1900 | 20 74 77 6f 20 64 69 6d 65 6e 73 69 6f 6e 73 20 6f 66 20 74 68 65 20 73 70 61 63 65 29 20 61 6e | .two.dimensions.of.the.space).an |
1920 | 64 20 60 6d 27 20 61 6e 64 20 60 6e 27 20 61 72 65 20 74 68 65 0a 70 61 72 61 6d 65 74 65 72 73 | d.`m'.and.`n'.are.the.parameters |
1940 | 20 28 73 6f 6d 65 20 73 79 6d 62 6f 6c 69 63 20 63 6f 6e 73 74 61 6e 74 73 29 3a 0a 20 20 20 20 | .(some.symbolic.constants):..... |
1960 | 20 32 3c 3d 69 3c 3d 6e 0a 20 20 20 20 20 32 3c 3d 6a 3c 3d 6d 0a 20 20 20 20 20 6a 3c 3d 6e 2b | .2<=i<=n......2<=j<=m......j<=n+ |
1980 | 32 2d 69 0a 4c 65 74 20 75 73 20 61 6c 73 6f 20 63 6f 6e 73 69 64 65 72 20 74 68 61 74 20 77 65 | 2-i.Let.us.also.consider.that.we |
19a0 | 20 68 61 76 65 20 61 20 70 61 72 74 69 61 6c 20 6b 6e 6f 77 6c 65 64 67 65 20 6f 66 20 74 68 65 | .have.a.partial.knowledge.of.the |
19c0 | 20 70 61 72 61 6d 65 74 65 72 0a 76 61 6c 75 65 73 2c 20 63 61 6c 6c 65 64 20 74 68 65 20 2a 63 | .parameter.values,.called.the.*c |
19e0 | 6f 6e 74 65 78 74 2a 2c 20 65 78 70 72 65 73 73 65 64 20 61 73 20 61 66 66 69 6e 65 20 63 6f 6e | ontext*,.expressed.as.affine.con |
1a00 | 73 74 72 61 69 6e 74 73 20 61 73 20 77 65 6c 6c 2c 0a 66 6f 72 20 69 6e 73 74 61 6e 63 65 3a 0a | straints.as.well,.for.instance:. |
1a20 | 20 20 20 20 20 6d 3e 3d 32 0a 20 20 20 20 20 6e 3e 3d 32 0a 4e 6f 74 65 20 74 68 61 74 20 75 73 | .....m>=2......n>=2.Note.that.us |
1a40 | 69 6e 67 20 70 61 72 61 6d 65 74 65 72 73 20 69 73 20 6f 70 74 69 6f 6e 61 6c 2c 20 69 66 20 79 | ing.parameters.is.optional,.if.y |
1a60 | 6f 75 20 61 72 65 20 6e 6f 74 20 63 6f 6d 66 6f 72 74 61 62 6c 65 20 77 69 74 68 0a 70 61 72 61 | ou.are.not.comfortable.with.para |
1a80 | 6d 65 74 65 72 20 6d 61 6e 69 70 75 6c 61 74 69 6f 6e 2c 20 6a 75 73 74 20 72 65 70 6c 61 63 65 | meter.manipulation,.just.replace |
1aa0 | 20 74 68 65 6d 20 77 69 74 68 20 61 6e 79 20 73 63 61 6c 61 72 20 76 61 6c 75 65 20 74 68 61 74 | .them.with.any.scalar.value.that |
1ac0 | 0a 66 69 74 73 20 60 6d 3e 3d 32 27 20 61 6e 64 20 60 6e 3e 3d 32 27 2e 20 20 41 20 67 72 61 70 | .fits.`m>=2'.and.`n>=2'...A.grap |
1ae0 | 68 69 63 61 6c 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 6f 66 20 74 68 69 73 20 70 61 72 | hical.representation.of.this.par |
1b00 | 74 20 6f 66 20 74 68 65 0a 32 2d 64 69 6d 65 6e 73 69 6f 6e 61 6c 20 73 70 61 63 65 2c 20 77 68 | t.of.the.2-dimensional.space,.wh |
1b20 | 65 72 65 20 74 68 65 20 69 6e 74 65 67 72 61 6c 20 70 6f 69 6e 74 73 20 61 72 65 20 72 65 70 72 | ere.the.integral.points.are.repr |
1b40 | 65 73 65 6e 74 65 64 20 75 73 69 6e 67 0a 68 65 61 76 79 20 64 6f 74 73 20 77 6f 75 6c 64 20 62 | esented.using.heavy.dots.would.b |
1b60 | 65 20 66 6f 72 20 69 6e 73 74 61 6e 63 65 3a 0a 0a 00 08 5b 69 6d 61 67 65 20 73 72 63 3d 22 69 | e.for.instance:....[image.src="i |
1b80 | 6d 61 67 65 73 2f 62 61 73 69 63 2e 6a 70 67 22 20 74 65 78 74 3d 22 20 6a 5e 20 69 3e 3d 32 0a | mages/basic.jpg".text=".j^.i>=2. |
1ba0 | 20 20 7c 20 7c 20 6a 3c 3d 6e 2b 32 2d 69 0a 20 20 7c 20 7c 5c 5c 20 20 20 20 20 7c 20 69 3c 3d | ..|.|.j<=n+2-i...|.|\\.....|.i<= |
1bc0 | 6e 0a 20 20 7c 20 7c 20 5c 5c 20 20 20 20 7c 0a 6d 2d 2b 2d 2a 2a 2a 2a 2d 2d 2d 2b 2d 6a 3c 3d | n...|.|.\\....|.m-+-****---+-j<= |
1be0 | 6d 0a 20 20 7c 20 2a 2a 2a 2a 2a 20 20 7c 0a 20 20 7c 20 2a 2a 2a 2a 2a 2a 20 7c 0a 20 20 7c 20 | m...|.*****..|...|.******.|...|. |
1c00 | 2a 2a 2a 2a 2a 2a 2a 7c 0a 32 2d 2b 2d 2a 2a 2a 2a 2a 2a 2a 2a 2d 6a 3e 3d 32 0a 20 20 7c 20 7c | *******|.2-+-********-j>=2...|.| |
1c20 | 20 20 20 20 20 20 7c 5c 5c 0a 30 2d 2b 2d 2b 2d 2d 2d 2d 2d 2d 2b 2d 2d 2d 3e 69 0a 20 20 7c 20 | ......|\\.0-+-+------+--->i...|. |
1c40 | 7c 20 20 20 20 20 20 7c 0a 20 20 30 20 32 20 20 20 20 20 20 6e 0a 22 00 08 5d 0a 0a 20 20 20 54 | |......|...0.2......n."..].....T |
1c60 | 68 65 20 61 66 66 69 6e 65 20 63 6f 6e 73 74 72 61 69 6e 74 73 20 6f 66 20 62 6f 74 68 20 74 68 | he.affine.constraints.of.both.th |
1c80 | 65 20 64 6f 6d 61 69 6e 20 61 6e 64 20 74 68 65 20 63 6f 6e 74 65 78 74 20 61 72 65 20 77 68 61 | e.domain.and.the.context.are.wha |
1ca0 | 74 0a 77 65 20 77 69 6c 6c 20 70 72 6f 76 69 64 65 20 74 6f 20 43 4c 6f 6f 47 20 61 73 20 69 6e | t.we.will.provide.to.CLooG.as.in |
1cc0 | 70 75 74 20 28 69 6e 20 61 20 70 61 72 74 69 63 75 6c 61 72 20 73 68 61 70 65 20 74 68 61 74 20 | put.(in.a.particular.shape.that. |
1ce0 | 77 69 6c 6c 20 62 65 0a 64 65 73 63 72 69 62 65 64 20 6c 61 74 65 72 29 2e 20 20 54 68 65 20 6f | will.be.described.later)...The.o |
1d00 | 75 74 70 75 74 20 6f 66 20 43 4c 6f 6f 47 20 69 73 20 61 20 70 73 65 75 64 6f 2d 63 6f 64 65 20 | utput.of.CLooG.is.a.pseudo-code. |
1d20 | 74 6f 20 73 63 61 6e 20 74 68 65 0a 69 6e 74 65 67 72 61 6c 20 70 6f 69 6e 74 73 20 6f 66 20 74 | to.scan.the.integral.points.of.t |
1d40 | 68 65 20 69 6e 70 75 74 20 64 6f 6d 61 69 6e 20 61 63 63 6f 72 64 69 6e 67 20 74 6f 20 74 68 65 | he.input.domain.according.to.the |
1d60 | 20 63 6f 6e 74 65 78 74 3a 0a 20 20 20 20 20 66 6f 72 20 28 69 3d 32 3b 69 3c 3d 6e 3b 69 2b 2b | .context:......for.(i=2;i<=n;i++ |
1d80 | 29 20 7b 0a 20 20 20 20 20 20 20 66 6f 72 20 28 6a 3d 32 3b 6a 3c 3d 6d 69 6e 28 6d 2c 2d 69 2b | ).{........for.(j=2;j<=min(m,-i+ |
1da0 | 6e 2b 32 29 3b 6a 2b 2b 29 20 7b 0a 20 20 20 20 20 20 20 20 20 53 31 28 69 2c 6a 29 20 3b 0a 20 | n+2);j++).{..........S1(i,j).;.. |
1dc0 | 20 20 20 20 20 20 7d 0a 20 20 20 20 20 7d 0a 49 66 20 79 6f 75 20 66 65 6c 74 20 73 75 63 68 20 | ......}......}.If.you.felt.such. |
1de0 | 61 20 62 61 73 69 63 20 65 78 61 6d 70 6c 65 20 69 73 20 79 65 74 20 69 6e 74 65 72 65 73 74 69 | a.basic.example.is.yet.interesti |
1e00 | 6e 67 2c 20 74 68 65 72 65 20 69 73 20 61 20 67 6f 6f 64 0a 63 68 61 6e 63 65 20 74 68 61 74 20 | ng,.there.is.a.good.chance.that. |
1e20 | 43 4c 6f 6f 47 20 69 73 20 61 70 70 72 6f 70 72 69 61 74 65 20 66 6f 72 20 79 6f 75 2e 20 43 4c | CLooG.is.appropriate.for.you..CL |
1e40 | 6f 6f 47 20 63 61 6e 20 64 6f 20 6d 75 63 68 20 6d 6f 72 65 3a 0a 73 63 61 6e 6e 69 6e 67 20 73 | ooG.can.do.much.more:.scanning.s |
1e60 | 65 76 65 72 61 6c 20 70 6f 6c 79 68 65 64 72 61 20 6f 72 20 75 6e 69 6f 6e 73 20 6f 66 20 70 6f | everal.polyhedra.or.unions.of.po |
1e80 | 6c 79 68 65 64 72 61 20 61 74 20 74 68 65 20 73 61 6d 65 20 74 69 6d 65 2c 0a 61 70 70 6c 79 69 | lyhedra.at.the.same.time,.applyi |
1ea0 | 6e 67 20 67 65 6e 65 72 61 6c 20 61 66 66 69 6e 65 20 74 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e | ng.general.affine.transformation |
1ec0 | 73 20 74 6f 20 74 68 65 20 70 6f 6c 79 68 65 64 72 61 2c 20 67 65 6e 65 72 61 74 65 0a 63 6f 6d | s.to.the.polyhedra,.generate.com |
1ee0 | 70 69 6c 61 62 6c 65 20 63 6f 64 65 20 65 74 63 2e 20 57 65 6c 63 6f 6d 65 20 74 6f 20 74 68 65 | pilable.code.etc..Welcome.to.the |
1f00 | 20 43 4c 6f 6f 47 27 73 20 75 73 65 72 27 73 20 67 75 69 64 65 20 21 0a 0a 1f 0a 46 69 6c 65 3a | .CLooG's.user's.guide.!....File: |
1f20 | 20 63 6c 6f 6f 67 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 53 63 61 74 74 65 72 69 6e 67 2c 20 | .cloog.info,..Node:.Scattering,. |
1f40 | 20 50 72 65 76 3a 20 42 61 73 69 63 73 2c 20 20 55 70 3a 20 49 6e 74 72 6f 64 75 63 74 69 6f 6e | .Prev:.Basics,..Up:.Introduction |
1f60 | 0a 0a 31 2e 32 20 44 65 66 69 6e 69 6e 67 20 61 20 53 63 61 6e 6e 69 6e 67 20 4f 72 64 65 72 3a | ..1.2.Defining.a.Scanning.Order: |
1f80 | 20 53 63 61 74 74 65 72 69 6e 67 20 46 75 6e 63 74 69 6f 6e 73 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d | .Scattering.Functions.========== |
1fa0 | 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d | ================================ |
1fc0 | 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 0a 49 6e 20 43 4c 6f 6f 47 2c 20 64 6f 6d 61 69 6e 73 20 6f 6e 6c | =========..In.CLooG,.domains.onl |
1fe0 | 79 20 64 65 66 69 6e 65 20 74 68 65 20 73 65 74 20 6f 66 20 69 6e 74 65 67 72 61 6c 20 70 6f 69 | y.define.the.set.of.integral.poi |
2000 | 6e 74 73 20 74 6f 20 73 63 61 6e 20 61 6e 64 0a 74 68 65 69 72 20 63 6f 6f 72 64 69 6e 61 74 65 | nts.to.scan.and.their.coordinate |
2020 | 73 2e 20 49 6e 20 70 61 72 74 69 63 75 6c 61 72 2c 20 43 4c 6f 6f 47 20 69 73 20 66 72 65 65 20 | s..In.particular,.CLooG.is.free. |
2040 | 74 6f 20 63 68 6f 6f 73 65 20 74 68 65 20 73 63 61 6e 6e 69 6e 67 0a 6f 72 64 65 72 20 66 6f 72 | to.choose.the.scanning.order.for |
2060 | 20 67 65 6e 65 72 61 74 69 6e 67 20 74 68 65 20 6d 6f 73 74 20 65 66 66 69 63 69 65 6e 74 20 63 | .generating.the.most.efficient.c |
2080 | 6f 64 65 2e 20 54 68 69 73 20 6d 65 61 6e 73 2c 20 66 6f 72 0a 6f 70 74 69 6d 69 7a 69 6e 67 2f | ode..This.means,.for.optimizing/ |
20a0 | 70 61 72 61 6c 6c 65 6c 69 7a 69 6e 67 20 63 6f 6d 70 69 6c 65 72 20 70 65 6f 70 6c 65 2c 20 74 | parallelizing.compiler.people,.t |
20c0 | 68 61 74 20 43 4c 6f 6f 47 20 64 6f 65 73 6e 27 74 20 6d 61 6b 65 20 61 6e 79 0a 73 70 65 63 75 | hat.CLooG.doesn't.make.any.specu |
20e0 | 6c 61 74 69 6f 6e 20 6f 6e 20 64 65 70 65 6e 64 65 6e 63 65 73 20 6f 6e 20 61 6e 64 20 62 65 74 | lation.on.dependences.on.and.bet |
2100 | 77 65 65 6e 20 73 74 61 74 65 6d 65 6e 74 73 20 28 62 79 20 74 68 65 20 77 61 79 2c 20 69 74 27 | ween.statements.(by.the.way,.it' |
2120 | 73 0a 6e 6f 74 20 69 74 73 20 6a 6f 62 20 21 29 2e 20 20 46 6f 72 20 69 6e 73 74 61 6e 63 65 2c | s.not.its.job.!)...For.instance, |
2140 | 20 69 66 20 61 6e 20 75 73 65 72 20 67 69 76 65 20 74 6f 20 43 4c 6f 6f 47 20 6f 6e 6c 79 20 74 | .if.an.user.give.to.CLooG.only.t |
2160 | 77 6f 0a 64 6f 6d 61 69 6e 73 20 60 53 31 3a 31 3c 3d 69 3c 3d 6e 27 2c 20 60 53 32 3a 31 3c 3d | wo.domains.`S1:1<=i<=n',.`S2:1<= |
2180 | 69 3c 3d 6e 27 20 61 6e 64 20 74 68 65 20 63 6f 6e 74 65 78 74 20 60 6e 3e 3d 31 27 2c 20 74 68 | i<=n'.and.the.context.`n>=1',.th |
21a0 | 65 0a 66 6f 6c 6c 6f 77 69 6e 67 20 70 73 65 75 64 6f 2d 63 6f 64 65 73 20 61 72 65 20 63 6f 6e | e.following.pseudo-codes.are.con |
21c0 | 73 69 64 65 72 65 64 20 74 6f 20 62 65 20 65 71 75 69 76 61 6c 65 6e 74 3a 0a 0a 20 20 20 20 20 | sidered.to.be.equivalent:....... |
21e0 | 2f 2a 20 41 20 63 6f 6e 76 65 6e 69 65 6e 74 20 74 61 72 67 65 74 20 70 73 65 75 64 6f 2d 63 6f | /*.A.convenient.target.pseudo-co |
2200 | 64 65 2e 20 2a 2f 0a 20 20 20 20 20 66 6f 72 20 28 69 3d 31 3b 69 3c 3d 4e 3b 69 2b 2b 29 20 7b | de..*/......for.(i=1;i<=N;i++).{ |
2220 | 0a 20 20 20 20 20 20 53 31 28 69 29 20 3b 0a 20 20 20 20 20 7d 0a 20 20 20 20 20 66 6f 72 20 28 | .......S1(i).;......}......for.( |
2240 | 69 3d 31 3b 69 3c 3d 4e 3b 69 2b 2b 29 20 7b 0a 20 20 20 20 20 20 53 32 28 69 29 20 3b 0a 20 20 | i=1;i<=N;i++).{.......S2(i).;... |
2260 | 20 20 20 7d 0a 0a 20 20 20 20 20 2f 2a 20 41 6e 6f 74 68 65 72 20 63 6f 6e 76 65 6e 69 65 6e 74 | ...}......./*.Another.convenient |
2280 | 20 74 61 72 67 65 74 20 70 73 65 75 64 6f 2d 63 6f 64 65 2e 20 2a 2f 0a 20 20 20 20 20 66 6f 72 | .target.pseudo-code..*/......for |
22a0 | 20 28 69 3d 31 3b 69 3c 3d 4e 3b 69 2b 2b 29 20 7b 0a 20 20 20 20 20 20 53 31 28 69 29 20 3b 0a | .(i=1;i<=N;i++).{.......S1(i).;. |
22c0 | 20 20 20 20 20 20 53 32 28 69 29 20 3b 0a 20 20 20 20 20 7d 0a 0a 20 20 20 54 68 65 20 64 65 66 | ......S2(i).;......}.....The.def |
22e0 | 61 75 6c 74 20 62 65 68 61 76 69 6f 75 72 20 6f 66 20 43 4c 6f 6f 47 20 69 73 20 74 6f 20 67 65 | ault.behaviour.of.CLooG.is.to.ge |
2300 | 6e 65 72 61 74 65 20 74 68 65 20 73 65 63 6f 6e 64 20 6f 6e 65 2c 20 73 69 6e 63 65 0a 69 74 20 | nerate.the.second.one,.since.it. |
2320 | 69 73 20 6f 70 74 69 6d 69 7a 65 64 20 69 6e 20 63 6f 6e 74 72 6f 6c 2e 20 20 49 74 20 69 73 20 | is.optimized.in.control...It.is. |
2340 | 72 69 67 68 74 20 69 66 20 74 68 65 72 65 20 61 72 65 20 6e 6f 20 64 61 74 61 0a 64 65 70 65 6e | right.if.there.are.no.data.depen |
2360 | 64 65 6e 63 65 73 20 62 65 74 77 65 65 6e 20 60 53 31 27 20 61 6e 64 20 60 53 32 27 2c 20 62 75 | dences.between.`S1'.and.`S2',.bu |
2380 | 74 20 77 72 6f 6e 67 20 6f 74 68 65 72 77 69 73 65 2e 0a 0a 20 20 20 54 68 75 73 20 69 74 20 69 | t.wrong.otherwise......Thus.it.i |
23a0 | 73 20 6f 66 74 65 6e 20 75 73 65 66 75 6c 20 74 6f 20 66 6f 72 63 65 20 73 63 61 6e 6e 69 6e 67 | s.often.useful.to.force.scanning |
23c0 | 20 74 6f 20 72 65 73 70 65 63 74 20 61 20 67 69 76 65 6e 20 6f 72 64 65 72 2e 0a 54 68 69 73 20 | .to.respect.a.given.order..This. |
23e0 | 63 61 6e 20 62 65 20 64 6f 6e 65 20 69 6e 20 43 4c 6f 6f 47 20 62 79 20 75 73 69 6e 67 20 2a 73 | can.be.done.in.CLooG.by.using.*s |
2400 | 63 61 74 74 65 72 69 6e 67 20 66 75 6e 63 74 69 6f 6e 73 2a 2e 20 53 63 61 74 74 65 72 69 6e 67 | cattering.functions*..Scattering |
2420 | 0a 69 73 20 61 20 73 68 6f 72 74 63 75 74 20 66 6f 72 20 73 63 68 65 64 75 6c 69 6e 67 2c 20 61 | .is.a.shortcut.for.scheduling,.a |
2440 | 6c 6c 6f 63 61 74 69 6f 6e 2c 20 63 68 75 6e 6b 69 6e 67 20 66 75 6e 63 74 69 6f 6e 73 20 61 6e | llocation,.chunking.functions.an |
2460 | 64 20 74 68 65 0a 6c 69 6b 65 20 77 65 20 63 61 6e 20 66 69 6e 64 20 69 6e 20 74 68 65 20 72 65 | d.the.like.we.can.find.in.the.re |
2480 | 73 74 72 75 63 74 75 72 69 6e 67 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 6c 69 74 74 65 72 61 74 | structuring.compilation.litterat |
24a0 | 75 72 65 2e 20 54 68 65 72 65 0a 61 72 65 20 61 20 6c 6f 74 20 6f 66 20 72 65 61 73 6f 6e 73 20 | ure..There.are.a.lot.of.reasons. |
24c0 | 74 6f 20 73 63 61 74 74 65 72 20 74 68 65 20 69 6e 74 65 67 72 61 6c 20 70 6f 69 6e 74 73 20 6f | to.scatter.the.integral.points.o |
24e0 | 66 20 74 68 65 20 64 6f 6d 61 69 6e 73 0a 28 69 2e 65 2e 20 74 68 65 20 73 74 61 74 65 6d 65 6e | f.the.domains.(i.e..the.statemen |
2500 | 74 20 69 6e 73 74 61 6e 63 65 73 20 6f 66 20 61 20 70 72 6f 67 72 61 6d 2c 20 66 6f 72 20 63 6f | t.instances.of.a.program,.for.co |
2520 | 6d 70 69 6c 61 74 69 6f 6e 20 70 65 6f 70 6c 65 29 2c 0a 70 61 72 61 6c 6c 65 6c 69 7a 61 74 69 | mpilation.people),.parallelizati |
2540 | 6f 6e 20 6f 72 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 20 61 72 65 20 67 6f 6f 64 20 65 78 61 6d | on.or.optimization.are.good.exam |
2560 | 70 6c 65 73 2e 20 46 6f 72 20 69 6e 73 74 61 6e 63 65 2c 20 69 66 20 74 68 65 0a 75 73 65 72 20 | ples..For.instance,.if.the.user. |
2580 | 77 61 6e 74 73 20 66 6f 72 20 61 6e 79 20 72 65 61 73 6f 6e 20 74 6f 20 73 65 74 20 73 6f 6d 65 | wants.for.any.reason.to.set.some |
25a0 | 20 70 72 65 63 65 64 65 6e 63 65 20 63 6f 6e 73 74 72 61 69 6e 74 73 20 62 65 74 77 65 65 6e 0a | .precedence.constraints.between. |
25c0 | 74 68 65 20 73 74 61 74 65 6d 65 6e 74 73 20 6f 66 20 6f 75 72 20 65 78 61 6d 70 6c 65 20 61 62 | the.statements.of.our.example.ab |
25e0 | 6f 76 65 20 69 6e 20 6f 72 64 65 72 20 74 6f 20 66 6f 72 63 65 20 74 68 65 20 67 65 6e 65 72 61 | ove.in.order.to.force.the.genera |
2600 | 74 69 6f 6e 20 6f 66 0a 74 68 65 20 66 69 72 73 74 20 63 6f 64 65 2c 20 68 65 20 63 61 6e 20 64 | tion.of.the.first.code,.he.can.d |
2620 | 6f 20 69 74 20 65 61 73 69 6c 79 20 62 79 20 73 65 74 74 69 6e 67 20 28 66 6f 72 20 65 78 61 6d | o.it.easily.by.setting.(for.exam |
2640 | 70 6c 65 29 20 74 68 65 0a 66 6f 6c 6c 6f 77 69 6e 67 20 73 63 68 65 64 75 6c 69 6e 67 20 66 75 | ple).the.following.scheduling.fu |
2660 | 6e 63 74 69 6f 6e 73 3a 0a 0a 20 20 20 20 20 54 5f 53 31 28 69 29 20 3d 20 28 31 29 0a 20 20 20 | nctions:.......T_S1(i).=.(1).... |
2680 | 20 20 54 5f 53 32 28 6a 29 20 3d 20 28 32 29 0a 0a 20 20 20 54 68 69 73 20 73 63 61 74 74 65 72 | ..T_S2(j).=.(2).....This.scatter |
26a0 | 69 6e 67 20 6d 65 61 6e 73 20 74 68 61 74 20 65 61 63 68 20 69 6e 74 65 67 72 61 6c 20 70 6f 69 | ing.means.that.each.integral.poi |
26c0 | 6e 74 20 6f 66 20 74 68 65 20 64 6f 6d 61 69 6e 20 60 53 31 27 20 69 73 0a 73 63 61 6e 6e 65 64 | nt.of.the.domain.`S1'.is.scanned |
26e0 | 20 61 74 20 6c 6f 67 69 63 61 6c 20 64 61 74 65 20 60 31 27 20 77 68 69 6c 65 20 65 61 63 68 20 | .at.logical.date.`1'.while.each. |
2700 | 69 6e 74 65 67 72 61 6c 20 70 6f 69 6e 74 20 6f 66 20 74 68 65 20 64 6f 6d 61 69 6e 0a 60 53 32 | integral.point.of.the.domain.`S2 |
2720 | 27 20 69 73 20 73 63 61 6e 6e 65 64 20 61 74 20 6c 6f 67 69 63 61 6c 20 64 61 74 65 20 60 32 27 | '.is.scanned.at.logical.date.`2' |
2740 | 2e 20 41 73 20 61 20 72 65 73 75 6c 74 2c 20 74 68 65 20 77 68 6f 6c 65 20 64 6f 6d 61 69 6e 20 | ..As.a.result,.the.whole.domain. |
2760 | 60 53 31 27 0a 69 73 20 73 63 61 6e 6e 65 64 20 62 65 66 6f 72 65 20 64 6f 6d 61 69 6e 20 60 53 | `S1'.is.scanned.before.domain.`S |
2780 | 32 27 20 61 6e 64 20 74 68 65 20 66 69 72 73 74 20 63 6f 64 65 20 69 6e 20 6f 75 72 20 65 78 61 | 2'.and.the.first.code.in.our.exa |
27a0 | 6d 70 6c 65 20 69 73 0a 67 65 6e 65 72 61 74 65 64 2e 0a 0a 20 20 20 54 68 65 20 75 73 65 72 20 | mple.is.generated......The.user. |
27c0 | 63 61 6e 20 73 65 74 20 65 76 65 72 79 20 6b 69 6e 64 20 6f 66 20 61 66 66 69 6e 65 20 73 63 61 | can.set.every.kind.of.affine.sca |
27e0 | 6e 6e 69 6e 67 20 6f 72 64 65 72 20 74 68 61 6e 6b 73 20 74 6f 20 74 68 65 0a 73 63 61 74 74 65 | nning.order.thanks.to.the.scatte |
2800 | 72 69 6e 67 20 66 75 6e 63 74 69 6f 6e 73 2e 20 45 61 63 68 20 64 6f 6d 61 69 6e 20 68 61 73 20 | ring.functions..Each.domain.has. |
2820 | 69 74 73 20 6f 77 6e 20 73 63 61 74 74 65 72 69 6e 67 20 66 75 6e 63 74 69 6f 6e 20 61 6e 64 0a | its.own.scattering.function.and. |
2840 | 65 61 63 68 20 73 63 61 74 74 65 72 69 6e 67 20 66 75 6e 63 74 69 6f 6e 20 6d 61 79 20 62 65 20 | each.scattering.function.may.be. |
2860 | 6d 75 6c 74 69 2d 64 69 6d 65 6e 73 69 6f 6e 61 6c 2e 20 41 20 6d 75 6c 74 69 2d 64 69 6d 65 6e | multi-dimensional..A.multi-dimen |
2880 | 74 69 6f 6e 61 6c 0a 6c 6f 67 69 63 61 6c 20 64 61 74 65 20 6d 61 79 20 62 65 20 73 65 65 6e 20 | tional.logical.date.may.be.seen. |
28a0 | 61 73 20 63 6c 61 73 73 69 63 61 6c 20 64 61 74 65 0a 28 79 65 61 72 2c 6d 6f 6e 74 68 2c 64 61 | as.classical.date.(year,month,da |
28c0 | 79 2c 68 6f 75 72 2c 6d 69 6e 75 74 65 2c 65 74 63 2e 29 20 77 68 65 72 65 20 74 68 65 20 66 69 | y,hour,minute,etc.).where.the.fi |
28e0 | 72 73 74 20 64 69 6d 65 6e 73 69 6f 6e 73 20 61 72 65 20 74 68 65 0a 6d 6f 73 74 20 73 69 67 6e | rst.dimensions.are.the.most.sign |
2900 | 69 66 69 63 61 6e 74 2e 20 45 61 63 68 20 73 63 61 74 74 65 72 69 6e 67 20 64 69 6d 65 6e 73 69 | ificant..Each.scattering.dimensi |
2920 | 6f 6e 20 6d 61 79 20 64 65 70 65 6e 64 20 6c 69 6e 65 61 72 6c 79 20 6f 6e 20 74 68 65 0a 6f 72 | on.may.depend.linearly.on.the.or |
2940 | 69 67 69 6e 61 6c 20 64 69 6d 65 6e 73 69 6f 6e 73 20 28 65 2e 67 2e 2c 20 60 69 27 29 2c 20 74 | iginal.dimensions.(e.g.,.`i'),.t |
2960 | 68 65 20 70 61 72 61 6d 65 74 65 72 73 20 28 65 2e 67 2e 2c 20 60 6e 27 29 20 61 6e 73 20 73 63 | he.parameters.(e.g.,.`n').ans.sc |
2980 | 61 6c 61 72 73 0a 28 65 2e 67 2e 2c 20 60 32 27 29 2e 0a 0a 20 20 20 41 20 76 65 72 79 20 75 73 | alars.(e.g.,.`2')......A.very.us |
29a0 | 65 66 75 6c 20 65 78 61 6d 70 6c 65 20 6f 66 20 6d 75 6c 74 69 2d 64 69 6d 65 6e 73 69 6f 6e 61 | eful.example.of.multi-dimensiona |
29c0 | 6c 20 73 63 61 74 74 65 72 69 6e 67 20 66 75 6e 63 74 69 6f 6e 73 20 69 73 2c 0a 66 6f 72 20 63 | l.scattering.functions.is,.for.c |
29e0 | 6f 6d 70 69 6c 61 74 69 6f 6e 20 70 65 6f 70 6c 65 2c 20 74 68 65 20 73 63 68 65 64 75 6c 69 6e | ompilation.people,.the.schedulin |
2a00 | 67 20 6f 66 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 20 70 72 6f 67 72 61 6d 2e 20 20 54 68 65 0a | g.of.the.original.program...The. |
2a20 | 62 61 73 69 63 20 64 61 74 61 20 74 6f 20 75 73 65 20 66 6f 72 20 63 6f 64 65 20 67 65 6e 65 72 | basic.data.to.use.for.code.gener |
2a40 | 61 74 69 6f 6e 20 61 72 65 20 73 74 61 74 65 6d 65 6e 74 20 69 74 65 72 61 74 69 6f 6e 20 64 6f | ation.are.statement.iteration.do |
2a60 | 6d 61 69 6e 73 2e 0a 41 73 20 77 65 20 73 61 77 2c 20 74 68 65 73 65 20 64 61 74 61 20 61 72 65 | mains..As.we.saw,.these.data.are |
2a80 | 20 6e 6f 74 20 73 75 66 66 69 63 69 65 6e 74 20 74 6f 20 72 65 62 75 69 6c 64 20 74 68 65 20 6f | .not.sufficient.to.rebuild.the.o |
2aa0 | 72 69 67 69 6e 61 6c 0a 70 72 6f 67 72 61 6d 20 28 77 68 61 74 20 69 73 20 74 68 65 20 6f 72 64 | riginal.program.(what.is.the.ord |
2ac0 | 65 72 69 6e 67 20 62 65 74 77 65 65 6e 20 69 6e 73 74 61 6e 63 65 73 20 6f 66 20 64 69 66 66 65 | ering.between.instances.of.diffe |
2ae0 | 72 65 6e 74 20 73 74 61 74 65 6d 65 6e 74 73 0a 3f 29 2e 20 20 54 68 65 20 6d 69 73 73 69 6e 67 | rent.statements.?)...The.missing |
2b00 | 20 64 61 74 61 20 63 61 6e 20 62 65 20 70 75 74 20 69 6e 20 74 68 65 20 73 63 61 74 74 65 72 69 | .data.can.be.put.in.the.scatteri |
2b20 | 6e 67 20 66 75 6e 63 74 69 6f 6e 73 20 61 73 20 74 68 65 0a 6f 72 69 67 69 6e 61 6c 20 73 63 68 | ng.functions.as.the.original.sch |
2b40 | 65 64 75 6c 69 6e 67 2e 20 54 68 65 20 6d 65 74 68 6f 64 20 74 6f 20 63 6f 6d 70 75 74 65 20 69 | eduling..The.method.to.compute.i |
2b60 | 74 20 69 73 20 71 75 69 74 65 20 73 69 6d 70 6c 65 20 28 2a 6e 6f 74 65 0a 46 65 61 39 32 3a 3a | t.is.quite.simple.(*note.Fea92:: |
2b80 | 29 2e 20 54 68 65 20 69 64 65 61 20 69 73 20 74 6f 20 62 75 69 6c 64 20 61 6e 20 61 62 73 74 72 | )..The.idea.is.to.build.an.abstr |
2ba0 | 61 63 74 20 73 79 6e 74 61 78 20 74 72 65 65 20 6f 66 20 74 68 65 20 70 72 6f 67 72 61 6d 0a 61 | act.syntax.tree.of.the.program.a |
2bc0 | 6e 64 20 74 6f 20 72 65 61 64 20 74 68 65 20 73 63 68 65 64 75 6c 69 6e 67 20 66 6f 72 20 65 61 | nd.to.read.the.scheduling.for.ea |
2be0 | 63 68 20 73 74 61 74 65 6d 65 6e 74 2e 20 46 6f 72 20 69 6e 73 74 61 6e 63 65 2c 20 6c 65 74 20 | ch.statement..For.instance,.let. |
2c00 | 75 73 0a 63 6f 6e 73 69 64 65 72 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 69 6d 70 6c 65 6d | us.consider.the.following.implem |
2c20 | 65 6e 74 61 74 69 6f 6e 20 6f 66 20 61 20 43 68 6f 6c 65 73 6b 79 20 66 61 63 74 6f 72 69 7a 61 | entation.of.a.Cholesky.factoriza |
2c40 | 74 69 6f 6e 3a 0a 0a 20 20 20 20 20 2f 2a 20 41 20 43 68 6f 6c 65 73 6b 79 20 66 61 63 74 6f 72 | tion:......./*.A.Cholesky.factor |
2c60 | 69 7a 61 74 69 6f 6e 20 6b 65 72 6e 65 6c 2e 20 2a 2f 0a 20 20 20 20 20 66 6f 72 20 28 69 3d 31 | ization.kernel..*/......for.(i=1 |
2c80 | 3b 69 3c 3d 4e 3b 69 2b 2b 29 20 7b 0a 20 20 20 20 20 20 20 66 6f 72 20 28 6a 3d 31 3b 6a 3c 3d | ;i<=N;i++).{........for.(j=1;j<= |
2ca0 | 69 2d 31 3b 6a 2b 2b 29 20 7b 0a 20 20 20 20 20 20 20 20 20 61 5b 69 5d 5b 69 5d 20 2d 3d 20 61 | i-1;j++).{..........a[i][i].-=.a |
2cc0 | 5b 69 5d 5b 6a 5d 20 3b 20 20 20 20 20 20 20 20 20 20 20 2f 2a 20 53 31 20 2a 2f 0a 20 20 20 20 | [i][j].;.........../*.S1.*/..... |
2ce0 | 20 20 20 7d 0a 20 20 20 20 20 20 20 61 5b 69 5d 5b 69 5d 20 3d 20 73 71 72 74 28 61 5b 69 5d 5b | ...}........a[i][i].=.sqrt(a[i][ |
2d00 | 69 5d 29 20 3b 20 20 20 20 20 20 20 20 2f 2a 20 53 32 20 2a 2f 0a 20 20 20 20 20 20 20 66 6f 72 | i]).;......../*.S2.*/........for |
2d20 | 20 28 6a 3d 69 2b 31 3b 6a 3c 3d 4e 3b 6a 2b 2b 29 20 7b 0a 20 20 20 20 20 20 20 20 20 66 6f 72 | .(j=i+1;j<=N;j++).{..........for |
2d40 | 20 28 6b 3d 31 3b 6b 3c 3d 69 2d 31 3b 6b 2b 2b 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 61 | .(k=1;k<=i-1;k++).{............a |
2d60 | 5b 6a 5d 5b 69 5d 20 2d 3d 20 61 5b 6a 5d 5b 6b 5d 2a 61 5b 69 5d 5b 6b 5d 20 3b 20 2f 2a 20 53 | [j][i].-=.a[j][k]*a[i][k].;./*.S |
2d80 | 33 20 2a 2f 0a 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 61 5b 6a 5d 5b 69 5d | 3.*/..........}..........a[j][i] |
2da0 | 20 2f 3d 20 61 5b 69 5d 5b 69 5d 20 3b 20 20 20 20 20 20 20 20 20 20 20 2f 2a 20 53 34 20 2a 2f | ./=.a[i][i].;.........../*.S4.*/ |
2dc0 | 0a 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 7d 0a 0a 20 20 20 | ..........}........}......}..... |
2de0 | 54 68 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 61 62 73 74 72 61 63 74 20 73 79 6e 74 61 | The.corresponding.abstract.synta |
2e00 | 78 20 74 72 65 65 20 69 73 20 67 69 76 65 6e 20 69 6e 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 | x.tree.is.given.in.the.following |
2e20 | 0a 66 69 67 75 72 65 2e 20 20 49 74 20 64 69 72 65 63 74 6c 79 20 67 69 76 65 73 20 74 68 65 20 | .figure...It.directly.gives.the. |
2e40 | 73 63 61 74 74 65 72 69 6e 67 20 66 75 6e 63 74 69 6f 6e 73 20 28 73 63 68 65 64 75 6c 65 73 29 | scattering.functions.(schedules) |
2e60 | 20 66 6f 72 20 61 6c 6c 0a 74 68 65 20 73 74 61 74 65 6d 65 6e 74 73 20 6f 66 20 74 68 65 20 70 | .for.all.the.statements.of.the.p |
2e80 | 72 6f 67 72 61 6d 2e 0a 0a 00 08 5b 69 6d 61 67 65 20 73 72 63 3d 22 69 6d 61 67 65 73 2f 74 72 | rogram.....[image.src="images/tr |
2ea0 | 65 65 2e 6a 70 67 22 20 74 65 78 74 3d 22 20 20 20 20 20 20 20 2a 0a 20 20 20 20 20 20 20 7c 0a | ee.jpg".text=".......*........|. |
2ec0 | 20 20 20 20 20 20 20 7c 30 0a 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 56 0a 20 20 20 20 | .......|0........|........V..... |
2ee0 | 20 20 20 69 0a 20 20 20 20 20 20 20 7c 0a 20 2b 2d 2d 2d 2d 2d 2b 2d 2d 2d 2d 2d 2b 0a 20 7c 20 | ...i........|..+-----+-----+..|. |
2f00 | 20 20 20 20 7c 20 20 20 20 20 7c 0a 20 7c 30 20 20 20 20 7c 31 20 20 20 20 7c 32 0a 20 7c 20 20 | ....|.....|..|0....|1....|2..|.. |
2f20 | 20 20 20 7c 20 20 20 20 20 7c 0a 20 56 20 20 20 20 20 56 20 20 20 20 20 56 0a 20 6a 20 20 20 20 | ...|.....|..V.....V.....V..j.... |
2f40 | 20 53 32 20 20 20 20 6a 0a 20 7c 20 20 20 20 20 20 20 20 20 20 20 7c 0a 20 7c 30 20 20 20 20 20 | .S2....j..|...........|..|0..... |
2f60 | 20 20 2b 2d 2d 2b 2d 2d 2b 0a 20 7c 20 20 20 20 20 20 20 20 7c 20 20 20 20 20 7c 0a 20 56 20 20 | ..+--+--+..|........|.....|..V.. |
2f80 | 20 20 20 20 20 20 7c 30 20 20 20 20 7c 31 0a 20 53 31 20 20 20 20 20 20 20 7c 20 20 20 20 20 7c | ......|0....|1..S1.......|.....| |
2fa0 | 0a 20 20 20 20 20 20 20 20 20 20 56 20 20 20 20 20 56 0a 20 20 20 20 20 20 20 20 20 20 6b 20 20 | ...........V.....V...........k.. |
2fc0 | 20 20 20 53 34 0a 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 20 20 20 7c 30 0a 20 | ...S4...........|...........|0.. |
2fe0 | 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 20 20 20 20 20 56 0a 20 20 20 20 20 20 20 20 20 | .........|...........V.......... |
3000 | 20 53 33 0a 22 00 08 5d 0a 0a 20 20 20 20 20 54 5f 53 31 28 69 2c 6a 29 5e 54 20 20 20 3d 20 28 | .S3."..].......T_S1(i,j)^T...=.( |
3020 | 30 2c 69 2c 30 2c 6a 2c 30 29 5e 54 0a 20 20 20 20 20 54 5f 53 32 28 69 29 20 20 20 20 20 20 20 | 0,i,0,j,0)^T......T_S2(i)....... |
3040 | 3d 20 28 30 2c 69 2c 31 29 5e 54 0a 20 20 20 20 20 54 5f 53 33 28 69 2c 6a 2c 6b 29 5e 54 20 3d | =.(0,i,1)^T......T_S3(i,j,k)^T.= |
3060 | 20 28 30 2c 69 2c 32 2c 6a 2c 30 2c 6b 2c 30 29 5e 54 0a 20 20 20 20 20 54 5f 53 34 28 69 2c 6a | .(0,i,2,j,0,k,0)^T......T_S4(i,j |
3080 | 29 5e 54 20 20 20 3d 20 28 30 2c 69 2c 32 2c 6a 2c 31 29 5e 54 0a 0a 20 20 20 54 68 65 73 65 20 | )^T...=.(0,i,2,j,1)^T.....These. |
30a0 | 73 63 68 65 64 75 6c 65 73 20 64 65 70 65 6e 64 20 6f 6e 20 74 68 65 20 69 74 65 72 61 74 6f 72 | schedules.depend.on.the.iterator |
30c0 | 73 20 61 6e 64 20 67 69 76 65 20 66 6f 72 20 65 61 63 68 20 69 6e 73 74 61 6e 63 65 0a 6f 66 20 | s.and.give.for.each.instance.of. |
30e0 | 65 61 63 68 20 73 74 61 74 65 6d 65 6e 74 20 61 20 75 6e 69 71 75 65 20 65 78 65 63 75 74 69 6f | each.statement.a.unique.executio |
3100 | 6e 20 64 61 74 65 2e 20 55 73 69 6e 67 20 73 75 63 68 20 73 63 61 74 74 65 72 69 6e 67 0a 66 75 | n.date..Using.such.scattering.fu |
3120 | 6e 63 74 69 6f 6e 73 20 61 6c 6c 6f 77 20 43 4c 6f 6f 47 20 74 6f 20 72 65 2d 67 65 6e 65 72 61 | nctions.allow.CLooG.to.re-genera |
3140 | 74 65 20 74 68 65 20 69 6e 70 75 74 20 63 6f 64 65 2e 0a 0a 1f 0a 46 69 6c 65 3a 20 63 6c 6f 6f | te.the.input.code.....File:.cloo |
3160 | 67 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 43 4c 6f 6f 47 20 53 6f 66 74 77 61 72 65 2c 20 20 | g.info,..Node:.CLooG.Software,.. |
3180 | 4e 65 78 74 3a 20 43 4c 6f 6f 47 20 4c 69 62 72 61 72 79 2c 20 20 50 72 65 76 3a 20 49 6e 74 72 | Next:.CLooG.Library,..Prev:.Intr |
31a0 | 6f 64 75 63 74 69 6f 6e 2c 20 20 55 70 3a 20 54 6f 70 0a 0a 32 20 55 73 69 6e 67 20 74 68 65 20 | oduction,..Up:.Top..2.Using.the. |
31c0 | 43 4c 6f 6f 47 20 53 6f 66 74 77 61 72 65 0a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a | CLooG.Software.***************** |
31e0 | 2a 2a 2a 2a 2a 2a 2a 2a 2a 0a 0a 2a 20 4d 65 6e 75 3a 0a 0a 2a 20 41 20 46 69 72 73 74 20 45 78 | *********..*.Menu:..*.A.First.Ex |
3200 | 61 6d 70 6c 65 3a 3a 0a 2a 20 57 72 69 74 69 6e 67 20 54 68 65 20 49 6e 70 75 74 20 46 69 6c 65 | ample::.*.Writing.The.Input.File |
3220 | 3a 3a 0a 2a 20 43 61 6c 6c 69 6e 67 20 43 4c 6f 6f 47 3a 3a 0a 2a 20 43 4c 6f 6f 47 20 4f 70 74 | ::.*.Calling.CLooG::.*.CLooG.Opt |
3240 | 69 6f 6e 73 3a 3a 0a 2a 20 46 75 6c 6c 20 45 78 61 6d 70 6c 65 3a 3a 0a 0a 1f 0a 46 69 6c 65 3a | ions::.*.Full.Example::....File: |
3260 | 20 63 6c 6f 6f 67 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 41 20 46 69 72 73 74 20 45 78 61 6d | .cloog.info,..Node:.A.First.Exam |
3280 | 70 6c 65 2c 20 20 4e 65 78 74 3a 20 57 72 69 74 69 6e 67 20 54 68 65 20 49 6e 70 75 74 20 46 69 | ple,..Next:.Writing.The.Input.Fi |
32a0 | 6c 65 2c 20 20 55 70 3a 20 43 4c 6f 6f 47 20 53 6f 66 74 77 61 72 65 0a 0a 32 2e 31 20 41 20 46 | le,..Up:.CLooG.Software..2.1.A.F |
32c0 | 69 72 73 74 20 45 78 61 6d 70 6c 65 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d | irst.Example.=================== |
32e0 | 0a 0a 43 4c 6f 6f 47 20 74 61 6b 65 73 20 61 73 20 69 6e 70 75 74 20 61 20 66 69 6c 65 20 74 68 | ..CLooG.takes.as.input.a.file.th |
3300 | 61 74 20 6d 75 73 74 20 62 65 20 77 72 69 74 74 65 6e 20 61 63 63 6f 72 64 69 6e 67 6c 79 20 74 | at.must.be.written.accordingly.t |
3320 | 6f 20 61 0a 67 72 61 6d 6d 61 72 20 64 65 73 63 72 69 62 65 64 20 69 6e 20 64 65 70 74 68 20 69 | o.a.grammar.described.in.depth.i |
3340 | 6e 20 61 20 66 75 72 74 68 65 72 20 73 65 63 74 69 6f 6e 20 28 2a 6e 6f 74 65 20 57 72 69 74 69 | n.a.further.section.(*note.Writi |
3360 | 6e 67 20 54 68 65 0a 49 6e 70 75 74 20 46 69 6c 65 3a 3a 29 2e 20 20 4d 6f 72 65 6f 76 65 72 20 | ng.The.Input.File::)...Moreover. |
3380 | 69 74 20 73 75 70 70 6f 72 74 73 20 6d 61 6e 79 20 6f 70 74 69 6f 6e 73 20 74 6f 20 74 75 6e 65 | it.supports.many.options.to.tune |
33a0 | 20 74 68 65 20 74 61 72 67 65 74 0a 63 6f 64 65 20 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 6f 72 | .the.target.code.presentation.or |
33c0 | 20 71 75 61 6c 69 74 79 20 61 73 20 64 69 73 63 75 73 73 65 64 20 69 6e 20 61 20 64 65 64 69 63 | .quality.as.discussed.in.a.dedic |
33e0 | 61 74 65 64 20 73 65 63 74 69 6f 6e 20 28 2a 6e 6f 74 65 0a 43 61 6c 6c 69 6e 67 20 43 4c 6f 6f | ated.section.(*note.Calling.CLoo |
3400 | 47 3a 3a 29 2e 20 20 48 6f 77 65 76 65 72 2c 20 61 20 62 61 73 69 63 20 75 73 65 20 6f 66 20 43 | G::)...However,.a.basic.use.of.C |
3420 | 4c 6f 6f 47 20 69 73 20 6e 6f 74 20 76 65 72 79 20 63 6f 6d 70 6c 65 78 0a 61 6e 64 20 77 65 20 | LooG.is.not.very.complex.and.we. |
3440 | 70 72 65 73 65 6e 74 20 69 6e 20 74 68 69 73 20 73 65 63 74 69 6f 6e 20 68 6f 77 20 74 6f 20 67 | present.in.this.section.how.to.g |
3460 | 65 6e 65 72 61 74 65 20 74 68 65 20 63 6f 64 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 0a 74 | enerate.the.code.corresponding.t |
3480 | 6f 20 61 20 62 61 73 69 63 20 65 78 61 6d 70 6c 65 20 64 69 73 63 75 73 73 65 64 20 65 61 72 6c | o.a.basic.example.discussed.earl |
34a0 | 69 65 72 20 28 2a 6e 6f 74 65 20 42 61 73 69 63 73 3a 3a 29 2e 0a 0a 20 20 20 54 68 65 20 70 72 | ier.(*note.Basics::)......The.pr |
34c0 | 6f 62 6c 65 6d 20 69 73 20 74 6f 20 66 69 6e 64 20 74 68 65 20 63 6f 64 65 20 74 68 61 74 20 73 | oblem.is.to.find.the.code.that.s |
34e0 | 63 61 6e 73 20 61 20 32 2d 64 69 6d 65 6e 73 69 6f 6e 61 6c 20 70 6f 6c 79 68 65 64 72 6f 6e 0a | cans.a.2-dimensional.polyhedron. |
3500 | 77 68 65 72 65 20 60 69 27 20 61 6e 64 20 60 6a 27 20 61 72 65 20 74 68 65 20 75 6e 6b 6e 6f 77 | where.`i'.and.`j'.are.the.unknow |
3520 | 6e 20 28 74 68 65 20 74 77 6f 20 64 69 6d 65 6e 73 69 6f 6e 73 20 6f 66 20 74 68 65 20 73 70 61 | n.(the.two.dimensions.of.the.spa |
3540 | 63 65 29 20 61 6e 64 0a 60 6d 27 20 61 6e 64 20 60 6e 27 20 61 72 65 20 74 68 65 20 70 61 72 61 | ce).and.`m'.and.`n'.are.the.para |
3560 | 6d 65 74 65 72 73 20 28 74 68 65 20 73 79 6d 62 6f 6c 69 63 20 63 6f 6e 73 74 61 6e 74 73 29 2c | meters.(the.symbolic.constants), |
3580 | 20 64 65 66 69 6e 65 64 20 62 79 20 74 68 65 0a 66 6f 6c 6c 6f 77 69 6e 67 20 73 65 74 20 6f 66 | .defined.by.the.following.set.of |
35a0 | 20 63 6f 6e 73 74 72 61 69 6e 74 73 3a 0a 20 20 20 20 20 32 3c 3d 69 3c 3d 6e 0a 20 20 20 20 20 | .constraints:......2<=i<=n...... |
35c0 | 32 3c 3d 6a 3c 3d 6d 0a 20 20 20 20 20 6a 3c 3d 6e 2b 32 2d 69 0a 57 65 20 61 6c 73 6f 20 63 6f | 2<=j<=m......j<=n+2-i.We.also.co |
35e0 | 6e 73 69 64 65 72 20 61 20 70 61 72 74 69 61 6c 20 6b 6e 6f 77 6c 65 64 67 65 20 6f 66 20 74 68 | nsider.a.partial.knowledge.of.th |
3600 | 65 20 70 61 72 61 6d 65 74 65 72 20 76 61 6c 75 65 73 2c 20 65 78 70 72 65 73 73 65 64 0a 74 68 | e.parameter.values,.expressed.th |
3620 | 61 6e 6b 73 20 74 6f 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 61 66 66 69 6e 65 20 63 6f 6e | anks.to.the.following.affine.con |
3640 | 73 74 72 61 69 6e 74 73 3a 0a 20 20 20 20 20 6d 3e 3d 32 0a 20 20 20 20 20 6e 3e 3d 32 0a 0a 20 | straints:......m>=2......n>=2... |
3660 | 20 20 41 6e 20 69 6e 70 75 74 20 66 69 6c 65 20 74 68 61 74 20 63 6f 72 72 65 73 70 6f 6e 64 73 | ..An.input.file.that.corresponds |
3680 | 20 74 6f 20 74 68 69 73 20 70 72 6f 62 6c 65 6d 2c 20 61 6e 64 20 61 73 6b 73 20 66 6f 72 20 61 | .to.this.problem,.and.asks.for.a |
36a0 | 0a 67 65 6e 65 72 61 74 65 64 20 63 6f 64 65 20 69 6e 20 43 2c 20 6d 61 79 20 62 65 20 74 68 65 | .generated.code.in.C,.may.be.the |
36c0 | 20 66 6f 6c 6c 6f 77 69 6e 67 2e 20 4e 6f 74 65 20 74 68 61 74 20 77 65 20 64 6f 20 6e 6f 74 20 | .following..Note.that.we.do.not. |
36e0 | 64 65 73 63 72 69 62 65 0a 68 65 72 65 20 70 72 65 63 69 73 65 6c 79 20 74 68 65 20 73 74 72 75 | describe.here.precisely.the.stru |
3700 | 63 74 75 72 65 20 61 6e 64 20 74 68 65 20 63 6f 6d 70 6f 6e 65 6e 74 73 20 6f 66 20 74 68 69 73 | cture.and.the.components.of.this |
3720 | 20 66 69 6c 65 20 28 2a 6e 6f 74 65 0a 57 72 69 74 69 6e 67 20 54 68 65 20 49 6e 70 75 74 20 46 | .file.(*note.Writing.The.Input.F |
3740 | 69 6c 65 3a 3a 20 20 66 6f 72 20 73 75 63 68 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 2c 20 69 66 20 | ile::..for.such.information,.if. |
3760 | 79 6f 75 20 66 65 65 6c 20 69 74 0a 6e 65 63 65 73 73 61 72 79 29 3a 0a 0a 20 20 20 20 20 23 20 | you.feel.it.necessary):.......#. |
3780 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 43 4f 4e 54 45 58 54 20 2d | ----------------------.CONTEXT.- |
37a0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 20 20 20 20 20 63 20 23 20 6c | ---------------------......c.#.l |
37c0 | 61 6e 67 75 61 67 65 20 69 73 20 43 0a 0a 20 20 20 20 20 23 20 43 6f 6e 74 65 78 74 20 28 63 6f | anguage.is.C.......#.Context.(co |
37e0 | 6e 73 74 72 61 69 6e 74 73 20 6f 6e 20 74 77 6f 20 70 61 72 61 6d 65 74 65 72 73 29 0a 20 20 20 | nstraints.on.two.parameters).... |
3800 | 20 20 32 20 34 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 20 32 20 6c 69 6e 65 | ..2.4...................#.2.line |
3820 | 73 20 61 6e 64 20 34 20 63 6f 6c 75 6d 6e 73 0a 20 20 20 20 20 23 20 65 71 2f 69 6e 20 6d 20 20 | s.and.4.columns......#.eq/in.m.. |
3840 | 6e 20 20 31 20 20 20 20 20 20 20 20 20 65 71 2f 69 6e 3a 20 31 20 66 6f 72 20 69 6e 65 71 75 61 | n..1.........eq/in:.1.for.inequa |
3860 | 6c 69 74 79 20 3e 3d 30 2c 20 30 20 66 6f 72 20 65 71 75 61 6c 69 74 79 20 3d 30 0a 20 20 20 20 | lity.>=0,.0.for.equality.=0..... |
3880 | 20 20 20 20 20 31 20 20 20 31 20 20 30 20 2d 32 20 20 20 20 20 20 20 23 20 31 2a 6d 20 2b 20 30 | .....1...1..0.-2.......#.1*m.+.0 |
38a0 | 2a 6e 20 2d 32 2a 31 20 3e 3d 20 30 2c 20 69 2e 65 2e 20 6d 3e 3d 32 0a 20 20 20 20 20 20 20 20 | *n.-2*1.>=.0,.i.e..m>=2......... |
38c0 | 20 31 20 20 20 30 20 20 31 20 2d 32 20 20 20 20 20 20 20 23 20 30 2a 6d 20 2b 20 31 2a 6e 20 2d | .1...0..1.-2.......#.0*m.+.1*n.- |
38e0 | 32 2a 31 20 3e 3d 20 30 2c 20 69 2e 65 2e 20 6e 3e 3d 32 0a 0a 20 20 20 20 20 31 20 23 20 57 65 | 2*1.>=.0,.i.e..n>=2.......1.#.We |
3900 | 20 77 61 6e 74 20 74 6f 20 73 65 74 20 6d 61 6e 75 61 6c 6c 79 20 74 68 65 20 70 61 72 61 6d 65 | .want.to.set.manually.the.parame |
3920 | 74 65 72 20 6e 61 6d 65 73 0a 20 20 20 20 20 6d 20 6e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ter.names......m.n.............. |
3940 | 20 20 20 20 20 23 20 70 61 72 61 6d 65 74 65 72 20 6e 61 6d 65 73 0a 0a 20 20 20 20 20 23 20 2d | .....#.parameter.names.......#.- |
3960 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 53 54 41 54 45 4d 45 4e 54 53 20 | --------------------.STATEMENTS. |
3980 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 20 20 20 20 20 31 20 23 20 4e 75 | --------------------......1.#.Nu |
39a0 | 6d 62 65 72 20 6f 66 20 73 74 61 74 65 6d 65 6e 74 73 0a 0a 20 20 20 20 20 31 20 23 20 46 69 72 | mber.of.statements.......1.#.Fir |
39c0 | 73 74 20 73 74 61 74 65 6d 65 6e 74 3a 20 6f 6e 65 20 64 6f 6d 61 69 6e 0a 20 20 20 20 20 23 20 | st.statement:.one.domain......#. |
39e0 | 46 69 72 73 74 20 64 6f 6d 61 69 6e 0a 20 20 20 20 20 35 20 36 20 20 20 20 20 20 20 20 20 20 20 | First.domain......5.6........... |
3a00 | 20 20 20 20 20 20 20 20 23 20 35 20 6c 69 6e 65 73 20 61 6e 64 20 36 20 63 6f 6c 75 6d 6e 73 0a | ........#.5.lines.and.6.columns. |
3a20 | 20 20 20 20 20 23 20 65 71 2f 69 6e 20 69 20 20 6a 20 20 6d 20 20 6e 20 20 31 0a 20 20 20 20 20 | .....#.eq/in.i..j..m..n..1...... |
3a40 | 20 20 20 20 31 20 20 20 31 20 20 30 20 20 30 20 20 30 20 2d 32 20 23 20 69 20 3e 3d 20 32 0a 20 | ....1...1..0..0..0.-2.#.i.>=.2.. |
3a60 | 20 20 20 20 20 20 20 20 31 20 20 2d 31 20 20 30 20 20 30 20 20 31 20 20 30 20 23 20 69 20 3c 3d | ........1..-1..0..0..1..0.#.i.<= |
3a80 | 20 6e 0a 20 20 20 20 20 20 20 20 20 31 20 20 20 30 20 20 31 20 20 30 20 20 30 20 2d 32 20 23 20 | .n..........1...0..1..0..0.-2.#. |
3aa0 | 6a 20 3e 3d 20 32 0a 20 20 20 20 20 20 20 20 20 31 20 20 20 30 20 2d 31 20 20 31 20 20 30 20 20 | j.>=.2..........1...0.-1..1..0.. |
3ac0 | 30 20 23 20 6a 20 3c 3d 20 6d 0a 20 20 20 20 20 20 20 20 20 31 20 20 2d 31 20 2d 31 20 20 30 20 | 0.#.j.<=.m..........1..-1.-1..0. |
3ae0 | 20 31 20 20 32 20 23 20 6e 2b 32 2d 69 3e 3d 6a 0a 20 20 20 20 20 30 20 20 30 20 20 30 20 20 20 | .1..2.#.n+2-i>=j......0..0..0... |
3b00 | 20 20 20 20 20 20 20 20 20 20 20 20 23 20 66 6f 72 20 66 75 74 75 72 65 20 6f 70 74 69 6f 6e 73 | ............#.for.future.options |
3b20 | 0a 0a 20 20 20 20 20 31 20 23 20 57 65 20 77 61 6e 74 20 74 6f 20 73 65 74 20 6d 61 6e 75 61 6c | .......1.#.We.want.to.set.manual |
3b40 | 6c 79 20 74 68 65 20 69 74 65 72 61 74 6f 72 20 6e 61 6d 65 73 0a 20 20 20 20 20 69 20 6a 20 20 | ly.the.iterator.names......i.j.. |
3b60 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 20 69 74 65 72 61 74 6f 72 20 6e 61 6d 65 | .................#.iterator.name |
3b80 | 73 0a 0a 20 20 20 20 20 23 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 | s.......#.---------------------. |
3ba0 | 53 43 41 54 54 45 52 49 4e 47 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a | SCATTERING.--------------------. |
3bc0 | 20 20 20 20 20 30 20 23 20 4e 6f 20 73 63 61 74 74 65 72 69 6e 67 20 66 75 6e 63 74 69 6f 6e 73 | .....0.#.No.scattering.functions |
3be0 | 0a 0a 20 20 20 54 68 69 73 20 66 69 6c 65 20 6d 61 79 20 62 65 20 63 61 6c 6c 65 64 20 60 62 61 | .....This.file.may.be.called.`ba |
3c00 | 73 69 63 2e 63 6c 6f 6f 67 27 20 28 74 68 69 73 20 65 78 61 6d 70 6c 65 20 69 73 20 70 72 6f 76 | sic.cloog'.(this.example.is.prov |
3c20 | 69 64 65 64 20 69 6e 0a 74 68 65 20 43 4c 6f 6f 47 20 64 69 73 74 72 69 62 75 74 69 6f 6e 20 61 | ided.in.the.CLooG.distribution.a |
3c40 | 73 20 60 74 65 73 74 2f 6d 61 6e 75 61 6c 5f 62 61 73 69 63 2e 63 6c 6f 6f 67 27 29 20 61 6e 64 | s.`test/manual_basic.cloog').and |
3c60 | 20 77 65 20 63 61 6e 20 61 73 6b 0a 43 4c 6f 6f 47 20 74 6f 20 70 72 6f 63 65 73 73 20 69 74 20 | .we.can.ask.CLooG.to.process.it. |
3c80 | 61 6e 64 20 74 6f 20 67 65 6e 65 72 61 74 65 20 74 68 65 20 63 6f 64 65 20 62 79 20 61 20 73 69 | and.to.generate.the.code.by.a.si |
3ca0 | 6d 70 6c 65 20 63 61 6c 6c 69 6e 67 20 74 6f 0a 43 4c 6f 6f 47 20 77 69 74 68 20 74 68 69 73 20 | mple.calling.to.CLooG.with.this. |
3cc0 | 66 69 6c 65 20 61 73 20 69 6e 70 75 74 3a 20 60 63 6c 6f 6f 67 20 62 61 73 69 63 2e 63 6c 6f 6f | file.as.input:.`cloog.basic.cloo |
3ce0 | 67 27 2e 20 42 79 20 64 65 66 61 75 6c 74 2c 20 43 4c 6f 6f 47 0a 77 69 6c 6c 20 70 72 69 6e 74 | g'..By.default,.CLooG.will.print |
3d00 | 20 74 68 65 20 67 65 6e 65 72 61 74 65 64 20 63 6f 64 65 20 69 6e 20 74 68 65 20 73 74 61 6e 64 | .the.generated.code.in.the.stand |
3d20 | 61 72 64 20 6f 75 74 70 75 74 3a 0a 0a 20 20 20 20 20 2f 2a 20 47 65 6e 65 72 61 74 65 64 20 62 | ard.output:......./*.Generated.b |
3d40 | 79 20 43 4c 6f 6f 47 20 76 20 69 6e 20 30 2e 30 30 73 2e 20 2a 2f 0a 20 20 20 20 20 66 6f 72 20 | y.CLooG.v.in.0.00s..*/......for. |
3d60 | 28 69 3d 32 3b 69 3c 3d 6e 3b 69 2b 2b 29 20 7b 0a 20 20 20 20 20 20 20 66 6f 72 20 28 6a 3d 32 | (i=2;i<=n;i++).{........for.(j=2 |
3d80 | 3b 6a 3c 3d 6d 69 6e 28 6d 2c 2d 69 2b 6e 2b 32 29 3b 6a 2b 2b 29 20 7b 0a 20 20 20 20 20 20 20 | ;j<=min(m,-i+n+2);j++).{........ |
3da0 | 20 20 53 31 28 69 2c 6a 29 20 3b 0a 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 7d 0a 0a 1f 0a 46 | ..S1(i,j).;........}......}....F |
3dc0 | 69 6c 65 3a 20 63 6c 6f 6f 67 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 57 72 69 74 69 6e 67 20 | ile:.cloog.info,..Node:.Writing. |
3de0 | 54 68 65 20 49 6e 70 75 74 20 46 69 6c 65 2c 20 20 4e 65 78 74 3a 20 43 61 6c 6c 69 6e 67 20 43 | The.Input.File,..Next:.Calling.C |
3e00 | 4c 6f 6f 47 2c 20 20 50 72 65 76 3a 20 41 20 46 69 72 73 74 20 45 78 61 6d 70 6c 65 2c 20 20 55 | LooG,..Prev:.A.First.Example,..U |
3e20 | 70 3a 20 43 4c 6f 6f 47 20 53 6f 66 74 77 61 72 65 0a 0a 32 2e 32 20 57 72 69 74 69 6e 67 20 54 | p:.CLooG.Software..2.2.Writing.T |
3e40 | 68 65 20 49 6e 70 75 74 20 46 69 6c 65 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d | he.Input.File.================== |
3e60 | 3d 3d 3d 3d 3d 3d 3d 3d 0a 0a 54 68 65 20 69 6e 70 75 74 20 74 65 78 74 20 66 69 6c 65 20 63 6f | ========..The.input.text.file.co |
3e80 | 6e 74 61 69 6e 73 20 61 20 70 72 6f 62 6c 65 6d 20 64 65 73 63 72 69 70 74 69 6f 6e 2c 20 69 2e | ntains.a.problem.description,.i. |
3ea0 | 65 2e 20 74 68 65 20 63 6f 6e 74 65 78 74 2c 0a 74 68 65 20 64 6f 6d 61 69 6e 73 20 61 6e 64 20 | e..the.context,.the.domains.and. |
3ec0 | 74 68 65 20 73 63 61 74 74 65 72 69 6e 67 20 66 75 6e 63 74 69 6f 6e 73 2e 20 20 42 65 63 61 75 | the.scattering.functions...Becau |
3ee0 | 73 65 20 43 4c 6f 6f 47 20 69 73 20 76 65 72 79 0a 27 63 6f 6d 70 69 6c 61 62 6c 65 20 63 6f 64 | se.CLooG.is.very.'compilable.cod |
3f00 | 65 20 67 65 6e 65 72 61 74 69 6f 6e 20 6f 72 69 65 6e 74 65 64 27 2c 20 77 65 20 63 61 6e 20 61 | e.generation.oriented',.we.can.a |
3f20 | 73 73 6f 63 69 61 74 65 20 73 6f 6d 65 20 61 64 64 69 74 69 6f 6e 61 6c 0a 69 6e 66 6f 72 6d 61 | ssociate.some.additional.informa |
3f40 | 74 69 6f 6e 73 20 74 6f 20 65 61 63 68 20 64 6f 6d 61 69 6e 2e 20 57 65 20 63 61 6c 6c 20 74 68 | tions.to.each.domain..We.call.th |
3f60 | 69 73 20 61 73 73 6f 63 69 61 74 69 6f 6e 20 61 20 5f 73 74 61 74 65 6d 65 6e 74 5f 2e 0a 54 68 | is.association.a._statement_..Th |
3f80 | 65 20 73 65 74 20 6f 66 20 61 6c 6c 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 73 20 69 73 20 63 61 6c | e.set.of.all.informations.is.cal |
3fa0 | 6c 65 64 20 61 20 5f 70 72 6f 67 72 61 6d 5f 2e 20 54 68 65 20 69 6e 70 75 74 20 66 69 6c 65 0a | led.a._program_..The.input.file. |
3fc0 | 72 65 73 70 65 63 74 73 20 74 68 65 20 67 72 61 6d 6d 61 72 20 62 65 6c 6f 77 20 28 74 65 72 6d | respects.the.grammar.below.(term |
3fe0 | 69 6e 61 6c 73 20 61 72 65 20 70 72 65 63 65 65 64 65 64 20 62 79 20 22 5f 22 29 3a 0a 0a 20 20 | inals.are.preceeded.by."_"):.... |
4000 | 20 20 20 46 69 6c 65 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 3a 3d 20 50 72 6f 67 72 61 6d 0a | ...File.............::=.Program. |
4020 | 20 20 20 20 20 50 72 6f 67 72 61 6d 20 20 20 20 20 20 20 20 20 20 3a 3a 3d 20 43 6f 6e 74 65 78 | .....Program..........::=.Contex |
4040 | 74 20 53 74 61 74 65 6d 65 6e 74 73 20 53 63 61 74 74 65 72 69 6e 67 0a 20 20 20 20 20 43 6f 6e | t.Statements.Scattering......Con |
4060 | 74 65 78 74 20 20 20 20 20 20 20 20 20 20 3a 3a 3d 20 4c 61 6e 67 75 61 67 65 20 20 20 20 20 20 | text..........::=.Language...... |
4080 | 44 6f 6d 61 69 6e 20 20 20 20 20 20 20 20 20 4e 61 6d 69 6e 67 0a 20 20 20 20 20 53 74 61 74 65 | Domain.........Naming......State |
40a0 | 6d 65 6e 74 73 20 20 20 20 20 20 20 3a 3a 3d 20 4e 62 5f 73 74 61 74 65 6d 65 6e 74 73 20 53 74 | ments.......::=.Nb_statements.St |
40c0 | 61 74 65 6d 65 6e 74 5f 6c 69 73 74 20 4e 61 6d 69 6e 67 0a 20 20 20 20 20 53 63 61 74 74 65 72 | atement_list.Naming......Scatter |
40e0 | 69 6e 67 20 20 20 20 20 20 20 3a 3a 3d 20 4e 62 5f 66 75 6e 63 74 69 6f 6e 73 20 20 44 6f 6d 61 | ing.......::=.Nb_functions..Doma |
4100 | 69 6e 5f 6c 69 73 74 20 20 20 20 4e 61 6d 69 6e 67 0a 20 20 20 20 20 4e 61 6d 69 6e 67 20 20 20 | in_list....Naming......Naming... |
4120 | 20 20 20 20 20 20 20 20 3a 3a 3d 20 4f 70 74 69 6f 6e 20 4e 61 6d 65 5f 6c 69 73 74 0a 20 20 20 | ........::=.Option.Name_list.... |
4140 | 20 20 4e 61 6d 65 5f 6c 69 73 74 20 20 20 20 20 20 20 20 3a 3a 3d 20 5f 53 74 72 69 6e 67 20 20 | ..Name_list........::=._String.. |
4160 | 20 4e 61 6d 65 5f 6c 69 73 74 20 20 20 20 20 20 7c 20 28 76 6f 69 64 29 0a 20 20 20 20 20 53 74 | .Name_list......|.(void)......St |
4180 | 61 74 65 6d 65 6e 74 5f 6c 69 73 74 20 20 20 3a 3a 3d 20 53 74 61 74 65 6d 65 6e 74 20 53 74 61 | atement_list...::=.Statement.Sta |
41a0 | 74 65 6d 65 6e 74 5f 6c 69 73 74 20 7c 20 28 76 6f 69 64 29 0a 20 20 20 20 20 44 6f 6d 61 69 6e | tement_list.|.(void)......Domain |
41c0 | 5f 6c 69 73 74 20 20 20 20 20 20 3a 3a 3d 20 5f 44 6f 6d 61 69 6e 20 20 20 44 6f 6d 61 69 6e 5f | _list......::=._Domain...Domain_ |
41e0 | 6c 69 73 74 20 20 20 20 7c 20 28 76 6f 69 64 29 0a 20 20 20 20 20 53 74 61 74 65 6d 65 6e 74 20 | list....|.(void)......Statement. |
4200 | 20 20 20 20 20 20 20 3a 3a 3d 20 49 74 65 72 61 74 69 6f 6e 5f 64 6f 6d 61 69 6e 20 30 20 30 20 | .......::=.Iteration_domain.0.0. |
4220 | 30 0a 20 20 20 20 20 49 74 65 72 61 74 69 6f 6e 5f 64 6f 6d 61 69 6e 20 3a 3a 3d 20 44 6f 6d 61 | 0......Iteration_domain.::=.Doma |
4240 | 69 6e 5f 75 6e 69 6f 6e 0a 20 20 20 20 20 44 6f 6d 61 69 6e 5f 75 6e 69 6f 6e 20 20 20 20 20 3a | in_union......Domain_union.....: |
4260 | 3a 3d 20 4e 62 5f 64 6f 6d 61 69 6e 73 20 44 6f 6d 61 69 6e 5f 6c 69 73 74 0a 20 20 20 20 20 4f | :=.Nb_domains.Domain_list......O |
4280 | 70 74 69 6f 6e 20 20 20 20 20 20 20 20 20 20 20 3a 3a 3d 20 30 20 7c 20 31 0a 20 20 20 20 20 4c | ption...........::=.0.|.1......L |
42a0 | 61 6e 67 75 61 67 65 20 20 20 20 20 20 20 20 20 3a 3a 3d 20 63 20 7c 20 66 0a 20 20 20 20 20 4e | anguage.........::=.c.|.f......N |
42c0 | 62 5f 73 74 61 74 65 6d 65 6e 74 73 20 20 20 20 3a 3a 3d 20 5f 49 6e 74 65 67 65 72 0a 20 20 20 | b_statements....::=._Integer.... |
42e0 | 20 20 4e 62 5f 64 6f 6d 61 69 6e 73 20 20 20 20 20 20 20 3a 3a 3d 20 5f 49 6e 74 65 67 65 72 0a | ..Nb_domains.......::=._Integer. |
4300 | 20 20 20 20 20 4e 62 5f 66 75 6e 63 74 69 6f 6e 73 20 20 20 20 20 3a 3a 3d 20 5f 49 6e 74 65 67 | .....Nb_functions.....::=._Integ |
4320 | 65 72 0a 0a 20 20 20 2a 20 60 43 6f 6e 74 65 78 74 27 20 72 65 70 72 65 73 65 6e 74 73 20 74 68 | er.....*.`Context'.represents.th |
4340 | 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 73 20 74 68 61 74 20 61 72 65 20 20 20 20 20 20 20 20 73 | e.informations.that.are........s |
4360 | 68 61 72 65 64 20 62 79 0a 20 20 20 20 20 61 6c 6c 20 74 68 65 20 73 74 61 74 65 6d 65 6e 74 73 | hared.by......all.the.statements |
4380 | 2e 20 49 74 20 63 6f 6e 73 69 73 74 73 20 6f 6e 20 20 20 20 20 20 20 20 74 68 65 20 6c 61 6e 67 | ..It.consists.on........the.lang |
43a0 | 75 61 67 65 20 75 73 65 64 20 28 77 68 69 63 68 0a 20 20 20 20 20 63 61 6e 20 62 65 20 60 63 27 | uage.used.(which......can.be.`c' |
43c0 | 20 66 6f 72 20 43 20 6f 72 20 60 66 27 20 66 6f 72 20 46 4f 52 54 52 41 4e 20 39 30 29 20 20 20 | .for.C.or.`f'.for.FORTRAN.90)... |
43e0 | 20 20 20 20 20 61 6e 64 20 74 68 65 20 67 6c 6f 62 61 6c 0a 20 20 20 20 20 63 6f 6e 73 74 72 61 | .....and.the.global......constra |
4400 | 69 6e 74 73 20 6f 6e 20 70 61 72 61 6d 65 74 65 72 73 2e 20 20 20 20 20 20 20 20 20 54 68 65 73 | ints.on.parameters..........Thes |
4420 | 65 20 63 6f 6e 73 74 72 61 69 6e 74 73 20 61 72 65 20 65 73 73 65 6e 74 69 61 6c 0a 20 20 20 20 | e.constraints.are.essential..... |
4440 | 20 20 20 20 20 20 20 73 69 6e 63 65 20 74 68 65 79 20 67 69 76 65 20 74 6f 20 43 4c 6f 6f 47 20 | .......since.they.give.to.CLooG. |
4460 | 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 70 61 72 61 6d 65 74 65 72 73 2e 20 49 66 20 74 68 65 | the.number.of.parameters..If.the |
4480 | 72 65 0a 20 20 20 20 20 69 73 20 6e 6f 20 20 20 20 20 20 20 20 70 61 72 61 6d 65 74 65 72 20 6f | re......is.no........parameter.o |
44a0 | 72 20 6e 6f 20 63 6f 6e 73 74 72 61 69 6e 74 73 20 6f 6e 20 70 61 72 61 6d 65 74 65 72 73 2c 20 | r.no.constraints.on.parameters,. |
44c0 | 6a 75 73 74 20 67 69 76 65 0a 20 20 20 20 20 61 20 63 6f 6e 73 74 72 61 69 6e 74 20 20 20 20 20 | just.give......a.constraint..... |
44e0 | 20 20 20 61 6c 77 61 79 73 20 73 61 74 69 73 66 69 65 64 20 6c 69 6b 65 20 31 20 5c 67 65 71 20 | ...always.satisfied.like.1.\geq. |
4500 | 30 2e 20 60 4e 61 6d 69 6e 67 27 20 73 65 74 73 0a 20 20 20 20 20 74 68 65 20 70 61 72 61 6d 65 | 0..`Naming'.sets......the.parame |
4520 | 74 65 72 20 20 20 20 20 20 20 20 6e 61 6d 65 73 2e 20 20 20 20 20 20 20 20 20 49 66 20 74 68 65 | ter........names..........If.the |
4540 | 20 6e 61 6d 69 6e 67 20 6f 70 74 69 6f 6e 20 60 4f 70 74 69 6f 6e 27 0a 20 20 20 20 20 69 73 20 | .naming.option.`Option'......is. |
4560 | 31 2c 20 70 61 72 61 6d 65 74 65 72 20 6e 61 6d 65 73 20 77 69 6c 6c 20 62 65 20 72 65 61 64 20 | 1,.parameter.names.will.be.read. |
4580 | 20 20 20 20 20 20 20 6f 6e 20 74 68 65 20 6e 65 78 74 20 6c 69 6e 65 2e 20 54 68 65 72 65 0a 20 | .......on.the.next.line..There.. |
45a0 | 20 20 20 20 6d 75 73 74 20 62 65 20 65 78 61 63 74 6c 79 20 61 73 20 6d 61 6e 79 20 6e 61 6d 65 | ....must.be.exactly.as.many.name |
45c0 | 73 20 61 73 20 70 61 72 61 6d 65 74 65 72 73 2e 20 20 20 20 20 20 20 20 20 49 66 20 74 68 65 20 | s.as.parameters..........If.the. |
45e0 | 6e 61 6d 69 6e 67 0a 20 20 20 20 20 6f 70 74 69 6f 6e 20 60 4f 70 74 69 6f 6e 27 20 69 73 20 30 | naming......option.`Option'.is.0 |
4600 | 2c 20 70 61 72 61 6d 65 74 65 72 20 6e 61 6d 65 73 20 61 72 65 20 20 20 20 20 20 20 20 61 75 74 | ,.parameter.names.are........aut |
4620 | 6f 6d 61 74 69 63 61 6c 6c 79 0a 20 20 20 20 20 67 65 6e 65 72 61 74 65 64 2e 20 54 68 65 20 6e | omatically......generated..The.n |
4640 | 61 6d 65 20 6f 66 20 74 68 65 20 66 69 72 73 74 20 70 61 72 61 6d 65 74 65 72 20 77 69 6c 6c 20 | ame.of.the.first.parameter.will. |
4660 | 20 20 20 20 20 20 20 62 65 20 60 4d 27 2c 20 61 6e 64 0a 20 20 20 20 20 74 68 65 20 6e 61 6d 65 | .......be.`M',.and......the.name |
4680 | 20 6f 66 20 74 68 65 20 28 6e 2b 31 29 5e 74 68 20 70 61 72 61 6d 65 74 65 72 20 64 69 72 65 63 | .of.the.(n+1)^th.parameter.direc |
46a0 | 74 6c 79 20 20 20 20 20 20 20 20 66 6f 6c 6c 6f 77 73 20 74 68 65 0a 20 20 20 20 20 6e 61 6d 65 | tly........follows.the......name |
46c0 | 20 6f 66 20 74 68 65 20 6e 5e 74 68 20 70 61 72 61 6d 65 74 65 72 20 69 6e 20 41 53 43 49 49 20 | .of.the.n^th.parameter.in.ASCII. |
46e0 | 63 6f 64 65 2e 20 20 20 20 20 20 20 20 20 49 74 20 69 73 20 74 68 65 20 75 73 65 72 0a 20 20 20 | code..........It.is.the.user.... |
4700 | 20 20 72 65 73 70 6f 6e 73 69 62 69 6c 69 74 79 20 74 6f 20 65 6e 73 75 72 65 20 74 68 61 74 20 | ..responsibility.to.ensure.that. |
4720 | 70 61 72 61 6d 65 74 65 72 20 6e 61 6d 65 73 2c 20 20 20 20 20 20 20 20 69 74 65 72 61 74 6f 72 | parameter.names,........iterator |
4740 | 73 0a 20 20 20 20 20 61 6e 64 20 73 63 61 74 74 65 72 69 6e 67 20 64 69 6d 65 6e 73 69 6f 6e 20 | s......and.scattering.dimension. |
4760 | 6e 61 6d 65 73 20 61 72 65 20 64 69 66 66 65 72 65 6e 74 2e 0a 0a 20 20 20 2a 20 60 53 74 61 74 | names.are.different......*.`Stat |
4780 | 65 6d 65 6e 74 73 27 20 72 65 70 72 65 73 65 6e 74 73 20 74 68 65 20 69 6e 66 6f 72 6d 61 74 69 | ements'.represents.the.informati |
47a0 | 6f 6e 73 20 6f 6e 20 74 68 65 20 73 74 61 74 65 6d 65 6e 74 73 2e 0a 20 20 20 20 20 60 4e 62 5f | ons.on.the.statements.......`Nb_ |
47c0 | 73 74 61 74 65 6d 65 6e 74 73 27 20 69 73 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 73 74 61 | statements'.is.the.number.of.sta |
47e0 | 74 65 6d 65 6e 74 73 20 69 6e 20 74 68 65 20 70 72 6f 67 72 61 6d 2c 0a 20 20 20 20 20 69 2e 65 | tements.in.the.program,......i.e |
4800 | 2e 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 60 53 74 61 74 65 6d 65 6e 74 27 20 69 74 65 6d | ..the.number.of.`Statement'.item |
4820 | 73 20 69 6e 20 74 68 65 20 60 53 74 61 74 65 6d 65 6e 74 5f 6c 69 73 74 27 2e 0a 20 20 20 20 20 | s.in.the.`Statement_list'....... |
4840 | 20 20 60 53 74 61 74 65 6d 65 6e 74 27 20 72 65 70 72 65 73 65 6e 74 73 20 74 68 65 20 69 6e 66 | ..`Statement'.represents.the.inf |
4860 | 6f 72 6d 61 74 69 6f 6e 73 20 6f 6e 20 61 20 67 69 76 65 6e 20 73 74 61 74 65 6d 65 6e 74 2e 0a | ormations.on.a.given.statement.. |
4880 | 20 20 20 20 20 20 20 20 20 54 6f 20 65 61 63 68 20 73 74 61 74 65 6d 65 6e 74 20 69 73 20 61 73 | .........To.each.statement.is.as |
48a0 | 73 6f 63 69 61 74 65 64 20 61 20 64 6f 6d 61 69 6e 20 20 20 20 20 20 20 20 28 74 68 65 20 73 74 | sociated.a.domain........(the.st |
48c0 | 61 74 65 6d 65 6e 74 0a 20 20 20 20 20 69 74 65 72 61 74 69 6f 6e 20 64 6f 6d 61 69 6e 3a 20 60 | atement......iteration.domain:.` |
48e0 | 49 74 65 72 61 74 69 6f 6e 5f 64 6f 6d 61 69 6e 27 29 20 61 6e 64 20 74 68 72 65 65 20 20 20 20 | Iteration_domain').and.three.... |
4900 | 20 20 20 20 7a 65 72 6f 65 73 20 74 68 61 74 0a 20 20 20 20 20 72 65 70 72 65 73 65 6e 74 73 20 | ....zeroes.that......represents. |
4920 | 66 75 74 75 72 65 20 6f 70 74 69 6f 6e 73 2e 20 20 20 20 20 20 20 20 20 60 4e 61 6d 69 6e 67 27 | future.options..........`Naming' |
4940 | 20 73 65 74 73 20 74 68 65 20 69 74 65 72 61 74 6f 72 0a 20 20 20 20 20 6e 61 6d 65 73 2e 20 49 | .sets.the.iterator......names..I |
4960 | 66 20 74 68 65 20 6e 61 6d 69 6e 67 20 6f 70 74 69 6f 6e 20 20 20 20 20 20 20 20 60 4f 70 74 69 | f.the.naming.option........`Opti |
4980 | 6f 6e 27 20 69 73 20 31 2c 20 74 68 65 20 69 74 65 72 61 74 6f 72 0a 20 20 20 20 20 6e 61 6d 65 | on'.is.1,.the.iterator......name |
49a0 | 73 20 20 20 20 20 20 20 20 77 69 6c 6c 20 62 65 20 72 65 61 64 20 6f 6e 20 74 68 65 20 6e 65 78 | s........will.be.read.on.the.nex |
49c0 | 74 20 6c 69 6e 65 2e 20 54 68 65 72 65 20 6d 75 73 74 20 62 65 20 65 78 61 63 74 6c 79 0a 20 20 | t.line..There.must.be.exactly... |
49e0 | 20 20 20 61 73 20 6d 61 6e 79 20 6e 61 6d 65 73 20 61 73 20 20 20 20 20 20 20 20 6e 65 73 74 69 | ...as.many.names.as........nesti |
4a00 | 6e 67 20 6c 65 76 65 6c 20 69 6e 20 74 68 65 20 64 65 65 70 65 73 74 20 69 74 65 72 61 74 69 6f | ng.level.in.the.deepest.iteratio |
4a20 | 6e 0a 20 20 20 20 20 64 6f 6d 61 69 6e 2e 20 49 66 20 74 68 65 20 6e 61 6d 69 6e 67 20 6f 70 74 | n......domain..If.the.naming.opt |
4a40 | 69 6f 6e 20 20 20 20 20 20 20 20 60 4f 70 74 69 6f 6e 27 20 69 73 20 30 2c 20 69 74 65 72 61 74 | ion........`Option'.is.0,.iterat |
4a60 | 6f 72 20 6e 61 6d 65 73 0a 20 20 20 20 20 61 72 65 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 | or.names......are.automatically. |
4a80 | 67 65 6e 65 72 61 74 65 64 2e 20 20 20 20 20 20 20 20 20 54 68 65 20 69 74 65 72 61 74 6f 72 20 | generated..........The.iterator. |
4aa0 | 6e 61 6d 65 20 6f 66 20 74 68 65 0a 20 20 20 20 20 6f 75 74 65 72 6d 6f 73 74 20 6c 6f 6f 70 20 | name.of.the......outermost.loop. |
4ac0 | 77 69 6c 6c 20 62 65 20 60 69 27 2c 20 61 6e 64 20 74 68 65 20 20 20 20 20 20 20 20 69 74 65 72 | will.be.`i',.and.the........iter |
4ae0 | 61 74 6f 72 20 6e 61 6d 65 20 6f 66 20 74 68 65 0a 20 20 20 20 20 6c 6f 6f 70 20 61 74 20 6c 65 | ator.name.of.the......loop.at.le |
4b00 | 76 65 6c 20 6e 2b 31 20 64 69 72 65 63 74 6c 79 20 66 6f 6c 6c 6f 77 73 20 74 68 65 20 20 20 20 | vel.n+1.directly.follows.the.... |
4b20 | 20 20 20 20 69 74 65 72 61 74 6f 72 20 6e 61 6d 65 20 6f 66 20 74 68 65 0a 20 20 20 20 20 6c 6f | ....iterator.name.of.the......lo |
4b40 | 6f 70 20 61 74 20 6c 65 76 65 6c 20 6e 20 69 6e 20 41 53 43 49 49 20 63 6f 64 65 2e 0a 0a 20 20 | op.at.level.n.in.ASCII.code..... |
4b60 | 20 2a 20 60 53 63 61 74 74 65 72 69 6e 67 27 20 72 65 70 72 65 73 65 6e 74 73 20 74 68 65 20 69 | .*.`Scattering'.represents.the.i |
4b80 | 6e 66 6f 72 6d 61 74 69 6f 6e 73 20 6f 6e 20 73 63 61 74 74 65 72 69 6e 67 20 66 75 6e 63 74 69 | nformations.on.scattering.functi |
4ba0 | 6f 6e 73 2e 0a 20 20 20 20 20 20 20 20 20 20 20 60 4e 62 5f 66 75 6e 63 74 69 6f 6e 73 27 20 69 | ons.............`Nb_functions'.i |
4bc0 | 73 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 66 75 6e 63 74 69 6f 6e 73 20 28 69 74 20 6d 75 | s.the.number.of.functions.(it.mu |
4be0 | 73 74 20 62 65 0a 20 20 20 20 20 65 71 75 61 6c 20 74 6f 20 74 68 65 20 6e 75 6d 62 65 72 20 6f | st.be......equal.to.the.number.o |
4c00 | 66 20 73 74 61 74 65 6d 65 6e 74 73 20 6f 72 20 30 20 69 66 20 74 68 65 72 65 20 69 73 20 6e 6f | f.statements.or.0.if.there.is.no |
4c20 | 20 73 63 61 74 74 65 72 69 6e 67 0a 20 20 20 20 20 20 20 20 20 66 75 6e 63 74 69 6f 6e 29 2e 20 | .scattering..........function).. |
4c40 | 54 68 65 20 66 75 6e 63 74 69 6f 6e 20 74 68 65 6d 73 65 6c 76 65 73 20 61 72 65 20 72 65 70 72 | The.function.themselves.are.repr |
4c60 | 65 73 65 6e 74 65 64 20 74 68 72 6f 75 67 68 0a 20 20 20 20 20 20 20 60 44 6f 6d 61 69 6e 5f 6c | esented.through........`Domain_l |
4c80 | 69 73 74 27 2e 20 20 20 20 20 20 20 20 20 60 4e 61 6d 69 6e 67 27 20 73 65 74 73 20 74 68 65 20 | ist'..........`Naming'.sets.the. |
4ca0 | 73 63 61 74 74 65 72 69 6e 67 20 64 69 6d 65 6e 73 69 6f 6e 0a 20 20 20 20 20 6e 61 6d 65 73 2e | scattering.dimension......names. |
4cc0 | 20 49 66 20 74 68 65 20 6e 61 6d 69 6e 67 20 6f 70 74 69 6f 6e 20 20 20 20 20 20 20 20 60 4f 70 | .If.the.naming.option........`Op |
4ce0 | 74 69 6f 6e 27 20 69 73 20 31 2c 20 74 68 65 20 73 63 61 74 74 65 72 69 6e 67 0a 20 20 20 20 20 | tion'.is.1,.the.scattering...... |
4d00 | 64 69 6d 65 6e 73 69 6f 6e 20 6e 61 6d 65 73 20 77 69 6c 6c 20 62 65 20 72 65 61 64 20 6f 6e 20 | dimension.names.will.be.read.on. |
4d20 | 74 68 65 20 20 20 20 20 20 20 20 6e 65 78 74 20 6c 69 6e 65 2e 0a 20 20 20 20 20 54 68 65 72 65 | the........next.line.......There |
4d40 | 20 6d 75 73 74 20 62 65 20 65 78 61 63 74 6c 79 20 61 73 20 6d 61 6e 79 20 6e 61 6d 65 73 20 61 | .must.be.exactly.as.many.names.a |
4d60 | 73 20 73 63 61 74 74 65 72 69 6e 67 20 64 69 6d 65 6e 73 69 6f 6e 73 2e 20 49 66 0a 20 20 20 20 | s.scattering.dimensions..If..... |
4d80 | 20 74 68 65 20 20 20 20 20 20 20 20 6e 61 6d 69 6e 67 20 6f 70 74 69 6f 6e 20 60 4f 70 74 69 6f | .the........naming.option.`Optio |
4da0 | 6e 27 20 69 73 20 30 2c 20 73 63 61 74 74 65 72 69 6e 67 20 64 69 6d 65 6e 73 69 6f 6e 20 6e 61 | n'.is.0,.scattering.dimension.na |
4dc0 | 6d 65 73 0a 20 20 20 20 20 61 72 65 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 20 20 20 20 20 | mes......are.automatically...... |
4de0 | 20 20 67 65 6e 65 72 61 74 65 64 2e 20 54 68 65 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 6e 5e 74 | ..generated..The.name.of.the.n^t |
4e00 | 68 0a 20 20 20 20 20 73 63 61 74 74 65 72 69 6e 67 20 64 69 6d 65 6e 74 69 6f 6e 20 20 20 20 20 | h......scattering.dimention..... |
4e20 | 20 20 20 77 69 6c 6c 20 62 65 20 60 63 6e 27 2e 0a 0a 2a 20 4d 65 6e 75 3a 0a 0a 2a 20 44 6f 6d | ...will.be.`cn'...*.Menu:..*.Dom |
4e40 | 61 69 6e 20 52 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 3a 3a 0a 2a 20 53 63 61 74 74 65 72 69 6e | ain.Representation::.*.Scatterin |
4e60 | 67 20 52 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 3a 3a 0a 0a 1f 0a 46 69 6c 65 3a 20 63 6c 6f 6f | g.Representation::....File:.cloo |
4e80 | 67 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 44 6f 6d 61 69 6e 20 52 65 70 72 65 73 65 6e 74 61 | g.info,..Node:.Domain.Representa |
4ea0 | 74 69 6f 6e 2c 20 20 4e 65 78 74 3a 20 53 63 61 74 74 65 72 69 6e 67 20 52 65 70 72 65 73 65 6e | tion,..Next:.Scattering.Represen |
4ec0 | 74 61 74 69 6f 6e 2c 20 20 55 70 3a 20 57 72 69 74 69 6e 67 20 54 68 65 20 49 6e 70 75 74 20 46 | tation,..Up:.Writing.The.Input.F |
4ee0 | 69 6c 65 0a 0a 32 2e 32 2e 31 20 44 6f 6d 61 69 6e 20 52 65 70 72 65 73 65 6e 74 61 74 69 6f 6e | ile..2.2.1.Domain.Representation |
4f00 | 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 41 73 | .---------------------------..As |
4f20 | 20 73 68 6f 77 6e 20 62 79 20 74 68 65 20 67 72 61 6d 6d 61 72 2c 20 74 68 65 20 69 6e 70 75 74 | .shown.by.the.grammar,.the.input |
4f40 | 20 66 69 6c 65 20 64 65 73 63 72 69 62 65 73 20 74 68 65 20 76 61 72 69 6f 75 73 0a 69 6e 66 6f | .file.describes.the.various.info |
4f60 | 72 6d 61 74 69 6f 6e 73 20 74 68 61 6e 6b 73 20 74 6f 20 63 68 61 72 61 63 74 65 72 73 2c 20 69 | rmations.thanks.to.characters,.i |
4f80 | 6e 74 65 67 65 72 73 20 61 6e 64 20 64 6f 6d 61 69 6e 73 2e 20 45 61 63 68 20 64 6f 6d 61 69 6e | ntegers.and.domains..Each.domain |
4fa0 | 20 69 73 0a 64 65 66 69 6e 65 64 20 62 79 20 61 20 73 65 74 20 6f 66 20 63 6f 6e 73 74 72 61 69 | .is.defined.by.a.set.of.constrai |
4fc0 | 6e 74 73 20 69 6e 20 74 68 65 20 50 6f 6c 79 4c 69 62 20 66 6f 72 6d 61 74 20 28 2a 6e 6f 74 65 | nts.in.the.PolyLib.format.(*note |
4fe0 | 20 57 69 6c 39 33 3a 3a 29 2e 0a 54 68 65 79 20 68 61 76 65 20 74 68 65 20 66 6f 6c 6c 6f 77 69 | .Wil93::)..They.have.the.followi |
5000 | 6e 67 20 73 79 6e 74 61 78 3a 0a 20 20 31 2e 20 73 6f 6d 65 20 6f 70 74 69 6f 6e 61 6c 20 63 6f | ng.syntax:...1..some.optional.co |
5020 | 6d 6d 65 6e 74 20 6c 69 6e 65 73 20 62 65 67 69 6e 6e 69 6e 67 20 77 69 74 68 20 60 23 27 2c 0a | mment.lines.beginning.with.`#',. |
5040 | 0a 20 20 32 2e 20 74 68 65 20 72 6f 77 20 61 6e 64 20 63 6f 6c 75 6d 6e 20 6e 75 6d 62 65 72 73 | ...2..the.row.and.column.numbers |
5060 | 2c 20 70 6f 73 73 69 62 6c 79 20 66 6f 6c 6c 6f 77 65 64 20 62 79 20 63 6f 6d 6d 65 6e 74 73 2c | ,.possibly.followed.by.comments, |
5080 | 0a 0a 20 20 33 2e 20 74 68 65 20 63 6f 6e 73 74 72 61 69 6e 74 20 72 6f 77 73 2c 20 65 61 63 68 | ....3..the.constraint.rows,.each |
50a0 | 20 72 6f 77 20 63 6f 72 72 65 73 70 6f 6e 64 73 20 74 6f 20 61 20 63 6f 6e 73 74 72 61 69 6e 74 | .row.corresponds.to.a.constraint |
50c0 | 20 74 68 65 0a 20 20 20 20 20 64 6f 6d 61 69 6e 20 68 61 76 65 20 74 6f 20 73 61 74 69 73 66 79 | .the......domain.have.to.satisfy |
50e0 | 2e 20 45 61 63 68 20 72 6f 77 20 6d 75 73 74 20 62 65 20 6f 6e 20 61 20 73 69 6e 67 6c 65 20 6c | ..Each.row.must.be.on.a.single.l |
5100 | 69 6e 65 20 61 6e 64 20 69 73 0a 20 20 20 20 20 70 6f 73 73 69 62 6c 79 20 20 20 20 20 20 20 66 | ine.and.is......possibly.......f |
5120 | 6f 6c 6c 6f 77 65 64 20 62 79 20 63 6f 6d 6d 65 6e 74 73 2e 20 54 68 65 20 63 6f 6e 73 74 72 61 | ollowed.by.comments..The.constra |
5140 | 69 6e 74 20 69 73 20 61 6e 20 65 71 75 61 6c 69 74 79 0a 20 20 20 20 20 70 28 78 29 20 3d 20 30 | int.is.an.equality......p(x).=.0 |
5160 | 20 69 66 20 74 68 65 20 20 20 20 20 20 20 66 69 72 73 74 20 65 6c 65 6d 65 6e 74 20 69 73 20 30 | .if.the.......first.element.is.0 |
5180 | 2c 20 61 6e 20 69 6e 65 71 75 61 6c 69 74 79 20 20 70 28 78 29 20 5c 67 65 71 0a 20 20 20 20 20 | ,.an.inequality..p(x).\geq...... |
51a0 | 30 20 69 66 20 74 68 65 20 66 69 72 73 74 20 65 6c 65 6d 65 6e 74 20 20 20 20 20 20 20 69 73 20 | 0.if.the.first.element.......is. |
51c0 | 31 2e 20 54 68 65 20 6e 65 78 74 20 65 6c 65 6d 65 6e 74 73 20 61 72 65 20 74 68 65 0a 20 20 20 | 1..The.next.elements.are.the.... |
51e0 | 20 20 75 6e 6b 6e 6f 77 6e 20 63 6f 65 66 66 69 63 69 65 6e 74 73 2c 20 66 6f 6c 6c 6f 77 65 64 | ..unknown.coefficients,.followed |
5200 | 20 62 79 20 20 20 20 20 20 20 74 68 65 20 70 61 72 61 6d 65 74 65 72 0a 20 20 20 20 20 63 6f 65 | .by.......the.parameter......coe |
5220 | 66 66 69 63 69 65 6e 74 73 2e 20 54 68 65 20 6c 61 73 74 20 65 6c 65 6d 65 6e 74 20 69 73 20 74 | fficients..The.last.element.is.t |
5240 | 68 65 20 63 6f 6e 73 74 61 6e 74 20 66 61 63 74 6f 72 2e 0a 20 20 20 20 20 20 20 20 46 6f 72 20 | he.constant.factor..........For. |
5260 | 69 6e 73 74 61 6e 63 65 2c 20 61 73 73 75 6d 69 6e 67 20 74 68 61 74 20 60 69 27 2c 20 60 6a 27 | instance,.assuming.that.`i',.`j' |
5280 | 20 61 6e 64 20 60 6b 27 20 61 72 65 20 69 74 65 72 61 74 6f 72 73 20 61 6e 64 0a 60 6d 27 20 61 | .and.`k'.are.iterators.and.`m'.a |
52a0 | 6e 64 20 60 6e 27 20 61 72 65 20 70 61 72 61 6d 65 74 65 72 73 2c 20 74 68 65 20 64 6f 6d 61 69 | nd.`n'.are.parameters,.the.domai |
52c0 | 6e 20 64 65 66 69 6e 65 64 20 62 79 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 0a 63 6f 6e 73 74 | n.defined.by.the.following.const |
52e0 | 72 61 69 6e 74 73 20 3a 0a 0a 20 20 20 20 20 20 20 20 2d 69 20 2b 20 6d 20 3e 3d 20 30 0a 20 20 | raints.:..........-i.+.m.>=.0... |
5300 | 20 20 20 20 20 20 2d 6a 20 2b 20 6e 20 3e 3d 20 30 0a 20 20 20 20 20 69 20 2b 20 6a 20 2d 20 6b | ......-j.+.n.>=.0......i.+.j.-.k |
5320 | 20 3e 3d 20 30 0a 0a 63 61 6e 20 62 65 20 77 72 69 74 74 65 6e 20 69 6e 20 74 68 65 20 69 6e 70 | .>=.0..can.be.written.in.the.inp |
5340 | 75 74 20 66 69 6c 65 20 61 73 20 66 6f 6c 6c 6f 77 73 20 3a 0a 0a 20 20 20 20 20 23 20 54 68 69 | ut.file.as.follows.:.......#.Thi |
5360 | 73 20 69 73 20 74 68 65 20 64 6f 6d 61 69 6e 0a 20 20 20 20 20 33 20 37 20 20 20 20 20 20 20 20 | s.is.the.domain......3.7........ |
5380 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 20 33 20 6c 69 6e 65 73 20 61 6e 64 20 37 20 63 6f | ..............#.3.lines.and.7.co |
53a0 | 6c 75 6d 6e 73 0a 20 20 20 20 20 23 20 65 71 2f 69 6e 20 69 20 20 6a 20 20 6b 20 20 6d 20 20 6e | lumns......#.eq/in.i..j..k..m..n |
53c0 | 20 20 31 0a 20 20 20 20 20 20 20 20 20 31 20 20 2d 31 20 20 30 20 20 30 20 20 31 20 20 30 20 20 | ..1..........1..-1..0..0..1..0.. |
53e0 | 30 20 23 20 20 20 20 2d 69 20 2b 20 6d 20 3e 3d 20 30 0a 20 20 20 20 20 20 20 20 20 31 20 20 20 | 0.#....-i.+.m.>=.0..........1... |
5400 | 30 20 2d 31 20 20 30 20 20 30 20 20 31 20 20 30 20 23 20 20 20 20 2d 6a 20 2b 20 6e 20 3e 3d 20 | 0.-1..0..0..1..0.#....-j.+.n.>=. |
5420 | 30 0a 20 20 20 20 20 20 20 20 20 31 20 20 20 31 20 20 31 20 2d 31 20 20 30 20 20 30 20 20 30 20 | 0..........1...1..1.-1..0..0..0. |
5440 | 23 20 69 20 2b 20 6a 20 2d 20 6b 20 3e 3d 20 30 0a 0a 20 20 20 45 61 63 68 20 69 74 65 72 61 74 | #.i.+.j.-.k.>=.0.....Each.iterat |
5460 | 69 6f 6e 20 64 6f 6d 61 69 6e 20 60 49 74 65 72 61 74 69 6f 6e 5f 64 6f 6d 61 69 6e 27 20 6f 66 | ion.domain.`Iteration_domain'.of |
5480 | 20 61 20 67 69 76 65 6e 20 73 74 61 74 65 6d 65 6e 74 20 69 73 20 61 0a 75 6e 69 6f 6e 20 6f 66 | .a.given.statement.is.a.union.of |
54a0 | 20 70 6f 6c 79 68 65 64 72 61 20 60 44 6f 6d 61 69 6e 5f 75 6e 69 6f 6e 27 2e 20 41 20 75 6e 69 | .polyhedra.`Domain_union'..A.uni |
54c0 | 6f 6e 20 69 73 20 64 65 66 69 6e 65 64 20 62 79 20 69 74 73 20 6e 75 6d 62 65 72 20 6f 66 0a 65 | on.is.defined.by.its.number.of.e |
54e0 | 6c 65 6d 65 6e 74 73 20 60 4e 62 5f 64 6f 6d 61 69 6e 73 27 20 61 6e 64 20 74 68 65 20 65 6c 65 | lements.`Nb_domains'.and.the.ele |
5500 | 6d 65 6e 74 73 20 74 68 65 6d 73 65 6c 76 65 73 20 60 44 6f 6d 61 69 6e 5f 6c 69 73 74 27 2e 20 | ments.themselves.`Domain_list'.. |
5520 | 20 46 6f 72 0a 69 6e 73 74 61 6e 63 65 2c 20 6c 65 74 20 75 73 20 63 6f 6e 73 69 64 65 72 20 74 | .For.instance,.let.us.consider.t |
5540 | 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 70 73 65 75 64 6f 2d 63 6f 64 65 3a 0a 0a 20 20 20 20 20 | he.following.pseudo-code:....... |
5560 | 66 6f 72 20 28 69 3d 31 3b 69 3c 3d 6e 3b 69 2b 2b 29 20 7b 0a 20 20 20 20 20 20 20 69 66 20 28 | for.(i=1;i<=n;i++).{........if.( |
5580 | 28 69 20 3e 3d 20 6d 29 20 7c 7c 20 28 69 20 3c 3d 20 32 2a 6d 29 29 0a 20 20 20 20 20 20 20 20 | (i.>=.m).||.(i.<=.2*m))......... |
55a0 | 20 53 31 20 3b 0a 20 20 20 20 20 20 20 66 6f 72 20 28 6a 3d 69 2b 31 3b 6a 3c 3d 6d 3b 6a 2b 2b | .S1.;........for.(j=i+1;j<=m;j++ |
55c0 | 29 0a 20 20 20 20 20 20 20 20 20 53 32 20 3b 0a 20 20 20 20 20 7d 0a 0a 54 68 65 20 69 74 65 72 | )..........S2.;......}..The.iter |
55e0 | 61 74 69 6f 6e 20 64 6f 6d 61 69 6e 20 6f 66 20 60 53 31 27 20 63 61 6e 20 62 65 20 64 69 76 69 | ation.domain.of.`S1'.can.be.divi |
5600 | 64 65 64 20 69 6e 74 6f 20 74 77 6f 20 70 6f 6c 79 68 65 64 72 61 20 61 6e 64 0a 77 72 69 74 74 | ded.into.two.polyhedra.and.writt |
5620 | 65 6e 20 69 6e 20 74 68 65 20 69 6e 70 75 74 20 66 69 6c 65 20 61 73 20 66 6f 6c 6c 6f 77 73 3a | en.in.the.input.file.as.follows: |
5640 | 0a 0a 20 20 20 20 20 32 20 23 20 4e 75 6d 62 65 72 20 6f 66 20 70 6f 6c 79 68 65 64 72 61 20 69 | .......2.#.Number.of.polyhedra.i |
5660 | 6e 20 74 68 65 20 75 6e 69 6f 6e 0a 20 20 20 20 20 23 20 46 69 72 73 74 20 64 6f 6d 61 69 6e 0a | n.the.union......#.First.domain. |
5680 | 20 20 20 20 20 33 20 35 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 20 33 20 6c 69 6e 65 | .....3.5................#.3.line |
56a0 | 73 20 61 6e 64 20 35 20 63 6f 6c 75 6d 6e 73 0a 20 20 20 20 20 23 20 65 71 2f 69 6e 20 69 20 20 | s.and.5.columns......#.eq/in.i.. |
56c0 | 6d 20 20 6e 20 20 31 0a 20 20 20 20 20 20 20 20 20 31 20 20 20 31 20 20 30 20 20 30 20 2d 31 20 | m..n..1..........1...1..0..0.-1. |
56e0 | 23 20 20 69 20 3e 3d 20 31 0a 20 20 20 20 20 20 20 20 20 31 20 20 2d 31 20 20 30 20 20 31 20 20 | #..i.>=.1..........1..-1..0..1.. |
5700 | 30 20 23 20 20 69 20 3c 3d 20 6e 0a 20 20 20 20 20 20 20 20 20 31 20 20 20 31 20 2d 31 20 20 30 | 0.#..i.<=.n..........1...1.-1..0 |
5720 | 20 20 30 20 23 20 20 69 20 3e 3d 20 6d 0a 20 20 20 20 20 23 20 53 65 63 6f 6e 64 20 64 6f 6d 61 | ..0.#..i.>=.m......#.Second.doma |
5740 | 69 6e 0a 20 20 20 20 20 33 20 35 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 20 33 20 6c | in......3.5................#.3.l |
5760 | 69 6e 65 73 20 61 6e 64 20 35 20 63 6f 6c 75 6d 6e 73 0a 20 20 20 20 20 23 20 65 71 2f 69 6e 20 | ines.and.5.columns......#.eq/in. |
5780 | 69 20 20 6d 20 20 6e 20 20 31 0a 20 20 20 20 20 20 20 20 20 31 20 20 20 31 20 20 30 20 20 30 20 | i..m..n..1..........1...1..0..0. |
57a0 | 2d 31 20 23 20 20 69 20 3e 3d 20 31 0a 20 20 20 20 20 20 20 20 20 31 20 20 2d 31 20 20 30 20 20 | -1.#..i.>=.1..........1..-1..0.. |
57c0 | 31 20 20 30 20 23 20 20 69 20 3c 3d 20 6e 0a 20 20 20 20 20 20 20 20 20 31 20 20 2d 31 20 20 32 | 1..0.#..i.<=.n..........1..-1..2 |
57e0 | 20 20 30 20 20 30 20 23 20 20 69 20 3c 3d 20 32 2a 6d 0a 0a 1f 0a 46 69 6c 65 3a 20 63 6c 6f 6f | ..0..0.#..i.<=.2*m....File:.cloo |
5800 | 67 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 53 63 61 74 74 65 72 69 6e 67 20 52 65 70 72 65 73 | g.info,..Node:.Scattering.Repres |
5820 | 65 6e 74 61 74 69 6f 6e 2c 20 20 50 72 65 76 3a 20 44 6f 6d 61 69 6e 20 52 65 70 72 65 73 65 6e | entation,..Prev:.Domain.Represen |
5840 | 74 61 74 69 6f 6e 2c 20 20 55 70 3a 20 57 72 69 74 69 6e 67 20 54 68 65 20 49 6e 70 75 74 20 46 | tation,..Up:.Writing.The.Input.F |
5860 | 69 6c 65 0a 0a 32 2e 32 2e 32 20 53 63 61 74 74 65 72 69 6e 67 20 46 75 6e 63 74 69 6f 6e 20 52 | ile..2.2.2.Scattering.Function.R |
5880 | 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | epresentation.------------------ |
58a0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 53 63 61 74 74 65 72 69 | ----------------------..Scatteri |
58c0 | 6e 67 20 66 75 6e 63 74 69 6f 6e 73 20 61 72 65 20 64 65 70 69 63 74 65 64 20 69 6e 20 74 68 65 | ng.functions.are.depicted.in.the |
58e0 | 20 69 6e 70 75 74 20 66 69 6c 65 20 74 68 61 6e 6b 73 20 61 0a 72 65 70 72 65 73 65 6e 74 61 74 | .input.file.thanks.a.representat |
5900 | 69 6f 6e 20 76 65 72 79 20 63 6c 6f 73 65 20 74 6f 20 74 68 65 20 64 6f 6d 61 69 6e 20 6f 6e 65 | ion.very.close.to.the.domain.one |
5920 | 2e 20 20 41 6e 20 69 6e 74 65 67 65 72 20 67 69 76 65 73 20 74 68 65 0a 6e 75 6d 62 65 72 20 6f | ...An.integer.gives.the.number.o |
5940 | 66 20 66 75 6e 63 74 69 6f 6e 73 20 60 4e 62 5f 66 75 6e 63 74 69 6f 6e 73 27 20 61 6e 64 20 65 | f.functions.`Nb_functions'.and.e |
5960 | 61 63 68 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 72 65 70 72 65 73 65 6e 74 65 64 20 62 79 0a 61 | ach.function.is.represented.by.a |
5980 | 20 64 6f 6d 61 69 6e 2e 20 45 61 63 68 20 6c 69 6e 65 20 6f 66 20 74 68 65 20 64 6f 6d 61 69 6e | .domain..Each.line.of.the.domain |
59a0 | 20 63 6f 72 72 65 73 70 6f 6e 64 73 20 74 6f 20 61 6e 20 65 71 75 61 6c 69 74 79 20 64 65 66 69 | .corresponds.to.an.equality.defi |
59c0 | 6e 69 6e 67 20 61 0a 64 69 6d 65 6e 73 69 6f 6e 20 6f 66 20 74 68 65 20 66 75 6e 63 74 69 6f 6e | ning.a.dimension.of.the.function |
59e0 | 2e 20 4e 6f 74 65 20 74 68 61 74 20 61 74 20 70 72 65 73 65 6e 74 20 28 43 4c 6f 6f 47 20 29 20 | ..Note.that.at.present.(CLooG.). |
5a00 | 2a 61 6c 6c 20 66 75 6e 63 74 69 6f 6e 73 0a 6d 75 73 74 20 68 61 76 65 20 74 68 65 20 73 61 6d | *all.functions.must.have.the.sam |
5a20 | 65 20 73 63 61 74 74 65 72 69 6e 67 20 64 69 6d 65 6e 73 69 6f 6e 20 6e 75 6d 62 65 72 2a 2e 20 | e.scattering.dimension.number*.. |
5a40 | 49 66 20 61 20 75 73 65 72 20 77 61 6e 74 73 20 74 6f 20 73 65 74 0a 73 63 61 74 74 65 72 69 6e | If.a.user.wants.to.set.scatterin |
5a60 | 67 20 66 75 6e 63 74 69 6f 6e 73 20 77 69 74 68 20 64 69 66 66 65 72 65 6e 74 20 64 69 6d 65 6e | g.functions.with.different.dimen |
5a80 | 73 69 6f 6e 61 6c 69 74 79 2c 20 68 65 20 68 61 73 20 74 6f 20 63 6f 6d 70 6c 65 74 65 0a 74 68 | sionality,.he.has.to.complete.th |
5aa0 | 65 20 73 6d 61 6c 6c 65 72 20 6f 6e 65 20 77 69 74 68 20 7a 65 72 6f 65 73 20 74 6f 20 72 65 61 | e.smaller.one.with.zeroes.to.rea |
5ac0 | 63 68 20 74 68 65 20 6d 61 78 69 6d 75 6d 20 64 69 6d 65 6e 73 69 6f 6e 61 6c 69 74 79 2e 20 20 | ch.the.maximum.dimensionality... |
5ae0 | 46 6f 72 0a 69 6e 73 74 61 6e 63 65 2c 20 6c 65 74 20 75 73 20 63 6f 6e 73 69 64 65 72 20 74 68 | For.instance,.let.us.consider.th |
5b00 | 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 6f 64 65 20 61 6e 64 20 73 63 68 65 64 75 6c 69 6e 67 20 | e.following.code.and.scheduling. |
5b20 | 66 75 6e 63 74 69 6f 6e 73 3a 0a 0a 20 20 20 20 20 66 6f 72 20 28 69 3d 31 3b 69 3c 3d 6e 3b 69 | functions:.......for.(i=1;i<=n;i |
5b40 | 2b 2b 29 20 7b 0a 20 20 20 20 20 20 20 69 66 20 28 28 69 20 3e 3d 20 6d 29 20 7c 7c 20 28 69 20 | ++).{........if.((i.>=.m).||.(i. |
5b60 | 3c 3d 20 32 2a 6d 29 29 0a 20 20 20 20 20 20 20 20 20 53 31 20 3b 0a 20 20 20 20 20 20 20 66 6f | <=.2*m))..........S1.;........fo |
5b80 | 72 20 28 6a 3d 69 2b 31 3b 6a 3c 3d 6d 3b 6a 2b 2b 29 0a 20 20 20 20 20 20 20 20 20 53 32 20 3b | r.(j=i+1;j<=m;j++)..........S2.; |
5ba0 | 0a 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 54 5f 53 31 28 69 29 20 20 20 20 20 3d 20 28 69 2c 30 | ......}.......T_S1(i).....=.(i,0 |
5bc0 | 29 5e 54 0a 20 20 20 20 20 54 5f 53 32 28 69 2c 6a 29 5e 54 20 3d 20 28 6e 2c 69 2b 6a 29 5e 54 | )^T......T_S2(i,j)^T.=.(n,i+j)^T |
5be0 | 0a 0a 54 68 69 73 20 73 63 68 65 64 75 6c 69 6e 67 20 63 61 6e 20 62 65 20 77 72 69 74 74 65 6e | ..This.scheduling.can.be.written |
5c00 | 20 69 6e 20 74 68 65 20 69 6e 70 75 74 20 66 69 6c 65 20 61 73 20 66 6f 6c 6c 6f 77 73 3a 0a 0a | .in.the.input.file.as.follows:.. |
5c20 | 20 20 20 20 20 32 20 23 20 4e 75 6d 62 65 72 20 6f 66 20 73 63 61 74 74 65 72 69 6e 67 20 66 75 | .....2.#.Number.of.scattering.fu |
5c40 | 6e 63 74 69 6f 6e 73 0a 20 20 20 20 20 23 20 46 69 72 73 74 20 66 75 6e 63 74 69 6f 6e 0a 20 20 | nctions......#.First.function... |
5c60 | 20 20 20 32 20 37 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ...2.7.......................... |
5c80 | 23 20 32 20 6c 69 6e 65 73 20 61 6e 64 20 37 20 63 6f 6c 75 6d 6e 73 0a 20 20 20 20 20 23 20 65 | #.2.lines.and.7.columns......#.e |
5ca0 | 71 2f 69 6e 20 63 31 20 63 32 20 20 69 20 20 6d 20 20 6e 20 20 31 0a 20 20 20 20 20 20 20 20 20 | q/in.c1.c2..i..m..n..1.......... |
5cc0 | 30 20 20 20 20 31 20 20 30 20 2d 31 20 20 30 20 20 30 20 20 30 20 20 20 20 23 20 20 63 31 20 3d | 0....1..0.-1..0..0..0....#..c1.= |
5ce0 | 20 69 0a 20 20 20 20 20 20 20 20 20 30 20 20 20 20 30 20 20 31 20 20 30 20 20 30 20 20 30 20 20 | .i..........0....0..1..0..0..0.. |
5d00 | 30 20 20 20 20 23 20 20 63 32 20 3d 20 30 0a 20 20 20 20 20 23 20 53 65 63 6f 6e 64 20 66 75 6e | 0....#..c2.=.0......#.Second.fun |
5d20 | 63 74 69 6f 6e 0a 20 20 20 20 20 32 20 38 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ction......2.8.................. |
5d40 | 20 20 20 20 20 20 20 20 23 20 32 20 6c 69 6e 65 73 20 61 6e 64 20 38 20 63 6f 6c 75 6d 6e 73 0a | ........#.2.lines.and.8.columns. |
5d60 | 20 20 20 20 20 23 20 65 71 2f 69 6e 20 63 31 20 63 32 20 20 69 20 20 6a 20 20 6d 20 20 6e 20 20 | .....#.eq/in.c1.c2..i..j..m..n.. |
5d80 | 31 0a 20 20 20 20 20 20 20 20 20 30 20 20 20 20 31 20 20 30 20 20 30 20 20 30 20 20 30 20 2d 31 | 1..........0....1..0..0..0..0.-1 |
5da0 | 20 20 30 20 23 20 20 63 31 20 3d 20 6e 0a 20 20 20 20 20 20 20 20 20 30 20 20 20 20 30 20 20 31 | ..0.#..c1.=.n..........0....0..1 |
5dc0 | 20 2d 31 20 2d 31 20 20 30 20 20 30 20 20 30 20 23 20 20 63 32 20 3d 20 69 2b 6a 0a 54 68 65 20 | .-1.-1..0..0..0.#..c2.=.i+j.The. |
5de0 | 63 6f 6d 70 6c 65 74 65 20 69 6e 70 75 74 20 66 69 6c 65 20 66 6f 72 20 74 68 65 20 75 73 65 72 | complete.input.file.for.the.user |
5e00 | 20 77 68 6f 20 77 61 6e 74 73 20 74 6f 20 67 65 6e 65 72 61 74 65 20 74 68 65 20 63 6f 64 65 20 | .who.wants.to.generate.the.code. |
5e20 | 66 6f 72 0a 74 68 69 73 20 65 78 61 6d 70 6c 65 20 77 69 74 68 20 74 68 65 20 70 72 65 63 65 64 | for.this.example.with.the.preced |
5e40 | 69 6e 67 20 73 63 68 65 64 75 6c 69 6e 67 20 77 6f 75 6c 64 20 62 65 20 28 74 68 69 73 20 66 69 | ing.scheduling.would.be.(this.fi |
5e60 | 6c 65 20 69 73 0a 70 72 6f 76 69 64 65 64 20 69 6e 20 74 68 65 20 43 4c 6f 6f 47 20 64 69 73 74 | le.is.provided.in.the.CLooG.dist |
5e80 | 72 69 62 75 74 69 6f 6e 20 61 73 20 60 74 65 73 74 2f 6d 61 6e 75 61 6c 5f 73 63 61 74 74 65 72 | ribution.as.`test/manual_scatter |
5ea0 | 69 6e 67 2e 63 6c 6f 6f 67 27 3a 0a 0a 20 20 20 20 20 23 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | ing.cloog':.......#.------------ |
5ec0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 43 4f 4e 54 45 58 54 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | ----------.CONTEXT.------------- |
5ee0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 20 20 20 20 20 63 20 23 20 6c 61 6e 67 75 61 67 65 20 69 73 20 43 | ---------......c.#.language.is.C |
5f00 | 0a 0a 20 20 20 20 20 23 20 43 6f 6e 74 65 78 74 20 28 6e 6f 20 63 6f 6e 73 74 72 61 69 6e 74 73 | .......#.Context.(no.constraints |
5f20 | 20 6f 6e 20 74 77 6f 20 70 61 72 61 6d 65 74 65 72 73 29 0a 20 20 20 20 20 31 20 34 20 20 20 20 | .on.two.parameters)......1.4.... |
5f40 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 20 31 20 6c 69 6e 65 73 20 61 6e 64 20 34 20 63 | ...............#.1.lines.and.4.c |
5f60 | 6f 6c 75 6d 6e 73 0a 20 20 20 20 20 23 20 65 71 2f 69 6e 20 6d 20 20 6e 20 20 31 0a 20 20 20 20 | olumns......#.eq/in.m..n..1..... |
5f80 | 20 20 20 20 20 31 20 20 20 30 20 20 30 20 20 30 20 20 20 20 20 20 20 23 20 30 20 3e 3d 20 30 2c | .....1...0..0..0.......#.0.>=.0, |
5fa0 | 20 61 6c 77 61 79 73 20 74 72 75 65 0a 0a 20 20 20 20 20 31 20 23 20 57 65 20 77 61 6e 74 20 74 | .always.true.......1.#.We.want.t |
5fc0 | 6f 20 73 65 74 20 6d 61 6e 75 61 6c 6c 79 20 74 68 65 20 70 61 72 61 6d 65 74 65 72 20 6e 61 6d | o.set.manually.the.parameter.nam |
5fe0 | 65 73 0a 20 20 20 20 20 6d 20 6e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 20 | es......m.n...................#. |
6000 | 70 61 72 61 6d 65 74 65 72 20 6e 61 6d 65 73 0a 0a 20 20 20 20 20 23 20 2d 2d 2d 2d 2d 2d 2d 2d | parameter.names.......#.-------- |
6020 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 53 54 41 54 45 4d 45 4e 54 53 20 2d 2d 2d 2d 2d 2d 2d | -------------.STATEMENTS.------- |
6040 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 20 20 20 20 20 32 20 23 20 4e 75 6d 62 65 72 20 6f 66 | -------------......2.#.Number.of |
6060 | 20 73 74 61 74 65 6d 65 6e 74 73 0a 0a 20 20 20 20 20 32 20 23 20 46 69 72 73 74 20 73 74 61 74 | .statements.......2.#.First.stat |
6080 | 65 6d 65 6e 74 3a 20 74 77 6f 20 64 6f 6d 61 69 6e 73 0a 20 20 20 20 20 23 20 46 69 72 73 74 20 | ement:.two.domains......#.First. |
60a0 | 64 6f 6d 61 69 6e 0a 20 20 20 20 20 33 20 35 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | domain......3.5................. |
60c0 | 20 20 23 20 33 20 6c 69 6e 65 73 20 61 6e 64 20 35 20 63 6f 6c 75 6d 6e 73 0a 20 20 20 20 20 23 | ..#.3.lines.and.5.columns......# |
60e0 | 20 65 71 2f 69 6e 20 69 20 20 6d 20 20 6e 20 20 31 0a 20 20 20 20 20 20 20 20 20 31 20 20 20 31 | .eq/in.i..m..n..1..........1...1 |
6100 | 20 20 30 20 20 30 20 2d 31 20 20 20 20 23 20 69 20 3e 3d 20 31 0a 20 20 20 20 20 20 20 20 20 31 | ..0..0.-1....#.i.>=.1..........1 |
6120 | 20 20 2d 31 20 20 30 20 20 31 20 20 30 20 20 20 20 23 20 69 20 3c 3d 20 6e 0a 20 20 20 20 20 20 | ..-1..0..1..0....#.i.<=.n....... |
6140 | 20 20 20 31 20 20 20 31 20 2d 31 20 20 30 20 20 30 20 20 20 20 23 20 69 20 3e 3d 20 6d 0a 20 20 | ...1...1.-1..0..0....#.i.>=.m... |
6160 | 20 20 20 23 20 53 65 63 6f 6e 64 20 64 6f 6d 61 69 6e 0a 20 20 20 20 20 33 20 35 20 20 20 20 20 | ...#.Second.domain......3.5..... |
6180 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 20 33 20 6c 69 6e 65 73 20 61 6e 64 20 35 20 63 6f | ..............#.3.lines.and.5.co |
61a0 | 6c 75 6d 6e 73 0a 20 20 20 20 20 23 20 65 71 2f 69 6e 20 69 20 20 6d 20 20 6e 20 20 31 0a 20 20 | lumns......#.eq/in.i..m..n..1... |
61c0 | 20 20 20 20 20 20 20 31 20 20 20 31 20 20 30 20 20 30 20 2d 31 20 20 20 20 23 20 69 20 3e 3d 20 | .......1...1..0..0.-1....#.i.>=. |
61e0 | 31 0a 20 20 20 20 20 20 20 20 20 31 20 20 2d 31 20 20 30 20 20 31 20 20 30 20 20 20 20 23 20 69 | 1..........1..-1..0..1..0....#.i |
6200 | 20 3c 3d 20 6e 0a 20 20 20 20 20 20 20 20 20 31 20 20 2d 31 20 20 32 20 20 30 20 20 30 20 20 20 | .<=.n..........1..-1..2..0..0... |
6220 | 20 23 20 69 20 3c 3d 20 32 2a 6d 0a 20 20 20 20 20 30 20 20 30 20 20 30 20 20 20 20 20 20 20 20 | .#.i.<=.2*m......0..0..0........ |
6240 | 20 20 20 20 20 20 20 23 20 66 6f 72 20 66 75 74 75 72 65 20 6f 70 74 69 6f 6e 73 0a 0a 20 20 20 | .......#.for.future.options..... |
6260 | 20 20 31 20 23 20 53 65 63 6f 6e 64 20 73 74 61 74 65 6d 65 6e 74 3a 20 6f 6e 65 20 64 6f 6d 61 | ..1.#.Second.statement:.one.doma |
6280 | 69 6e 0a 20 20 20 20 20 34 20 36 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 20 | in......4.6...................#. |
62a0 | 34 20 6c 69 6e 65 73 20 61 6e 64 20 36 20 63 6f 6c 75 6d 6e 73 0a 20 20 20 20 20 23 20 65 71 2f | 4.lines.and.6.columns......#.eq/ |
62c0 | 69 6e 20 69 20 20 6a 20 20 6d 20 20 6e 20 20 31 0a 20 20 20 20 20 20 20 20 20 31 20 20 20 31 20 | in.i..j..m..n..1..........1...1. |
62e0 | 20 30 20 20 30 20 20 30 20 2d 31 20 23 20 69 20 3e 3d 20 31 0a 20 20 20 20 20 20 20 20 20 31 20 | .0..0..0.-1.#.i.>=.1..........1. |
6300 | 20 2d 31 20 20 30 20 20 30 20 20 31 20 20 30 20 23 20 69 20 3c 3d 20 6e 0a 20 20 20 20 20 20 20 | .-1..0..0..1..0.#.i.<=.n........ |
6320 | 20 20 31 20 20 2d 31 20 20 31 20 20 30 20 20 30 20 2d 31 20 23 20 6a 20 3e 3d 20 69 2b 31 0a 20 | ..1..-1..1..0..0.-1.#.j.>=.i+1.. |
6340 | 20 20 20 20 20 20 20 20 31 20 20 20 30 20 2d 31 20 20 31 20 20 30 20 20 30 20 23 20 6a 20 3c 3d | ........1...0.-1..1..0..0.#.j.<= |
6360 | 20 6d 0a 20 20 20 20 20 30 20 20 30 20 20 30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 20 | .m......0..0..0...............#. |
6380 | 66 6f 72 20 66 75 74 75 72 65 20 6f 70 74 69 6f 6e 73 0a 0a 20 20 20 20 20 31 20 23 20 57 65 20 | for.future.options.......1.#.We. |
63a0 | 77 61 6e 74 20 74 6f 20 73 65 74 20 6d 61 6e 75 61 6c 6c 79 20 74 68 65 20 69 74 65 72 61 74 6f | want.to.set.manually.the.iterato |
63c0 | 72 20 6e 61 6d 65 73 0a 20 20 20 20 20 69 20 6a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | r.names......i.j................ |
63e0 | 20 20 20 23 20 69 74 65 72 61 74 6f 72 20 6e 61 6d 65 73 0a 0a 20 20 20 20 20 23 20 2d 2d 2d 2d | ...#.iterator.names.......#.---- |
6400 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 53 43 41 54 54 45 52 49 4e 47 20 2d 2d 2d | -----------------.SCATTERING.--- |
6420 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 20 20 20 20 20 32 20 23 20 53 63 61 74 74 | -----------------......2.#.Scatt |
6440 | 65 72 69 6e 67 20 66 75 6e 63 74 69 6f 6e 73 0a 20 20 20 20 20 23 20 46 69 72 73 74 20 66 75 6e | ering.functions......#.First.fun |
6460 | 63 74 69 6f 6e 0a 20 20 20 20 20 32 20 37 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ction......2.7.................. |
6480 | 20 23 20 32 20 6c 69 6e 65 73 20 61 6e 64 20 37 20 63 6f 6c 75 6d 6e 73 0a 20 20 20 20 20 23 20 | .#.2.lines.and.7.columns......#. |
64a0 | 65 71 2f 69 6e 20 70 31 20 70 32 20 20 69 20 20 6d 20 20 6e 20 20 31 0a 20 20 20 20 20 20 20 20 | eq/in.p1.p2..i..m..n..1......... |
64c0 | 20 30 20 20 20 20 31 20 20 30 20 2d 31 20 20 30 20 20 30 20 20 30 20 20 20 20 23 20 70 31 20 3d | .0....1..0.-1..0..0..0....#.p1.= |
64e0 | 20 69 0a 20 20 20 20 20 20 20 20 20 30 20 20 20 20 30 20 20 31 20 20 30 20 20 30 20 20 30 20 20 | .i..........0....0..1..0..0..0.. |
6500 | 30 20 20 20 20 23 20 70 32 20 3d 20 30 0a 20 20 20 20 20 23 20 53 65 63 6f 6e 64 20 66 75 6e 63 | 0....#.p2.=.0......#.Second.func |
6520 | 74 69 6f 6e 0a 20 20 20 20 20 32 20 38 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | tion......2.8................... |
6540 | 23 20 32 20 6c 69 6e 65 73 20 61 6e 64 20 38 20 63 6f 6c 75 6d 6e 73 0a 20 20 20 20 20 23 20 65 | #.2.lines.and.8.columns......#.e |
6560 | 71 2f 69 6e 20 70 31 20 70 32 20 20 69 20 20 6a 20 20 6d 20 20 6e 20 20 31 0a 20 20 20 20 20 20 | q/in.p1.p2..i..j..m..n..1....... |
6580 | 20 20 20 30 20 20 20 20 31 20 20 30 20 20 30 20 20 30 20 20 30 20 2d 31 20 20 30 20 23 20 70 31 | ...0....1..0..0..0..0.-1..0.#.p1 |
65a0 | 20 3d 20 6e 0a 20 20 20 20 20 20 20 20 20 30 20 20 20 20 30 20 20 31 20 2d 31 20 2d 31 20 20 30 | .=.n..........0....0..1.-1.-1..0 |
65c0 | 20 20 30 20 20 30 20 23 20 70 32 20 3d 20 69 2b 6a 0a 0a 20 20 20 20 20 31 20 23 20 57 65 20 77 | ..0..0.#.p2.=.i+j.......1.#.We.w |
65e0 | 61 6e 74 20 74 6f 20 73 65 74 20 6d 61 6e 75 61 6c 6c 79 20 74 68 65 20 73 63 61 74 74 65 72 69 | ant.to.set.manually.the.scatteri |
6600 | 6e 67 20 64 69 6d 65 6e 73 69 6f 6e 20 6e 61 6d 65 73 0a 20 20 20 20 20 70 31 20 70 32 20 20 20 | ng.dimension.names......p1.p2... |
6620 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 20 73 63 61 74 74 65 72 69 6e 67 20 64 69 6d 65 6e | ..............#.scattering.dimen |
6640 | 73 69 6f 6e 20 6e 61 6d 65 73 0a 0a 1f 0a 46 69 6c 65 3a 20 63 6c 6f 6f 67 2e 69 6e 66 6f 2c 20 | sion.names....File:.cloog.info,. |
6660 | 20 4e 6f 64 65 3a 20 43 61 6c 6c 69 6e 67 20 43 4c 6f 6f 47 2c 20 20 4e 65 78 74 3a 20 43 4c 6f | .Node:.Calling.CLooG,..Next:.CLo |
6680 | 6f 47 20 4f 70 74 69 6f 6e 73 2c 20 20 50 72 65 76 3a 20 57 72 69 74 69 6e 67 20 54 68 65 20 49 | oG.Options,..Prev:.Writing.The.I |
66a0 | 6e 70 75 74 20 46 69 6c 65 2c 20 20 55 70 3a 20 43 4c 6f 6f 47 20 53 6f 66 74 77 61 72 65 0a 0a | nput.File,..Up:.CLooG.Software.. |
66c0 | 32 2e 33 20 43 61 6c 6c 69 6e 67 20 43 4c 6f 6f 47 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d | 2.3.Calling.CLooG.============== |
66e0 | 3d 3d 3d 0a 0a 43 4c 6f 6f 47 20 69 73 20 63 61 6c 6c 65 64 20 62 79 20 74 68 65 20 66 6f 6c 6c | ===..CLooG.is.called.by.the.foll |
6700 | 6f 77 69 6e 67 20 63 6f 6d 6d 61 6e 64 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6c 6f 6f 67 | owing.command:.............cloog |
6720 | 20 5b 20 6f 70 74 69 6f 6e 73 20 7c 20 66 69 6c 65 20 5d 0a 20 20 20 54 68 65 20 64 65 66 61 75 | .[.options.|.file.]....The.defau |
6740 | 6c 74 20 62 65 68 61 76 69 6f 72 20 6f 66 20 43 4c 6f 6f 47 20 69 73 20 74 6f 20 72 65 61 64 20 | lt.behavior.of.CLooG.is.to.read. |
6760 | 74 68 65 20 69 6e 70 75 74 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 73 20 66 72 6f 6d 0a 61 20 66 69 | the.input.informations.from.a.fi |
6780 | 6c 65 20 61 6e 64 20 74 6f 20 70 72 69 6e 74 20 74 68 65 20 67 65 6e 65 72 61 74 65 64 20 63 6f | le.and.to.print.the.generated.co |
67a0 | 64 65 20 6f 72 20 70 73 65 75 64 6f 2d 63 6f 64 65 20 6f 6e 20 74 68 65 20 73 74 61 6e 64 61 72 | de.or.pseudo-code.on.the.standar |
67c0 | 64 0a 6f 75 74 70 75 74 2e 20 20 43 4c 6f 6f 47 27 73 20 62 65 68 61 76 69 6f 72 20 61 6e 64 20 | d.output...CLooG's.behavior.and. |
67e0 | 74 68 65 20 6f 75 74 70 75 74 20 63 6f 64 65 20 73 68 61 70 65 20 69 73 20 75 6e 64 65 72 20 74 | the.output.code.shape.is.under.t |
6800 | 68 65 20 75 73 65 72 0a 63 6f 6e 74 72 6f 6c 20 74 68 61 6e 6b 73 20 74 6f 20 6d 61 6e 79 20 6f | he.user.control.thanks.to.many.o |
6820 | 70 74 69 6f 6e 73 20 77 68 69 63 68 20 61 72 65 20 64 65 74 61 69 6c 65 64 20 61 20 66 75 72 74 | ptions.which.are.detailed.a.furt |
6840 | 68 65 72 20 73 65 63 74 69 6f 6e 0a 28 2a 6e 6f 74 65 20 43 4c 6f 6f 47 20 4f 70 74 69 6f 6e 73 | her.section.(*note.CLooG.Options |
6860 | 3a 3a 29 2e 20 20 60 66 69 6c 65 27 20 69 73 20 74 68 65 20 69 6e 70 75 74 20 66 69 6c 65 2e 20 | ::)...`file'.is.the.input.file.. |
6880 | 60 73 74 64 69 6e 27 20 69 73 20 61 0a 73 70 65 63 69 61 6c 20 76 61 6c 75 65 3a 20 77 68 65 6e | `stdin'.is.a.special.value:.when |
68a0 | 20 75 73 65 64 2c 20 69 6e 70 75 74 20 69 73 20 73 74 61 6e 64 61 72 64 20 69 6e 70 75 74 2e 20 | .used,.input.is.standard.input.. |
68c0 | 46 6f 72 20 69 6e 73 74 61 6e 63 65 2c 20 77 65 20 63 61 6e 0a 63 61 6c 6c 20 43 4c 6f 6f 47 20 | For.instance,.we.can.call.CLooG. |
68e0 | 74 6f 20 74 72 65 61 74 20 74 68 65 20 69 6e 70 75 74 20 66 69 6c 65 20 60 62 61 73 69 63 2e 63 | to.treat.the.input.file.`basic.c |
6900 | 6c 6f 6f 67 27 20 77 69 74 68 20 64 65 66 61 75 6c 74 20 6f 70 74 69 6f 6e 73 0a 62 79 20 74 79 | loog'.with.default.options.by.ty |
6920 | 70 69 6e 67 3a 20 60 63 6c 6f 6f 67 20 62 61 73 69 63 2e 63 6c 6f 6f 67 27 20 6f 72 20 60 6d 6f | ping:.`cloog.basic.cloog'.or.`mo |
6940 | 72 65 20 62 61 73 69 63 2e 63 6c 6f 6f 67 20 7c 20 63 6c 6f 6f 67 20 73 74 64 69 6e 27 2e 0a 0a | re.basic.cloog.|.cloog.stdin'... |
6960 | 1f 0a 46 69 6c 65 3a 20 63 6c 6f 6f 67 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 43 4c 6f 6f 47 | ..File:.cloog.info,..Node:.CLooG |
6980 | 20 4f 70 74 69 6f 6e 73 2c 20 20 4e 65 78 74 3a 20 46 75 6c 6c 20 45 78 61 6d 70 6c 65 2c 20 20 | .Options,..Next:.Full.Example,.. |
69a0 | 50 72 65 76 3a 20 43 61 6c 6c 69 6e 67 20 43 4c 6f 6f 47 2c 20 20 55 70 3a 20 43 4c 6f 6f 47 20 | Prev:.Calling.CLooG,..Up:.CLooG. |
69c0 | 53 6f 66 74 77 61 72 65 0a 0a 32 2e 34 20 43 4c 6f 6f 47 20 4f 70 74 69 6f 6e 73 0a 3d 3d 3d 3d | Software..2.4.CLooG.Options.==== |
69e0 | 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 0a 2a 20 4d 65 6e 75 3a 0a 0a 2a 20 4c 61 73 74 20 44 | =============..*.Menu:..*.Last.D |
6a00 | 65 70 74 68 20 74 6f 20 4f 70 74 69 6d 69 7a 65 20 43 6f 6e 74 72 6f 6c 3a 3a 0a 2a 20 46 69 72 | epth.to.Optimize.Control::.*.Fir |
6a20 | 73 74 20 44 65 70 74 68 20 74 6f 20 4f 70 74 69 6d 69 7a 65 20 43 6f 6e 74 72 6f 6c 3a 3a 0a 2a | st.Depth.to.Optimize.Control::.* |
6a40 | 20 53 69 6d 70 6c 69 66 79 20 43 6f 6e 76 65 78 20 48 75 6c 6c 3a 3a 0a 2a 20 4f 6e 63 65 20 54 | .Simplify.Convex.Hull::.*.Once.T |
6a60 | 69 6d 65 20 4c 6f 6f 70 20 45 6c 69 6d 69 6e 61 74 69 6f 6e 3a 3a 0a 2a 20 45 71 75 61 6c 69 74 | ime.Loop.Elimination::.*.Equalit |
6a80 | 79 20 53 70 72 65 61 64 69 6e 67 3a 3a 0a 2a 20 43 6f 6e 73 74 61 6e 74 20 53 70 72 65 61 64 69 | y.Spreading::.*.Constant.Spreadi |
6aa0 | 6e 67 3a 3a 0a 2a 20 46 69 72 73 74 20 4c 65 76 65 6c 20 66 6f 72 20 53 70 72 65 61 64 69 6e 67 | ng::.*.First.Level.for.Spreading |
6ac0 | 3a 3a 0a 2a 20 43 20 50 72 65 50 72 6f 63 65 73 73 6f 72 20 46 72 69 65 6e 64 6c 79 3a 3a 0a 2a | ::.*.C.PreProcessor.Friendly::.* |
6ae0 | 20 53 74 61 74 65 6d 65 6e 74 20 42 6c 6f 63 6b 3a 3a 0a 2a 20 4c 6f 6f 70 20 53 74 72 69 64 65 | .Statement.Block::.*.Loop.Stride |
6b00 | 73 3a 3a 0a 2a 20 43 6f 6d 70 69 6c 61 62 6c 65 20 43 6f 64 65 3a 3a 0a 2a 20 4f 75 74 70 75 74 | s::.*.Compilable.Code::.*.Output |
6b20 | 3a 3a 0a 2a 20 48 65 6c 70 3a 3a 0a 2a 20 56 65 72 73 69 6f 6e 20 3a 3a 0a 0a 1f 0a 46 69 6c 65 | ::.*.Help::.*.Version.::....File |
6b40 | 3a 20 63 6c 6f 6f 67 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 4c 61 73 74 20 44 65 70 74 68 20 | :.cloog.info,..Node:.Last.Depth. |
6b60 | 74 6f 20 4f 70 74 69 6d 69 7a 65 20 43 6f 6e 74 72 6f 6c 2c 20 20 4e 65 78 74 3a 20 46 69 72 73 | to.Optimize.Control,..Next:.Firs |
6b80 | 74 20 44 65 70 74 68 20 74 6f 20 4f 70 74 69 6d 69 7a 65 20 43 6f 6e 74 72 6f 6c 2c 20 20 55 70 | t.Depth.to.Optimize.Control,..Up |
6ba0 | 3a 20 43 4c 6f 6f 47 20 4f 70 74 69 6f 6e 73 0a 0a 32 2e 34 2e 31 20 4c 61 73 74 20 44 65 70 74 | :.CLooG.Options..2.4.1.Last.Dept |
6bc0 | 68 20 74 6f 20 4f 70 74 69 6d 69 7a 65 20 43 6f 6e 74 72 6f 6c 20 60 2d 6c 20 3c 64 65 70 74 68 | h.to.Optimize.Control.`-l.<depth |
6be0 | 3e 27 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | >'.----------------------------- |
6c00 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 60 2d 6c 20 3c 64 65 70 74 68 | --------------------..`-l.<depth |
6c20 | 3e 27 3a 20 74 68 69 73 20 6f 70 74 69 6f 6e 20 73 65 74 73 20 74 68 65 20 6c 61 73 74 20 6c 6f | >':.this.option.sets.the.last.lo |
6c40 | 6f 70 20 64 65 70 74 68 20 74 6f 20 62 65 20 6f 70 74 69 6d 69 7a 65 64 20 69 6e 0a 63 6f 6e 74 | op.depth.to.be.optimized.in.cont |
6c60 | 72 6f 6c 2e 20 54 68 65 20 68 69 67 68 65 72 20 74 68 69 73 20 64 65 70 74 68 2c 20 74 68 65 20 | rol..The.higher.this.depth,.the. |
6c80 | 6c 65 73 73 20 63 6f 6e 74 72 6f 6c 20 6f 76 65 72 68 65 61 64 2e 20 20 46 6f 72 0a 69 6e 73 74 | less.control.overhead...For.inst |
6ca0 | 61 6e 63 65 2c 20 77 69 74 68 20 73 6f 6d 65 20 69 6e 70 75 74 20 66 69 6c 65 2c 20 61 20 75 73 | ance,.with.some.input.file,.a.us |
6cc0 | 65 72 20 63 61 6e 20 67 65 6e 65 72 61 74 65 20 64 69 66 66 65 72 65 6e 74 0a 70 73 65 75 64 6f | er.can.generate.different.pseudo |
6ce0 | 2d 63 6f 64 65 73 20 77 69 74 68 20 64 69 66 66 65 72 65 6e 74 20 60 64 65 70 74 68 27 20 76 61 | -codes.with.different.`depth'.va |
6d00 | 6c 75 65 73 20 61 73 20 73 68 6f 77 6e 20 62 65 6c 6f 77 2e 0a 20 20 20 20 20 2f 2a 20 47 65 6e | lues.as.shown.below......./*.Gen |
6d20 | 65 72 61 74 65 64 20 75 73 69 6e 67 20 61 20 67 69 76 65 6e 20 69 6e 70 75 74 20 66 69 6c 65 20 | erated.using.a.given.input.file. |
6d40 | 61 6e 64 20 2a 6f 70 74 69 6f 6e 20 2d 6c 20 31 2a 20 2a 2f 0a 20 20 20 20 20 66 6f 72 20 28 69 | and.*option.-l.1*.*/......for.(i |
6d60 | 3d 30 3b 69 3c 3d 4d 3b 69 2b 2b 29 20 7b 0a 20 20 20 20 20 20 20 53 31 20 3b 0a 20 20 20 20 20 | =0;i<=M;i++).{........S1.;...... |
6d80 | 20 20 66 6f 72 20 28 6a 3d 30 3b 6a 3c 3d 4e 3b 6a 2b 2b 29 20 7b 0a 20 20 20 20 20 20 20 20 20 | ..for.(j=0;j<=N;j++).{.......... |
6da0 | 53 32 20 3b 0a 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 66 6f 72 20 28 6a 3d 30 3b 6a 3c | S2.;........}........for.(j=0;j< |
6dc0 | 3d 4e 3b 6a 2b 2b 29 20 7b 0a 20 20 20 20 20 20 20 20 20 53 33 20 3b 0a 20 20 20 20 20 20 20 7d | =N;j++).{..........S3.;........} |
6de0 | 0a 20 20 20 20 20 20 20 53 34 20 3b 0a 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 2f 2a 20 47 65 6e | ........S4.;......}......./*.Gen |
6e00 | 65 72 61 74 65 64 20 75 73 69 6e 67 20 74 68 65 20 73 61 6d 65 20 69 6e 70 75 74 20 66 69 6c 65 | erated.using.the.same.input.file |
6e20 | 20 62 75 74 20 2a 6f 70 74 69 6f 6e 20 2d 6c 20 32 2a 20 2a 2f 0a 20 20 20 20 20 66 6f 72 20 28 | .but.*option.-l.2*.*/......for.( |
6e40 | 69 3d 30 3b 69 3c 3d 4d 3b 69 2b 2b 29 20 7b 0a 20 20 20 20 20 20 20 53 31 20 3b 0a 20 20 20 20 | i=0;i<=M;i++).{........S1.;..... |
6e60 | 20 20 20 66 6f 72 20 28 6a 3d 30 3b 6a 3c 3d 4e 3b 6a 2b 2b 29 20 7b 0a 20 20 20 20 20 20 20 20 | ...for.(j=0;j<=N;j++).{......... |
6e80 | 20 53 32 20 3b 0a 20 20 20 20 20 20 20 20 20 53 33 20 3b 0a 20 20 20 20 20 20 20 7d 0a 20 20 20 | .S2.;..........S3.;........}.... |
6ea0 | 20 20 20 20 53 34 20 3b 0a 20 20 20 20 20 7d 0a 20 20 20 20 20 49 6e 20 74 68 69 73 20 65 78 61 | ....S4.;......}......In.this.exa |
6ec0 | 6d 70 6c 65 20 77 65 20 63 61 6e 20 73 65 65 20 74 68 61 74 20 74 68 69 73 20 6f 70 74 69 6f 6e | mple.we.can.see.that.this.option |
6ee0 | 20 63 61 6e 20 63 68 61 6e 67 65 20 74 68 65 0a 6f 70 65 72 61 74 69 6f 6e 20 20 20 20 20 20 65 | .can.change.the.operation......e |
6f00 | 78 65 63 75 74 69 6f 6e 20 6f 72 64 65 72 20 62 65 74 77 65 65 6e 20 73 74 61 74 65 6d 65 6e 74 | xecution.order.between.statement |
6f20 | 73 2e 20 4c 65 74 20 75 73 20 72 65 6d 69 6e 64 20 74 68 61 74 0a 43 4c 6f 6f 47 20 64 6f 65 73 | s..Let.us.remind.that.CLooG.does |
6f40 | 20 6e 6f 74 20 20 20 20 20 20 6d 61 6b 65 20 61 6e 79 20 73 70 65 63 75 6c 61 74 69 6f 6e 20 6f | .not......make.any.speculation.o |
6f60 | 6e 20 64 65 70 65 6e 64 65 6e 63 65 73 20 62 65 74 77 65 65 6e 0a 73 74 61 74 65 6d 65 6e 74 73 | n.dependences.between.statements |
6f80 | 20 20 20 20 20 20 28 2a 6e 6f 74 65 20 53 63 61 74 74 65 72 69 6e 67 3a 3a 29 2e 20 54 68 75 73 | ......(*note.Scattering::)..Thus |
6fa0 | 20 69 66 20 6e 6f 74 68 69 6e 67 20 28 69 2e 65 2e 20 73 63 61 74 74 65 72 69 6e 67 0a 66 75 6e | .if.nothing.(i.e..scattering.fun |
6fc0 | 63 74 69 6f 6e 73 29 20 20 20 20 20 20 66 6f 72 62 69 64 73 20 74 68 69 73 2c 20 43 4c 6f 6f 47 | ctions)......forbids.this,.CLooG |
6fe0 | 20 63 6f 6e 73 69 64 65 72 73 20 74 68 65 20 61 62 6f 76 65 20 63 6f 64 65 73 20 74 6f 20 62 65 | .considers.the.above.codes.to.be |
7000 | 0a 65 71 75 69 76 61 6c 65 6e 74 2e 20 20 20 20 20 20 20 49 66 20 74 68 65 72 65 20 69 73 20 6e | .equivalent........If.there.is.n |
7020 | 6f 20 73 63 61 74 74 65 72 69 6e 67 20 66 75 6e 63 74 69 6f 6e 73 2c 20 74 68 65 20 6d 69 6e 69 | o.scattering.functions,.the.mini |
7040 | 6d 75 6d 0a 76 61 6c 75 65 20 66 6f 72 20 60 64 65 70 74 68 27 20 20 20 20 20 20 69 73 20 31 20 | mum.value.for.`depth'......is.1. |
7060 | 28 69 6e 20 74 68 65 20 63 61 73 65 20 6f 66 20 30 2c 20 74 68 65 20 75 73 65 72 20 64 6f 65 73 | (in.the.case.of.0,.the.user.does |
7080 | 6e 27 74 20 72 65 61 6c 6c 79 0a 6e 65 65 64 20 61 20 6c 6f 6f 70 20 67 65 6e 65 72 61 74 6f 72 | n't.really.need.a.loop.generator |
70a0 | 20 21 29 2c 20 20 20 20 20 20 61 6e 64 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 73 63 61 74 | .!),......and.the.number.of.scat |
70c0 | 74 65 72 69 6e 67 20 64 69 6d 65 6e 73 69 6f 6e 73 0a 6f 74 68 65 72 77 69 73 65 20 28 43 4c 6f | tering.dimensions.otherwise.(CLo |
70e0 | 6f 47 20 77 69 6c 6c 20 77 61 72 6e 20 74 68 65 20 20 20 20 20 20 75 73 65 72 20 69 66 20 68 65 | oG.will.warn.the......user.if.he |
7100 | 20 64 6f 65 73 6e 27 74 20 72 65 73 70 65 63 74 20 73 75 63 68 0a 63 6f 6e 73 74 72 61 69 6e 74 | .doesn't.respect.such.constraint |
7120 | 29 2e 20 20 20 20 20 20 20 54 68 65 20 6d 61 78 69 6d 75 6d 20 76 61 6c 75 65 20 66 6f 72 20 64 | )........The.maximum.value.for.d |
7140 | 65 70 74 68 20 69 73 20 2d 31 20 28 69 6e 66 69 6e 69 74 79 29 2e 0a 44 65 66 61 75 6c 74 20 76 | epth.is.-1.(infinity)..Default.v |
7160 | 61 6c 75 65 20 69 73 20 69 6e 66 69 6e 69 74 79 2e 0a 0a 1f 0a 46 69 6c 65 3a 20 63 6c 6f 6f 67 | alue.is.infinity.....File:.cloog |
7180 | 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 46 69 72 73 74 20 44 65 70 74 68 20 74 6f 20 4f 70 74 | .info,..Node:.First.Depth.to.Opt |
71a0 | 69 6d 69 7a 65 20 43 6f 6e 74 72 6f 6c 2c 20 20 4e 65 78 74 3a 20 53 69 6d 70 6c 69 66 79 20 43 | imize.Control,..Next:.Simplify.C |
71c0 | 6f 6e 76 65 78 20 48 75 6c 6c 2c 20 20 50 72 65 76 3a 20 4c 61 73 74 20 44 65 70 74 68 20 74 6f | onvex.Hull,..Prev:.Last.Depth.to |
71e0 | 20 4f 70 74 69 6d 69 7a 65 20 43 6f 6e 74 72 6f 6c 2c 20 20 55 70 3a 20 43 4c 6f 6f 47 20 4f 70 | .Optimize.Control,..Up:.CLooG.Op |
7200 | 74 69 6f 6e 73 0a 0a 32 2e 34 2e 32 20 46 69 72 73 74 20 44 65 70 74 68 20 74 6f 20 4f 70 74 69 | tions..2.4.2.First.Depth.to.Opti |
7220 | 6d 69 7a 65 20 43 6f 6e 74 72 6f 6c 20 60 2d 66 20 3c 64 65 70 74 68 3e 27 0a 2d 2d 2d 2d 2d 2d | mize.Control.`-f.<depth>'.------ |
7240 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
7260 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 60 2d 66 20 3c 64 65 70 74 68 3e 27 3a 20 74 68 69 73 | ------------..`-f.<depth>':.this |
7280 | 20 6f 70 74 69 6f 6e 20 73 65 74 73 20 74 68 65 20 66 69 72 73 74 20 6c 6f 6f 70 20 64 65 70 74 | .option.sets.the.first.loop.dept |
72a0 | 68 20 74 6f 20 62 65 20 6f 70 74 69 6d 69 7a 65 64 0a 69 6e 20 63 6f 6e 74 72 6f 6c 2e 20 54 68 | h.to.be.optimized.in.control..Th |
72c0 | 65 20 6c 6f 77 65 72 20 74 68 69 73 20 64 65 70 74 68 2c 20 74 68 65 20 6c 65 73 73 20 63 6f 6e | e.lower.this.depth,.the.less.con |
72e0 | 74 72 6f 6c 20 6f 76 65 72 68 65 61 64 20 28 61 6e 64 20 74 68 65 0a 6c 6f 6e 67 65 72 20 20 20 | trol.overhead.(and.the.longer... |
7300 | 20 20 20 74 68 65 20 67 65 6e 65 72 61 74 65 64 20 63 6f 64 65 29 2e 20 46 6f 72 20 69 6e 73 74 | ...the.generated.code)..For.inst |
7320 | 61 6e 63 65 2c 20 77 69 74 68 20 73 6f 6d 65 20 69 6e 70 75 74 20 66 69 6c 65 2c 20 61 0a 75 73 | ance,.with.some.input.file,.a.us |
7340 | 65 72 20 20 20 20 20 20 63 61 6e 20 67 65 6e 65 72 61 74 65 20 64 69 66 66 65 72 65 6e 74 20 70 | er......can.generate.different.p |
7360 | 73 65 75 64 6f 2d 63 6f 64 65 73 20 77 69 74 68 20 64 69 66 66 65 72 65 6e 74 20 60 64 65 70 74 | seudo-codes.with.different.`dept |
7380 | 68 27 0a 76 61 6c 75 65 73 20 20 20 20 20 20 61 73 20 73 68 6f 77 6e 20 62 65 6c 6f 77 2e 20 20 | h'.values......as.shown.below... |
73a0 | 20 20 20 20 20 54 68 65 20 6d 69 6e 69 6d 75 6d 20 76 61 6c 75 65 20 66 6f 72 20 60 64 65 70 74 | .....The.minimum.value.for.`dept |
73c0 | 68 27 20 69 73 20 31 2c 0a 61 6e 64 20 74 68 65 20 20 20 20 20 20 6d 61 78 69 6d 75 6d 20 76 61 | h'.is.1,.and.the......maximum.va |
73e0 | 6c 75 65 20 69 73 20 2d 31 20 28 69 6e 66 69 6e 69 74 79 29 2e 20 20 20 20 20 20 20 44 65 66 61 | lue.is.-1.(infinity)........Defa |
7400 | 75 6c 74 20 76 61 6c 75 65 20 69 73 20 31 2e 0a 20 20 20 20 20 2f 2a 20 47 65 6e 65 72 61 74 65 | ult.value.is.1......./*.Generate |
7420 | 64 20 75 73 69 6e 67 20 61 20 67 69 76 65 6e 20 69 6e 70 75 74 20 66 69 6c 65 20 61 6e 64 20 2a | d.using.a.given.input.file.and.* |
7440 | 6f 70 74 69 6f 6e 20 2d 66 20 33 2a 20 2a 2f 0a 20 20 20 20 20 66 6f 72 20 28 69 3d 31 3b 69 3c | option.-f.3*.*/......for.(i=1;i< |
7460 | 3d 4e 3b 69 2b 2b 29 20 7b 0a 20 20 20 20 20 20 20 66 6f 72 20 28 6a 3d 31 3b 6a 3c 3d 4d 3b 6a | =N;i++).{........for.(j=1;j<=M;j |
7480 | 2b 2b 29 20 7b 0a 20 20 20 20 20 20 20 20 20 53 31 20 3b 0a 20 20 20 20 20 20 20 20 20 69 66 20 | ++).{..........S1.;..........if. |
74a0 | 28 6a 20 3e 3d 20 31 30 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 53 32 20 3b 0a 20 20 20 20 | (j.>=.10).{............S2.;..... |
74c0 | 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 2f 2a 20 | .....}........}......}......./*. |
74e0 | 47 65 6e 65 72 61 74 65 64 20 75 73 69 6e 67 20 74 68 65 20 73 61 6d 65 20 69 6e 70 75 74 20 66 | Generated.using.the.same.input.f |
7500 | 69 6c 65 20 62 75 74 20 2a 6f 70 74 69 6f 6e 20 2d 66 20 32 2a 20 2a 2f 0a 20 20 20 20 20 66 6f | ile.but.*option.-f.2*.*/......fo |
7520 | 72 20 28 69 3d 31 3b 69 3c 3d 4e 3b 69 2b 2b 29 20 7b 0a 20 20 20 20 20 20 20 66 6f 72 20 28 6a | r.(i=1;i<=N;i++).{........for.(j |
7540 | 3d 31 3b 6a 3c 3d 39 3b 6a 2b 2b 29 20 7b 0a 20 20 20 20 20 20 20 20 20 53 31 20 3b 0a 20 20 20 | =1;j<=9;j++).{..........S1.;.... |
7560 | 20 20 20 20 7d 0a 20 20 20 20 20 20 20 66 6f 72 20 28 6a 3d 31 30 3b 6a 3c 3d 4d 3b 6a 2b 2b 29 | ....}........for.(j=10;j<=M;j++) |
7580 | 20 7b 0a 20 20 20 20 20 20 20 20 20 53 31 20 3b 0a 20 20 20 20 20 20 20 20 20 53 32 20 3b 0a 20 | .{..........S1.;..........S2.;.. |
75a0 | 20 20 20 20 20 20 7d 0a 20 20 20 20 20 7d 0a 0a 1f 0a 46 69 6c 65 3a 20 63 6c 6f 6f 67 2e 69 6e | ......}......}....File:.cloog.in |
75c0 | 66 6f 2c 20 20 4e 6f 64 65 3a 20 53 69 6d 70 6c 69 66 79 20 43 6f 6e 76 65 78 20 48 75 6c 6c 2c | fo,..Node:.Simplify.Convex.Hull, |
75e0 | 20 20 4e 65 78 74 3a 20 4f 6e 63 65 20 54 69 6d 65 20 4c 6f 6f 70 20 45 6c 69 6d 69 6e 61 74 69 | ..Next:.Once.Time.Loop.Eliminati |
7600 | 6f 6e 2c 20 20 50 72 65 76 3a 20 46 69 72 73 74 20 44 65 70 74 68 20 74 6f 20 4f 70 74 69 6d 69 | on,..Prev:.First.Depth.to.Optimi |
7620 | 7a 65 20 43 6f 6e 74 72 6f 6c 2c 20 20 55 70 3a 20 43 4c 6f 6f 47 20 4f 70 74 69 6f 6e 73 0a 0a | ze.Control,..Up:.CLooG.Options.. |
7640 | 32 2e 34 2e 33 20 53 69 6d 70 6c 69 66 79 20 43 6f 6e 76 65 78 20 48 75 6c 6c 20 60 2d 73 68 20 | 2.4.3.Simplify.Convex.Hull.`-sh. |
7660 | 3c 62 6f 6f 6c 65 61 6e 3e 27 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | <boolean>'.--------------------- |
7680 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 60 2d 73 68 20 3c 62 6f 6f | ---------------------..`-sh.<boo |
76a0 | 6c 65 61 6e 3e 27 3a 20 74 68 69 73 20 6f 70 74 69 6f 6e 20 65 6e 61 62 6c 65 73 20 28 60 62 6f | lean>':.this.option.enables.(`bo |
76c0 | 6f 6c 65 61 6e 3d 31 27 29 20 20 20 20 20 20 6f 72 20 66 6f 72 62 69 64 73 0a 28 60 62 6f 6f 6c | olean=1')......or.forbids.(`bool |
76e0 | 65 61 6e 3d 30 27 29 20 61 20 73 69 6d 70 6c 69 66 69 63 61 74 69 6f 6e 20 73 74 65 70 20 20 20 | ean=0').a.simplification.step... |
7700 | 20 20 20 74 68 61 74 20 6d 61 79 20 73 69 6d 70 6c 69 66 79 20 73 6f 6d 65 0a 63 6f 6e 73 74 72 | ...that.may.simplify.some.constr |
7720 | 61 69 6e 74 73 2e 20 20 20 20 20 20 20 54 68 69 73 20 6f 70 74 69 6f 6e 20 77 6f 72 6b 73 20 6f | aints........This.option.works.o |
7740 | 6e 6c 79 20 66 6f 72 20 67 65 6e 65 72 61 74 65 64 20 63 6f 64 65 20 77 69 74 68 6f 75 74 0a 20 | nly.for.generated.code.without.. |
7760 | 63 6f 64 65 20 64 75 70 6c 69 63 61 74 69 6f 6e 20 28 69 74 20 6d 65 61 6e 73 2c 20 79 6f 75 20 | code.duplication.(it.means,.you. |
7780 | 68 61 76 65 20 74 6f 20 74 75 6e 65 20 60 2d 66 27 20 61 6e 64 20 20 20 20 20 20 60 2d 6c 27 0a | have.to.tune.`-f'.and......`-l'. |
77a0 | 6f 70 74 69 6f 6e 73 20 66 69 72 73 74 20 74 6f 20 67 65 6e 65 72 61 74 65 20 6f 6e 6c 79 20 61 | options.first.to.generate.only.a |
77c0 | 20 6c 6f 6f 70 20 6e 65 73 74 20 77 69 74 68 20 69 6e 74 65 72 6e 61 6c 20 20 20 20 20 20 67 75 | .loop.nest.with.internal......gu |
77e0 | 61 72 64 73 29 2e 0a 46 6f 72 20 69 6e 73 74 61 6e 63 65 2c 20 77 69 74 68 20 74 68 65 20 69 6e | ards)..For.instance,.with.the.in |
7800 | 70 75 74 20 66 69 6c 65 20 60 74 65 73 74 2f 75 6e 69 6f 6e 2e 63 6c 6f 6f 67 27 2c 20 61 20 75 | put.file.`test/union.cloog',.a.u |
7820 | 73 65 72 20 20 20 20 20 20 63 61 6e 0a 67 65 6e 65 72 61 74 65 20 64 69 66 66 65 72 65 6e 74 20 | ser......can.generate.different. |
7840 | 70 73 65 75 64 6f 2d 63 6f 64 65 73 20 20 61 73 20 73 68 6f 77 6e 20 62 65 6c 6f 77 2e 20 20 20 | pseudo-codes..as.shown.below.... |
7860 | 20 20 20 20 44 65 66 61 75 6c 74 20 76 61 6c 75 65 20 69 73 0a 30 2e 0a 20 20 20 20 20 2f 2a 20 | ....Default.value.is.0......./*. |
7880 | 47 65 6e 65 72 61 74 65 64 20 75 73 69 6e 67 20 74 65 73 74 2f 75 6e 69 6f 6e 2e 63 6c 6f 6f 67 | Generated.using.test/union.cloog |
78a0 | 20 61 6e 64 20 2a 6f 70 74 69 6f 6e 20 2d 66 20 2d 31 20 2d 6c 20 32 20 2d 6f 76 65 72 72 69 64 | .and.*option.-f.-1.-l.2.-overrid |
78c0 | 65 2a 20 2a 2f 0a 20 20 20 20 20 66 6f 72 20 28 69 3d 30 3b 69 3c 3d 31 31 3b 69 2b 2b 29 20 7b | e*.*/......for.(i=0;i<=11;i++).{ |
78e0 | 0a 20 20 20 20 20 20 20 66 6f 72 20 28 6a 3d 6d 61 78 28 30 2c 35 2a 69 2d 35 30 29 3b 6a 3c 3d | ........for.(j=max(0,5*i-50);j<= |
7900 | 6d 69 6e 28 31 35 2c 35 2a 69 2b 31 30 29 3b 6a 2b 2b 29 20 7b 0a 20 20 20 20 20 20 20 20 20 69 | min(15,5*i+10);j++).{..........i |
7920 | 66 20 28 28 69 20 3c 3d 20 31 30 29 20 26 26 20 28 6a 20 3c 3d 20 31 30 29 29 20 7b 0a 20 20 20 | f.((i.<=.10).&&.(j.<=.10)).{.... |
7940 | 20 20 20 20 20 20 20 20 53 31 20 3b 0a 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 | ........S1.;..........}......... |
7960 | 20 69 66 20 28 28 69 20 3e 3d 20 31 29 20 26 26 20 28 6a 20 3e 3d 20 35 29 29 20 7b 0a 20 20 20 | .if.((i.>=.1).&&.(j.>=.5)).{.... |
7980 | 20 20 20 20 20 20 20 20 53 32 20 3b 0a 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 7d | ........S2.;..........}........} |
79a0 | 0a 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 2f 2a 20 47 65 6e 65 72 61 74 65 64 20 75 73 69 6e 67 | ......}......./*.Generated.using |
79c0 | 20 74 68 65 20 73 61 6d 65 20 69 6e 70 75 74 20 66 69 6c 65 20 62 75 74 20 2a 6f 70 74 69 6f 6e | .the.same.input.file.but.*option |
79e0 | 20 2d 73 68 20 31 20 2d 66 20 2d 31 20 2d 6c 20 32 20 2d 6f 76 65 72 72 69 64 65 2a 20 2a 2f 0a | .-sh.1.-f.-1.-l.2.-override*.*/. |
7a00 | 20 20 20 20 20 66 6f 72 20 28 69 3d 30 3b 69 3c 3d 31 31 3b 69 2b 2b 29 20 7b 0a 20 20 20 20 20 | .....for.(i=0;i<=11;i++).{...... |
7a20 | 20 20 66 6f 72 20 28 6a 3d 30 3b 6a 3c 3d 31 35 3b 6a 2b 2b 29 20 7b 0a 20 20 20 20 20 20 20 20 | ..for.(j=0;j<=15;j++).{......... |
7a40 | 20 69 66 20 28 28 69 20 3c 3d 20 31 30 29 20 26 26 20 28 6a 20 3c 3d 20 31 30 29 29 20 7b 0a 20 | .if.((i.<=.10).&&.(j.<=.10)).{.. |
7a60 | 20 20 20 20 20 20 20 20 20 20 53 31 20 3b 0a 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 | ..........S1.;..........}....... |
7a80 | 20 20 20 69 66 20 28 28 69 20 3e 3d 20 31 29 20 26 26 20 28 6a 20 3e 3d 20 35 29 29 20 7b 0a 20 | ...if.((i.>=.1).&&.(j.>=.5)).{.. |
7aa0 | 20 20 20 20 20 20 20 20 20 20 53 32 20 3b 0a 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 | ..........S2.;..........}....... |
7ac0 | 20 7d 0a 20 20 20 20 20 7d 0a 0a 1f 0a 46 69 6c 65 3a 20 63 6c 6f 6f 67 2e 69 6e 66 6f 2c 20 20 | .}......}....File:.cloog.info,.. |
7ae0 | 4e 6f 64 65 3a 20 4f 6e 63 65 20 54 69 6d 65 20 4c 6f 6f 70 20 45 6c 69 6d 69 6e 61 74 69 6f 6e | Node:.Once.Time.Loop.Elimination |
7b00 | 2c 20 20 4e 65 78 74 3a 20 45 71 75 61 6c 69 74 79 20 53 70 72 65 61 64 69 6e 67 2c 20 20 50 72 | ,..Next:.Equality.Spreading,..Pr |
7b20 | 65 76 3a 20 53 69 6d 70 6c 69 66 79 20 43 6f 6e 76 65 78 20 48 75 6c 6c 2c 20 20 55 70 3a 20 43 | ev:.Simplify.Convex.Hull,..Up:.C |
7b40 | 4c 6f 6f 47 20 4f 70 74 69 6f 6e 73 0a 0a 32 2e 34 2e 34 20 4f 6e 63 65 20 54 69 6d 65 20 4c 6f | LooG.Options..2.4.4.Once.Time.Lo |
7b60 | 6f 70 20 45 6c 69 6d 69 6e 61 74 69 6f 6e 20 60 2d 6f 74 6c 20 3c 62 6f 6f 6c 65 61 6e 3e 27 0a | op.Elimination.`-otl.<boolean>'. |
7b80 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
7ba0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 60 2d 6f 74 6c 20 3c 62 6f 6f 6c 65 61 | -----------------..`-otl.<boolea |
7bc0 | 6e 3e 27 3a 20 74 68 69 73 20 6f 70 74 69 6f 6e 20 61 6c 6c 6f 77 73 20 28 60 62 6f 6f 6c 65 61 | n>':.this.option.allows.(`boolea |
7be0 | 6e 3d 31 27 29 20 6f 72 20 20 20 20 20 20 66 6f 72 62 69 64 73 0a 28 60 62 6f 6f 6c 65 61 6e 3d | n=1').or......forbids.(`boolean= |
7c00 | 30 27 29 20 74 68 65 20 73 69 6d 70 6c 69 66 69 63 61 74 69 6f 6e 20 6f 66 20 6c 6f 6f 70 73 20 | 0').the.simplification.of.loops. |
7c20 | 72 75 6e 6e 69 6e 67 20 20 20 20 20 20 6f 6e 63 65 2e 20 44 65 66 61 75 6c 74 0a 76 61 6c 75 65 | running......once..Default.value |
7c40 | 20 69 73 20 31 2e 0a 20 20 20 20 20 2f 2a 20 47 65 6e 65 72 61 74 65 64 20 75 73 69 6e 67 20 61 | .is.1......./*.Generated.using.a |
7c60 | 20 67 69 76 65 6e 20 69 6e 70 75 74 20 66 69 6c 65 20 61 6e 64 20 2a 6f 70 74 69 6f 6e 20 2d 6f | .given.input.file.and.*option.-o |
7c80 | 74 6c 20 30 2a 20 2a 2f 0a 20 20 20 20 20 66 6f 72 20 28 6a 3d 69 2b 31 3b 6a 3c 3d 69 2b 31 3b | tl.0*.*/......for.(j=i+1;j<=i+1; |
7ca0 | 6a 2b 2b 29 20 7b 0a 20 20 20 20 20 20 20 53 31 20 3b 0a 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 | j++).{........S1.;......}....... |
7cc0 | 2f 2a 20 47 65 6e 65 72 61 74 65 64 20 75 73 69 6e 67 20 74 68 65 20 73 61 6d 65 20 69 6e 70 75 | /*.Generated.using.the.same.inpu |
7ce0 | 74 20 66 69 6c 65 20 62 75 74 20 2a 6f 70 74 69 6f 6e 20 2d 6f 74 6c 20 31 2a 20 2a 2f 0a 20 20 | t.file.but.*option.-otl.1*.*/... |
7d00 | 20 20 20 6a 20 3d 20 69 2b 31 20 3b 0a 20 20 20 20 20 53 31 20 3b 0a 0a 1f 0a 46 69 6c 65 3a 20 | ...j.=.i+1.;......S1.;....File:. |
7d20 | 63 6c 6f 6f 67 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 45 71 75 61 6c 69 74 79 20 53 70 72 65 | cloog.info,..Node:.Equality.Spre |
7d40 | 61 64 69 6e 67 2c 20 20 4e 65 78 74 3a 20 43 6f 6e 73 74 61 6e 74 20 53 70 72 65 61 64 69 6e 67 | ading,..Next:.Constant.Spreading |
7d60 | 2c 20 20 50 72 65 76 3a 20 4f 6e 63 65 20 54 69 6d 65 20 4c 6f 6f 70 20 45 6c 69 6d 69 6e 61 74 | ,..Prev:.Once.Time.Loop.Eliminat |
7d80 | 69 6f 6e 2c 20 20 55 70 3a 20 43 4c 6f 6f 47 20 4f 70 74 69 6f 6e 73 0a 0a 32 2e 34 2e 35 20 45 | ion,..Up:.CLooG.Options..2.4.5.E |
7da0 | 71 75 61 6c 69 74 79 20 53 70 72 65 61 64 69 6e 67 20 60 2d 65 73 70 20 3c 62 6f 6f 6c 65 61 6e | quality.Spreading.`-esp.<boolean |
7dc0 | 3e 27 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | >'.----------------------------- |
7de0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 60 2d 65 73 70 20 3c 62 6f 6f 6c 65 61 6e 3e 27 3a 20 | ------------..`-esp.<boolean>':. |
7e00 | 74 68 69 73 20 6f 70 74 69 6f 6e 20 61 6c 6c 6f 77 73 20 28 60 62 6f 6f 6c 65 61 6e 3d 31 27 29 | this.option.allows.(`boolean=1') |
7e20 | 20 6f 72 20 20 20 20 20 20 66 6f 72 62 69 64 73 0a 28 60 62 6f 6f 6c 65 61 6e 3d 30 27 29 20 76 | .or......forbids.(`boolean=0').v |
7e40 | 61 6c 75 65 73 20 73 70 72 65 61 64 69 6e 67 20 77 68 65 6e 20 74 68 65 72 65 20 20 20 20 20 20 | alues.spreading.when.there...... |
7e60 | 61 72 65 20 65 71 75 61 6c 69 74 69 65 73 2e 20 44 65 66 61 75 6c 74 0a 76 61 6c 75 65 20 69 73 | are.equalities..Default.value.is |
7e80 | 20 30 2e 0a 20 20 20 20 20 2f 2a 20 47 65 6e 65 72 61 74 65 64 20 75 73 69 6e 67 20 61 20 67 69 | .0......./*.Generated.using.a.gi |
7ea0 | 76 65 6e 20 69 6e 70 75 74 20 66 69 6c 65 20 61 6e 64 20 2a 6f 70 74 69 6f 6e 20 2d 65 73 70 20 | ven.input.file.and.*option.-esp. |
7ec0 | 30 2a 20 2a 2f 0a 20 20 20 20 20 69 20 3d 20 4d 2b 32 20 3b 0a 20 20 20 20 20 6a 20 3d 20 4e 20 | 0*.*/......i.=.M+2.;......j.=.N. |
7ee0 | 3b 0a 20 20 20 20 20 66 6f 72 20 28 6b 3d 69 3b 6b 3c 3d 6a 2b 4d 3b 6b 2b 2b 29 20 7b 0a 20 20 | ;......for.(k=i;k<=j+M;k++).{... |
7f00 | 20 20 20 20 20 53 31 20 3b 0a 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 2f 2a 20 47 65 6e 65 72 61 | .....S1.;......}......./*.Genera |
7f20 | 74 65 64 20 75 73 69 6e 67 20 74 68 65 20 73 61 6d 65 20 69 6e 70 75 74 20 66 69 6c 65 20 62 75 | ted.using.the.same.input.file.bu |
7f40 | 74 20 2a 6f 70 74 69 6f 6e 20 2d 65 73 70 20 31 2a 20 2a 2f 0a 20 20 20 20 20 66 6f 72 20 28 6b | t.*option.-esp.1*.*/......for.(k |
7f60 | 3d 4d 2b 32 3b 6b 3c 3d 4e 2b 4d 3b 6b 2b 2b 29 20 7b 0a 20 20 20 20 20 20 20 53 31 28 69 20 3d | =M+2;k<=N+M;k++).{........S1(i.= |
7f80 | 20 4d 2b 32 2c 20 6a 20 3d 20 4e 29 20 3b 0a 20 20 20 20 20 7d 0a 0a 1f 0a 46 69 6c 65 3a 20 63 | .M+2,.j.=.N).;......}....File:.c |
7fa0 | 6c 6f 6f 67 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 43 6f 6e 73 74 61 6e 74 20 53 70 72 65 61 | loog.info,..Node:.Constant.Sprea |
7fc0 | 64 69 6e 67 2c 20 20 4e 65 78 74 3a 20 46 69 72 73 74 20 4c 65 76 65 6c 20 66 6f 72 20 53 70 72 | ding,..Next:.First.Level.for.Spr |
7fe0 | 65 61 64 69 6e 67 2c 20 20 50 72 65 76 3a 20 45 71 75 61 6c 69 74 79 20 53 70 72 65 61 64 69 6e | eading,..Prev:.Equality.Spreadin |
8000 | 67 2c 20 20 55 70 3a 20 43 4c 6f 6f 47 20 4f 70 74 69 6f 6e 73 0a 0a 32 2e 34 2e 36 20 43 6f 6e | g,..Up:.CLooG.Options..2.4.6.Con |
8020 | 73 74 61 6e 74 20 53 70 72 65 61 64 69 6e 67 20 60 2d 63 73 70 20 3c 62 6f 6f 6c 65 61 6e 3e 27 | stant.Spreading.`-csp.<boolean>' |
8040 | 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | .------------------------------- |
8060 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 60 2d 63 73 70 20 3c 62 6f 6f 6c 65 61 6e 3e 27 3a 20 74 68 | ----------..`-csp.<boolean>':.th |
8080 | 69 73 20 6f 70 74 69 6f 6e 20 61 6c 6c 6f 77 73 20 28 60 62 6f 6f 6c 65 61 6e 3d 31 27 29 20 6f | is.option.allows.(`boolean=1').o |
80a0 | 72 20 20 20 20 20 20 66 6f 72 62 69 64 73 0a 28 60 62 6f 6f 6c 65 61 6e 3d 30 27 29 20 76 61 6c | r......forbids.(`boolean=0').val |
80c0 | 75 65 73 20 73 70 72 65 61 64 69 6e 67 20 77 68 65 6e 20 20 20 20 20 20 74 68 65 72 65 20 61 72 | ues.spreading.when......there.ar |
80e0 | 65 20 5f 63 6f 6e 73 74 61 6e 74 5f 0a 65 71 75 61 6c 69 74 69 65 73 2e 20 54 68 61 74 20 69 73 | e._constant_.equalities..That.is |
8100 | 2c 20 77 68 65 6e 20 74 68 65 20 72 69 67 68 74 20 6d 65 6d 62 65 72 20 20 20 20 20 20 6f 66 20 | ,.when.the.right.member......of. |
8120 | 74 68 65 20 65 71 75 61 6c 69 74 79 20 69 73 20 61 0a 63 6f 6e 73 74 61 6e 74 20 74 65 72 6d 2e | the.equality.is.a.constant.term. |
8140 | 20 44 65 66 61 75 6c 74 20 76 61 6c 75 65 20 69 73 20 31 2e 0a 20 20 20 20 20 2f 2a 20 47 65 6e | .Default.value.is.1......./*.Gen |
8160 | 65 72 61 74 65 64 20 75 73 69 6e 67 20 61 20 67 69 76 65 6e 20 69 6e 70 75 74 20 66 69 6c 65 20 | erated.using.a.given.input.file. |
8180 | 61 6e 64 20 2a 6f 70 74 69 6f 6e 20 2d 63 73 70 20 30 2a 20 2a 2f 0a 20 20 20 20 20 69 20 3d 20 | and.*option.-csp.0*.*/......i.=. |
81a0 | 4d 2b 32 20 3b 0a 20 20 20 20 20 6a 20 3d 20 4e 20 3b 0a 20 20 20 20 20 66 6f 72 20 28 6b 3d 69 | M+2.;......j.=.N.;......for.(k=i |
81c0 | 3b 6a 3c 3d 6a 2b 4d 3b 6a 2b 2b 29 20 7b 0a 20 20 20 20 20 20 20 53 31 20 3b 0a 20 20 20 20 20 | ;j<=j+M;j++).{........S1.;...... |
81e0 | 7d 0a 0a 20 20 20 20 20 2f 2a 20 47 65 6e 65 72 61 74 65 64 20 75 73 69 6e 67 20 74 68 65 20 73 | }......./*.Generated.using.the.s |
8200 | 61 6d 65 20 69 6e 70 75 74 20 66 69 6c 65 20 62 75 74 20 2a 6f 70 74 69 6f 6e 20 2d 63 73 70 20 | ame.input.file.but.*option.-csp. |
8220 | 31 2a 20 2a 2f 0a 20 20 20 20 20 69 20 3d 20 4d 2b 32 20 3b 0a 20 20 20 20 20 66 6f 72 20 28 6b | 1*.*/......i.=.M+2.;......for.(k |
8240 | 3d 69 3b 6b 3c 3d 4e 2b 4d 3b 6b 2b 2b 29 20 7b 0a 20 20 20 20 20 20 20 53 31 28 6a 20 3d 20 4e | =i;k<=N+M;k++).{........S1(j.=.N |
8260 | 29 20 3b 0a 20 20 20 20 20 7d 0a 0a 1f 0a 46 69 6c 65 3a 20 63 6c 6f 6f 67 2e 69 6e 66 6f 2c 20 | ).;......}....File:.cloog.info,. |
8280 | 20 4e 6f 64 65 3a 20 46 69 72 73 74 20 4c 65 76 65 6c 20 66 6f 72 20 53 70 72 65 61 64 69 6e 67 | .Node:.First.Level.for.Spreading |
82a0 | 2c 20 20 4e 65 78 74 3a 20 43 20 50 72 65 50 72 6f 63 65 73 73 6f 72 20 46 72 69 65 6e 64 6c 79 | ,..Next:.C.PreProcessor.Friendly |
82c0 | 2c 20 20 50 72 65 76 3a 20 43 6f 6e 73 74 61 6e 74 20 53 70 72 65 61 64 69 6e 67 2c 20 20 55 70 | ,..Prev:.Constant.Spreading,..Up |
82e0 | 3a 20 43 4c 6f 6f 47 20 4f 70 74 69 6f 6e 73 0a 0a 32 2e 34 2e 37 20 46 69 72 73 74 20 4c 65 76 | :.CLooG.Options..2.4.7.First.Lev |
8300 | 65 6c 20 66 6f 72 20 53 70 72 65 61 64 69 6e 67 20 60 2d 66 73 70 20 3c 6c 65 76 65 6c 3e 27 0a | el.for.Spreading.`-fsp.<level>'. |
8320 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
8340 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 60 2d 66 73 70 20 3c 6c 65 76 65 6c 3e 27 3a 20 | --------------..`-fsp.<level>':. |
8360 | 69 74 20 63 61 6e 20 62 65 20 75 73 65 66 75 6c 20 74 6f 20 73 65 74 20 61 20 20 20 20 20 20 66 | it.can.be.useful.to.set.a......f |
8380 | 69 72 73 74 20 6c 65 76 65 6c 20 74 6f 20 62 65 67 69 6e 0a 65 71 75 61 6c 69 74 79 20 73 70 72 | irst.level.to.begin.equality.spr |
83a0 | 65 61 64 69 6e 67 2e 20 50 61 72 74 69 63 75 6c 61 72 6c 79 20 77 68 65 6e 20 75 73 69 6e 67 20 | eading..Particularly.when.using. |
83c0 | 20 20 20 20 20 73 63 61 74 74 65 72 69 6e 67 20 66 75 6e 63 74 69 6f 6e 73 2c 0a 74 68 65 20 75 | .....scattering.functions,.the.u |
83e0 | 73 65 72 20 6d 61 79 20 77 61 6e 74 20 74 6f 20 73 65 65 20 74 68 65 20 73 63 61 74 74 65 72 69 | ser.may.want.to.see.the.scatteri |
8400 | 6e 67 20 64 69 6d 65 6e 73 69 6f 6e 20 20 20 20 20 20 76 61 6c 75 65 73 20 69 6e 73 74 65 61 64 | ng.dimension......values.instead |
8420 | 0a 6f 66 20 73 70 72 65 61 64 69 6e 67 20 6f 72 20 68 69 64 69 6e 67 20 74 68 65 6d 2e 20 49 66 | .of.spreading.or.hiding.them..If |
8440 | 20 75 73 65 72 20 68 61 73 20 73 65 74 20 61 20 20 20 20 20 20 73 70 72 65 61 64 69 6e 67 2c 20 | .user.has.set.a......spreading,. |
8460 | 60 6c 65 76 65 6c 27 0a 69 73 20 20 20 20 20 20 74 68 65 20 66 69 72 73 74 20 6c 65 76 65 6c 20 | `level'.is......the.first.level. |
8480 | 74 6f 20 73 74 61 72 74 20 69 74 2e 20 44 65 66 61 75 6c 74 20 76 61 6c 75 65 20 69 73 20 31 2e | to.start.it..Default.value.is.1. |
84a0 | 0a 20 20 20 20 20 2f 2a 20 47 65 6e 65 72 61 74 65 64 20 75 73 69 6e 67 20 61 20 67 69 76 65 6e | ....../*.Generated.using.a.given |
84c0 | 20 69 6e 70 75 74 20 66 69 6c 65 20 61 6e 64 20 2a 6f 70 74 69 6f 6e 20 2d 66 73 70 20 31 2a 20 | .input.file.and.*option.-fsp.1*. |
84e0 | 2a 2f 0a 20 20 20 20 20 66 6f 72 20 28 6a 3d 30 3b 6a 3c 3d 4e 2b 4d 3b 6a 2b 2b 29 20 7b 0a 20 | */......for.(j=0;j<=N+M;j++).{.. |
8500 | 20 20 20 20 20 20 53 31 28 69 20 3d 20 4e 29 20 3b 0a 20 20 20 20 20 7d 0a 20 20 20 20 20 66 6f | ......S1(i.=.N).;......}......fo |
8520 | 72 20 28 6a 3d 30 3b 6a 3c 3d 4e 2b 4d 3b 6a 2b 2b 29 20 7b 0a 20 20 20 20 20 20 20 53 31 28 69 | r.(j=0;j<=N+M;j++).{........S1(i |
8540 | 20 3d 20 4d 29 20 3b 0a 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 2f 2a 20 47 65 6e 65 72 61 74 65 | .=.M).;......}......./*.Generate |
8560 | 64 20 75 73 69 6e 67 20 74 68 65 20 73 61 6d 65 20 69 6e 70 75 74 20 66 69 6c 65 20 62 75 74 20 | d.using.the.same.input.file.but. |
8580 | 2a 6f 70 74 69 6f 6e 20 2d 66 73 70 20 32 2a 20 2a 2f 0a 20 20 20 20 20 63 31 20 3d 20 4e 20 3b | *option.-fsp.2*.*/......c1.=.N.; |
85a0 | 0a 20 20 20 20 20 66 6f 72 20 28 6a 3d 30 3b 6a 3c 3d 63 31 2b 4d 3b 6a 2b 2b 29 20 7b 0a 20 20 | ......for.(j=0;j<=c1+M;j++).{... |
85c0 | 20 20 20 20 20 53 31 28 69 20 3d 20 63 31 29 20 3b 0a 20 20 20 20 20 7d 0a 20 20 20 20 20 63 31 | .....S1(i.=.c1).;......}......c1 |
85e0 | 20 3d 20 4d 20 3b 0a 20 20 20 20 20 66 6f 72 20 28 6a 3d 30 3b 6a 3c 3d 4e 2b 63 31 3b 6a 2b 2b | .=.M.;......for.(j=0;j<=N+c1;j++ |
8600 | 29 20 7b 0a 20 20 20 20 20 20 20 53 31 28 69 20 3d 20 63 31 29 20 3b 0a 20 20 20 20 20 7d 0a 0a | ).{........S1(i.=.c1).;......}.. |
8620 | 1f 0a 46 69 6c 65 3a 20 63 6c 6f 6f 67 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 43 20 50 72 65 | ..File:.cloog.info,..Node:.C.Pre |
8640 | 50 72 6f 63 65 73 73 6f 72 20 46 72 69 65 6e 64 6c 79 2c 20 20 4e 65 78 74 3a 20 53 74 61 74 65 | Processor.Friendly,..Next:.State |
8660 | 6d 65 6e 74 20 42 6c 6f 63 6b 2c 20 20 50 72 65 76 3a 20 46 69 72 73 74 20 4c 65 76 65 6c 20 66 | ment.Block,..Prev:.First.Level.f |
8680 | 6f 72 20 53 70 72 65 61 64 69 6e 67 2c 20 20 55 70 3a 20 43 4c 6f 6f 47 20 4f 70 74 69 6f 6e 73 | or.Spreading,..Up:.CLooG.Options |
86a0 | 0a 0a 32 2e 34 2e 38 20 43 20 50 72 65 50 72 6f 63 65 73 73 6f 72 20 46 72 69 65 6e 64 6c 79 20 | ..2.4.8.C.PreProcessor.Friendly. |
86c0 | 60 2d 63 70 70 20 3c 62 6f 6f 6c 65 61 6e 3e 27 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | `-cpp.<boolean>'.--------------- |
86e0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a | -------------------------------. |
8700 | 0a 60 2d 63 70 70 20 3c 62 6f 6f 6c 65 61 6e 3e 27 3a 20 74 68 69 73 20 6f 70 74 69 6f 6e 20 61 | .`-cpp.<boolean>':.this.option.a |
8720 | 73 6b 20 43 4c 6f 6f 47 20 66 6f 72 20 70 72 69 6e 74 69 6e 67 20 61 20 6c 65 73 73 0a 68 75 6d | sk.CLooG.for.printing.a.less.hum |
8740 | 61 6e 2d 72 65 61 64 61 62 6c 65 20 62 75 74 20 63 6f 6d 70 69 6c 61 62 6c 65 20 63 6f 64 65 20 | an-readable.but.compilable.code. |
8760 | 62 79 20 75 73 69 6e 67 20 74 68 65 20 43 20 70 72 65 70 72 6f 63 65 73 73 6f 72 0a 28 60 62 6f | by.using.the.C.preprocessor.(`bo |
8780 | 6f 6c 65 61 6e 3d 31 27 29 2e 20 49 6e 20 74 68 69 73 20 63 61 73 65 20 65 61 63 68 20 73 74 61 | olean=1')..In.this.case.each.sta |
87a0 | 74 65 6d 65 6e 74 20 69 73 20 77 72 69 74 74 65 6e 20 61 73 20 61 0a 66 75 6e 63 74 69 6f 6e 20 | tement.is.written.as.a.function. |
87c0 | 6f 66 20 74 68 65 20 69 74 65 72 61 74 6f 72 73 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 74 | of.the.iterators.corresponding.t |
87e0 | 6f 20 69 74 73 20 64 6f 6d 61 69 6e 20 64 69 6d 65 6e 73 69 6f 6e 73 3a 0a 60 53 69 28 76 61 6c | o.its.domain.dimensions:.`Si(val |
8800 | 75 65 5f 6f 66 5f 69 74 65 72 61 74 6f 72 5f 31 2c 2e 2e 2e 2c 76 61 6c 75 65 5f 6f 66 5f 69 74 | ue_of_iterator_1,...,value_of_it |
8820 | 65 72 61 74 6f 72 5f 6e 29 27 2e 20 49 74 20 66 6f 6c 6c 6f 77 73 20 20 20 20 20 20 74 68 61 74 | erator_n)'..It.follows......that |
8840 | 0a 74 68 65 20 75 73 65 72 20 63 61 6e 20 65 61 73 69 6c 79 20 61 64 64 20 70 72 65 70 72 6f 63 | .the.user.can.easily.add.preproc |
8860 | 65 73 73 6f 72 20 6d 61 63 72 6f 73 20 74 6f 20 64 65 66 69 6e 65 20 65 61 63 68 0a 73 74 61 74 | essor.macros.to.define.each.stat |
8880 | 65 6d 65 6e 74 20 61 6e 64 20 75 73 65 20 74 68 65 20 67 65 6e 65 72 61 74 65 64 20 74 65 78 74 | ement.and.use.the.generated.text |
88a0 | 75 61 6c 20 63 6f 64 65 20 64 69 72 65 63 74 6c 79 20 66 6f 72 20 63 6f 6d 70 69 6c 61 74 69 6f | ual.code.directly.for.compilatio |
88c0 | 6e 2e 0a 20 20 20 20 57 68 65 6e 20 60 62 6f 6f 6c 65 61 6e 27 20 69 73 20 73 65 74 20 74 6f 20 | n......When.`boolean'.is.set.to. |
88e0 | 30 2c 20 74 68 65 20 70 72 65 74 74 79 20 70 72 69 6e 74 65 72 20 68 61 73 20 74 68 65 20 64 65 | 0,.the.pretty.printer.has.the.de |
8900 | 66 61 75 6c 74 0a 62 65 68 61 76 69 6f 75 72 2e 20 44 65 66 61 75 6c 74 20 76 61 6c 75 65 20 69 | fault.behaviour..Default.value.i |
8920 | 73 20 30 2e 0a 20 20 20 20 20 2f 2a 20 47 65 6e 65 72 61 74 65 64 20 75 73 69 6e 67 20 61 20 67 | s.0......./*.Generated.using.a.g |
8940 | 69 76 65 6e 20 69 6e 70 75 74 20 66 69 6c 65 20 61 6e 64 20 2a 6f 70 74 69 6f 6e 20 2d 63 70 70 | iven.input.file.and.*option.-cpp |
8960 | 20 30 2a 20 2a 2f 0a 20 20 20 20 20 66 6f 72 20 28 6a 3d 30 3b 6a 3c 3d 4e 2b 4d 3b 6a 2b 2b 29 | .0*.*/......for.(j=0;j<=N+M;j++) |
8980 | 20 7b 0a 20 20 20 20 20 20 20 53 31 28 69 20 3d 20 4e 29 20 3b 0a 20 20 20 20 20 7d 0a 0a 20 20 | .{........S1(i.=.N).;......}.... |
89a0 | 20 20 20 2f 2a 20 47 65 6e 65 72 61 74 65 64 20 75 73 69 6e 67 20 74 68 65 20 73 61 6d 65 20 69 | .../*.Generated.using.the.same.i |
89c0 | 6e 70 75 74 20 66 69 6c 65 20 62 75 74 20 2a 6f 70 74 69 6f 6e 20 2d 63 70 70 20 31 2a 20 2a 2f | nput.file.but.*option.-cpp.1*.*/ |
89e0 | 0a 20 20 20 20 20 2f 2a 20 61 6e 64 20 61 20 70 72 65 70 72 6f 63 65 73 73 6f 72 20 6d 61 63 72 | ....../*.and.a.preprocessor.macr |
8a00 | 6f 20 73 65 74 20 62 79 20 74 68 65 20 75 73 65 72 20 2a 2f 0a 0a 20 20 20 20 20 23 64 65 66 69 | o.set.by.the.user.*/.......#defi |
8a20 | 6e 65 20 53 31 28 69 2c 6a 29 20 41 5b 28 6a 29 5d 3d 33 2a 28 69 29 0a 0a 20 20 20 20 20 66 6f | ne.S1(i,j).A[(j)]=3*(i).......fo |
8a40 | 72 20 28 6a 3d 30 3b 6a 3c 3d 4e 2b 4d 3b 6a 2b 2b 29 20 7b 0a 20 20 20 20 20 20 20 53 31 28 4e | r.(j=0;j<=N+M;j++).{........S1(N |
8a60 | 2c 6a 29 20 3b 0a 20 20 20 20 20 7d 0a 0a 1f 0a 46 69 6c 65 3a 20 63 6c 6f 6f 67 2e 69 6e 66 6f | ,j).;......}....File:.cloog.info |
8a80 | 2c 20 20 4e 6f 64 65 3a 20 53 74 61 74 65 6d 65 6e 74 20 42 6c 6f 63 6b 2c 20 20 4e 65 78 74 3a | ,..Node:.Statement.Block,..Next: |
8aa0 | 20 4c 6f 6f 70 20 53 74 72 69 64 65 73 2c 20 20 50 72 65 76 3a 20 43 20 50 72 65 50 72 6f 63 65 | .Loop.Strides,..Prev:.C.PreProce |
8ac0 | 73 73 6f 72 20 46 72 69 65 6e 64 6c 79 2c 20 20 55 70 3a 20 43 4c 6f 6f 47 20 4f 70 74 69 6f 6e | ssor.Friendly,..Up:.CLooG.Option |
8ae0 | 73 0a 0a 32 2e 34 2e 39 20 53 74 61 74 65 6d 65 6e 74 20 42 6c 6f 63 6b 20 60 2d 62 6c 6f 63 6b | s..2.4.9.Statement.Block.`-block |
8b00 | 20 3c 62 6f 6f 6c 65 61 6e 3e 27 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | .<boolean>'.-------------------- |
8b20 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 60 2d 62 6c 6f 63 6b 20 3c 62 | --------------------..`-block.<b |
8b40 | 6f 6f 6c 65 61 6e 3e 27 3a 20 74 68 69 73 20 6f 70 74 69 6f 6e 20 61 6c 6c 6f 77 73 20 28 60 62 | oolean>':.this.option.allows.(`b |
8b60 | 6f 6f 6c 65 61 6e 3d 31 27 29 20 74 6f 20 20 20 20 20 20 63 72 65 61 74 65 20 61 0a 73 74 61 74 | oolean=1').to......create.a.stat |
8b80 | 65 6d 65 6e 74 20 62 6c 6f 63 6b 20 66 6f 72 20 65 61 63 68 20 6e 65 77 20 69 74 65 72 61 74 6f | ement.block.for.each.new.iterato |
8ba0 | 72 2c 20 65 76 65 6e 20 69 66 20 74 68 65 72 65 20 69 73 20 6f 6e 6c 79 20 20 20 20 20 20 61 6e | r,.even.if.there.is.only......an |
8bc0 | 0a 65 71 75 61 6c 69 74 79 2e 20 54 68 69 73 20 63 61 6e 20 62 65 20 75 73 65 66 75 6c 20 69 6e | .equality..This.can.be.useful.in |
8be0 | 20 6f 72 64 65 72 20 74 6f 20 70 61 72 73 65 20 74 68 65 20 67 65 6e 65 72 61 74 65 64 0a 70 73 | .order.to.parse.the.generated.ps |
8c00 | 65 75 64 6f 2d 63 6f 64 65 2e 20 57 68 65 6e 20 60 62 6f 6f 6c 65 61 6e 27 20 69 73 20 73 65 74 | eudo-code..When.`boolean'.is.set |
8c20 | 20 74 6f 20 30 20 6f 72 20 77 68 65 6e 20 74 68 65 20 67 65 6e 65 72 61 74 69 6f 6e 0a 6c 61 6e | .to.0.or.when.the.generation.lan |
8c40 | 67 75 61 67 65 20 69 73 20 46 4f 52 54 52 41 4e 2c 20 74 68 69 73 20 66 65 61 74 75 72 65 20 69 | guage.is.FORTRAN,.this.feature.i |
8c60 | 73 20 64 69 73 61 62 6c 65 64 2e 20 44 65 66 61 75 6c 74 20 76 61 6c 75 65 20 69 73 20 30 2e 0a | s.disabled..Default.value.is.0.. |
8c80 | 20 20 20 20 20 2f 2a 20 47 65 6e 65 72 61 74 65 64 20 75 73 69 6e 67 20 61 20 67 69 76 65 6e 20 | ...../*.Generated.using.a.given. |
8ca0 | 69 6e 70 75 74 20 66 69 6c 65 20 61 6e 64 20 2a 6f 70 74 69 6f 6e 20 2d 62 6c 6f 63 6b 20 30 2a | input.file.and.*option.-block.0* |
8cc0 | 20 2a 2f 0a 20 20 20 20 20 69 20 3d 20 4d 2b 32 20 3b 0a 20 20 20 20 20 6a 20 3d 20 4e 20 3b 0a | .*/......i.=.M+2.;......j.=.N.;. |
8ce0 | 20 20 20 20 20 53 31 20 3b 0a 0a 20 20 20 20 20 2f 2a 20 47 65 6e 65 72 61 74 65 64 20 75 73 69 | .....S1.;......./*.Generated.usi |
8d00 | 6e 67 20 74 68 65 20 73 61 6d 65 20 69 6e 70 75 74 20 66 69 6c 65 20 62 75 74 20 2a 6f 70 74 69 | ng.the.same.input.file.but.*opti |
8d20 | 6f 6e 20 2d 62 6c 6f 63 6b 20 31 2a 20 2a 2f 0a 20 20 20 20 20 7b 20 69 20 3d 20 4d 2b 32 20 3b | on.-block.1*.*/......{.i.=.M+2.; |
8d40 | 0a 20 20 20 20 20 20 20 7b 20 6a 20 3d 20 4e 20 3b 0a 20 20 20 20 20 20 20 20 20 53 31 20 3b 0a | ........{.j.=.N.;..........S1.;. |
8d60 | 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 7d 0a 0a 1f 0a 46 69 6c 65 3a 20 63 6c 6f 6f 67 2e 69 | .......}......}....File:.cloog.i |
8d80 | 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 4c 6f 6f 70 20 53 74 72 69 64 65 73 2c 20 20 4e 65 78 74 3a | nfo,..Node:.Loop.Strides,..Next: |
8da0 | 20 43 6f 6d 70 69 6c 61 62 6c 65 20 43 6f 64 65 2c 20 20 50 72 65 76 3a 20 53 74 61 74 65 6d 65 | .Compilable.Code,..Prev:.Stateme |
8dc0 | 6e 74 20 42 6c 6f 63 6b 2c 20 20 55 70 3a 20 43 4c 6f 6f 47 20 4f 70 74 69 6f 6e 73 0a 0a 32 2e | nt.Block,..Up:.CLooG.Options..2. |
8de0 | 34 2e 31 30 20 4c 6f 6f 70 20 53 74 72 69 64 65 73 20 60 2d 73 74 72 69 64 65 73 20 3c 62 6f 6f | 4.10.Loop.Strides.`-strides.<boo |
8e00 | 6c 65 61 6e 3e 27 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | lean>'.------------------------- |
8e20 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 60 2d 73 74 72 69 64 65 73 20 3c 62 6f 6f 6c | ---------------..`-strides.<bool |
8e40 | 65 61 6e 3e 27 3a 20 74 68 69 73 20 6f 70 74 69 6f 6e 73 20 61 6c 6c 6f 77 73 20 28 60 62 6f 6f | ean>':.this.options.allows.(`boo |
8e60 | 6c 65 61 6e 3d 31 27 29 20 74 6f 20 20 20 20 20 20 68 61 6e 64 6c 65 0a 6e 6f 6e 2d 75 6e 69 74 | lean=1').to......handle.non-unit |
8e80 | 20 73 74 72 69 64 65 73 20 66 6f 72 20 6c 6f 6f 70 20 69 6e 63 72 65 6d 65 6e 74 73 2e 20 54 68 | .strides.for.loop.increments..Th |
8ea0 | 69 73 20 63 61 6e 20 72 65 6d 6f 76 65 20 61 20 6c 6f 74 20 6f 66 0a 67 75 61 72 64 73 20 61 6e | is.can.remove.a.lot.of.guards.an |
8ec0 | 64 20 6d 61 6b 65 20 74 68 65 20 67 65 6e 65 72 61 74 65 64 20 63 6f 64 65 20 6d 6f 72 65 20 65 | d.make.the.generated.code.more.e |
8ee0 | 66 66 69 63 69 65 6e 74 2e 20 44 65 66 61 75 6c 74 20 76 61 6c 75 65 20 69 73 20 30 2e 0a 20 20 | fficient..Default.value.is.0.... |
8f00 | 20 20 20 2f 2a 20 47 65 6e 65 72 61 74 65 64 20 75 73 69 6e 67 20 61 20 67 69 76 65 6e 20 69 6e | .../*.Generated.using.a.given.in |
8f20 | 70 75 74 20 66 69 6c 65 20 61 6e 64 20 2a 6f 70 74 69 6f 6e 20 2d 73 74 72 69 64 65 73 20 30 2a | put.file.and.*option.-strides.0* |
8f40 | 20 2a 2f 0a 20 20 20 20 20 66 6f 72 20 28 69 3d 31 3b 69 3c 3d 6e 3b 69 2b 2b 29 20 7b 0a 20 20 | .*/......for.(i=1;i<=n;i++).{... |
8f60 | 20 20 20 20 20 69 66 20 28 69 25 32 20 3d 3d 20 30 29 20 7b 0a 20 20 20 20 20 20 20 20 20 53 31 | .....if.(i%2.==.0).{..........S1 |
8f80 | 28 6a 20 3d 20 69 2f 32 29 20 3b 0a 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 69 66 20 28 | (j.=.i/2).;........}........if.( |
8fa0 | 69 25 34 20 3d 3d 20 30 29 20 7b 0a 20 20 20 20 20 20 20 20 20 53 32 28 6a 20 3d 20 69 2f 34 29 | i%4.==.0).{..........S2(j.=.i/4) |
8fc0 | 20 3b 0a 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 2f 2a 20 47 65 6e 65 | .;........}......}......./*.Gene |
8fe0 | 72 61 74 65 64 20 75 73 69 6e 67 20 74 68 65 20 73 61 6d 65 20 69 6e 70 75 74 20 66 69 6c 65 20 | rated.using.the.same.input.file. |
9000 | 62 75 74 20 2a 6f 70 74 69 6f 6e 20 2d 73 74 72 69 64 65 73 20 31 2a 20 2a 2f 0a 20 20 20 20 20 | but.*option.-strides.1*.*/...... |
9020 | 66 6f 72 20 28 69 3d 32 3b 69 3c 3d 6e 3b 69 2b 3d 32 29 20 7b 0a 20 20 20 20 20 20 20 53 31 28 | for.(i=2;i<=n;i+=2).{........S1( |
9040 | 6a 20 3d 20 69 2f 32 29 20 3b 0a 20 20 20 20 20 20 20 69 66 20 28 69 25 34 20 3d 3d 20 30 29 20 | j.=.i/2).;........if.(i%4.==.0). |
9060 | 7b 0a 20 20 20 20 20 20 20 20 20 53 32 28 6a 20 3d 20 69 2f 34 29 20 3b 0a 20 20 20 20 20 20 20 | {..........S2(j.=.i/4).;........ |
9080 | 7d 0a 20 20 20 20 20 7d 0a 0a 1f 0a 46 69 6c 65 3a 20 63 6c 6f 6f 67 2e 69 6e 66 6f 2c 20 20 4e | }......}....File:.cloog.info,..N |
90a0 | 6f 64 65 3a 20 43 6f 6d 70 69 6c 61 62 6c 65 20 43 6f 64 65 2c 20 20 4e 65 78 74 3a 20 4f 75 74 | ode:.Compilable.Code,..Next:.Out |
90c0 | 70 75 74 2c 20 20 50 72 65 76 3a 20 4c 6f 6f 70 20 53 74 72 69 64 65 73 2c 20 20 55 70 3a 20 43 | put,..Prev:.Loop.Strides,..Up:.C |
90e0 | 4c 6f 6f 47 20 4f 70 74 69 6f 6e 73 0a 0a 32 2e 34 2e 31 31 20 43 6f 6d 70 69 6c 61 62 6c 65 20 | LooG.Options..2.4.11.Compilable. |
9100 | 43 6f 64 65 20 60 2d 63 6f 6d 70 69 6c 61 62 6c 65 20 3c 76 61 6c 75 65 3e 27 0a 2d 2d 2d 2d 2d | Code.`-compilable.<value>'.----- |
9120 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
9140 | 2d 2d 2d 2d 2d 2d 2d 0a 0a 60 2d 63 6f 6d 70 69 6c 61 62 6c 65 20 3c 76 61 6c 75 65 3e 27 3a 20 | -------..`-compilable.<value>':. |
9160 | 74 68 69 73 20 6f 70 74 69 6f 6e 73 20 61 6c 6c 6f 77 73 20 28 60 76 61 6c 75 65 27 20 69 73 20 | this.options.allows.(`value'.is. |
9180 | 6e 6f 74 20 30 29 20 20 20 20 20 20 74 6f 0a 67 65 6e 65 72 61 74 65 20 61 20 63 6f 6d 70 69 6c | not.0)......to.generate.a.compil |
91a0 | 61 62 6c 65 20 63 6f 64 65 20 77 68 65 72 65 20 61 6c 6c 20 70 61 72 61 6d 65 74 65 72 73 20 68 | able.code.where.all.parameters.h |
91c0 | 61 76 65 20 74 68 65 20 69 6e 74 65 67 72 61 6c 20 76 61 6c 75 65 0a 20 20 20 20 60 76 61 6c 75 | ave.the.integral.value.....`valu |
91e0 | 65 27 2e 20 54 68 69 73 20 6f 70 74 69 6f 6e 20 63 72 65 61 74 65 73 20 61 20 6d 61 63 72 6f 20 | e'..This.option.creates.a.macro. |
9200 | 66 6f 72 20 65 61 63 68 20 73 74 61 74 65 6d 65 6e 74 2e 20 53 69 6e 63 65 0a 43 4c 6f 6f 47 20 | for.each.statement..Since.CLooG. |
9220 | 64 6f 20 6e 6f 74 20 6b 6e 6f 77 20 61 6e 79 74 68 69 6e 67 20 61 62 6f 75 74 20 74 68 65 20 73 | do.not.know.anything.about.the.s |
9240 | 74 61 74 65 6d 65 6e 74 20 73 6f 75 72 63 65 73 2c 20 69 74 20 66 69 6c 6c 73 20 74 68 65 0a 20 | tatement.sources,.it.fills.the.. |
9260 | 6d 61 63 72 6f 73 20 77 69 74 68 20 61 20 62 61 73 69 63 20 69 6e 63 72 65 6d 65 6e 74 20 74 68 | macros.with.a.basic.increment.th |
9280 | 61 74 20 63 6f 6d 70 75 74 65 73 20 74 68 65 20 74 6f 74 61 6c 20 6e 75 6d 62 65 72 20 6f 66 0a | at.computes.the.total.number.of. |
92a0 | 73 63 61 6e 6e 65 64 20 69 6e 74 65 67 72 61 6c 20 70 6f 69 6e 74 73 2e 20 54 68 65 20 75 73 65 | scanned.integral.points..The.use |
92c0 | 72 20 6d 61 79 20 63 68 61 6e 67 65 20 65 61 73 69 6c 79 20 74 68 65 20 6d 61 63 72 6f 73 20 61 | r.may.change.easily.the.macros.a |
92e0 | 63 63 6f 72 64 69 6e 67 0a 20 20 20 20 74 6f 20 68 69 73 20 6f 77 6e 20 6e 65 65 64 73 2e 20 54 | ccording.....to.his.own.needs..T |
9300 | 68 69 73 20 6f 70 74 69 6f 6e 20 69 73 20 70 6f 73 73 69 62 6c 65 20 6f 6e 6c 79 20 69 66 20 74 | his.option.is.possible.only.if.t |
9320 | 68 65 20 67 65 6e 65 72 61 74 65 64 0a 63 6f 64 65 20 69 73 20 20 20 20 20 20 69 6e 20 43 2e 20 | he.generated.code.is......in.C.. |
9340 | 44 65 66 61 75 6c 74 20 76 61 6c 75 65 20 69 73 20 30 2e 0a 20 20 20 20 20 2f 2a 20 47 65 6e 65 | Default.value.is.0......./*.Gene |
9360 | 72 61 74 65 64 20 75 73 69 6e 67 20 61 20 67 69 76 65 6e 20 69 6e 70 75 74 20 66 69 6c 65 20 61 | rated.using.a.given.input.file.a |
9380 | 6e 64 20 2a 6f 70 74 69 6f 6e 20 2d 63 6f 6d 70 69 6c 61 62 6c 65 20 30 2a 20 2a 2f 0a 20 20 20 | nd.*option.-compilable.0*.*/.... |
93a0 | 20 20 66 6f 72 20 28 69 3d 30 3b 69 3c 3d 6e 3b 69 2b 2b 29 20 7b 0a 20 20 20 20 20 20 20 66 6f | ..for.(i=0;i<=n;i++).{........fo |
93c0 | 72 20 28 6a 3d 30 3b 6a 3c 3d 6e 3b 6a 2b 2b 29 20 7b 0a 20 20 20 20 20 20 20 20 20 53 31 20 3b | r.(j=0;j<=n;j++).{..........S1.; |
93e0 | 0a 20 20 20 20 20 20 20 20 20 53 32 20 3b 0a 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 53 | ..........S2.;........}........S |
9400 | 33 20 3b 0a 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 2f 2a 20 47 65 6e 65 72 61 74 65 64 20 75 73 | 3.;......}......./*.Generated.us |
9420 | 69 6e 67 20 74 68 65 20 73 61 6d 65 20 69 6e 70 75 74 20 66 69 6c 65 20 62 75 74 20 2a 6f 70 74 | ing.the.same.input.file.but.*opt |
9440 | 69 6f 6e 20 2d 63 6f 6d 70 69 6c 61 62 6c 65 20 31 30 2a 20 2a 2f 0a 20 20 20 20 20 2f 2a 20 44 | ion.-compilable.10*.*/....../*.D |
9460 | 4f 4e 27 54 20 46 4f 52 47 45 54 20 54 4f 20 55 53 45 20 2d 6c 6d 20 4f 50 54 49 4f 4e 20 54 4f | ON'T.FORGET.TO.USE.-lm.OPTION.TO |
9480 | 20 43 4f 4d 50 49 4c 45 2e 20 2a 2f 0a 0a 20 20 20 20 20 2f 2a 20 55 73 65 66 75 6c 20 68 65 61 | .COMPILE..*/......./*.Useful.hea |
94a0 | 64 65 72 73 2e 20 2a 2f 0a 20 20 20 20 20 23 69 6e 63 6c 75 64 65 20 3c 73 74 64 69 6f 2e 68 3e | ders..*/......#include.<stdio.h> |
94c0 | 0a 20 20 20 20 20 23 69 6e 63 6c 75 64 65 20 3c 73 74 64 6c 69 62 2e 68 3e 0a 20 20 20 20 20 23 | ......#include.<stdlib.h>......# |
94e0 | 69 6e 63 6c 75 64 65 20 3c 6d 61 74 68 2e 68 3e 0a 0a 20 20 20 20 20 2f 2a 20 50 61 72 61 6d 65 | include.<math.h>......./*.Parame |
9500 | 74 65 72 20 76 61 6c 75 65 2e 20 2a 2f 0a 20 20 20 20 20 23 64 65 66 69 6e 65 20 50 41 52 56 41 | ter.value..*/......#define.PARVA |
9520 | 4c 20 31 30 0a 0a 20 20 20 20 20 2f 2a 20 53 74 61 74 65 6d 65 6e 74 20 6d 61 63 72 6f 73 20 28 | L.10......./*.Statement.macros.( |
9540 | 70 6c 65 61 73 65 20 73 65 74 29 2e 20 2a 2f 0a 20 20 20 20 20 23 64 65 66 69 6e 65 20 53 31 28 | please.set)..*/......#define.S1( |
9560 | 69 2c 6a 29 20 7b 74 6f 74 61 6c 2b 2b 3b 7d 0a 20 20 20 20 20 23 64 65 66 69 6e 65 20 53 32 28 | i,j).{total++;}......#define.S2( |
9580 | 69 2c 6a 29 20 7b 74 6f 74 61 6c 2b 2b 3b 7d 0a 20 20 20 20 20 23 64 65 66 69 6e 65 20 53 33 28 | i,j).{total++;}......#define.S3( |
95a0 | 69 29 20 20 20 7b 74 6f 74 61 6c 2b 2b 3b 7d 0a 0a 20 20 20 20 20 69 6e 74 20 6d 61 69 6e 28 29 | i)...{total++;}.......int.main() |
95c0 | 20 7b 0a 20 20 20 20 20 20 20 2f 2a 20 4f 72 69 67 69 6e 61 6c 20 69 74 65 72 61 74 6f 72 73 2e | .{......../*.Original.iterators. |
95e0 | 20 2a 2f 0a 20 20 20 20 20 20 20 69 6e 74 20 69 2c 20 6a 20 3b 0a 20 20 20 20 20 20 20 2f 2a 20 | .*/........int.i,.j.;......../*. |
9600 | 50 61 72 61 6d 65 74 65 72 73 2e 20 2a 2f 0a 20 20 20 20 20 20 20 69 6e 74 20 6e 3d 50 41 52 56 | Parameters..*/........int.n=PARV |
9620 | 41 4c 2c 20 74 6f 74 61 6c 3d 30 20 3b 0a 0a 20 20 20 20 20 20 20 66 6f 72 20 28 69 3d 30 3b 69 | AL,.total=0.;.........for.(i=0;i |
9640 | 3c 3d 6e 3b 69 2b 2b 29 20 7b 0a 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 6a 3d 30 3b 6a 3c 3d | <=n;i++).{..........for.(j=0;j<= |
9660 | 6e 3b 6a 2b 2b 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 53 31 28 69 2c 6a 29 20 3b 0a 20 20 | n;j++).{............S1(i,j).;... |
9680 | 20 20 20 20 20 20 20 20 20 53 32 28 69 2c 6a 29 20 3b 0a 20 20 20 20 20 20 20 20 20 7d 0a 20 20 | .........S2(i,j).;..........}... |
96a0 | 20 20 20 20 20 20 20 53 33 28 69 29 20 3b 0a 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 | .......S3(i).;........}......... |
96c0 | 70 72 69 6e 74 66 28 22 4e 75 6d 62 65 72 20 6f 66 20 69 6e 74 65 67 72 61 6c 20 70 6f 69 6e 74 | printf("Number.of.integral.point |
96e0 | 73 3a 20 25 64 2e 5c 6e 22 2c 74 6f 74 61 6c 29 20 3b 0a 20 20 20 20 20 20 20 72 65 74 75 72 6e | s:.%d.\n",total).;........return |
9700 | 20 30 20 3b 0a 20 20 20 20 20 7d 0a 0a 1f 0a 46 69 6c 65 3a 20 63 6c 6f 6f 67 2e 69 6e 66 6f 2c | .0.;......}....File:.cloog.info, |
9720 | 20 20 4e 6f 64 65 3a 20 4f 75 74 70 75 74 2c 20 20 4e 65 78 74 3a 20 48 65 6c 70 2c 20 20 50 72 | ..Node:.Output,..Next:.Help,..Pr |
9740 | 65 76 3a 20 43 6f 6d 70 69 6c 61 62 6c 65 20 43 6f 64 65 2c 20 20 55 70 3a 20 43 4c 6f 6f 47 20 | ev:.Compilable.Code,..Up:.CLooG. |
9760 | 4f 70 74 69 6f 6e 73 0a 0a 32 2e 34 2e 31 32 20 4f 75 74 70 75 74 20 60 2d 6f 20 3c 6f 75 74 70 | Options..2.4.12.Output.`-o.<outp |
9780 | 75 74 3e 27 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | ut>'.--------------------------- |
97a0 | 0a 0a 60 2d 6f 20 3c 6f 75 74 70 75 74 3e 27 3a 20 74 68 69 73 20 6f 70 74 69 6f 6e 20 73 65 74 | ..`-o.<output>':.this.option.set |
97c0 | 73 20 74 68 65 20 6f 75 74 70 75 74 20 66 69 6c 65 2e 20 60 73 74 64 6f 75 74 27 20 69 73 20 61 | s.the.output.file..`stdout'.is.a |
97e0 | 0a 73 70 65 63 69 61 6c 20 76 61 6c 75 65 3a 20 77 68 65 6e 20 75 73 65 64 2c 20 6f 75 74 70 75 | .special.value:.when.used,.outpu |
9800 | 74 20 69 73 20 73 74 61 6e 64 61 72 64 20 6f 75 74 70 75 74 2e 20 20 20 20 20 20 20 44 65 66 61 | t.is.standard.output........Defa |
9820 | 75 6c 74 0a 76 61 6c 75 65 20 69 73 20 60 73 74 64 6f 75 74 27 2e 0a 0a 1f 0a 46 69 6c 65 3a 20 | ult.value.is.`stdout'.....File:. |
9840 | 63 6c 6f 6f 67 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 48 65 6c 70 2c 20 20 4e 65 78 74 3a 20 | cloog.info,..Node:.Help,..Next:. |
9860 | 56 65 72 73 69 6f 6e 2c 20 20 50 72 65 76 3a 20 4f 75 74 70 75 74 2c 20 20 55 70 3a 20 43 4c 6f | Version,..Prev:.Output,..Up:.CLo |
9880 | 6f 47 20 4f 70 74 69 6f 6e 73 0a 0a 32 2e 34 2e 31 33 20 48 65 6c 70 20 60 2d 2d 68 65 6c 70 27 | oG.Options..2.4.13.Help.`--help' |
98a0 | 20 6f 72 20 60 2d 68 27 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | .or.`-h'.----------------------- |
98c0 | 2d 2d 2d 2d 2d 0a 0a 60 2d 2d 68 65 6c 70 27 20 6f 72 20 60 2d 68 27 3a 20 74 68 69 73 20 6f 70 | -----..`--help'.or.`-h':.this.op |
98e0 | 74 69 6f 6e 20 61 73 6b 20 43 4c 6f 6f 47 20 74 6f 20 70 72 69 6e 74 20 61 20 73 68 6f 72 74 20 | tion.ask.CLooG.to.print.a.short. |
9900 | 68 65 6c 70 2e 0a 0a 1f 0a 46 69 6c 65 3a 20 63 6c 6f 6f 67 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 | help.....File:.cloog.info,..Node |
9920 | 3a 20 56 65 72 73 69 6f 6e 2c 20 20 50 72 65 76 3a 20 48 65 6c 70 2c 20 20 55 70 3a 20 43 4c 6f | :.Version,..Prev:.Help,..Up:.CLo |
9940 | 6f 47 20 4f 70 74 69 6f 6e 73 0a 0a 32 2e 34 2e 31 34 20 56 65 72 73 69 6f 6e 20 60 2d 2d 76 65 | oG.Options..2.4.14.Version.`--ve |
9960 | 72 73 69 6f 6e 27 20 6f 72 20 60 2d 76 27 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | rsion'.or.`-v'.----------------- |
9980 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 60 2d 2d 76 65 72 73 69 6f 6e 27 20 6f | -----------------..`--version'.o |
99a0 | 72 20 60 2d 76 27 3a 20 74 68 69 73 20 6f 70 74 69 6f 6e 20 61 73 6b 20 43 4c 6f 6f 47 20 74 6f | r.`-v':.this.option.ask.CLooG.to |
99c0 | 20 70 72 69 6e 74 20 73 6f 6d 65 20 76 65 72 73 69 6f 6e 0a 69 6e 66 6f 72 6d 61 74 69 6f 6e 73 | .print.some.version.informations |
99e0 | 2e 0a 0a 1f 0a 46 69 6c 65 3a 20 63 6c 6f 6f 67 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 46 75 | .....File:.cloog.info,..Node:.Fu |
9a00 | 6c 6c 20 45 78 61 6d 70 6c 65 2c 20 20 50 72 65 76 3a 20 43 4c 6f 6f 47 20 4f 70 74 69 6f 6e 73 | ll.Example,..Prev:.CLooG.Options |
9a20 | 2c 20 20 55 70 3a 20 43 4c 6f 6f 47 20 53 6f 66 74 77 61 72 65 0a 0a 32 2e 35 20 41 20 46 75 6c | ,..Up:.CLooG.Software..2.5.A.Ful |
9a40 | 6c 20 45 78 61 6d 70 6c 65 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 0a 4c 65 | l.Example.==================..Le |
9a60 | 74 20 75 73 20 63 6f 6e 73 69 64 65 72 20 74 68 65 20 61 6c 6c 6f 63 61 74 69 6f 6e 20 70 72 6f | t.us.consider.the.allocation.pro |
9a80 | 62 6c 65 6d 20 6f 66 20 61 20 47 61 75 73 73 69 61 6e 20 65 6c 69 6d 69 6e 61 74 69 6f 6e 2c 20 | blem.of.a.Gaussian.elimination,. |
9aa0 | 69 2e 65 2e 0a 77 65 20 77 61 6e 74 20 74 6f 20 64 69 73 74 72 69 62 75 74 65 20 74 68 65 20 76 | i.e..we.want.to.distribute.the.v |
9ac0 | 61 72 69 6f 75 73 20 73 74 61 74 65 6d 65 6e 74 20 69 6e 73 74 61 6e 63 65 73 20 6f 66 20 74 68 | arious.statement.instances.of.th |
9ae0 | 65 20 63 6f 6d 70 75 74 65 0a 6b 65 72 6e 65 6c 20 6f 6e 74 6f 20 64 69 66 66 65 72 65 6e 74 20 | e.compute.kernel.onto.different. |
9b00 | 70 72 6f 63 65 73 73 6f 72 73 2e 20 54 68 65 20 6f 72 69 67 69 6e 61 6c 20 63 6f 64 65 20 69 73 | processors..The.original.code.is |
9b20 | 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 3a 0a 20 20 20 20 20 66 6f 72 20 28 69 3d 31 3b 6a 3c | .the.following:......for.(i=1;j< |
9b40 | 3d 4e 2d 31 3b 69 2b 2b 29 20 7b 0a 20 20 20 20 20 20 20 66 6f 72 20 28 6a 3d 69 2b 31 3b 6a 3c | =N-1;i++).{........for.(j=i+1;j< |
9b60 | 3d 4e 3b 6a 2b 2b 29 20 7b 0a 20 20 20 20 20 20 20 20 20 63 5b 69 5d 5b 6a 5d 20 3d 20 61 5b 6a | =N;j++).{..........c[i][j].=.a[j |
9b80 | 5d 5b 69 5d 2f 61 5b 69 5d 5b 69 5d 20 3b 20 20 20 20 2f 2a 20 53 31 20 2a 2f 0a 20 20 20 20 20 | ][i]/a[i][i].;..../*.S1.*/...... |
9ba0 | 20 20 20 20 66 6f 72 20 28 6b 3d 69 2b 31 3b 6b 3c 3d 4e 3b 6b 2b 2b 29 20 7b 0a 20 20 20 20 20 | ....for.(k=i+1;k<=N;k++).{...... |
9bc0 | 20 20 20 20 20 20 61 5b 6a 5d 5b 6b 5d 20 2d 3d 20 63 5b 69 5d 5b 6a 5d 2a 61 5b 69 5d 5b 6b 5d | ......a[j][k].-=.c[i][j]*a[i][k] |
9be0 | 20 3b 20 2f 2a 20 53 32 20 2a 2f 0a 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 7d 0a | .;./*.S2.*/..........}........}. |
9c00 | 20 20 20 20 20 7d 0a 0a 54 68 65 20 62 65 73 74 20 61 66 66 69 6e 65 20 61 6c 6c 6f 63 61 74 69 | .....}..The.best.affine.allocati |
9c20 | 6f 6e 20 66 75 6e 63 74 69 6f 6e 73 20 63 61 6e 20 62 65 20 66 6f 75 6e 64 20 62 79 20 61 6e 79 | on.functions.can.be.found.by.any |
9c40 | 20 67 6f 6f 64 20 61 75 74 6f 6d 61 74 69 63 0a 70 61 72 61 6c 6c 65 6c 69 7a 65 72 20 6c 69 6b | .good.automatic.parallelizer.lik |
9c60 | 65 20 4c 6f 6f 50 6f 20 28 2a 6e 6f 74 65 20 47 72 69 30 34 3a 3a 29 3a 0a 0a 20 20 20 20 20 54 | e.LooPo.(*note.Gri04::):.......T |
9c80 | 5f 53 31 28 69 2c 6a 29 5e 54 20 20 20 3d 20 28 69 29 0a 20 20 20 20 20 54 5f 53 32 28 69 2c 6a | _S1(i,j)^T...=.(i)......T_S2(i,j |
9ca0 | 2c 6b 29 5e 54 20 3d 20 28 6b 29 0a 0a 54 6f 20 65 6e 73 75 72 65 20 74 68 61 74 20 6f 6e 20 65 | ,k)^T.=.(k)..To.ensure.that.on.e |
9cc0 | 61 63 68 20 70 72 6f 63 65 73 73 6f 72 2c 20 74 68 65 20 73 65 74 20 6f 66 20 73 74 61 74 65 6d | ach.processor,.the.set.of.statem |
9ce0 | 65 6e 74 20 69 6e 73 74 61 6e 63 65 73 20 69 73 0a 65 78 65 63 75 74 65 64 20 61 63 63 6f 72 64 | ent.instances.is.executed.accord |
9d00 | 69 6e 67 20 74 6f 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 20 6f 72 64 65 72 69 6e 67 2c 20 77 65 | ing.to.the.original.ordering,.we |
9d20 | 20 61 64 64 20 61 73 20 6d 69 6e 6f 72 20 73 63 61 74 74 65 72 69 6e 67 0a 64 69 6d 65 6e 73 69 | .add.as.minor.scattering.dimensi |
9d40 | 6f 6e 73 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 20 73 63 68 65 64 75 6c 69 6e 67 20 28 2a 6e 6f | ons.the.original.scheduling.(*no |
9d60 | 74 65 20 53 63 61 74 74 65 72 69 6e 67 3a 3a 29 3a 0a 0a 20 20 20 20 20 54 5f 53 31 28 69 2c 6a | te.Scattering::):.......T_S1(i,j |
9d80 | 29 5e 54 20 20 20 3d 20 28 69 2c 30 2c 69 2c 30 2c 6a 2c 30 29 5e 54 0a 20 20 20 20 20 54 5f 53 | )^T...=.(i,0,i,0,j,0)^T......T_S |
9da0 | 32 28 69 2c 6a 2c 6b 29 5e 54 20 3d 20 28 6b 2c 30 2c 69 2c 30 2c 6a 2c 31 2c 6b 2c 30 29 5e 54 | 2(i,j,k)^T.=.(k,0,i,0,j,1,k,0)^T |
9dc0 | 0a 0a 54 6f 20 65 6e 73 75 72 65 20 74 68 61 74 20 74 68 65 20 73 63 61 74 74 65 72 69 6e 67 20 | ..To.ensure.that.the.scattering. |
9de0 | 66 75 6e 63 74 69 6f 6e 73 20 68 61 76 65 20 74 68 65 20 73 61 6d 65 20 64 69 6d 65 6e 73 69 6f | functions.have.the.same.dimensio |
9e00 | 6e 61 6c 69 74 79 2c 20 77 65 0a 63 6f 6d 70 6c 65 74 65 20 74 68 65 20 66 69 72 73 74 20 66 75 | nality,.we.complete.the.first.fu |
9e20 | 6e 63 74 69 6f 6e 20 77 69 74 68 20 7a 65 72 6f 65 73 20 28 74 68 69 73 20 69 73 20 61 20 43 4c | nction.with.zeroes.(this.is.a.CL |
9e40 | 6f 6f 47 20 20 61 6e 64 20 70 72 65 76 69 6f 75 73 0a 76 65 72 73 69 6f 6e 73 20 72 65 71 75 69 | ooG..and.previous.versions.requi |
9e60 | 72 65 6d 65 6e 74 2c 20 69 74 20 73 68 6f 75 6c 64 20 62 65 20 72 65 6d 6f 76 65 64 20 69 6e 20 | rement,.it.should.be.removed.in. |
9e80 | 61 20 66 75 74 75 72 65 20 76 65 72 73 69 6f 6e 2c 20 64 6f 6e 27 74 0a 77 6f 72 72 79 20 69 74 | a.future.version,.don't.worry.it |
9ea0 | 27 73 20 61 62 73 6f 6c 75 74 6c 79 20 6c 65 67 61 6c 20 21 29 3a 0a 0a 20 20 20 20 20 54 5f 53 | 's.absolutly.legal.!):.......T_S |
9ec0 | 31 28 69 2c 6a 29 5e 54 20 20 20 3d 20 28 69 2c 30 2c 69 2c 30 2c 6a 2c 30 2c 30 2c 30 29 5e 54 | 1(i,j)^T...=.(i,0,i,0,j,0,0,0)^T |
9ee0 | 0a 20 20 20 20 20 54 5f 53 32 28 69 2c 6a 2c 6b 29 5e 54 20 3d 20 28 6b 2c 30 2c 69 2c 30 2c 6a | ......T_S2(i,j,k)^T.=.(k,0,i,0,j |
9f00 | 2c 31 2c 6b 2c 30 29 5e 54 0a 0a 54 68 65 20 69 6e 70 75 74 20 66 69 6c 65 20 63 6f 72 72 65 73 | ,1,k,0)^T..The.input.file.corres |
9f20 | 70 6f 6e 64 69 6e 67 20 74 6f 20 74 68 69 73 20 63 6f 64 65 20 67 65 6e 65 72 61 74 69 6f 6e 20 | ponding.to.this.code.generation. |
9f40 | 70 72 6f 62 6c 65 6d 20 63 6f 75 6c 64 20 62 65 0a 28 74 68 69 73 20 66 69 6c 65 20 69 73 20 70 | problem.could.be.(this.file.is.p |
9f60 | 72 6f 76 69 64 65 64 20 69 6e 20 74 68 65 20 43 4c 6f 6f 47 20 64 69 73 74 72 69 62 75 74 69 6f | rovided.in.the.CLooG.distributio |
9f80 | 6e 20 61 73 0a 60 74 65 73 74 2f 6d 61 6e 75 61 6c 5f 67 61 75 73 73 2e 63 6c 6f 6f 67 27 3a 0a | n.as.`test/manual_gauss.cloog':. |
9fa0 | 0a 20 20 20 20 20 23 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 20 43 | ......#.----------------------.C |
9fc0 | 4f 4e 54 45 58 54 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 20 20 | ONTEXT.----------------------... |
9fe0 | 20 20 20 63 20 23 20 6c 61 6e 67 75 61 67 65 20 69 73 20 43 0a 0a 20 20 20 20 20 23 20 43 6f 6e | ...c.#.language.is.C.......#.Con |
a000 | 74 65 78 74 20 28 6e 6f 20 63 6f 6e 73 74 72 61 69 6e 74 73 20 6f 6e 20 6f 6e 65 20 70 61 72 61 | text.(no.constraints.on.one.para |
a020 | 6d 65 74 65 72 29 0a 20 20 20 20 20 31 20 33 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | meter)......1.3................. |
a040 | 20 20 20 20 23 20 31 20 6c 69 6e 65 20 61 6e 64 20 33 20 63 6f 6c 75 6d 6e 73 0a 20 20 20 20 20 | ....#.1.line.and.3.columns...... |
a060 | 23 20 65 71 2f 69 6e 20 6e 20 20 31 0a 20 20 20 20 20 20 20 20 20 31 20 20 20 30 20 20 30 20 20 | #.eq/in.n..1..........1...0..0.. |
a080 | 20 20 20 20 20 20 20 20 20 20 23 20 30 20 3e 3d 20 30 2c 20 61 6c 77 61 79 73 20 74 72 75 65 0a | ..........#.0.>=.0,.always.true. |
a0a0 | 0a 20 20 20 20 20 31 20 23 20 57 65 20 77 61 6e 74 20 74 6f 20 73 65 74 20 6d 61 6e 75 61 6c 6c | ......1.#.We.want.to.set.manuall |
a0c0 | 79 20 74 68 65 20 70 61 72 61 6d 65 74 65 72 20 6e 61 6d 65 0a 20 20 20 20 20 6e 20 20 20 20 20 | y.the.parameter.name......n..... |
a0e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 20 70 61 72 61 6d 65 74 65 72 20 6e 61 | ..................#.parameter.na |
a100 | 6d 65 0a 0a 20 20 20 20 20 23 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | me.......#.--------------------- |
a120 | 20 53 54 41 54 45 4d 45 4e 54 53 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | .STATEMENTS.-------------------- |
a140 | 0a 20 20 20 20 20 32 20 23 20 4e 75 6d 62 65 72 20 6f 66 20 73 74 61 74 65 6d 65 6e 74 73 0a 0a | ......2.#.Number.of.statements.. |
a160 | 20 20 20 20 20 31 20 23 20 46 69 72 73 74 20 73 74 61 74 65 6d 65 6e 74 3a 20 6f 6e 65 20 64 6f | .....1.#.First.statement:.one.do |
a180 | 6d 61 69 6e 0a 20 20 20 20 20 34 20 35 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | main......4.5................... |
a1a0 | 20 20 23 20 34 20 6c 69 6e 65 73 20 61 6e 64 20 33 20 63 6f 6c 75 6d 6e 73 0a 20 20 20 20 20 23 | ..#.4.lines.and.3.columns......# |
a1c0 | 20 65 71 2f 69 6e 20 69 20 20 6a 20 20 6e 20 20 31 0a 20 20 20 20 20 20 20 20 20 31 20 20 20 31 | .eq/in.i..j..n..1..........1...1 |
a1e0 | 20 20 30 20 20 30 20 2d 31 20 20 20 20 20 20 23 20 69 20 3e 3d 20 31 0a 20 20 20 20 20 20 20 20 | ..0..0.-1......#.i.>=.1......... |
a200 | 20 31 20 20 2d 31 20 20 30 20 20 31 20 2d 31 20 20 20 20 20 20 23 20 69 20 3c 3d 20 6e 2d 31 0a | .1..-1..0..1.-1......#.i.<=.n-1. |
a220 | 20 20 20 20 20 20 20 20 20 31 20 20 2d 31 20 20 31 20 20 30 20 2d 31 20 20 20 20 20 20 23 20 6a | .........1..-1..1..0.-1......#.j |
a240 | 20 3e 3d 20 69 2b 31 0a 20 20 20 20 20 20 20 20 20 31 20 20 20 30 20 2d 31 20 20 31 20 20 30 20 | .>=.i+1..........1...0.-1..1..0. |
a260 | 20 20 20 20 20 23 20 6a 20 3c 3d 20 6e 0a 20 20 20 20 20 30 20 20 30 20 20 30 20 20 20 20 20 20 | .....#.j.<=.n......0..0..0...... |
a280 | 20 20 20 20 20 20 20 20 20 20 20 23 20 66 6f 72 20 66 75 74 75 72 65 20 6f 70 74 69 6f 6e 73 0a | ...........#.for.future.options. |
a2a0 | 0a 20 20 20 20 20 31 0a 20 20 20 20 20 23 20 53 65 63 6f 6e 64 20 73 74 61 74 65 6d 65 6e 74 3a | ......1......#.Second.statement: |
a2c0 | 20 6f 6e 65 20 64 6f 6d 61 69 6e 0a 20 20 20 20 20 36 20 36 20 20 20 20 20 20 20 20 20 20 20 20 | .one.domain......6.6............ |
a2e0 | 20 20 20 20 20 20 20 20 20 23 20 36 20 6c 69 6e 65 73 20 61 6e 64 20 33 20 63 6f 6c 75 6d 6e 73 | .........#.6.lines.and.3.columns |
a300 | 0a 20 20 20 20 20 23 20 65 71 2f 69 6e 20 69 20 20 6a 20 20 6b 20 20 6e 20 20 31 0a 20 20 20 20 | ......#.eq/in.i..j..k..n..1..... |
a320 | 20 20 20 20 20 31 20 20 20 31 20 20 30 20 20 30 20 20 30 20 2d 31 20 20 20 23 20 69 20 3e 3d 20 | .....1...1..0..0..0.-1...#.i.>=. |
a340 | 31 0a 20 20 20 20 20 20 20 20 20 31 20 20 2d 31 20 20 30 20 20 30 20 20 31 20 2d 31 20 20 20 23 | 1..........1..-1..0..0..1.-1...# |
a360 | 20 69 20 3c 3d 20 6e 2d 31 0a 20 20 20 20 20 20 20 20 20 31 20 20 2d 31 20 20 31 20 20 30 20 20 | .i.<=.n-1..........1..-1..1..0.. |
a380 | 30 20 2d 31 20 20 20 23 20 6a 20 3e 3d 20 69 2b 31 0a 20 20 20 20 20 20 20 20 20 31 20 20 20 30 | 0.-1...#.j.>=.i+1..........1...0 |
a3a0 | 20 2d 31 20 20 30 20 20 31 20 20 30 20 20 20 23 20 6a 20 3c 3d 20 6e 0a 20 20 20 20 20 20 20 20 | .-1..0..1..0...#.j.<=.n......... |
a3c0 | 20 31 20 20 2d 31 20 20 30 20 20 31 20 20 30 20 2d 31 20 20 20 23 20 6b 20 3e 3d 20 69 2b 31 0a | .1..-1..0..1..0.-1...#.k.>=.i+1. |
a3e0 | 20 20 20 20 20 20 20 20 20 31 20 20 20 30 20 20 30 20 2d 31 20 20 31 20 20 30 20 20 20 23 20 6b | .........1...0..0.-1..1..0...#.k |
a400 | 20 3c 3d 20 6e 0a 20 20 20 20 20 30 20 20 30 20 20 30 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .<=.n......0..0..0.............. |
a420 | 20 20 20 23 20 66 6f 72 20 66 75 74 75 72 65 20 6f 70 74 69 6f 6e 73 0a 0a 20 20 20 20 20 30 20 | ...#.for.future.options.......0. |
a440 | 23 20 57 65 20 6c 65 74 20 43 4c 6f 6f 47 20 73 65 74 20 74 68 65 20 69 74 65 72 61 74 6f 72 20 | #.We.let.CLooG.set.the.iterator. |
a460 | 6e 61 6d 65 73 0a 0a 20 20 20 20 20 23 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | names.......#.------------------ |
a480 | 2d 2d 2d 20 53 43 41 54 54 45 52 49 4e 47 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | ---.SCATTERING.----------------- |
a4a0 | 2d 2d 2d 0a 20 20 20 20 20 32 20 23 20 53 63 61 74 74 65 72 69 6e 67 20 66 75 6e 63 74 69 6f 6e | ---......2.#.Scattering.function |
a4c0 | 73 0a 20 20 20 20 20 23 20 46 69 72 73 74 20 66 75 6e 63 74 69 6f 6e 0a 20 20 20 20 20 38 20 31 | s......#.First.function......8.1 |
a4e0 | 33 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 20 33 20 6c 69 6e 65 73 20 61 | 3....................#.3.lines.a |
a500 | 6e 64 20 33 20 63 6f 6c 75 6d 6e 73 0a 20 20 20 20 20 23 20 65 71 2f 69 6e 20 70 31 20 70 32 20 | nd.3.columns......#.eq/in.p1.p2. |
a520 | 70 33 20 70 34 20 70 35 20 70 36 20 70 37 20 70 38 20 20 69 20 20 6a 20 20 6e 20 20 31 0a 20 20 | p3.p4.p5.p6.p7.p8..i..j..n..1... |
a540 | 20 20 20 20 20 20 20 30 20 20 20 20 31 20 20 30 20 20 30 20 20 30 20 20 30 20 20 30 20 20 30 20 | .......0....1..0..0..0..0..0..0. |
a560 | 20 30 20 2d 31 20 20 30 20 20 30 20 20 30 20 20 20 20 20 23 20 70 31 20 3d 20 69 0a 20 20 20 20 | .0.-1..0..0..0.....#.p1.=.i..... |
a580 | 20 20 20 20 20 30 20 20 20 20 30 20 20 31 20 20 30 20 20 30 20 20 30 20 20 30 20 20 30 20 20 30 | .....0....0..1..0..0..0..0..0..0 |
a5a0 | 20 20 30 20 20 30 20 20 30 20 20 30 20 20 20 20 20 23 20 70 32 20 3d 20 30 0a 20 20 20 20 20 20 | ..0..0..0..0.....#.p2.=.0....... |
a5c0 | 20 20 20 30 20 20 20 20 30 20 20 30 20 20 31 20 20 30 20 20 30 20 20 30 20 20 30 20 20 30 20 2d | ...0....0..0..1..0..0..0..0..0.- |
a5e0 | 31 20 20 30 20 20 30 20 20 30 20 20 20 20 20 23 20 70 33 20 3d 20 69 0a 20 20 20 20 20 20 20 20 | 1..0..0..0.....#.p3.=.i......... |
a600 | 20 30 20 20 20 20 30 20 20 30 20 20 30 20 20 31 20 20 30 20 20 30 20 20 30 20 20 30 20 20 30 20 | .0....0..0..0..1..0..0..0..0..0. |
a620 | 20 30 20 20 30 20 20 30 20 20 20 20 20 23 20 70 34 20 3d 20 30 0a 20 20 20 20 20 20 20 20 20 30 | .0..0..0.....#.p4.=.0..........0 |
a640 | 20 20 20 20 30 20 20 30 20 20 30 20 20 30 20 20 31 20 20 30 20 20 30 20 20 30 20 20 30 20 2d 31 | ....0..0..0..0..1..0..0..0..0.-1 |
a660 | 20 20 30 20 20 30 20 20 20 20 20 23 20 70 35 20 3d 20 6a 0a 20 20 20 20 20 20 20 20 20 30 20 20 | ..0..0.....#.p5.=.j..........0.. |
a680 | 20 20 30 20 20 30 20 20 30 20 20 30 20 20 30 20 20 31 20 20 30 20 20 30 20 20 30 20 20 30 20 20 | ..0..0..0..0..0..1..0..0..0..0.. |
a6a0 | 30 20 20 30 20 20 20 20 20 23 20 70 36 20 3d 20 30 0a 20 20 20 20 20 20 20 20 20 30 20 20 20 20 | 0..0.....#.p6.=.0..........0.... |
a6c0 | 30 20 20 30 20 20 30 20 20 30 20 20 30 20 20 30 20 20 31 20 20 30 20 20 30 20 20 30 20 20 30 20 | 0..0..0..0..0..0..1..0..0..0..0. |
a6e0 | 20 30 20 20 20 20 20 23 20 70 37 20 3d 20 30 0a 20 20 20 20 20 20 20 20 20 30 20 20 20 20 30 20 | .0.....#.p7.=.0..........0....0. |
a700 | 20 30 20 20 30 20 20 30 20 20 30 20 20 30 20 20 30 20 20 31 20 20 30 20 20 30 20 20 30 20 20 30 | .0..0..0..0..0..0..1..0..0..0..0 |
a720 | 20 20 20 20 20 23 20 70 38 20 3d 20 30 0a 20 20 20 20 20 23 20 53 65 63 6f 6e 64 20 66 75 6e 63 | .....#.p8.=.0......#.Second.func |
a740 | 74 69 6f 6e 0a 20 20 20 20 20 38 20 31 34 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | tion......8.14.................. |
a760 | 20 20 23 20 33 20 6c 69 6e 65 73 20 61 6e 64 20 33 20 63 6f 6c 75 6d 6e 73 0a 20 20 20 20 20 23 | ..#.3.lines.and.3.columns......# |
a780 | 20 65 71 2f 69 6e 20 70 31 20 70 32 20 70 33 20 70 34 20 70 35 20 70 36 20 70 37 20 70 38 20 20 | .eq/in.p1.p2.p3.p4.p5.p6.p7.p8.. |
a7a0 | 69 20 20 6a 20 20 6b 20 20 6e 20 20 31 0a 20 20 20 20 20 20 20 20 20 30 20 20 20 20 31 20 20 30 | i..j..k..n..1..........0....1..0 |
a7c0 | 20 20 30 20 20 30 20 20 30 20 20 30 20 20 30 20 20 30 20 20 30 20 20 30 20 2d 31 20 20 30 20 20 | ..0..0..0..0..0..0..0..0.-1..0.. |
a7e0 | 30 20 20 23 20 70 31 20 3d 20 6b 0a 20 20 20 20 20 20 20 20 20 30 20 20 20 20 30 20 20 31 20 20 | 0..#.p1.=.k..........0....0..1.. |
a800 | 30 20 20 30 20 20 30 20 20 30 20 20 30 20 20 30 20 20 30 20 20 30 20 20 30 20 20 30 20 20 30 20 | 0..0..0..0..0..0..0..0..0..0..0. |
a820 | 20 23 20 70 32 20 3d 20 30 0a 20 20 20 20 20 20 20 20 20 30 20 20 20 20 30 20 20 30 20 20 31 20 | .#.p2.=.0..........0....0..0..1. |
a840 | 20 30 20 20 30 20 20 30 20 20 30 20 20 30 20 2d 31 20 20 30 20 20 30 20 20 30 20 20 30 20 20 23 | .0..0..0..0..0.-1..0..0..0..0..# |
a860 | 20 70 33 20 3d 20 69 0a 20 20 20 20 20 20 20 20 20 30 20 20 20 20 30 20 20 30 20 20 30 20 20 31 | .p3.=.i..........0....0..0..0..1 |
a880 | 20 20 30 20 20 30 20 20 30 20 20 30 20 20 30 20 20 30 20 20 30 20 20 30 20 20 30 20 20 23 20 70 | ..0..0..0..0..0..0..0..0..0..#.p |
a8a0 | 34 20 3d 20 30 0a 20 20 20 20 20 20 20 20 20 30 20 20 20 20 30 20 20 30 20 20 30 20 20 30 20 20 | 4.=.0..........0....0..0..0..0.. |
a8c0 | 31 20 20 30 20 20 30 20 20 30 20 20 30 20 2d 31 20 20 30 20 20 30 20 20 30 20 20 23 20 70 35 20 | 1..0..0..0..0.-1..0..0..0..#.p5. |
a8e0 | 3d 20 6a 0a 20 20 20 20 20 20 20 20 20 30 20 20 20 20 30 20 20 30 20 20 30 20 20 30 20 20 30 20 | =.j..........0....0..0..0..0..0. |
a900 | 20 31 20 20 30 20 20 30 20 20 30 20 20 30 20 20 30 20 20 30 20 2d 31 20 20 23 20 70 36 20 3d 20 | .1..0..0..0..0..0..0.-1..#.p6.=. |
a920 | 31 0a 20 20 20 20 20 20 20 20 20 30 20 20 20 20 30 20 20 30 20 20 30 20 20 30 20 20 30 20 20 30 | 1..........0....0..0..0..0..0..0 |
a940 | 20 20 31 20 20 30 20 20 30 20 20 30 20 2d 31 20 20 30 20 20 30 20 20 23 20 70 37 20 3d 20 6b 0a | ..1..0..0..0.-1..0..0..#.p7.=.k. |
a960 | 20 20 20 20 20 20 20 20 20 30 20 20 20 20 30 20 20 30 20 20 30 20 20 30 20 20 30 20 20 30 20 20 | .........0....0..0..0..0..0..0.. |
a980 | 30 20 20 31 20 20 30 20 20 30 20 20 30 20 20 30 20 20 30 20 20 23 20 70 38 20 3d 20 30 0a 0a 20 | 0..1..0..0..0..0..0..#.p8.=.0... |
a9a0 | 20 20 20 20 31 20 23 20 57 65 20 77 61 6e 74 20 74 6f 20 73 65 74 20 6d 61 6e 75 61 6c 6c 79 20 | ....1.#.We.want.to.set.manually. |
a9c0 | 74 68 65 20 73 63 61 74 74 65 72 69 6e 67 20 64 69 6d 65 6e 73 69 6f 6e 20 6e 61 6d 65 73 0a 20 | the.scattering.dimension.names.. |
a9e0 | 20 20 20 20 70 31 20 70 32 20 70 33 20 70 34 20 70 35 20 70 36 20 70 37 20 70 38 20 23 20 73 63 | ....p1.p2.p3.p4.p5.p6.p7.p8.#.sc |
aa00 | 61 74 74 65 72 69 6e 67 20 64 69 6d 65 6e 73 69 6f 6e 20 6e 61 6d 65 73 0a 0a 20 20 20 43 61 6c | attering.dimension.names.....Cal |
aa20 | 6c 69 6e 67 20 43 4c 6f 6f 47 2c 20 77 69 74 68 20 66 6f 72 20 69 6e 73 74 61 6e 63 65 20 74 68 | ling.CLooG,.with.for.instance.th |
aa40 | 65 20 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 60 63 6c 6f 6f 67 20 2d 66 73 70 20 32 0a 67 61 75 | e.command.line.`cloog.-fsp.2.gau |
aa60 | 73 73 2e 63 6c 6f 6f 67 27 20 66 6f 72 20 61 20 62 65 74 74 65 72 20 76 69 65 77 20 6f 66 20 74 | ss.cloog'.for.a.better.view.of.t |
aa80 | 68 65 20 61 6c 6c 6f 63 61 74 69 6f 6e 20 28 74 68 65 20 70 72 6f 63 65 73 73 6f 72 20 6e 75 6d | he.allocation.(the.processor.num |
aaa0 | 62 65 72 0a 69 73 20 67 69 76 65 6e 20 62 79 20 60 70 31 27 29 2c 20 77 69 6c 6c 20 72 65 73 75 | ber.is.given.by.`p1'),.will.resu |
aac0 | 6c 74 20 6f 6e 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 61 72 67 65 74 20 63 6f 64 65 20 | lt.on.the.following.target.code. |
aae0 | 74 68 61 74 0a 61 63 74 75 61 6c 6c 79 20 69 6d 70 6c 65 6d 65 6e 74 73 20 74 68 65 20 74 72 61 | that.actually.implements.the.tra |
ab00 | 6e 73 66 6f 72 6d 61 74 69 6f 6e 2e 20 41 20 6d 69 6e 6f 72 20 70 72 6f 63 65 73 73 69 6e 67 20 | nsformation..A.minor.processing. |
ab20 | 6f 6e 20 74 68 65 0a 64 69 6d 65 6e 73 69 6f 6e 20 60 70 31 27 20 74 6f 20 69 6d 70 6c 65 6d 65 | on.the.dimension.`p1'.to.impleme |
ab40 | 6e 74 2c 20 65 2e 67 2e 2c 20 4d 50 49 20 63 61 6c 6c 73 2c 20 77 68 69 63 68 20 69 73 20 6e 6f | nt,.e.g.,.MPI.calls,.which.is.no |
ab60 | 74 20 73 68 6f 77 6e 20 68 65 72 65 0a 6d 61 79 20 72 65 73 75 6c 74 20 69 6e 20 64 72 61 6d 61 | t.shown.here.may.result.in.drama |
ab80 | 74 69 63 20 73 70 65 65 64 75 70 73 20 21 0a 0a 20 20 20 20 20 69 66 20 28 6e 20 3e 3d 20 32 29 | tic.speedups.!.......if.(n.>=.2) |
aba0 | 20 7b 0a 20 20 20 20 20 20 20 70 31 20 3d 20 31 20 3b 0a 20 20 20 20 20 20 20 66 6f 72 20 28 70 | .{........p1.=.1.;........for.(p |
abc0 | 35 3d 32 3b 70 35 3c 3d 6e 3b 70 35 2b 2b 29 20 7b 0a 20 20 20 20 20 20 20 20 20 53 31 28 69 20 | 5=2;p5<=n;p5++).{..........S1(i. |
abe0 | 3d 20 31 2c 6a 20 3d 20 70 35 29 20 3b 0a 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 7d 0a 20 20 | =.1,j.=.p5).;........}......}... |
ac00 | 20 20 20 66 6f 72 20 28 70 31 3d 32 3b 70 31 3c 3d 6e 2d 31 3b 70 31 2b 2b 29 20 7b 0a 20 20 20 | ...for.(p1=2;p1<=n-1;p1++).{.... |
ac20 | 20 20 20 20 66 6f 72 20 28 70 33 3d 31 3b 70 33 3c 3d 70 31 2d 31 3b 70 33 2b 2b 29 20 7b 0a 20 | ....for.(p3=1;p3<=p1-1;p3++).{.. |
ac40 | 20 20 20 20 20 20 20 20 66 6f 72 20 28 70 35 3d 70 33 2b 31 3b 70 35 3c 3d 6e 3b 70 35 2b 2b 29 | ........for.(p5=p3+1;p5<=n;p5++) |
ac60 | 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 53 32 28 69 20 3d 20 70 33 2c 6a 20 3d 20 70 35 2c 6b | .{............S2(i.=.p3,j.=.p5,k |
ac80 | 20 3d 20 70 31 29 20 3b 0a 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 7d 0a 20 20 20 | .=.p1).;..........}........}.... |
aca0 | 20 20 20 20 66 6f 72 20 28 70 35 3d 70 31 2b 31 3b 70 35 3c 3d 6e 3b 70 35 2b 2b 29 20 7b 0a 20 | ....for.(p5=p1+1;p5<=n;p5++).{.. |
acc0 | 20 20 20 20 20 20 20 20 53 31 28 69 20 3d 20 70 31 2c 6a 20 3d 20 70 35 29 20 3b 0a 20 20 20 20 | ........S1(i.=.p1,j.=.p5).;..... |
ace0 | 20 20 20 7d 0a 20 20 20 20 20 7d 0a 20 20 20 20 20 69 66 20 28 6e 20 3e 3d 20 32 29 20 7b 0a 20 | ...}......}......if.(n.>=.2).{.. |
ad00 | 20 20 20 20 20 20 70 31 20 3d 20 6e 20 3b 0a 20 20 20 20 20 20 20 66 6f 72 20 28 70 33 3d 31 3b | ......p1.=.n.;........for.(p3=1; |
ad20 | 70 33 3c 3d 6e 2d 31 3b 70 33 2b 2b 29 20 7b 0a 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 70 35 | p3<=n-1;p3++).{..........for.(p5 |
ad40 | 3d 70 33 2b 31 3b 70 35 3c 3d 6e 3b 70 35 2b 2b 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 53 | =p3+1;p5<=n;p5++).{............S |
ad60 | 32 28 69 20 3d 20 70 33 2c 6a 20 3d 20 70 35 2c 6b 20 3d 20 6e 29 20 3b 0a 20 20 20 20 20 20 20 | 2(i.=.p3,j.=.p5,k.=.n).;........ |
ad80 | 20 20 7d 0a 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 7d 0a 0a 1f 0a 46 69 6c 65 3a 20 63 6c 6f | ..}........}......}....File:.clo |
ada0 | 6f 67 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 43 4c 6f 6f 47 20 4c 69 62 72 61 72 79 2c 20 20 | og.info,..Node:.CLooG.Library,.. |
adc0 | 4e 65 78 74 3a 20 49 6e 73 74 61 6c 6c 69 6e 67 2c 20 20 50 72 65 76 3a 20 43 4c 6f 6f 47 20 53 | Next:.Installing,..Prev:.CLooG.S |
ade0 | 6f 66 74 77 61 72 65 2c 20 20 55 70 3a 20 54 6f 70 0a 0a 33 20 55 73 69 6e 67 20 74 68 65 20 43 | oftware,..Up:.Top..3.Using.the.C |
ae00 | 4c 6f 6f 47 20 4c 69 62 72 61 72 79 0a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a | LooG.Library.******************* |
ae20 | 2a 2a 2a 2a 2a 2a 0a 0a 54 68 65 20 43 4c 6f 6f 47 20 4c 69 62 72 61 72 79 20 77 61 73 20 69 6d | ******..The.CLooG.Library.was.im |
ae40 | 70 6c 65 6d 65 6e 74 65 64 20 74 6f 20 61 6c 6c 6f 77 20 74 68 65 20 75 73 65 72 20 74 6f 20 63 | plemented.to.allow.the.user.to.c |
ae60 | 61 6c 6c 20 43 4c 6f 6f 47 0a 64 69 72 65 63 74 6c 79 20 66 72 6f 6d 20 68 69 73 20 70 72 6f 67 | all.CLooG.directly.from.his.prog |
ae80 | 72 61 6d 73 2c 20 77 69 74 68 6f 75 74 20 66 69 6c 65 20 61 63 63 65 73 73 65 73 20 6f 72 20 73 | rams,.without.file.accesses.or.s |
aea0 | 79 73 74 65 6d 20 63 61 6c 6c 73 2e 20 54 68 65 0a 75 73 65 72 20 6f 6e 6c 79 20 6e 65 65 64 73 | ystem.calls..The.user.only.needs |
aec0 | 20 74 6f 20 6c 69 6e 6b 20 68 69 73 20 70 72 6f 67 72 61 6d 73 20 77 69 74 68 20 43 20 6c 69 62 | .to.link.his.programs.with.C.lib |
aee0 | 72 61 72 69 65 73 2e 20 54 68 65 20 43 4c 6f 6f 47 0a 6c 69 62 72 61 72 79 20 6d 61 69 6e 6c 79 | raries..The.CLooG.library.mainly |
af00 | 20 70 72 6f 76 69 64 65 73 20 6f 6e 65 20 66 75 6e 63 74 69 6f 6e 20 28 60 63 6c 6f 6f 67 5f 70 | .provides.one.function.(`cloog_p |
af20 | 72 6f 67 72 61 6d 5f 67 65 6e 65 72 61 74 65 27 29 20 77 68 69 63 68 0a 74 61 6b 65 73 20 61 73 | rogram_generate').which.takes.as |
af40 | 20 69 6e 70 75 74 20 74 68 65 20 70 72 6f 62 6c 65 6d 20 64 65 73 63 72 69 70 74 69 6f 6e 20 77 | .input.the.problem.description.w |
af60 | 69 74 68 20 73 6f 6d 65 20 6f 70 74 69 6f 6e 73 2c 20 61 6e 64 20 72 65 74 75 72 6e 73 0a 74 68 | ith.some.options,.and.returns.th |
af80 | 65 20 64 61 74 61 20 73 74 72 75 63 74 75 72 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 74 | e.data.structure.corresponding.t |
afa0 | 6f 20 74 68 65 20 67 65 6e 65 72 61 74 65 64 20 63 6f 64 65 20 28 61 0a 60 43 6c 6f 6f 67 50 72 | o.the.generated.code.(a.`CloogPr |
afc0 | 6f 67 72 61 6d 27 20 73 74 72 75 63 74 75 72 65 29 20 77 68 69 63 68 20 69 73 20 6d 6f 72 65 20 | ogram'.structure).which.is.more. |
afe0 | 6f 72 20 6c 65 73 73 20 61 6e 20 61 62 73 74 72 61 63 74 20 73 79 6e 74 61 78 20 74 72 65 65 2e | or.less.an.abstract.syntax.tree. |
b000 | 0a 54 68 65 20 75 73 65 72 20 63 61 6e 20 77 6f 72 6b 20 77 69 74 68 20 74 68 69 73 20 64 61 74 | .The.user.can.work.with.this.dat |
b020 | 61 20 73 74 72 75 63 74 75 72 65 20 61 6e 64 2f 6f 72 20 75 73 65 20 6f 75 72 20 70 72 65 74 74 | a.structure.and/or.use.our.prett |
b040 | 79 0a 70 72 69 6e 74 69 6e 67 20 66 75 6e 63 74 69 6f 6e 20 74 6f 20 77 72 69 74 65 20 74 68 65 | y.printing.function.to.write.the |
b060 | 20 66 69 6e 61 6c 20 63 6f 64 65 20 69 6e 20 65 69 74 68 65 72 20 43 20 6f 72 20 46 4f 52 54 52 | .final.code.in.either.C.or.FORTR |
b080 | 41 4e 2e 20 20 53 6f 6d 65 0a 6f 74 68 65 72 20 66 75 6e 63 74 69 6f 6e 73 20 61 72 65 20 70 72 | AN...Some.other.functions.are.pr |
b0a0 | 6f 76 69 64 65 64 20 66 6f 72 20 63 6f 6e 76 65 6e 69 65 6e 63 65 20 72 65 61 73 6f 6e 73 2e 20 | ovided.for.convenience.reasons.. |
b0c0 | 20 54 68 65 73 65 20 66 75 6e 63 74 69 6f 6e 73 0a 61 73 20 77 65 6c 6c 20 61 73 20 74 68 65 20 | .These.functions.as.well.as.the. |
b0e0 | 64 61 74 61 20 73 74 72 75 63 74 75 72 65 73 20 61 72 65 20 64 65 73 63 72 69 62 65 64 20 69 6e | data.structures.are.described.in |
b100 | 20 74 68 69 73 20 73 65 63 74 69 6f 6e 2e 0a 0a 2a 20 4d 65 6e 75 3a 0a 0a 2a 20 43 4c 6f 6f 47 | .this.section...*.Menu:..*.CLooG |
b120 | 20 44 61 74 61 20 53 74 72 75 63 74 75 72 65 73 3a 3a 0a 2a 20 43 4c 6f 6f 47 20 46 75 6e 63 74 | .Data.Structures::.*.CLooG.Funct |
b140 | 69 6f 6e 73 3a 3a 0a 2a 20 45 78 61 6d 70 6c 65 20 6f 66 20 4c 69 62 72 61 72 79 20 55 74 69 6c | ions::.*.Example.of.Library.Util |
b160 | 69 7a 61 74 69 6f 6e 3a 3a 0a 0a 1f 0a 46 69 6c 65 3a 20 63 6c 6f 6f 67 2e 69 6e 66 6f 2c 20 20 | ization::....File:.cloog.info,.. |
b180 | 4e 6f 64 65 3a 20 43 4c 6f 6f 47 20 44 61 74 61 20 53 74 72 75 63 74 75 72 65 73 2c 20 20 4e 65 | Node:.CLooG.Data.Structures,..Ne |
b1a0 | 78 74 3a 20 43 4c 6f 6f 47 20 46 75 6e 63 74 69 6f 6e 73 2c 20 20 55 70 3a 20 43 4c 6f 6f 47 20 | xt:.CLooG.Functions,..Up:.CLooG. |
b1c0 | 4c 69 62 72 61 72 79 0a 0a 33 2e 31 20 43 4c 6f 6f 47 20 44 61 74 61 20 53 74 72 75 63 74 75 72 | Library..3.1.CLooG.Data.Structur |
b1e0 | 65 73 20 44 65 73 63 72 69 70 74 69 6f 6e 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d | es.Description.================= |
b200 | 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 0a 49 6e 20 74 68 69 73 20 73 65 | ====================..In.this.se |
b220 | 63 74 69 6f 6e 2c 20 77 65 20 64 65 73 63 72 69 62 65 20 74 68 65 20 64 61 74 61 20 73 74 72 75 | ction,.we.describe.the.data.stru |
b240 | 63 74 75 72 65 73 20 75 73 65 64 20 62 79 20 74 68 65 20 6c 6f 6f 70 0a 67 65 6e 65 72 61 74 6f | ctures.used.by.the.loop.generato |
b260 | 72 20 74 6f 20 72 65 70 72 65 73 65 6e 74 20 61 6e 64 20 74 6f 20 70 72 6f 63 65 73 73 20 61 20 | r.to.represent.and.to.process.a. |
b280 | 63 6f 64 65 20 67 65 6e 65 72 61 74 69 6f 6e 20 70 72 6f 62 6c 65 6d 2e 0a 0a 2a 20 4d 65 6e 75 | code.generation.problem...*.Menu |
b2a0 | 3a 0a 0a 2a 20 43 6c 6f 6f 67 4d 61 74 72 69 78 3a 3a 0a 2a 20 43 6c 6f 6f 67 44 6f 6d 61 69 6e | :..*.CloogMatrix::.*.CloogDomain |
b2c0 | 3a 3a 0a 2a 20 43 6c 6f 6f 67 44 6f 6d 61 69 6e 4c 69 73 74 3a 3a 0a 2a 20 43 6c 6f 6f 67 53 74 | ::.*.CloogDomainList::.*.CloogSt |
b2e0 | 61 74 65 6d 65 6e 74 3a 3a 0a 2a 20 43 6c 6f 6f 67 42 6c 6f 63 6b 3a 3a 0a 2a 20 43 6c 6f 6f 67 | atement::.*.CloogBlock::.*.Cloog |
b300 | 42 6c 6f 63 6b 4c 69 73 74 3a 3a 0a 2a 20 43 6c 6f 6f 67 4c 6f 6f 70 3a 3a 0a 2a 20 43 6c 6f 6f | BlockList::.*.CloogLoop::.*.Cloo |
b320 | 67 4e 61 6d 65 73 3a 3a 0a 2a 20 43 6c 6f 6f 67 50 72 6f 67 72 61 6d 3a 3a 0a 2a 20 43 6c 6f 6f | gNames::.*.CloogProgram::.*.Cloo |
b340 | 67 4f 70 74 69 6f 6e 73 3a 3a 0a 0a 1f 0a 46 69 6c 65 3a 20 63 6c 6f 6f 67 2e 69 6e 66 6f 2c 20 | gOptions::....File:.cloog.info,. |
b360 | 20 4e 6f 64 65 3a 20 43 6c 6f 6f 67 4d 61 74 72 69 78 2c 20 20 4e 65 78 74 3a 20 43 6c 6f 6f 67 | .Node:.CloogMatrix,..Next:.Cloog |
b380 | 44 6f 6d 61 69 6e 2c 20 20 55 70 3a 20 43 4c 6f 6f 47 20 44 61 74 61 20 53 74 72 75 63 74 75 72 | Domain,..Up:.CLooG.Data.Structur |
b3a0 | 65 73 0a 0a 33 2e 31 2e 31 20 43 6c 6f 6f 67 4d 61 74 72 69 78 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | es..3.1.1.CloogMatrix.---------- |
b3c0 | 2d 2d 2d 2d 2d 2d 2d 0a 0a 20 20 20 20 20 23 64 65 66 69 6e 65 20 43 6c 6f 6f 67 4d 61 74 72 69 | -------.......#define.CloogMatri |
b3e0 | 78 20 4d 61 74 72 69 78 0a 0a 54 68 65 20 60 43 6c 6f 6f 67 4d 61 74 72 69 78 27 20 73 74 72 75 | x.Matrix..The.`CloogMatrix'.stru |
b400 | 63 74 75 72 65 20 69 73 20 64 69 72 65 63 74 6c 79 20 74 68 65 20 50 6f 6c 79 4c 69 62 20 60 4d | cture.is.directly.the.PolyLib.`M |
b420 | 61 74 72 69 78 27 20 64 61 74 61 0a 73 74 72 75 63 74 75 72 65 20 28 2a 6e 6f 74 65 20 57 69 6c | atrix'.data.structure.(*note.Wil |
b440 | 39 33 3a 3a 29 2e 20 54 68 69 73 20 73 74 72 75 63 74 75 72 65 20 69 73 20 64 65 76 6f 74 65 64 | 93::)..This.structure.is.devoted |
b460 | 20 74 6f 20 72 65 70 72 65 73 65 6e 74 20 61 20 73 65 74 0a 6f 66 20 63 6f 6e 73 74 72 61 69 6e | .to.represent.a.set.of.constrain |
b480 | 74 73 2e 20 49 74 20 69 73 20 64 65 66 69 6e 65 64 20 69 6e 20 60 70 6f 6c 79 6c 69 62 2f 74 79 | ts..It.is.defined.in.`polylib/ty |
b4a0 | 70 65 73 2e 68 27 20 61 73 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 3a 0a 0a 20 20 20 20 20 73 | pes.h'.as.the.following:.......s |
b4c0 | 74 72 75 63 74 20 6d 61 74 72 69 78 0a 20 20 20 20 20 7b 20 75 6e 73 69 67 6e 65 64 20 4e 62 52 | truct.matrix......{.unsigned.NbR |
b4e0 | 6f 77 73 20 3b 20 20 20 20 2f 2a 20 4e 75 6d 62 65 72 20 6f 66 20 72 6f 77 73 2e 20 2a 2f 0a 20 | ows.;..../*.Number.of.rows..*/.. |
b500 | 20 20 20 20 20 20 75 6e 73 69 67 6e 65 64 20 4e 62 43 6f 6c 75 6d 6e 73 20 3b 20 2f 2a 20 4e 75 | ......unsigned.NbColumns.;./*.Nu |
b520 | 6d 62 65 72 20 6f 66 20 63 6f 6c 75 6d 6e 73 2e 20 2a 2f 0a 20 20 20 20 20 20 20 56 61 6c 75 65 | mber.of.columns..*/........Value |
b540 | 20 2a 2a 20 70 20 3b 20 20 20 20 20 20 20 20 20 2f 2a 20 41 72 72 61 79 20 6f 66 20 70 6f 69 6e | .**.p.;........./*.Array.of.poin |
b560 | 74 65 72 73 20 74 6f 20 74 68 65 20 6d 61 74 72 69 78 20 72 6f 77 73 2e 20 2a 2f 0a 20 20 20 20 | ters.to.the.matrix.rows..*/..... |
b580 | 20 20 20 56 61 6c 75 65 20 2a 20 70 5f 49 6e 69 74 20 3b 20 20 20 20 20 2f 2a 20 4d 61 74 72 69 | ...Value.*.p_Init.;...../*.Matri |
b5a0 | 78 20 72 6f 77 73 20 63 6f 6e 74 69 67 75 6f 75 73 6c 79 20 69 6e 20 6d 65 6d 6f 72 79 2e 20 2a | x.rows.contiguously.in.memory..* |
b5c0 | 2f 0a 20 20 20 20 20 20 20 69 6e 74 20 70 5f 49 6e 69 74 5f 73 69 7a 65 20 3b 20 20 20 20 2f 2a | /........int.p_Init_size.;..../* |
b5e0 | 20 46 6f 72 20 69 6e 74 65 72 6e 61 6c 20 75 73 65 2e 20 2a 2f 0a 20 20 20 20 20 7d 0a 20 20 20 | .For.internal.use..*/......}.... |
b600 | 20 20 74 79 70 65 64 65 66 20 73 74 72 75 63 74 20 6d 61 74 72 69 78 20 4d 61 74 72 69 78 3b 0a | ..typedef.struct.matrix.Matrix;. |
b620 | 0a 54 68 65 20 77 68 6f 6c 65 20 6d 61 74 72 69 78 20 69 73 20 73 74 6f 72 65 64 20 69 6e 20 6d | .The.whole.matrix.is.stored.in.m |
b640 | 65 6d 6f 72 79 20 72 6f 77 20 61 66 74 65 72 20 72 6f 77 20 61 74 20 74 68 65 20 60 70 5f 49 6e | emory.row.after.row.at.the.`p_In |
b660 | 69 74 27 0a 61 64 64 72 65 73 73 2e 20 60 70 27 20 69 73 20 61 6e 20 61 72 72 61 79 20 6f 66 20 | it'.address..`p'.is.an.array.of. |
b680 | 70 6f 69 6e 74 65 72 73 20 77 68 65 72 65 20 60 70 5b 69 5d 27 20 70 6f 69 6e 74 73 20 74 6f 20 | pointers.where.`p[i]'.points.to. |
b6a0 | 74 68 65 20 66 69 72 73 74 0a 65 6c 65 6d 65 6e 74 20 6f 66 20 74 68 65 20 69 5e 74 68 20 72 6f | the.first.element.of.the.i^th.ro |
b6c0 | 77 2e 20 20 60 4e 62 52 6f 77 73 27 20 61 6e 64 20 60 4e 62 43 6f 6c 75 6d 6e 73 27 20 61 72 65 | w...`NbRows'.and.`NbColumns'.are |
b6e0 | 20 72 65 73 70 65 63 74 69 76 65 6c 79 20 74 68 65 0a 6e 75 6d 62 65 72 20 6f 66 20 72 6f 77 73 | .respectively.the.number.of.rows |
b700 | 20 61 6e 64 20 63 6f 6c 75 6d 6e 73 20 6f 66 20 74 68 65 20 6d 61 74 72 69 78 2e 20 20 45 61 63 | .and.columns.of.the.matrix...Eac |
b720 | 68 20 72 6f 77 20 63 6f 72 72 65 73 70 6f 6e 64 73 20 74 6f 20 61 0a 63 6f 6e 73 74 72 61 69 6e | h.row.corresponds.to.a.constrain |
b740 | 74 2e 20 54 68 65 20 66 69 72 73 74 20 65 6c 65 6d 65 6e 74 20 6f 66 20 65 61 63 68 20 72 6f 77 | t..The.first.element.of.each.row |
b760 | 20 69 73 20 61 6e 20 65 71 75 61 6c 69 74 79 2f 69 6e 65 71 75 61 6c 69 74 79 0a 74 61 67 2e 20 | .is.an.equality/inequality.tag.. |
b780 | 54 68 65 20 63 6f 6e 73 74 72 61 69 6e 74 20 69 73 20 61 6e 20 65 71 75 61 6c 69 74 79 20 70 28 | The.constraint.is.an.equality.p( |
b7a0 | 78 29 20 3d 20 30 20 69 66 20 74 68 65 20 66 69 72 73 74 20 65 6c 65 6d 65 6e 74 20 69 73 20 30 | x).=.0.if.the.first.element.is.0 |
b7c0 | 2c 0a 62 75 74 20 69 74 20 69 73 20 61 6e 20 69 6e 65 71 75 61 6c 69 74 79 20 70 28 78 29 20 5c | ,.but.it.is.an.inequality.p(x).\ |
b7e0 | 67 65 71 20 30 20 69 66 20 74 68 65 20 66 69 72 73 74 20 65 6c 65 6d 65 6e 74 20 69 73 20 31 2e | geq.0.if.the.first.element.is.1. |
b800 | 20 20 54 68 65 0a 6e 65 78 74 20 65 6c 65 6d 65 6e 74 73 20 61 72 65 20 74 68 65 20 75 6e 6b 6e | ..The.next.elements.are.the.unkn |
b820 | 6f 77 6e 20 63 6f 65 66 66 69 63 69 65 6e 74 73 2c 20 66 6f 6c 6c 6f 77 65 64 20 62 79 20 74 68 | own.coefficients,.followed.by.th |
b840 | 65 20 70 61 72 61 6d 65 74 65 72 0a 63 6f 65 66 66 69 63 69 65 6e 74 73 2c 20 74 68 65 6e 20 74 | e.parameter.coefficients,.then.t |
b860 | 68 65 20 73 63 61 6c 61 72 20 63 6f 65 66 66 69 63 69 65 6e 74 2e 20 20 46 6f 72 20 69 6e 73 74 | he.scalar.coefficient...For.inst |
b880 | 61 6e 63 65 2c 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 0a 74 68 72 65 65 20 63 6f 6e 73 74 72 | ance,.the.following.three.constr |
b8a0 | 61 69 6e 74 73 3a 0a 0a 20 20 20 20 20 20 20 20 20 2d 69 20 2b 20 6d 20 20 3d 20 30 0a 20 20 20 | aints:...........-i.+.m..=.0.... |
b8c0 | 20 20 20 20 20 20 2d 6a 20 2b 20 6e 20 3e 3d 20 30 0a 20 20 20 20 20 20 69 20 2b 20 6a 20 2d 20 | ......-j.+.n.>=.0.......i.+.j.-. |
b8e0 | 6b 20 3e 3d 20 30 0a 0a 77 6f 75 6c 64 20 62 65 20 72 65 70 72 65 73 65 6e 74 65 64 20 62 79 20 | k.>=.0..would.be.represented.by. |
b900 | 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 72 6f 77 73 3a 0a 0a 20 20 20 20 20 23 20 65 71 2f 69 | the.following.rows:.......#.eq/i |
b920 | 6e 20 20 69 20 20 20 6a 20 20 20 6b 20 20 20 6d 20 20 20 6e 20 20 20 63 73 74 0a 20 20 20 20 20 | n..i...j...k...m...n...cst...... |
b940 | 20 20 20 20 30 20 20 20 20 30 20 20 2d 31 20 20 20 30 20 20 20 31 20 20 20 30 20 20 20 20 30 0a | ....0....0..-1...0...1...0....0. |
b960 | 20 20 20 20 20 20 20 20 20 31 20 20 20 2d 31 20 20 20 30 20 20 20 30 20 20 20 30 20 20 20 31 20 | .........1...-1...0...0...0...1. |
b980 | 20 20 20 30 0a 20 20 20 20 20 20 20 20 20 31 20 20 20 20 31 20 20 20 31 20 20 2d 31 20 20 20 30 | ...0..........1....1...1..-1...0 |
b9a0 | 20 20 20 30 20 20 20 20 30 0a 0a 54 6f 20 62 65 20 61 62 6c 65 20 74 6f 20 70 72 6f 76 69 64 65 | ...0....0..To.be.able.to.provide |
b9c0 | 20 64 69 66 66 65 72 65 6e 74 20 70 72 65 63 69 73 69 6f 6e 20 76 65 72 73 69 6f 6e 20 28 43 4c | .different.precision.version.(CL |
b9e0 | 6f 6f 47 20 73 75 70 70 6f 72 74 73 20 33 32 0a 62 69 74 73 2c 20 36 34 20 62 69 74 73 20 61 6e | ooG.supports.32.bits,.64.bits.an |
ba00 | 64 20 61 72 62 69 74 72 61 72 79 20 70 72 65 63 69 73 69 6f 6e 20 74 68 72 6f 75 67 68 20 74 68 | d.arbitrary.precision.through.th |
ba20 | 65 20 47 4d 50 20 6c 69 62 72 61 72 79 29 2c 20 74 68 65 0a 60 56 61 6c 75 65 27 20 74 79 70 65 | e.GMP.library),.the.`Value'.type |
ba40 | 20 64 65 70 65 6e 64 73 20 6f 6e 20 74 68 65 20 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20 6f 70 | .depends.on.the.configuration.op |
ba60 | 74 69 6f 6e 73 20 28 69 74 20 6d 61 79 20 62 65 20 60 6c 6f 6e 67 20 69 6e 74 27 0a 66 6f 72 20 | tions.(it.may.be.`long.int'.for. |
ba80 | 33 32 20 62 69 74 73 20 76 65 72 73 69 6f 6e 2c 20 60 6c 6f 6e 67 20 6c 6f 6e 67 20 69 6e 74 27 | 32.bits.version,.`long.long.int' |
baa0 | 20 66 6f 72 20 36 34 20 62 69 74 73 20 76 65 72 73 69 6f 6e 2c 20 61 6e 64 20 60 6d 70 7a 5f 74 | .for.64.bits.version,.and.`mpz_t |
bac0 | 27 0a 66 6f 72 20 6d 75 6c 74 69 70 6c 65 20 70 72 65 63 69 73 69 6f 6e 20 76 65 72 73 69 6f 6e | '.for.multiple.precision.version |
bae0 | 29 2e 20 20 54 68 65 20 60 70 5f 49 6e 69 74 5f 73 69 7a 65 27 20 66 69 65 6c 64 20 69 73 20 6e | )...The.`p_Init_size'.field.is.n |
bb00 | 65 65 64 65 64 20 62 79 0a 74 68 65 20 50 6f 6c 79 4c 69 62 20 74 6f 20 66 72 65 65 20 74 68 65 | eeded.by.the.PolyLib.to.free.the |
bb20 | 20 6d 65 6d 6f 72 79 20 61 6c 6c 6f 63 61 74 65 64 20 62 79 20 60 6d 70 7a 5f 69 6e 69 74 27 20 | .memory.allocated.by.`mpz_init'. |
bb40 | 69 6e 20 74 68 65 20 6d 75 6c 74 69 70 6c 65 0a 70 72 65 63 69 73 69 6f 6e 20 72 65 6c 65 61 73 | in.the.multiple.precision.releas |
bb60 | 65 2e 20 20 53 65 74 20 74 68 69 73 20 66 69 65 6c 64 20 74 6f 20 30 20 69 66 20 79 6f 75 20 61 | e...Set.this.field.to.0.if.you.a |
bb80 | 72 65 20 5f 6e 6f 74 5f 20 75 73 69 6e 67 20 6d 75 6c 74 69 70 6c 65 0a 70 72 65 63 69 73 69 6f | re._not_.using.multiple.precisio |
bba0 | 6e 2e 20 20 53 65 74 20 74 68 69 73 20 66 69 65 6c 64 20 74 6f 20 74 68 65 20 73 69 7a 65 20 6f | n...Set.this.field.to.the.size.o |
bbc0 | 66 20 74 68 65 20 60 70 5f 49 6e 69 74 27 20 61 72 72 61 79 20 69 66 20 79 6f 75 0a 69 6e 69 74 | f.the.`p_Init'.array.if.you.init |
bbe0 | 69 61 6c 69 7a 65 64 20 69 74 20 79 6f 75 72 73 65 6c 66 20 61 6e 64 20 69 66 20 79 6f 75 20 61 | ialized.it.yourself.and.if.you.a |
bc00 | 72 65 20 75 73 69 6e 67 20 74 68 65 20 6d 75 6c 74 69 70 6c 65 20 70 72 65 63 69 73 69 6f 6e 0a | re.using.the.multiple.precision. |
bc20 | 76 65 72 73 69 6f 6e 2e 0a 0a 1f 0a 46 69 6c 65 3a 20 63 6c 6f 6f 67 2e 69 6e 66 6f 2c 20 20 4e | version.....File:.cloog.info,..N |
bc40 | 6f 64 65 3a 20 43 6c 6f 6f 67 44 6f 6d 61 69 6e 2c 20 20 4e 65 78 74 3a 20 43 6c 6f 6f 67 44 6f | ode:.CloogDomain,..Next:.CloogDo |
bc60 | 6d 61 69 6e 4c 69 73 74 2c 20 20 50 72 65 76 3a 20 43 6c 6f 6f 67 4d 61 74 72 69 78 2c 20 20 55 | mainList,..Prev:.CloogMatrix,..U |
bc80 | 70 3a 20 43 4c 6f 6f 47 20 44 61 74 61 20 53 74 72 75 63 74 75 72 65 73 0a 0a 33 2e 31 2e 32 20 | p:.CLooG.Data.Structures..3.1.2. |
bca0 | 43 6c 6f 6f 67 44 6f 6d 61 69 6e 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 20 | CloogDomain.-----------------... |
bcc0 | 20 20 20 20 73 74 72 75 63 74 20 63 6c 6f 6f 67 64 6f 6d 61 69 6e 0a 20 20 20 20 20 7b 20 50 6f | ....struct.cloogdomain......{.Po |
bce0 | 6c 79 68 65 64 72 6f 6e 20 2a 20 70 6f 6c 79 68 65 64 72 6f 6e 20 3b 20 20 2f 2a 20 54 68 65 20 | lyhedron.*.polyhedron.;../*.The. |
bd00 | 70 6f 6c 79 68 65 64 72 61 6c 20 64 6f 6d 61 69 6e 2e 20 2a 2f 0a 20 20 20 20 20 7d 20 3b 0a 20 | polyhedral.domain..*/......}.;.. |
bd20 | 20 20 20 20 74 79 70 65 64 65 66 20 73 74 72 75 63 74 20 63 6c 6f 6f 67 64 6f 6d 61 69 6e 20 43 | ....typedef.struct.cloogdomain.C |
bd40 | 6c 6f 6f 67 44 6f 6d 61 69 6e 20 3b 0a 0a 54 68 65 20 60 43 6c 6f 6f 67 44 6f 6d 61 69 6e 27 20 | loogDomain.;..The.`CloogDomain'. |
bd60 | 73 74 72 75 63 74 75 72 65 20 63 6f 6e 74 61 69 6e 73 20 61 20 50 6f 6c 79 4c 69 62 20 60 50 6f | structure.contains.a.PolyLib.`Po |
bd80 | 6c 79 68 65 64 72 6f 6e 27 20 64 61 74 61 0a 73 74 72 75 63 74 75 72 65 20 77 68 69 63 68 20 72 | lyhedron'.data.structure.which.r |
bda0 | 65 70 72 65 73 65 6e 74 73 20 61 20 70 6f 6c 79 68 65 64 72 61 6c 20 64 6f 6d 61 69 6e 20 28 61 | epresents.a.polyhedral.domain.(a |
bdc0 | 20 75 6e 69 6f 6e 20 6f 66 20 70 6f 6c 79 68 65 64 72 61 29 0a 69 6e 20 62 6f 74 68 20 63 6f 6e | .union.of.polyhedra).in.both.con |
bde0 | 73 74 72 61 69 6e 74 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 61 6e 64 20 69 74 73 20 64 | straint.representation.and.its.d |
be00 | 75 61 6c 20 72 61 79 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 0a 28 2a 6e 6f 74 65 20 57 69 | ual.ray.representation.(*note.Wi |
be20 | 6c 39 33 3a 3a 29 2e 20 20 49 74 20 69 73 20 64 65 66 69 6e 65 64 20 69 6e 20 60 70 6f 6c 79 6c | l93::)...It.is.defined.in.`polyl |
be40 | 69 62 2f 74 79 70 65 73 2e 68 27 20 61 73 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 3a 0a 0a 20 | ib/types.h'.as.the.following:... |
be60 | 20 20 20 20 73 74 72 75 63 74 20 70 6f 6c 79 68 65 64 72 6f 6e 0a 20 20 20 20 20 7b 20 75 6e 73 | ....struct.polyhedron......{.uns |
be80 | 69 67 6e 65 64 20 44 69 6d 65 6e 73 69 6f 6e 2c 20 20 20 20 20 20 20 20 2f 2a 20 4e 75 6d 62 65 | igned.Dimension,......../*.Numbe |
bea0 | 72 20 6f 66 20 64 69 6d 65 6e 73 69 6f 6e 73 2e 20 2a 2f 0a 20 20 20 20 20 20 20 20 20 20 20 20 | r.of.dimensions..*/............. |
bec0 | 20 20 20 20 4e 62 43 6f 6e 73 74 72 61 69 6e 74 73 2c 20 20 20 20 2f 2a 20 4e 75 6d 62 65 72 20 | ....NbConstraints,..../*.Number. |
bee0 | 6f 66 20 63 6f 6e 73 74 72 61 69 6e 74 73 2e 20 2a 2f 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | of.constraints..*/.............. |
bf00 | 20 20 20 4e 62 52 61 79 73 2c 20 20 20 20 20 20 20 20 20 20 20 2f 2a 20 4e 75 6d 62 65 72 20 6f | ...NbRays,.........../*.Number.o |
bf20 | 66 20 72 61 79 73 2e 20 2a 2f 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 4e 62 45 71 2c | f.rays..*/.................NbEq, |
bf40 | 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2a 20 4e 75 6d 62 65 72 20 6f 66 20 76 65 72 74 69 63 | ............./*.Number.of.vertic |
bf60 | 65 73 20 28 3f 29 2e 20 2a 2f 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 4e 62 42 69 64 | es.(?)..*/.................NbBid |
bf80 | 20 3b 20 20 20 20 20 20 20 20 20 20 20 2f 2a 20 4e 75 6d 62 65 72 20 6f 66 20 65 78 74 72 65 6d | .;.........../*.Number.of.extrem |
bfa0 | 61 6c 20 72 61 79 73 20 28 3f 29 2e 20 2a 2f 0a 20 20 20 20 20 20 20 56 61 6c 75 65 20 2a 2a 20 | al.rays.(?)..*/........Value.**. |
bfc0 | 43 6f 6e 73 74 72 61 69 6e 74 20 3b 20 20 20 20 20 20 2f 2a 20 50 6f 69 6e 74 65 72 73 20 74 6f | Constraint.;....../*.Pointers.to |
bfe0 | 20 63 6f 6e 73 74 72 61 69 6e 74 73 2e 20 2a 2f 0a 20 20 20 20 20 20 20 56 61 6c 75 65 20 2a 2a | .constraints..*/........Value.** |
c000 | 20 52 61 79 20 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2a 20 50 6f 69 6e 74 65 72 73 20 74 | .Ray.;............./*.Pointers.t |
c020 | 6f 20 72 61 79 73 2e 20 2a 2f 0a 20 20 20 20 20 20 20 56 61 6c 75 65 20 2a 20 70 5f 49 6e 69 74 | o.rays..*/........Value.*.p_Init |
c040 | 20 3b 20 20 20 20 20 20 20 20 20 20 20 2f 2a 20 43 6f 6e 73 74 72 61 69 6e 74 73 20 61 6e 64 20 | .;.........../*.Constraints.and. |
c060 | 72 61 79 73 20 63 6f 6e 74 69 67 75 6f 75 73 6c 79 2e 20 2a 2f 0a 20 20 20 20 20 20 20 69 6e 74 | rays.contiguously..*/........int |
c080 | 20 70 5f 49 6e 69 74 5f 73 69 7a 65 20 3b 20 20 20 20 20 20 20 20 20 20 2f 2a 20 46 6f 72 20 69 | .p_Init_size.;........../*.For.i |
c0a0 | 6e 74 65 72 6e 61 6c 20 75 73 65 2e 20 2a 2f 0a 20 20 20 20 20 20 20 73 74 72 75 63 74 20 70 6f | nternal.use..*/........struct.po |
c0c0 | 6c 79 68 65 64 72 6f 6e 20 2a 20 6e 65 78 74 20 3b 20 2f 2a 20 4e 65 78 74 20 63 6f 6d 70 6f 6e | lyhedron.*.next.;./*.Next.compon |
c0e0 | 65 6e 74 20 6f 66 20 74 68 65 20 75 6e 69 6f 6e 2e 20 2a 2f 0a 20 20 20 20 20 7d 0a 20 20 20 20 | ent.of.the.union..*/......}..... |
c100 | 20 74 79 70 65 64 65 66 20 73 74 72 75 63 74 20 70 6f 6c 79 68 65 64 72 6f 6e 20 50 6f 6c 79 68 | .typedef.struct.polyhedron.Polyh |
c120 | 65 64 72 6f 6e 3b 0a 0a 54 68 65 20 63 6f 6e 73 74 72 61 69 6e 74 20 72 65 70 72 65 73 65 6e 74 | edron;..The.constraint.represent |
c140 | 61 74 69 6f 6e 20 69 73 20 71 75 69 74 65 20 74 68 65 20 73 61 6d 65 20 61 73 20 69 6e 20 74 68 | ation.is.quite.the.same.as.in.th |
c160 | 65 20 60 4d 61 74 72 69 78 27 20 64 61 74 61 0a 73 74 72 75 63 74 75 72 65 20 28 2a 6e 6f 74 65 | e.`Matrix'.data.structure.(*note |
c180 | 20 43 6c 6f 6f 67 4d 61 74 72 69 78 3a 3a 29 2e 20 54 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 72 | .CloogMatrix::)..The.number.of.r |
c1a0 | 6f 77 73 20 69 73 20 60 4e 62 43 6f 6e 73 74 72 61 69 6e 74 73 27 0a 61 6e 64 20 74 68 65 20 6e | ows.is.`NbConstraints'.and.the.n |
c1c0 | 75 6d 62 65 72 20 6f 66 20 63 6f 6c 75 6d 6e 73 20 69 6e 20 74 68 65 20 60 50 6f 6c 79 68 65 64 | umber.of.columns.in.the.`Polyhed |
c1e0 | 72 6f 6e 27 20 73 74 72 75 63 74 75 72 65 20 69 73 0a 60 44 69 6d 65 6e 73 69 6f 6e 2b 32 27 20 | ron'.structure.is.`Dimension+2'. |
c200 | 28 74 68 65 20 2b 32 20 63 6f 6d 65 73 20 66 72 6f 6d 20 74 68 65 20 65 71 75 61 6c 69 74 79 2f | (the.+2.comes.from.the.equality/ |
c220 | 69 6e 65 71 75 61 6c 69 74 79 20 74 61 67 20 61 6e 64 20 74 68 65 0a 73 63 61 6c 61 72 20 63 6f | inequality.tag.and.the.scalar.co |
c240 | 65 66 66 69 63 69 65 6e 74 29 2e 20 41 73 20 69 6e 20 74 68 65 20 60 4d 61 74 72 69 78 27 20 73 | efficient)..As.in.the.`Matrix'.s |
c260 | 74 72 75 63 74 75 72 65 2c 20 54 68 65 20 64 61 74 61 20 61 72 65 20 73 74 6f 72 65 64 0a 69 6e | tructure,.The.data.are.stored.in |
c280 | 20 6d 65 6d 6f 72 79 20 63 6f 6e 74 69 67 75 6f 75 73 6c 79 20 61 74 20 74 68 65 20 60 70 5f 49 | .memory.contiguously.at.the.`p_I |
c2a0 | 6e 69 74 27 20 61 64 64 72 65 73 73 20 61 6e 64 20 74 68 65 20 60 70 5f 49 6e 69 74 5f 73 69 7a | nit'.address.and.the.`p_Init_siz |
c2c0 | 65 27 0a 66 69 65 6c 64 20 69 73 20 75 73 65 64 20 66 6f 72 20 6d 65 6d 6f 72 79 20 64 65 61 6c | e'.field.is.used.for.memory.deal |
c2e0 | 6c 6f 63 61 74 69 6f 6e 20 69 6e 20 74 68 65 20 6d 75 6c 74 69 70 6c 65 20 70 72 65 63 69 73 69 | location.in.the.multiple.precisi |
c300 | 6f 6e 20 63 61 73 65 0a 28 2a 6e 6f 74 65 20 43 6c 6f 6f 67 4d 61 74 72 69 78 3a 3a 29 2e 20 20 | on.case.(*note.CloogMatrix::)... |
c320 | 46 6f 72 20 61 20 62 65 74 74 65 72 20 75 6e 64 65 72 73 74 61 6e 64 69 6e 67 20 6f 66 20 74 68 | For.a.better.understanding.of.th |
c340 | 65 20 64 75 61 6c 20 72 61 79 0a 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 2c 20 74 68 65 20 75 | e.dual.ray.representation,.the.u |
c360 | 73 65 72 20 6d 61 79 20 72 65 66 65 72 20 74 6f 20 74 68 65 20 50 6f 6c 79 4c 69 62 20 64 6f 63 | ser.may.refer.to.the.PolyLib.doc |
c380 | 75 6d 65 6e 74 61 74 69 6f 6e 2e 0a 0a 1f 0a 46 69 6c 65 3a 20 63 6c 6f 6f 67 2e 69 6e 66 6f 2c | umentation.....File:.cloog.info, |
c3a0 | 20 20 4e 6f 64 65 3a 20 43 6c 6f 6f 67 44 6f 6d 61 69 6e 4c 69 73 74 2c 20 20 4e 65 78 74 3a 20 | ..Node:.CloogDomainList,..Next:. |
c3c0 | 43 6c 6f 6f 67 53 74 61 74 65 6d 65 6e 74 2c 20 20 50 72 65 76 3a 20 43 6c 6f 6f 67 44 6f 6d 61 | CloogStatement,..Prev:.CloogDoma |
c3e0 | 69 6e 2c 20 20 55 70 3a 20 43 4c 6f 6f 47 20 44 61 74 61 20 53 74 72 75 63 74 75 72 65 73 0a 0a | in,..Up:.CLooG.Data.Structures.. |
c400 | 33 2e 31 2e 33 20 43 6c 6f 6f 67 44 6f 6d 61 69 6e 4c 69 73 74 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | 3.1.3.CloogDomainList.---------- |
c420 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 20 20 20 20 20 73 74 72 75 63 74 20 63 6c 6f 6f 67 64 6f | -----------.......struct.cloogdo |
c440 | 6d 61 69 6e 6c 69 73 74 0a 20 20 20 20 20 7b 20 43 6c 6f 6f 67 44 6f 6d 61 69 6e 20 2a 20 64 6f | mainlist......{.CloogDomain.*.do |
c460 | 6d 61 69 6e 20 3b 0a 20 20 20 20 20 20 20 73 74 72 75 63 74 20 63 6c 6f 6f 67 64 6f 6d 61 69 6e | main.;........struct.cloogdomain |
c480 | 6c 69 73 74 20 2a 20 6e 65 78 74 20 3b 0a 20 20 20 20 20 7d 20 3b 0a 20 20 20 20 20 74 79 70 65 | list.*.next.;......}.;......type |
c4a0 | 64 65 66 20 73 74 72 75 63 74 20 63 6c 6f 6f 67 64 6f 6d 61 69 6e 6c 69 73 74 20 43 6c 6f 6f 67 | def.struct.cloogdomainlist.Cloog |
c4c0 | 44 6f 6d 61 69 6e 4c 69 73 74 20 3b 0a 0a 54 68 65 20 43 6c 6f 6f 67 44 6f 6d 61 69 6e 4c 69 73 | DomainList.;..The.CloogDomainLis |
c4e0 | 74 20 73 74 72 75 63 74 75 72 65 20 72 65 70 72 65 73 65 6e 74 73 20 61 20 60 4e 55 4c 4c 27 20 | t.structure.represents.a.`NULL'. |
c500 | 74 65 72 6d 69 6e 61 74 65 64 20 6c 69 6e 6b 65 64 20 6c 69 73 74 0a 6f 66 20 64 6f 6d 61 69 6e | terminated.linked.list.of.domain |
c520 | 73 2e 0a 0a 1f 0a 46 69 6c 65 3a 20 63 6c 6f 6f 67 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 43 | s.....File:.cloog.info,..Node:.C |
c540 | 6c 6f 6f 67 53 74 61 74 65 6d 65 6e 74 2c 20 20 4e 65 78 74 3a 20 43 6c 6f 6f 67 42 6c 6f 63 6b | loogStatement,..Next:.CloogBlock |
c560 | 2c 20 20 50 72 65 76 3a 20 43 6c 6f 6f 67 44 6f 6d 61 69 6e 4c 69 73 74 2c 20 20 55 70 3a 20 43 | ,..Prev:.CloogDomainList,..Up:.C |
c580 | 4c 6f 6f 47 20 44 61 74 61 20 53 74 72 75 63 74 75 72 65 73 0a 0a 33 2e 31 2e 34 20 43 6c 6f 6f | LooG.Data.Structures..3.1.4.Cloo |
c5a0 | 67 53 74 61 74 65 6d 65 6e 74 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a | gStatement.--------------------. |
c5c0 | 0a 20 20 20 20 20 73 74 72 75 63 74 20 63 6c 6f 6f 67 73 74 61 74 65 6d 65 6e 74 0a 20 20 20 20 | ......struct.cloogstatement..... |
c5e0 | 20 7b 20 69 6e 74 20 6e 75 6d 62 65 72 20 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .{.int.number.;................. |
c600 | 20 2f 2a 20 54 68 65 20 73 74 61 74 65 6d 65 6e 74 20 75 6e 69 71 75 65 20 6e 75 6d 62 65 72 2e | ./*.The.statement.unique.number. |
c620 | 20 2a 2f 0a 20 20 20 20 20 20 20 76 6f 69 64 20 2a 20 75 73 72 20 3b 20 20 20 20 20 20 20 20 20 | .*/........void.*.usr.;......... |
c640 | 20 20 20 20 20 20 20 20 20 2f 2a 20 50 6f 69 6e 74 65 72 20 66 6f 72 20 75 73 65 72 27 73 20 63 | ........./*.Pointer.for.user's.c |
c660 | 6f 6e 76 65 6e 69 65 6e 63 65 2e 20 2a 2f 0a 20 20 20 20 20 20 20 73 74 72 75 63 74 20 63 6c 6f | onvenience..*/........struct.clo |
c680 | 6f 67 73 74 61 74 65 6d 65 6e 74 20 2a 20 6e 65 78 74 20 3b 2f 2a 20 4e 65 78 74 20 65 6c 65 6d | ogstatement.*.next.;/*.Next.elem |
c6a0 | 65 6e 74 20 6f 66 20 74 68 65 20 6c 69 6e 6b 65 64 20 6c 69 73 74 2e 20 2a 2f 0a 20 20 20 20 20 | ent.of.the.linked.list..*/...... |
c6c0 | 7d 20 3b 0a 20 20 20 20 20 74 79 70 65 64 65 66 20 73 74 72 75 63 74 20 63 6c 6f 6f 67 73 74 61 | }.;......typedef.struct.cloogsta |
c6e0 | 74 65 6d 65 6e 74 20 43 6c 6f 6f 67 53 74 61 74 65 6d 65 6e 74 20 3b 0a 0a 54 68 65 20 60 43 6c | tement.CloogStatement.;..The.`Cl |
c700 | 6f 6f 67 53 74 61 74 65 6d 65 6e 74 27 20 73 74 72 75 63 74 75 72 65 20 72 65 70 72 65 73 65 6e | oogStatement'.structure.represen |
c720 | 74 73 20 61 20 60 4e 55 4c 4c 27 20 74 65 72 6d 69 6e 61 74 65 64 20 6c 69 6e 6b 65 64 0a 6c 69 | ts.a.`NULL'.terminated.linked.li |
c740 | 73 74 20 6f 66 20 73 74 61 74 65 6d 65 6e 74 73 2e 20 49 6e 20 43 4c 6f 6f 47 2c 20 61 20 73 74 | st.of.statements..In.CLooG,.a.st |
c760 | 61 74 65 6d 65 6e 74 20 69 73 20 6f 6e 6c 79 20 64 65 66 69 6e 65 64 20 62 79 20 69 74 73 20 75 | atement.is.only.defined.by.its.u |
c780 | 6e 69 71 75 65 0a 6e 75 6d 62 65 72 20 28 60 6e 75 6d 62 65 72 27 29 2e 20 54 68 65 20 75 73 65 | nique.number.(`number')..The.use |
c7a0 | 72 20 63 61 6e 20 75 73 65 20 74 68 65 20 70 6f 69 6e 74 65 72 20 60 75 73 72 27 20 66 6f 72 20 | r.can.use.the.pointer.`usr'.for. |
c7c0 | 68 69 73 20 6f 77 6e 0a 63 6f 6e 76 65 6e 69 65 6e 63 65 20 74 6f 20 6c 69 6e 6b 20 68 69 73 20 | his.own.convenience.to.link.his. |
c7e0 | 6f 77 6e 20 73 74 61 74 65 6d 65 6e 74 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 74 6f 20 | own.statement.representation.to. |
c800 | 74 68 65 0a 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 60 43 6c 6f 6f 67 53 74 61 74 65 6d 65 6e | the.corresponding.`CloogStatemen |
c820 | 74 27 20 73 74 72 75 63 74 75 72 65 2e 20 54 68 65 20 77 68 6f 6c 65 20 6d 61 6e 61 67 65 6d 65 | t'.structure..The.whole.manageme |
c840 | 6e 74 20 6f 66 20 74 68 65 0a 60 75 73 72 27 20 70 6f 69 6e 74 65 72 20 69 73 20 75 6e 64 65 72 | nt.of.the.`usr'.pointer.is.under |
c860 | 20 74 68 65 20 72 65 73 70 6f 6e 73 69 62 69 6c 69 74 79 20 6f 66 20 74 68 65 20 75 73 65 72 2c | .the.responsibility.of.the.user, |
c880 | 20 69 6e 20 70 61 72 74 69 63 75 6c 61 72 2c 0a 43 4c 6f 6f 47 20 6e 65 76 65 72 20 74 72 69 65 | .in.particular,.CLooG.never.trie |
c8a0 | 73 20 74 6f 20 70 72 69 6e 74 2c 20 74 6f 20 61 6c 6c 6f 63 61 74 65 20 6f 72 20 74 6f 20 66 72 | s.to.print,.to.allocate.or.to.fr |
c8c0 | 65 65 20 61 20 6d 65 6d 6f 72 79 20 62 6c 6f 63 6b 0a 70 6f 69 6e 74 65 64 20 62 79 20 60 75 73 | ee.a.memory.block.pointed.by.`us |
c8e0 | 72 27 2e 0a 0a 1f 0a 46 69 6c 65 3a 20 63 6c 6f 6f 67 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 | r'.....File:.cloog.info,..Node:. |
c900 | 43 6c 6f 6f 67 42 6c 6f 63 6b 2c 20 20 4e 65 78 74 3a 20 43 6c 6f 6f 67 42 6c 6f 63 6b 4c 69 73 | CloogBlock,..Next:.CloogBlockLis |
c920 | 74 2c 20 20 50 72 65 76 3a 20 43 6c 6f 6f 67 53 74 61 74 65 6d 65 6e 74 2c 20 20 55 70 3a 20 43 | t,..Prev:.CloogStatement,..Up:.C |
c940 | 4c 6f 6f 47 20 44 61 74 61 20 53 74 72 75 63 74 75 72 65 73 0a 0a 33 2e 31 2e 35 20 43 6c 6f 6f | LooG.Data.Structures..3.1.5.Cloo |
c960 | 67 42 6c 6f 63 6b 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 20 20 20 20 20 73 74 | gBlock.----------------.......st |
c980 | 72 75 63 74 20 63 6c 6f 6f 67 62 6c 6f 63 6b 0a 20 20 20 20 20 7b 20 43 6c 6f 6f 67 53 74 61 74 | ruct.cloogblock......{.CloogStat |
c9a0 | 65 6d 65 6e 74 20 2a 20 73 74 61 74 65 6d 65 6e 74 20 3b 20 2f 2a 20 53 74 61 74 65 6d 65 6e 74 | ement.*.statement.;./*.Statement |
c9c0 | 20 6c 69 73 74 20 6f 66 20 74 68 65 20 62 6c 6f 63 6b 2e 20 2a 2f 0a 20 20 20 20 20 20 20 43 6c | .list.of.the.block..*/........Cl |
c9e0 | 6f 6f 67 4d 61 74 72 69 78 20 2a 20 73 63 61 74 74 65 72 69 6e 67 20 3b 20 20 20 2f 2a 20 53 63 | oogMatrix.*.scattering.;.../*.Sc |
ca00 | 61 74 74 65 72 69 6e 67 20 66 75 6e 63 74 69 6f 6e 20 6f 66 20 74 68 65 20 62 6c 6f 63 6b 2e 20 | attering.function.of.the.block.. |
ca20 | 2a 2f 0a 20 20 20 20 20 20 20 69 6e 74 20 64 65 70 74 68 20 3b 20 20 20 20 20 20 20 20 20 20 20 | */........int.depth.;........... |
ca40 | 20 20 20 20 20 20 20 2f 2a 20 4f 72 69 67 69 6e 61 6c 20 62 6c 6f 63 6b 20 64 65 70 74 68 2e 2a | ......./*.Original.block.depth.* |
ca60 | 2f 0a 20 20 20 20 20 20 20 76 6f 69 64 20 2a 20 75 73 72 3b 20 20 20 20 20 20 20 20 20 20 20 20 | /........void.*.usr;............ |
ca80 | 20 20 20 20 20 20 2f 2a 20 50 6f 69 6e 74 65 72 20 66 6f 72 20 75 73 65 72 27 73 20 63 6f 6e 76 | ....../*.Pointer.for.user's.conv |
caa0 | 65 6e 69 65 6e 63 65 2e 20 2a 2f 0a 20 20 20 20 20 7d 20 3b 0a 20 20 20 20 20 74 79 70 65 64 65 | enience..*/......}.;......typede |
cac0 | 66 20 73 74 72 75 63 74 20 63 6c 6f 6f 67 62 6c 6f 63 6b 20 43 6c 6f 6f 67 42 6c 6f 63 6b 20 3b | f.struct.cloogblock.CloogBlock.; |
cae0 | 0a 0a 54 68 65 20 60 43 6c 6f 6f 67 42 6c 6f 63 6b 27 20 73 74 72 75 63 74 75 72 65 20 72 65 70 | ..The.`CloogBlock'.structure.rep |
cb00 | 72 65 73 65 6e 74 73 20 61 20 73 74 61 74 65 6d 65 6e 74 20 62 6c 6f 63 6b 2e 20 20 49 6e 20 61 | resents.a.statement.block...In.a |
cb20 | 0a 73 74 61 74 65 6d 65 6e 74 20 62 6c 6f 63 6b 2c 20 65 76 65 72 79 20 73 74 61 74 65 6d 65 6e | .statement.block,.every.statemen |
cb40 | 74 73 20 68 61 76 65 20 74 68 65 20 73 61 6d 65 20 69 74 65 72 61 74 69 6f 6e 20 64 6f 6d 61 69 | ts.have.the.same.iteration.domai |
cb60 | 6e 20 61 6e 64 0a 74 68 65 20 73 61 6d 65 20 73 63 61 74 74 65 72 69 6e 67 20 66 75 6e 63 74 69 | n.and.the.same.scattering.functi |
cb80 | 6f 6e 20 28 61 63 74 75 61 6c 6c 79 2c 20 74 68 65 20 73 63 61 74 74 65 72 69 6e 67 20 66 75 6e | on.(actually,.the.scattering.fun |
cba0 | 63 74 69 6f 6e 73 20 6d 61 79 0a 64 69 66 66 65 72 20 6f 6e 6c 79 20 62 79 20 61 20 73 63 61 6c | ctions.may.differ.only.by.a.scal |
cbc0 | 61 72 20 63 6f 65 66 66 69 63 69 65 6e 74 20 69 66 20 69 74 20 6a 75 73 74 20 70 72 65 63 69 73 | ar.coefficient.if.it.just.precis |
cbe0 | 65 73 20 74 68 65 20 6f 72 64 65 72 69 6e 67 20 6f 66 0a 74 68 65 20 73 74 61 74 65 6d 65 6e 74 | es.the.ordering.of.the.statement |
cc00 | 73 20 77 69 74 68 69 6e 20 74 68 65 20 62 6c 6f 63 6b 29 2e 20 60 73 74 61 74 65 6d 65 6e 74 27 | s.within.the.block)..`statement' |
cc20 | 20 69 73 20 74 68 65 20 73 74 61 74 65 6d 65 6e 74 20 6c 69 73 74 0a 77 68 65 72 65 20 74 68 65 | .is.the.statement.list.where.the |
cc40 | 20 73 74 61 74 65 6d 65 6e 74 20 6f 72 64 65 72 20 6d 61 74 74 65 72 73 2c 20 60 73 63 61 74 74 | .statement.order.matters,.`scatt |
cc60 | 65 72 69 6e 67 27 20 69 73 20 6f 6e 65 20 6f 66 20 74 68 65 20 73 74 61 74 65 6d 65 6e 74 0a 73 | ering'.is.one.of.the.statement.s |
cc80 | 63 61 74 74 65 72 69 6e 67 20 66 75 6e 63 74 69 6f 6e 73 20 61 6e 64 20 60 64 65 70 74 68 27 20 | cattering.functions.and.`depth'. |
cca0 | 69 73 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 64 69 6d 65 6e 73 69 6f 6e 73 20 6f 66 20 74 | is.the.number.of.dimensions.of.t |
ccc0 | 68 65 0a 69 74 65 72 61 74 69 6f 6e 20 64 6f 6d 61 69 6e 20 28 6f 6e 6c 79 20 74 68 65 20 75 6e | he.iteration.domain.(only.the.un |
cce0 | 6b 6e 6f 77 6e 2c 20 6e 6f 74 20 74 68 65 20 74 61 67 2f 70 61 72 61 6d 65 74 65 72 73 2f 73 63 | known,.not.the.tag/parameters/sc |
cd00 | 61 6c 61 72 29 2e 0a 60 75 73 72 27 20 69 73 20 61 20 70 6f 69 6e 74 65 72 20 66 6f 72 20 6c 69 | alar)..`usr'.is.a.pointer.for.li |
cd20 | 62 72 61 72 79 20 75 73 65 72 27 73 20 63 6f 6e 76 65 6e 69 65 6e 63 65 2e 20 4e 6f 74 65 20 74 | brary.user's.convenience..Note.t |
cd40 | 68 69 73 20 70 6f 69 6e 74 65 72 20 69 73 0a 6e 65 76 65 72 20 61 6c 6c 6f 63 61 74 65 64 2c 20 | his.pointer.is.never.allocated,. |
cd60 | 66 72 65 65 64 20 6f 72 20 70 72 69 6e 74 65 64 20 62 79 20 43 4c 6f 6f 47 2e 0a 0a 1f 0a 46 69 | freed.or.printed.by.CLooG.....Fi |
cd80 | 6c 65 3a 20 63 6c 6f 6f 67 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 43 6c 6f 6f 67 42 6c 6f 63 | le:.cloog.info,..Node:.CloogBloc |
cda0 | 6b 4c 69 73 74 2c 20 20 4e 65 78 74 3a 20 43 6c 6f 6f 67 4c 6f 6f 70 2c 20 20 50 72 65 76 3a 20 | kList,..Next:.CloogLoop,..Prev:. |
cdc0 | 43 6c 6f 6f 67 42 6c 6f 63 6b 2c 20 20 55 70 3a 20 43 4c 6f 6f 47 20 44 61 74 61 20 53 74 72 75 | CloogBlock,..Up:.CLooG.Data.Stru |
cde0 | 63 74 75 72 65 73 0a 0a 33 2e 31 2e 36 20 43 6c 6f 6f 67 42 6c 6f 63 6b 4c 69 73 74 0a 2d 2d 2d | ctures..3.1.6.CloogBlockList.--- |
ce00 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 20 20 20 20 20 73 74 72 75 63 74 20 63 | -----------------.......struct.c |
ce20 | 6c 6f 6f 67 64 62 6c 6f 63 6b 6c 69 73 74 0a 20 20 20 20 20 7b 20 43 6c 6f 6f 67 42 6c 6f 63 6b | loogdblocklist......{.CloogBlock |
ce40 | 20 2a 20 62 6c 6f 63 6b 20 3b 0a 20 20 20 20 20 20 20 73 74 72 75 63 74 20 63 6c 6f 6f 67 62 6c | .*.block.;........struct.cloogbl |
ce60 | 6f 63 6b 6c 69 73 74 20 2a 20 6e 65 78 74 20 3b 0a 20 20 20 20 20 7d 20 3b 0a 20 20 20 20 20 74 | ocklist.*.next.;......}.;......t |
ce80 | 79 70 65 64 65 66 20 73 74 72 75 63 74 20 63 6c 6f 6f 67 62 6c 6f 63 6b 6c 69 73 74 20 43 6c 6f | ypedef.struct.cloogblocklist.Clo |
cea0 | 6f 67 42 6c 6f 63 6b 4c 69 73 74 20 3b 0a 0a 54 68 65 20 43 6c 6f 6f 67 42 6c 6f 63 6b 4c 69 73 | ogBlockList.;..The.CloogBlockLis |
cec0 | 74 20 73 74 72 75 63 74 75 72 65 20 72 65 70 72 65 73 65 6e 74 73 20 61 20 60 4e 55 4c 4c 27 20 | t.structure.represents.a.`NULL'. |
cee0 | 74 65 72 6d 69 6e 61 74 65 64 20 6c 69 6e 6b 65 64 20 6c 69 73 74 0a 6f 66 20 62 6c 6f 63 6b 73 | terminated.linked.list.of.blocks |
cf00 | 2e 0a 0a 1f 0a 46 69 6c 65 3a 20 63 6c 6f 6f 67 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 43 6c | .....File:.cloog.info,..Node:.Cl |
cf20 | 6f 6f 67 4c 6f 6f 70 2c 20 20 4e 65 78 74 3a 20 43 6c 6f 6f 67 4e 61 6d 65 73 2c 20 20 50 72 65 | oogLoop,..Next:.CloogNames,..Pre |
cf40 | 76 3a 20 43 6c 6f 6f 67 42 6c 6f 63 6b 4c 69 73 74 2c 20 20 55 70 3a 20 43 4c 6f 6f 47 20 44 61 | v:.CloogBlockList,..Up:.CLooG.Da |
cf60 | 74 61 20 53 74 72 75 63 74 75 72 65 73 0a 0a 33 2e 31 2e 37 20 43 6c 6f 6f 67 4c 6f 6f 70 0a 2d | ta.Structures..3.1.7.CloogLoop.- |
cf80 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 20 20 20 20 20 73 74 72 75 63 74 20 63 6c 6f 6f | --------------.......struct.cloo |
cfa0 | 67 6c 6f 6f 70 0a 20 20 20 20 20 7b 20 43 6c 6f 6f 67 44 6f 6d 61 69 6e 20 2a 20 64 6f 6d 61 69 | gloop......{.CloogDomain.*.domai |
cfc0 | 6e 3b 20 20 20 20 20 20 20 2f 2a 20 49 74 65 72 61 74 69 6f 6e 20 64 6f 6d 61 69 6e 2e 20 2a 2f | n;......./*.Iteration.domain..*/ |
cfe0 | 0a 20 20 20 20 20 20 20 56 61 6c 75 65 20 73 74 72 69 64 65 20 3b 20 20 20 20 20 20 20 20 20 20 | ........Value.stride.;.......... |
d000 | 20 20 20 20 20 2f 2a 20 4c 6f 6f 70 20 73 74 72 69 64 65 2e 20 2a 2f 0a 20 20 20 20 20 20 20 43 | ...../*.Loop.stride..*/........C |
d020 | 6c 6f 6f 67 42 6c 6f 63 6b 20 2a 20 62 6c 6f 63 6b 20 3b 20 20 20 20 20 20 20 20 20 2f 2a 20 49 | loogBlock.*.block.;........./*.I |
d040 | 6e 63 6c 75 64 65 64 20 73 74 61 74 65 6d 65 6e 74 20 62 6c 6f 63 6b 2e 2a 2f 0a 20 20 20 20 20 | ncluded.statement.block.*/...... |
d060 | 20 20 76 6f 69 64 20 2a 20 75 73 72 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f | ..void.*.usr;................../ |
d080 | 2a 20 50 6f 69 6e 74 65 72 20 66 6f 72 20 75 73 65 72 27 73 20 63 6f 6e 76 65 6e 69 65 6e 63 65 | *.Pointer.for.user's.convenience |
d0a0 | 2e 20 2a 2f 0a 20 20 20 20 20 20 20 73 74 72 75 63 74 20 63 6c 6f 6f 67 6c 6f 6f 70 20 2a 20 69 | ..*/........struct.cloogloop.*.i |
d0c0 | 6e 6e 65 72 20 3b 20 20 20 2f 2a 20 4c 6f 6f 70 20 61 74 20 74 68 65 20 6e 65 78 74 20 6c 65 76 | nner.;.../*.Loop.at.the.next.lev |
d0e0 | 65 6c 2e 20 2a 2f 0a 20 20 20 20 20 20 20 73 74 72 75 63 74 20 63 6c 6f 6f 67 6c 6f 6f 70 20 2a | el..*/........struct.cloogloop.* |
d100 | 20 6e 65 78 74 20 3b 20 20 20 20 2f 2a 20 4e 65 78 74 20 6c 6f 6f 70 20 61 74 20 74 68 65 20 73 | .next.;..../*.Next.loop.at.the.s |
d120 | 61 6d 65 20 6c 65 76 65 6c 2e 20 2a 2f 0a 20 20 20 20 20 7d 20 3b 0a 20 20 20 20 20 74 79 70 65 | ame.level..*/......}.;......type |
d140 | 64 65 66 20 73 74 72 75 63 74 20 63 6c 6f 6f 67 6c 6f 6f 70 20 43 6c 6f 6f 67 4c 6f 6f 70 20 3b | def.struct.cloogloop.CloogLoop.; |
d160 | 0a 0a 54 68 65 20 60 43 6c 6f 6f 67 4c 6f 6f 70 27 20 73 74 72 75 63 74 75 72 65 20 72 65 70 72 | ..The.`CloogLoop'.structure.repr |
d180 | 65 73 65 6e 74 73 20 61 20 6c 6f 6f 70 2e 20 20 46 69 72 73 74 20 6f 66 20 61 6c 6c 2c 20 61 20 | esents.a.loop...First.of.all,.a. |
d1a0 | 6c 6f 6f 70 20 68 61 73 0a 61 6e 20 69 74 65 72 61 74 69 6f 6e 20 64 6f 6d 61 69 6e 20 28 60 64 | loop.has.an.iteration.domain.(`d |
d1c0 | 6f 6d 61 69 6e 27 29 2e 20 54 68 65 20 69 74 65 72 61 74 6f 72 27 73 20 73 74 72 69 64 65 20 66 | omain')..The.iterator's.stride.f |
d1e0 | 6f 72 20 6c 6f 6f 70 0a 69 6e 63 72 65 6d 65 6e 74 20 69 73 20 60 73 74 72 69 64 65 27 2e 20 54 | or.loop.increment.is.`stride'..T |
d200 | 68 65 20 6c 6f 6f 70 20 63 61 6e 20 69 6e 63 6c 75 64 65 20 61 20 73 74 61 74 65 6d 65 6e 74 20 | he.loop.can.include.a.statement. |
d220 | 62 6c 6f 63 6b 20 69 6e 20 74 68 65 0a 66 69 65 6c 64 20 60 62 6c 6f 63 6b 27 2e 20 49 66 20 74 | block.in.the.field.`block'..If.t |
d240 | 68 65 72 65 20 69 73 20 6e 6f 20 69 6e 63 6c 75 64 65 64 20 73 74 61 74 65 6d 65 6e 74 20 62 6c | here.is.no.included.statement.bl |
d260 | 6f 63 6b 2c 20 60 62 6c 6f 63 6b 27 20 69 73 20 73 65 74 0a 74 6f 20 60 4e 55 4c 4c 27 2e 20 60 | ock,.`block'.is.set.to.`NULL'..` |
d280 | 75 73 72 27 20 69 73 20 61 20 70 6f 69 6e 74 65 72 20 66 6f 72 20 6c 69 62 72 61 72 79 20 75 73 | usr'.is.a.pointer.for.library.us |
d2a0 | 65 72 27 73 20 63 6f 6e 76 65 6e 69 65 6e 63 65 2e 20 4e 6f 74 65 20 74 68 61 74 0a 74 68 69 73 | er's.convenience..Note.that.this |
d2c0 | 20 70 6f 69 6e 74 65 72 20 69 73 20 6e 65 76 65 72 20 61 6c 6c 6f 63 61 74 65 64 2c 20 66 72 65 | .pointer.is.never.allocated,.fre |
d2e0 | 65 64 20 6f 72 20 70 72 69 6e 74 65 64 20 62 79 20 43 4c 6f 6f 47 2e 20 60 69 6e 6e 65 72 27 20 | ed.or.printed.by.CLooG..`inner'. |
d300 | 69 73 0a 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 74 68 65 20 69 6e 6e 65 72 20 6c 6f 6f 70 2c 20 | is.a.pointer.to.the.inner.loop,. |
d320 | 61 6e 64 20 60 6e 65 78 74 27 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 74 68 65 20 6e 65 78 74 | and.`next'.a.pointer.to.the.next |
d340 | 20 6c 6f 6f 70 20 69 6e 0a 74 68 65 20 74 65 78 74 75 61 6c 20 6f 72 64 65 72 2e 20 49 66 20 74 | .loop.in.the.textual.order..If.t |
d360 | 68 65 72 65 20 61 72 65 20 6e 6f 20 69 6e 6e 65 72 20 6c 6f 6f 70 20 6f 72 20 6e 6f 20 6e 65 78 | here.are.no.inner.loop.or.no.nex |
d380 | 74 20 6c 6f 6f 70 2c 20 74 68 65 0a 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 70 6f 69 6e 74 65 | t.loop,.the.corresponding.pointe |
d3a0 | 72 20 69 73 20 73 65 74 20 74 6f 20 60 4e 55 4c 4c 27 2e 0a 0a 1f 0a 46 69 6c 65 3a 20 63 6c 6f | r.is.set.to.`NULL'.....File:.clo |
d3c0 | 6f 67 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 43 6c 6f 6f 67 4e 61 6d 65 73 2c 20 20 4e 65 78 | og.info,..Node:.CloogNames,..Nex |
d3e0 | 74 3a 20 43 6c 6f 6f 67 50 72 6f 67 72 61 6d 2c 20 20 50 72 65 76 3a 20 43 6c 6f 6f 67 4c 6f 6f | t:.CloogProgram,..Prev:.CloogLoo |
d400 | 70 2c 20 20 55 70 3a 20 43 4c 6f 6f 47 20 44 61 74 61 20 53 74 72 75 63 74 75 72 65 73 0a 0a 33 | p,..Up:.CLooG.Data.Structures..3 |
d420 | 2e 31 2e 38 20 43 6c 6f 6f 67 4e 61 6d 65 73 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | .1.8.CloogNames.---------------- |
d440 | 0a 0a 20 20 20 20 20 73 74 72 75 63 74 20 63 6c 6f 6f 67 6e 61 6d 65 73 0a 20 20 20 20 20 7b 20 | .......struct.cloognames......{. |
d460 | 69 6e 74 20 6e 62 5f 73 63 61 74 74 65 72 69 6e 67 20 3b 20 20 20 20 20 20 20 20 20 2f 2a 20 53 | int.nb_scattering.;........./*.S |
d480 | 63 61 74 74 65 72 69 6e 67 20 64 69 6d 65 6e 73 69 6f 6e 20 6e 75 6d 62 65 72 2e 20 2a 2f 0a 20 | cattering.dimension.number..*/.. |
d4a0 | 20 20 20 20 20 20 69 6e 74 20 6e 62 5f 69 74 65 72 61 74 6f 72 73 20 3b 20 20 20 20 20 20 20 20 | ......int.nb_iterators.;........ |
d4c0 | 20 20 2f 2a 20 49 74 65 72 61 74 6f 72 20 6e 75 6d 62 65 72 2e 20 2a 2f 0a 20 20 20 20 20 20 20 | ../*.Iterator.number..*/........ |
d4e0 | 69 6e 74 20 6e 62 5f 70 61 72 61 6d 65 74 65 72 73 20 3b 20 20 20 20 20 20 20 20 20 2f 2a 20 50 | int.nb_parameters.;........./*.P |
d500 | 61 72 61 6d 65 74 65 72 20 6e 75 6d 62 65 72 2e 20 2a 2f 0a 20 20 20 20 20 20 20 63 68 61 72 20 | arameter.number..*/........char. |
d520 | 2a 2a 20 73 63 61 74 74 65 72 69 6e 67 20 3b 20 20 20 20 20 20 20 20 2f 2a 20 54 68 65 20 73 63 | **.scattering.;......../*.The.sc |
d540 | 61 74 74 65 72 69 6e 67 20 64 69 6d 65 6e 73 69 6f 6e 20 6e 61 6d 65 73 2e 20 2a 2f 0a 20 20 20 | attering.dimension.names..*/.... |
d560 | 20 20 20 20 63 68 61 72 20 2a 2a 20 69 74 65 72 61 74 6f 72 73 20 3b 20 20 20 20 20 20 20 20 20 | ....char.**.iterators.;......... |
d580 | 2f 2a 20 54 68 65 20 69 74 65 72 61 74 6f 72 20 6e 61 6d 65 73 2e 20 2a 2f 0a 20 20 20 20 20 20 | /*.The.iterator.names..*/....... |
d5a0 | 20 63 68 61 72 20 2a 2a 20 70 61 72 61 6d 65 74 65 72 73 20 3b 20 20 20 20 20 20 20 20 2f 2a 20 | .char.**.parameters.;......../*. |
d5c0 | 54 68 65 20 70 61 72 61 6d 65 74 65 72 20 6e 61 6d 65 73 2e 20 2a 2f 0a 20 20 20 20 20 7d 20 3b | The.parameter.names..*/......}.; |
d5e0 | 0a 20 20 20 20 20 74 79 70 65 64 65 66 20 73 74 72 75 63 74 20 63 6c 6f 6f 67 6e 61 6d 65 73 20 | ......typedef.struct.cloognames. |
d600 | 43 6c 6f 6f 67 4e 61 6d 65 73 20 3b 0a 0a 54 68 65 20 60 43 6c 6f 6f 67 4e 61 6d 65 73 27 20 73 | CloogNames.;..The.`CloogNames'.s |
d620 | 74 72 75 63 74 75 72 65 20 72 65 70 72 65 73 65 6e 74 73 20 74 68 65 20 73 63 61 74 74 65 72 69 | tructure.represents.the.scatteri |
d640 | 6e 67 20 64 69 6d 65 6e 73 69 6f 6e 2c 20 74 68 65 0a 69 74 65 72 61 74 6f 72 20 61 6e 64 20 74 | ng.dimension,.the.iterator.and.t |
d660 | 68 65 20 70 61 72 61 6d 65 74 65 72 20 6e 61 6d 65 73 20 69 6e 20 74 68 65 20 66 69 6e 61 6c 20 | he.parameter.names.in.the.final. |
d680 | 70 72 6f 67 72 61 6d 2e 20 20 60 6e 62 5f 73 63 61 74 74 65 72 69 6e 67 27 0a 28 72 65 73 70 65 | program...`nb_scattering'.(respe |
d6a0 | 63 74 69 76 65 6c 79 20 60 6e 62 5f 69 74 65 72 61 74 6f 72 73 27 20 61 6e 64 20 60 6e 62 5f 70 | ctively.`nb_iterators'.and.`nb_p |
d6c0 | 61 72 61 6d 65 74 65 72 73 27 29 20 69 73 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 0a 73 63 61 | arameters').is.the.number.of.sca |
d6e0 | 74 74 65 72 69 6e 67 20 64 69 6d 65 6e 73 69 6f 6e 73 20 6e 75 6d 62 65 72 20 28 72 65 73 70 65 | ttering.dimensions.number.(respe |
d700 | 63 74 69 76 65 6c 79 20 74 68 65 20 69 74 65 72 61 74 6f 72 20 61 6e 64 20 70 61 72 61 6d 65 74 | ctively.the.iterator.and.paramet |
d720 | 65 72 0a 6e 75 6d 62 65 72 29 20 61 6e 64 20 6f 66 20 65 6c 65 6d 65 6e 74 73 20 69 6e 20 74 68 | er.number).and.of.elements.in.th |
d740 | 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 61 72 72 61 79 20 6f 66 20 73 74 72 69 6e 67 73 | e.corresponding.array.of.strings |
d760 | 0a 60 73 63 61 74 74 65 72 69 6e 67 27 20 28 72 65 73 70 65 63 74 69 76 65 6c 79 20 60 69 74 65 | .`scattering'.(respectively.`ite |
d780 | 72 61 74 6f 72 73 27 20 61 6e 64 20 60 70 61 72 61 6d 65 74 65 72 73 27 29 2e 20 20 54 68 65 20 | rators'.and.`parameters')...The. |
d7a0 | 69 5e 74 68 0a 73 63 61 74 74 65 72 69 6e 67 20 64 69 6d 65 6e 73 69 6f 6e 20 6e 61 6d 65 20 77 | i^th.scattering.dimension.name.w |
d7c0 | 69 6c 6c 20 62 65 20 61 73 73 6f 63 69 61 74 65 64 20 77 69 74 68 20 74 68 65 20 74 6f 20 74 68 | ill.be.associated.with.the.to.th |
d7e0 | 65 20 64 69 6d 65 6e 73 69 6f 6e 0a 69 20 6f 66 20 74 68 65 20 73 63 61 74 74 65 72 69 6e 67 20 | e.dimension.i.of.the.scattering. |
d800 | 66 75 6e 63 74 69 6f 6e 2e 20 20 54 68 65 20 69 5e 74 68 20 69 74 65 72 61 74 6f 72 20 6e 61 6d | function...The.i^th.iterator.nam |
d820 | 65 20 77 69 6c 6c 20 62 65 0a 61 73 73 6f 63 69 61 74 65 64 20 77 69 74 68 20 74 68 65 20 64 69 | e.will.be.associated.with.the.di |
d840 | 6d 65 6e 73 69 6f 6e 20 69 20 6f 66 20 74 68 65 20 69 74 65 72 61 74 69 6f 6e 20 64 6f 6d 61 69 | mension.i.of.the.iteration.domai |
d860 | 6e 2e 20 20 54 68 65 20 69 5e 74 68 0a 70 61 72 61 6d 65 74 65 72 20 6e 61 6d 65 20 77 69 6c 6c | n...The.i^th.parameter.name.will |
d880 | 20 62 65 20 61 73 73 6f 63 69 61 74 65 64 20 77 69 74 68 20 74 68 65 20 64 69 6d 65 6e 73 69 6f | .be.associated.with.the.dimensio |
d8a0 | 6e 20 69 20 6f 66 20 74 68 65 20 63 6f 6e 74 65 78 74 0a 70 6f 6c 79 68 65 64 72 6f 6e 2e 20 20 | n.i.of.the.context.polyhedron... |
d8c0 | 54 68 65 20 75 73 65 72 20 68 61 73 20 74 6f 20 65 6e 73 75 72 65 20 74 68 61 74 20 74 68 65 72 | The.user.has.to.ensure.that.ther |
d8e0 | 65 20 61 72 65 20 65 6e 6f 75 67 68 20 73 63 61 74 74 65 72 69 6e 67 0a 64 69 6d 65 6e 73 69 6f | e.are.enough.scattering.dimensio |
d900 | 6e 2c 20 69 74 65 72 61 74 6f 72 20 61 6e 64 20 70 61 72 61 6d 65 74 65 72 20 6e 61 6d 65 73 2e | n,.iterator.and.parameter.names. |
d920 | 0a 0a 1f 0a 46 69 6c 65 3a 20 63 6c 6f 6f 67 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 43 6c 6f | ....File:.cloog.info,..Node:.Clo |
d940 | 6f 67 50 72 6f 67 72 61 6d 2c 20 20 4e 65 78 74 3a 20 43 6c 6f 6f 67 4f 70 74 69 6f 6e 73 2c 20 | ogProgram,..Next:.CloogOptions,. |
d960 | 20 50 72 65 76 3a 20 43 6c 6f 6f 67 4e 61 6d 65 73 2c 20 20 55 70 3a 20 43 4c 6f 6f 47 20 44 61 | .Prev:.CloogNames,..Up:.CLooG.Da |
d980 | 74 61 20 53 74 72 75 63 74 75 72 65 73 0a 0a 33 2e 31 2e 39 20 43 6c 6f 6f 67 50 72 6f 67 72 61 | ta.Structures..3.1.9.CloogProgra |
d9a0 | 6d 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 20 20 20 20 20 73 74 72 75 63 | m.------------------.......struc |
d9c0 | 74 20 63 6c 6f 6f 67 70 72 6f 67 72 61 6d 0a 20 20 20 20 20 7b 20 63 68 61 72 20 6c 61 6e 67 75 | t.cloogprogram......{.char.langu |
d9e0 | 61 67 65 20 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2a 20 54 68 65 20 6c 61 6e 67 75 61 | age.;............../*.The.langua |
da00 | 67 65 20 6f 66 20 74 68 65 20 70 72 6f 67 72 61 6d 2e 20 2a 2f 0a 20 20 20 20 20 20 20 69 6e 74 | ge.of.the.program..*/........int |
da20 | 20 20 6e 62 5f 73 63 61 74 74 64 69 6d 73 20 3b 20 20 20 20 20 20 20 20 20 20 2f 2a 20 53 63 61 | ..nb_scattdims.;........../*.Sca |
da40 | 74 74 65 72 69 6e 67 20 64 69 6d 65 6e 73 69 6f 6e 20 6e 75 6d 62 65 72 2e 20 2a 2f 0a 20 20 20 | ttering.dimension.number..*/.... |
da60 | 20 20 20 20 43 6c 6f 6f 67 4e 61 6d 65 73 20 20 2a 20 6e 61 6d 65 73 20 3b 20 20 20 20 20 20 20 | ....CloogNames..*.names.;....... |
da80 | 20 2f 2a 20 49 74 65 72 61 74 6f 72 73 20 61 6e 64 20 70 61 72 61 6d 65 74 65 72 73 20 6e 61 6d | ./*.Iterators.and.parameters.nam |
daa0 | 65 73 2e 20 2a 2f 0a 20 20 20 20 20 20 20 43 6c 6f 6f 67 44 6f 6d 61 69 6e 20 2a 20 63 6f 6e 74 | es..*/........CloogDomain.*.cont |
dac0 | 65 78 74 20 3b 20 20 20 20 20 20 2f 2a 20 54 68 65 20 63 6f 6e 74 65 78 74 20 6f 66 20 74 68 65 | ext.;....../*.The.context.of.the |
dae0 | 20 70 72 6f 67 72 61 6d 2e 20 2a 2f 0a 20 20 20 20 20 20 20 43 6c 6f 6f 67 4c 6f 6f 70 20 20 20 | .program..*/........CloogLoop... |
db00 | 2a 20 6c 6f 6f 70 20 3b 20 20 20 20 20 20 20 20 20 2f 2a 20 54 68 65 20 6c 6f 6f 70 73 20 6f 66 | *.loop.;........./*.The.loops.of |
db20 | 20 74 68 65 20 70 72 6f 67 72 61 6d 2e 20 2a 2f 0a 20 20 20 20 20 20 20 43 6c 6f 6f 67 42 6c 6f | .the.program..*/........CloogBlo |
db40 | 63 6b 4c 69 73 74 20 2a 20 62 6c 6f 63 6b 6c 69 73 74 20 3b 20 2f 2a 20 54 68 65 20 73 74 61 74 | ckList.*.blocklist.;./*.The.stat |
db60 | 65 6d 65 6e 74 20 62 6c 6f 63 6b 20 6c 69 73 74 2e 20 2a 2f 0a 20 20 20 20 20 20 20 76 6f 69 64 | ement.block.list..*/........void |
db80 | 20 2a 20 75 73 72 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2a 20 46 6f 72 20 | .*.usr;................../*.For. |
dba0 | 6c 69 62 72 61 72 79 20 75 73 65 72 27 73 20 63 6f 6e 76 65 6e 69 65 6e 63 65 2e 20 2a 2f 0a 20 | library.user's.convenience..*/.. |
dbc0 | 20 20 20 20 7d 20 3b 0a 20 20 20 20 20 74 79 70 65 64 65 66 20 73 74 72 75 63 74 20 63 6c 6f 6f | ....}.;......typedef.struct.cloo |
dbe0 | 67 70 72 6f 67 72 61 6d 20 43 6c 6f 6f 67 50 72 6f 67 72 61 6d 20 3b 0a 0a 54 68 65 20 60 43 6c | gprogram.CloogProgram.;..The.`Cl |
dc00 | 6f 6f 67 50 72 6f 67 72 61 6d 27 20 73 74 72 75 63 74 75 72 65 20 72 65 70 72 65 73 65 6e 74 73 | oogProgram'.structure.represents |
dc20 | 20 61 20 73 74 61 74 69 63 20 63 6f 6e 74 72 6f 6c 20 70 72 6f 67 72 61 6d 20 6b 65 72 6e 65 6c | .a.static.control.program.kernel |
dc40 | 2e 0a 60 6c 61 6e 67 75 61 67 65 27 20 70 72 65 63 69 73 65 73 20 74 68 65 20 6c 61 6e 67 75 61 | ..`language'.precises.the.langua |
dc60 | 67 65 20 28 60 63 27 20 66 6f 72 20 43 20 6f 72 20 60 66 27 20 66 6f 72 20 46 4f 52 54 52 41 4e | ge.(`c'.for.C.or.`f'.for.FORTRAN |
dc80 | 29 2e 0a 60 6e 62 5f 73 63 61 74 74 64 69 6d 73 27 20 67 69 76 65 73 20 74 68 65 20 6e 75 6d 62 | )..`nb_scattdims'.gives.the.numb |
dca0 | 65 72 20 6f 66 20 73 63 61 74 74 65 72 69 6e 67 20 64 69 6d 65 6e 73 69 6f 6e 73 2e 20 20 60 63 | er.of.scattering.dimensions...`c |
dcc0 | 6f 6e 74 65 78 74 27 20 69 73 0a 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 74 68 65 20 63 6f 6e 73 | ontext'.is.a.pointer.to.the.cons |
dce0 | 74 72 61 69 6e 74 73 20 6f 6e 20 74 68 65 20 70 72 6f 67 72 61 6d 20 70 61 72 61 6d 65 74 65 72 | traints.on.the.program.parameter |
dd00 | 73 2c 20 69 74 20 63 61 6e 27 74 20 62 65 20 74 68 65 0a 60 4e 55 4c 4c 27 20 70 6f 69 6e 74 65 | s,.it.can't.be.the.`NULL'.pointe |
dd20 | 72 20 65 76 65 6e 20 69 66 20 74 68 65 72 65 20 61 72 65 20 6e 6f 20 63 6f 6e 73 74 72 61 69 6e | r.even.if.there.are.no.constrain |
dd40 | 74 73 20 6f 6e 20 70 61 72 61 6d 65 74 65 72 73 2e 20 49 6e 20 73 75 63 68 20 61 0a 63 61 73 65 | ts.on.parameters..In.such.a.case |
dd60 | 2c 20 73 65 74 20 61 20 70 6f 6c 79 68 65 64 72 6f 6e 20 77 69 74 68 20 61 73 20 6d 61 6e 79 20 | ,.set.a.polyhedron.with.as.many. |
dd80 | 64 69 6d 65 6e 73 69 6f 6e 73 20 61 73 20 74 68 65 72 65 20 61 72 65 20 70 61 72 61 6d 65 74 65 | dimensions.as.there.are.paramete |
dda0 | 72 73 2c 0a 77 69 74 68 20 61 6e 20 5f 61 6c 77 61 79 73 20 74 72 75 65 5f 20 63 6f 6e 73 74 72 | rs,.with.an._always.true_.constr |
ddc0 | 61 69 6e 74 20 6c 69 6b 65 20 31 20 5c 67 65 71 20 30 20 28 74 68 69 73 20 69 73 20 6e 65 63 65 | aint.like.1.\geq.0.(this.is.nece |
dde0 | 73 73 61 72 79 20 73 69 6e 63 65 0a 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 70 61 72 61 6d 65 | ssary.since.the.number.of.parame |
de00 | 74 65 72 73 20 69 73 20 64 65 64 75 63 65 64 20 66 72 6f 6d 20 74 68 65 20 64 69 6d 65 6e 73 69 | ters.is.deduced.from.the.dimensi |
de20 | 6f 6e 20 6e 75 6d 62 65 72 20 6f 66 20 74 68 65 0a 63 6f 6e 74 65 78 74 20 63 6f 6e 73 74 72 61 | on.number.of.the.context.constra |
de40 | 69 6e 74 73 29 2e 20 60 6c 6f 6f 70 27 20 69 73 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 74 68 | ints)..`loop'.is.a.pointer.to.th |
de60 | 65 20 66 69 72 73 74 20 6c 6f 6f 70 20 6f 66 20 74 68 65 0a 70 72 6f 67 72 61 6d 2e 20 60 6e 61 | e.first.loop.of.the.program..`na |
de80 | 6d 65 73 27 20 69 73 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 74 68 65 20 76 61 72 69 6f 75 73 | mes'.is.a.pointer.to.the.various |
dea0 | 20 65 6c 65 6d 65 6e 74 20 6e 61 6d 65 73 20 28 73 63 61 74 74 65 72 69 6e 67 0a 64 69 6d 65 6e | .element.names.(scattering.dimen |
dec0 | 73 69 6f 6e 2c 20 69 74 65 72 61 74 6f 72 73 2c 20 70 61 72 61 6d 65 74 65 72 73 29 20 6f 66 20 | sion,.iterators,.parameters).of. |
dee0 | 74 68 65 20 66 69 6e 61 6c 20 70 72 6f 67 72 61 6d 2e 20 60 6e 61 6d 65 73 27 20 63 61 6e 20 62 | the.final.program..`names'.can.b |
df00 | 65 0a 74 68 65 20 60 4e 55 4c 4c 27 20 70 6f 69 6e 74 65 72 20 69 66 20 74 68 65 20 75 73 65 72 | e.the.`NULL'.pointer.if.the.user |
df20 | 20 64 6f 20 6e 6f 74 20 77 61 6e 74 20 74 6f 20 75 73 65 20 6f 75 72 20 70 72 65 74 74 79 20 70 | .do.not.want.to.use.our.pretty.p |
df40 | 72 69 6e 74 69 6e 67 0a 66 75 6e 63 74 69 6f 6e 2e 20 20 60 62 6c 6f 63 6b 6c 69 73 74 27 20 69 | rinting.function...`blocklist'.i |
df60 | 73 20 74 68 65 20 6c 69 6e 6b 65 64 20 6c 69 73 74 20 6f 66 20 61 6c 6c 20 74 68 65 20 73 74 61 | s.the.linked.list.of.all.the.sta |
df80 | 74 65 6d 65 6e 74 20 62 6c 6f 63 6b 0a 73 74 72 75 63 74 75 72 65 73 2e 20 20 60 75 73 72 27 20 | tement.block.structures...`usr'. |
dfa0 | 69 73 20 61 20 70 6f 69 6e 74 65 72 20 66 6f 72 20 6c 69 62 72 61 72 79 20 75 73 65 72 27 73 20 | is.a.pointer.for.library.user's. |
dfc0 | 63 6f 6e 76 65 6e 69 65 6e 63 65 2e 20 4e 6f 74 65 0a 74 68 61 74 20 74 68 69 73 20 70 6f 69 6e | convenience..Note.that.this.poin |
dfe0 | 74 65 72 20 69 73 20 6e 65 76 65 72 20 61 6c 6c 6f 63 61 74 65 64 2c 20 66 72 65 65 64 20 6f 72 | ter.is.never.allocated,.freed.or |
e000 | 20 70 72 69 6e 74 65 64 20 62 79 20 43 4c 6f 6f 47 2e 20 20 41 73 20 61 6e 0a 65 78 61 6d 70 6c | .printed.by.CLooG...As.an.exampl |
e020 | 65 2c 20 6c 65 74 20 75 73 20 63 6f 6e 73 69 64 65 72 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 | e,.let.us.consider.the.following |
e040 | 20 6c 6f 6f 70 20 6e 65 73 74 3a 0a 20 20 20 20 20 66 6f 72 20 28 69 3d 30 3b 20 69 3c 3d 6e 3b | .loop.nest:......for.(i=0;.i<=n; |
e060 | 20 69 2b 2b 29 20 7b 0a 20 20 20 20 20 20 20 66 6f 72 20 28 6a 3d 30 3b 20 6a 3c 3d 6e 3b 20 6a | .i++).{........for.(j=0;.j<=n;.j |
e080 | 2b 2b 29 20 7b 0a 20 20 20 20 20 20 20 20 20 53 31 20 3b 0a 20 20 20 20 20 20 20 20 20 53 32 20 | ++).{..........S1.;..........S2. |
e0a0 | 3b 0a 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 66 6f 72 20 28 6a 3d 6e 2b 31 3b 20 6a 3c | ;........}........for.(j=n+1;.j< |
e0c0 | 3d 32 2a 6e 3b 20 6a 2b 2b 29 20 7b 0a 20 20 20 20 20 20 20 20 20 53 33 20 3b 0a 20 20 20 20 20 | =2*n;.j++).{..........S3.;...... |
e0e0 | 20 20 7d 0a 20 20 20 20 20 7d 0a 54 68 65 20 6e 65 78 74 20 66 69 67 75 72 65 20 67 69 76 65 73 | ..}......}.The.next.figure.gives |
e100 | 20 61 20 70 6f 73 73 69 62 6c 65 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 69 6e 20 6d 65 | .a.possible.representation.in.me |
e120 | 6d 6f 72 79 20 66 6f 72 20 74 68 69 73 0a 70 72 6f 67 72 61 6d 20 74 68 61 6e 6b 73 20 74 6f 20 | mory.for.this.program.thanks.to. |
e140 | 74 68 65 20 43 4c 6f 6f 47 20 64 61 74 61 20 73 74 72 75 63 74 75 72 65 73 20 28 69 74 20 68 61 | the.CLooG.data.structures.(it.ha |
e160 | 73 20 62 65 65 6e 20 61 63 74 75 61 6c 6c 79 0a 70 72 69 6e 74 65 64 20 62 79 20 74 68 65 20 60 | s.been.actually.printed.by.the.` |
e180 | 63 6c 6f 6f 67 5f 70 72 6f 67 72 61 6d 5f 70 72 69 6e 74 27 20 66 75 6e 63 74 69 6f 6e 29 2e 20 | cloog_program_print'.function).. |
e1a0 | 49 6e 20 74 68 69 73 20 66 69 67 75 72 65 2c 20 60 2b 2d 2d 0a 43 6c 6f 6f 67 4c 6f 6f 70 27 20 | In.this.figure,.`+--.CloogLoop'. |
e1c0 | 64 65 6e 6f 74 65 73 20 61 6e 20 60 69 6e 6e 65 72 27 20 6c 6f 6f 70 2c 20 77 68 69 6c 65 20 61 | denotes.an.`inner'.loop,.while.a |
e1e0 | 20 60 43 6c 6f 6f 67 4c 6f 6f 70 27 20 6f 6e 20 74 68 65 20 73 61 6d 65 0a 63 6f 6c 75 6d 6e 20 | .`CloogLoop'.on.the.same.column. |
e200 | 70 6f 69 6e 74 65 64 20 62 79 20 61 6e 20 61 72 72 6f 77 20 64 65 6e 6f 74 65 73 20 61 20 60 6e | pointed.by.an.arrow.denotes.a.`n |
e220 | 65 78 74 27 20 6c 6f 6f 70 3a 0a 0a 20 20 20 20 20 2b 2d 2d 20 43 6c 6f 6f 67 50 72 6f 67 72 61 | ext'.loop:.......+--.CloogProgra |
e240 | 6d 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 4c 61 | m......|.......|......|.......La |
e260 | 6e 67 75 61 67 65 3a 20 63 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 | nguage:.c......|.......|......|. |
e280 | 20 20 20 20 20 20 53 63 61 74 74 65 72 69 6e 67 20 64 69 6d 65 6e 73 69 6f 6e 20 6e 75 6d 62 65 | ......Scattering.dimension.numbe |
e2a0 | 72 3a 20 30 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 | r:.0......|.......|......|...... |
e2c0 | 20 2b 2d 2d 20 43 6c 6f 6f 67 4e 61 6d 65 73 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 | .+--.CloogNames......|.......|.. |
e2e0 | 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 53 63 61 74 | .....|......|.......|.......Scat |
e300 | 74 65 72 69 6e 67 20 64 69 6d 65 6e 73 69 6f 6e 20 6e 75 6d 62 65 72 3a 20 30 0a 20 20 20 20 20 | tering.dimension.number:.0...... |
e320 | 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c | |.......|.......|......|.......| |
e340 | 20 20 20 20 20 20 20 2b 2d 2d 20 4e 6f 20 73 63 61 74 74 65 72 69 6e 67 20 73 74 72 69 6e 67 0a | .......+--.No.scattering.string. |
e360 | 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 20 20 | .....|.......|.......|......|... |
e380 | 20 20 20 20 7c 20 20 20 20 20 20 20 49 74 65 72 61 74 6f 72 20 6e 75 6d 62 65 72 20 2d 2d 2d 2d | ....|.......Iterator.number.---- |
e3a0 | 2d 2d 2d 2d 2d 2d 2d 3a 20 32 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 | -------:.2......|.......|....... |
e3c0 | 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 2b 2d 2d 20 49 74 65 72 61 | |......|.......|.......+--.Itera |
e3e0 | 74 6f 72 20 73 74 72 69 6e 67 73 20 2d 2d 2d 2d 2d 2d 3a 20 69 20 6a 0a 20 20 20 20 20 7c 20 20 | tor.strings.------:.i.j......|.. |
e400 | 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 | .....|.......|......|.......|... |
e420 | 20 20 20 20 50 61 72 61 6d 65 74 65 72 20 6e 75 6d 62 65 72 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 3a | ....Parameter.number.----------: |
e440 | 20 31 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c | .1......|.......|.......|......| |
e460 | 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 2b 2d 2d 20 50 61 72 61 6d 65 74 65 72 20 73 74 72 | .......|.......+--.Parameter.str |
e480 | 69 6e 67 73 20 2d 2d 2d 2d 2d 3a 20 6e 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 | ings.-----:.n......|.......|.... |
e4a0 | 20 20 7c 20 20 20 20 20 20 20 2b 2d 2d 20 43 6f 6e 74 65 78 74 0a 20 20 20 20 20 7c 20 20 20 20 | ..|.......+--.Context......|.... |
e4c0 | 20 20 20 7c 20 20 20 20 20 20 20 5b 20 20 20 31 20 20 20 20 31 20 20 20 2d 32 20 20 5d 0a 20 20 | ...|.......[...1....1...-2..]... |
e4e0 | 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 5b 20 20 20 31 20 20 20 20 30 20 20 20 | ...|.......|.......[...1....0... |
e500 | 20 31 20 20 5d 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 | .1..]......|.......|......|..... |
e520 | 20 20 2b 2d 2d 20 43 6c 6f 6f 67 4c 6f 6f 70 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 | ..+--.CloogLoop......|.......|.. |
e540 | 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 2b 2d 2d 20 | .....|......|.......|.......+--. |
e560 | 43 6c 6f 6f 67 44 6f 6d 61 69 6e 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 | CloogDomain......|.......|...... |
e580 | 20 7c 20 20 20 20 20 20 20 5b 20 20 20 31 20 20 20 2d 31 20 20 20 20 31 20 20 20 20 30 20 20 5d | .|.......[...1...-1....1....0..] |
e5a0 | 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 5b 20 | ......|.......|.......|.......[. |
e5c0 | 20 20 31 20 20 20 20 31 20 20 20 20 30 20 20 20 20 30 20 20 5d 0a 20 20 20 20 20 7c 20 20 20 20 | ..1....1....0....0..]......|.... |
e5e0 | 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 5b 20 20 20 31 20 20 20 20 30 20 20 20 | ...|.......|.......[...1....0... |
e600 | 20 30 20 20 20 20 31 20 20 5d 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 | .0....1..]......|.......|....... |
e620 | 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 53 74 72 69 64 65 3a 20 31 | |......|.......|.......Stride:.1 |
e640 | 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 20 | ......|.......|.......|......|.. |
e660 | 20 20 20 20 20 7c 20 20 20 20 20 20 20 2b 2d 2d 20 4e 75 6c 6c 20 43 6c 6f 6f 67 42 6c 6f 63 6b | .....|.......+--.Null.CloogBlock |
e680 | 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 20 | ......|.......|.......|......|.. |
e6a0 | 20 20 20 20 20 7c 20 20 20 20 20 20 20 2b 2d 2d 20 43 6c 6f 6f 67 4c 6f 6f 70 0a 20 20 20 20 20 | .....|.......+--.CloogLoop...... |
e6c0 | 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c | |.......|.......|.......|......| |
e6e0 | 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 2b 2d 2d 20 43 6c 6f 6f 67 | .......|.......|.......+--.Cloog |
e700 | 44 6f 6d 61 69 6e 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 | Domain......|.......|.......|... |
e720 | 20 20 20 20 7c 20 20 20 20 20 20 20 5b 20 20 20 31 20 20 20 20 30 20 20 20 20 31 20 20 20 20 30 | ....|.......[...1....0....1....0 |
e740 | 20 20 20 20 30 20 20 5d 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 | ....0..]......|.......|.......|. |
e760 | 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 5b 20 20 20 31 20 20 20 20 30 20 20 20 2d 31 20 20 20 | ......|.......[...1....0...-1... |
e780 | 20 31 20 20 20 20 30 20 20 5d 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 | .1....0..]......|.......|....... |
e7a0 | 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 5b 20 20 20 31 20 20 20 20 30 20 20 20 20 30 20 | |.......|.......[...1....0....0. |
e7c0 | 20 20 20 30 20 20 20 20 31 20 20 5d 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 | ...0....1..]......|.......|..... |
e7e0 | 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 | ..|.......|......|.......|...... |
e800 | 20 7c 20 20 20 20 20 20 20 53 74 72 69 64 65 3a 20 31 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 | .|.......Stride:.1......|....... |
e820 | 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c | |.......|.......|......|.......| |
e840 | 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 2b 2d 2d 20 4e 75 6c 6c 20 43 6c 6f 6f 67 42 6c 6f | .......|.......+--.Null.CloogBlo |
e860 | 63 6b 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 | ck......|.......|.......|....... |
e880 | 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 2b | |......|.......|.......|.......+ |
e8a0 | 2d 2d 20 43 6c 6f 6f 67 4c 6f 6f 70 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 | --.CloogLoop......|.......|..... |
e8c0 | 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 | ..|.......|.......|......|...... |
e8e0 | 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 2b 2d 2d 20 43 6c 6f | .|.......|.......|.......+--.Clo |
e900 | 6f 67 44 6f 6d 61 69 6e 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 | ogDomain......|.......|.......|. |
e920 | 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 5b 20 20 20 31 20 20 20 20 30 | ......|.......|.......[...1....0 |
e940 | 20 20 20 20 30 20 20 20 20 30 20 20 20 20 31 20 20 5d 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 | ....0....0....1..]......|....... |
e960 | 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c | |.......|.......|.......|......| |
e980 | 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 53 | .......|.......|.......|.......S |
e9a0 | 74 72 69 64 65 3a 20 31 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 | tride:.1......|.......|.......|. |
e9c0 | 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 | ......|.......|......|.......|.. |
e9e0 | 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 2b 2d 2d 20 43 6c 6f 6f 67 42 6c | .....|.......|.......+--.CloogBl |
ea00 | 6f 63 6b 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 | ock......|.......|.......|...... |
ea20 | 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 | .|.......|.......|......|....... |
ea40 | 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 | |.......|.......|.......|....... |
ea60 | 2b 2d 2d 20 43 6c 6f 6f 67 53 74 61 74 65 6d 65 6e 74 20 31 0a 20 20 20 20 20 7c 20 20 20 20 20 | +--.CloogStatement.1......|..... |
ea80 | 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 | ..|.......|.......|.......|..... |
eaa0 | 20 20 7c 20 20 20 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 | ..|..........|......|.......|... |
eac0 | 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 | ....|.......|.......|.......|... |
eae0 | 20 20 20 20 20 20 20 56 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 | .......V......|.......|.......|. |
eb00 | 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 43 6c 6f 6f 67 53 | ......|.......|.......|...CloogS |
eb20 | 74 61 74 65 6d 65 6e 74 20 32 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 | tatement.2......|.......|....... |
eb40 | 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c | |.......|.......|.......|......| |
eb60 | 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c | .......|.......|.......|.......| |
eb80 | 20 20 20 20 20 20 20 2b 2d 2d 20 4e 75 6c 6c 20 73 63 61 74 74 65 72 69 6e 67 20 66 75 6e 63 74 | .......+--.Null.scattering.funct |
eba0 | 69 6f 6e 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 | ion......|.......|.......|...... |
ebc0 | 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 | .|.......|.......|......|....... |
ebe0 | 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 | |.......|.......|.......|....... |
ec00 | 44 65 70 74 68 3a 20 32 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 | Depth:.2......|.......|.......|. |
ec20 | 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 | ......|.......|......|.......|.. |
ec40 | 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 | .....|.......|......|.......|... |
ec60 | 20 20 20 20 7c 20 20 20 20 20 20 20 56 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 | ....|.......V......|.......|.... |
ec80 | 20 20 20 7c 20 20 20 43 6c 6f 6f 67 4c 6f 6f 70 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 | ...|...CloogLoop......|.......|. |
eca0 | 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 | ......|.......|......|.......|.. |
ecc0 | 20 20 20 20 20 7c 20 20 20 20 20 20 20 2b 2d 2d 20 43 6c 6f 6f 67 44 6f 6d 61 69 6e 0a 20 20 20 | .....|.......+--.CloogDomain.... |
ece0 | 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 | ..|.......|.......|.......|..... |
ed00 | 20 20 5b 20 20 20 31 20 20 20 20 30 20 20 20 2d 31 20 20 20 20 32 20 20 20 20 30 20 20 5d 0a 20 | ..[...1....0...-1....2....0..].. |
ed20 | 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 | ....|.......|.......|.......|... |
ed40 | 20 20 20 20 5b 20 20 20 31 20 20 20 20 30 20 20 20 20 31 20 20 20 2d 31 20 20 20 2d 31 20 20 5d | ....[...1....0....1...-1...-1..] |
ed60 | 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 | ......|.......|.......|.......|. |
ed80 | 20 20 20 20 20 20 5b 20 20 20 31 20 20 20 20 30 20 20 20 20 30 20 20 20 20 30 20 20 20 20 31 20 | ......[...1....0....0....0....1. |
eda0 | 20 5d 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 | .]......|.......|.......|....... |
edc0 | 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 53 | |......|.......|.......|.......S |
ede0 | 74 72 69 64 65 3a 20 31 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 | tride:.1......|.......|.......|. |
ee00 | 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 | ......|......|.......|.......|.. |
ee20 | 20 20 20 20 20 2b 2d 2d 20 4e 75 6c 6c 20 43 6c 6f 6f 67 42 6c 6f 63 6b 0a 20 20 20 20 20 7c 20 | .....+--.Null.CloogBlock......|. |
ee40 | 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 20 | ......|.......|.......|......|.. |
ee60 | 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 2b 2d 2d 20 43 6c 6f 6f 67 4c 6f | .....|.......|.......+--.CloogLo |
ee80 | 6f 70 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 | op......|.......|.......|....... |
eea0 | 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c | |.......|......|.......|.......| |
eec0 | 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 2b 2d 2d 20 43 6c 6f 6f 67 44 6f 6d 61 69 6e 0a 20 | .......|.......+--.CloogDomain.. |
eee0 | 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 | ....|.......|.......|.......|... |
ef00 | 20 20 20 20 7c 20 20 20 20 20 20 20 5b 20 20 20 31 20 20 20 20 30 20 20 20 20 30 20 20 20 20 30 | ....|.......[...1....0....0....0 |
ef20 | 20 20 20 20 31 20 20 5d 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 | ....1..]......|.......|.......|. |
ef40 | 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 | ......|.......|......|.......|.. |
ef60 | 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 53 74 72 69 64 65 3a 20 31 0a 20 | .....|.......|.......Stride:.1.. |
ef80 | 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 | ....|.......|.......|.......|... |
efa0 | 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 | ....|......|.......|.......|.... |
efc0 | 20 20 20 7c 20 20 20 20 20 20 20 2b 2d 2d 20 43 6c 6f 6f 67 42 6c 6f 63 6b 0a 20 20 20 20 20 7c | ...|.......+--.CloogBlock......| |
efe0 | 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c | .......|.......|.......|.......| |
f000 | 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 | .......|......|.......|.......|. |
f020 | 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 2b 2d 2d 20 43 6c 6f 6f 67 53 | ......|.......|.......+--.CloogS |
f040 | 74 61 74 65 6d 65 6e 74 20 33 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 | tatement.3......|.......|....... |
f060 | 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c | |.......|.......|.......|......| |
f080 | 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c | .......|.......|.......|.......| |
f0a0 | 20 20 20 20 20 20 20 2b 2d 2d 20 4e 75 6c 6c 20 73 63 61 74 74 65 72 69 6e 67 20 66 75 6e 63 74 | .......+--.Null.scattering.funct |
f0c0 | 69 6f 6e 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 | ion......|.......|.......|...... |
f0e0 | 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 | .|.......|.......|......|....... |
f100 | 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 | |.......|.......|.......|....... |
f120 | 44 65 70 74 68 3a 20 32 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 | Depth:.2......|.......|.......|. |
f140 | 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 | ......|.......|......|.......|.. |
f160 | 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 | .....|.......|......|.......|... |
f180 | 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 0a 0a 1f 0a 46 | ....|......|.......|......|....F |
f1a0 | 69 6c 65 3a 20 63 6c 6f 6f 67 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 43 6c 6f 6f 67 4f 70 74 | ile:.cloog.info,..Node:.CloogOpt |
f1c0 | 69 6f 6e 73 2c 20 20 50 72 65 76 3a 20 43 6c 6f 6f 67 50 72 6f 67 72 61 6d 2c 20 20 55 70 3a 20 | ions,..Prev:.CloogProgram,..Up:. |
f1e0 | 43 4c 6f 6f 47 20 44 61 74 61 20 53 74 72 75 63 74 75 72 65 73 0a 0a 33 2e 31 2e 31 30 20 43 6c | CLooG.Data.Structures..3.1.10.Cl |
f200 | 6f 6f 67 4f 70 74 69 6f 6e 73 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a | oogOptions.-------------------.. |
f220 | 20 20 20 20 20 73 74 72 75 63 74 20 63 6c 6f 6f 67 6f 70 74 69 6f 6e 73 0a 20 20 20 20 20 7b 20 | .....struct.cloogoptions......{. |
f240 | 69 6e 74 20 6c 20 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2a 20 2d | int.l.;...................../*.- |
f260 | 6c 20 6f 70 74 69 6f 6e 2e 20 20 20 20 20 20 20 20 20 20 2a 2f 0a 20 20 20 20 20 20 20 69 6e 74 | l.option...........*/........int |
f280 | 20 66 20 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2a 20 2d 66 20 6f | .f.;...................../*.-f.o |
f2a0 | 70 74 69 6f 6e 2e 20 20 20 20 20 20 20 20 20 20 2a 2f 0a 20 20 20 20 20 20 20 69 6e 74 20 73 74 | ption...........*/........int.st |
f2c0 | 72 69 64 65 73 20 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2a 20 2d 73 74 72 69 64 65 | rides.;.............../*.-stride |
f2e0 | 73 20 6f 70 74 69 6f 6e 2e 20 20 20 20 2a 2f 0a 20 20 20 20 20 20 20 69 6e 74 20 73 68 20 3b 20 | s.option.....*/........int.sh.;. |
f300 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2a 20 2d 73 68 20 6f 70 74 69 6f 6e | .................../*.-sh.option |
f320 | 2e 20 20 20 20 20 20 20 20 20 2a 2f 0a 20 20 20 20 20 20 20 69 6e 74 20 65 73 70 20 3b 20 20 20 | ..........*/........int.esp.;... |
f340 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2a 20 2d 65 73 70 20 6f 70 74 69 6f 6e 2e 20 | ................/*.-esp.option.. |
f360 | 20 20 20 20 20 20 20 2a 2f 0a 20 20 20 20 20 20 20 69 6e 74 20 63 73 70 20 3b 20 20 20 20 20 20 | .......*/........int.csp.;...... |
f380 | 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2a 20 2d 63 73 70 20 6f 70 74 69 6f 6e 2e 20 20 20 20 | ............./*.-csp.option..... |
f3a0 | 20 20 20 20 2a 2f 0a 20 20 20 20 20 20 20 69 6e 74 20 66 73 70 20 3b 20 20 20 20 20 20 20 20 20 | ....*/........int.fsp.;......... |
f3c0 | 20 20 20 20 20 20 20 20 20 20 2f 2a 20 2d 66 73 70 20 6f 70 74 69 6f 6e 2e 20 20 20 20 20 20 20 | ........../*.-fsp.option........ |
f3e0 | 20 2a 2f 0a 20 20 20 20 20 20 20 69 6e 74 20 6f 74 6c 20 3b 20 20 20 20 20 20 20 20 20 20 20 20 | .*/........int.otl.;............ |
f400 | 20 20 20 20 20 20 20 2f 2a 20 2d 6f 74 6c 20 6f 70 74 69 6f 6e 2e 20 20 20 20 20 20 20 20 2a 2f | ......./*.-otl.option.........*/ |
f420 | 0a 20 20 20 20 20 20 20 69 6e 74 20 62 6c 6f 63 6b 20 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 | ........int.block.;............. |
f440 | 20 20 20 20 2f 2a 20 2d 62 6c 6f 63 6b 20 6f 70 74 69 6f 6e 2e 20 20 20 20 20 20 2a 2f 0a 20 20 | ..../*.-block.option.......*/... |
f460 | 20 20 20 20 20 69 6e 74 20 63 70 70 20 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .....int.cpp.;.................. |
f480 | 20 2f 2a 20 2d 63 70 70 20 6f 70 74 69 6f 6e 2e 20 20 20 20 20 20 20 20 2a 2f 0a 20 20 20 20 20 | ./*.-cpp.option.........*/...... |
f4a0 | 20 20 69 6e 74 20 63 6f 6d 70 69 6c 61 62 6c 65 20 3b 20 20 20 20 20 20 20 20 20 20 20 20 2f 2a | ..int.compilable.;............/* |
f4c0 | 20 2d 63 6f 6d 70 69 6c 61 62 6c 65 20 6f 70 74 69 6f 6e 2e 20 2a 2f 0a 20 20 20 20 20 7d 20 3b | .-compilable.option..*/......}.; |
f4e0 | 0a 20 20 20 20 20 74 79 70 65 64 65 66 20 73 74 72 75 63 74 20 63 6c 6f 6f 67 6f 70 74 69 6f 6e | ......typedef.struct.cloogoption |
f500 | 73 20 43 6c 6f 6f 67 4f 70 74 69 6f 6e 73 20 3b 0a 0a 54 68 65 20 60 43 6c 6f 6f 67 4f 70 74 69 | s.CloogOptions.;..The.`CloogOpti |
f520 | 6f 6e 73 27 20 73 74 72 75 63 74 75 72 65 20 63 6f 6e 74 61 69 6e 73 20 61 6c 6c 20 74 68 65 20 | ons'.structure.contains.all.the. |
f540 | 70 6f 73 73 69 62 6c 65 20 6f 70 74 69 6f 6e 73 20 74 6f 20 72 75 6c 65 0a 43 4c 6f 6f 47 27 73 | possible.options.to.rule.CLooG's |
f560 | 20 62 65 68 61 76 69 6f 75 72 20 28 2a 6e 6f 74 65 20 43 61 6c 6c 69 6e 67 20 43 4c 6f 6f 47 3a | .behaviour.(*note.Calling.CLooG: |
f580 | 3a 29 2e 20 20 41 73 20 61 20 72 65 6d 69 6e 64 65 72 2c 20 74 68 65 20 64 65 66 61 75 6c 74 0a | :)...As.a.reminder,.the.default. |
f5a0 | 76 61 6c 75 65 73 20 61 72 65 3a 0a 20 20 20 2a 20 6c 20 3d 20 2d 31 20 28 6f 70 74 69 6d 69 7a | values.are:....*.l.=.-1.(optimiz |
f5c0 | 65 20 63 6f 6e 74 72 6f 6c 20 75 6e 74 69 6c 20 74 68 65 20 69 6e 6e 65 72 6d 6f 73 74 20 6c 6f | e.control.until.the.innermost.lo |
f5e0 | 6f 70 73 29 2c 0a 0a 20 20 20 2a 20 66 20 3d 20 31 20 28 6f 70 74 69 6d 69 7a 65 20 63 6f 6e 74 | ops),.....*.f.=.1.(optimize.cont |
f600 | 72 6f 6c 20 66 72 6f 6d 20 74 68 65 20 6f 75 74 65 72 6d 6f 73 74 20 6c 6f 6f 70 73 29 2c 0a 0a | rol.from.the.outermost.loops),.. |
f620 | 20 20 20 2a 20 73 74 72 69 64 65 73 20 3d 20 30 20 28 75 73 65 20 6f 6e 6c 79 20 75 6e 69 74 20 | ...*.strides.=.0.(use.only.unit. |
f640 | 73 74 72 69 64 65 73 29 2c 0a 0a 20 20 20 2a 20 73 68 20 3d 20 30 20 28 64 6f 20 6e 6f 74 20 73 | strides),.....*.sh.=.0.(do.not.s |
f660 | 69 6d 70 6c 69 66 79 20 63 6f 6e 76 65 78 20 68 75 6c 6c 73 29 2c 0a 0a 20 20 20 2a 20 65 73 70 | implify.convex.hulls),.....*.esp |
f680 | 20 3d 20 30 20 28 64 6f 20 6e 6f 74 20 73 70 72 65 61 64 20 63 6f 6d 70 6c 65 78 20 65 71 75 61 | .=.0.(do.not.spread.complex.equa |
f6a0 | 6c 69 74 69 65 73 29 2c 0a 0a 20 20 20 2a 20 63 73 70 20 3d 20 31 20 28 73 70 72 65 61 64 20 63 | lities),.....*.csp.=.1.(spread.c |
f6c0 | 6f 6e 73 74 61 6e 74 20 76 61 6c 75 65 73 29 2c 0a 0a 20 20 20 2a 20 66 73 70 20 3d 20 31 20 28 | onstant.values),.....*.fsp.=.1.( |
f6e0 | 73 74 61 72 74 20 74 6f 20 73 70 72 65 61 64 20 66 72 6f 6d 20 74 68 65 20 66 69 72 73 74 20 69 | start.to.spread.from.the.first.i |
f700 | 74 65 72 61 74 6f 72 73 29 2c 0a 0a 20 20 20 2a 20 6f 74 6c 20 3d 20 31 20 28 73 69 6d 70 6c 69 | terators),.....*.otl.=.1.(simpli |
f720 | 66 79 20 6c 6f 6f 70 73 20 72 75 6e 6e 69 6e 67 20 6f 6e 6c 79 20 6f 6e 63 65 29 2e 0a 0a 20 20 | fy.loops.running.only.once)..... |
f740 | 20 2a 20 62 6c 6f 63 6b 20 3d 20 30 20 28 64 6f 20 6e 6f 74 20 6d 61 6b 65 20 73 74 61 74 65 6d | .*.block.=.0.(do.not.make.statem |
f760 | 65 6e 74 20 62 6c 6f 63 6b 73 20 77 68 65 6e 20 6e 6f 74 20 6e 65 63 65 73 73 61 72 79 29 2e 0a | ent.blocks.when.not.necessary).. |
f780 | 0a 20 20 20 2a 20 63 70 70 20 3d 20 30 20 28 64 6f 20 6e 6f 74 20 67 65 6e 65 72 61 74 65 20 61 | ....*.cpp.=.0.(do.not.generate.a |
f7a0 | 20 63 6f 6d 70 69 6c 61 62 6c 65 20 70 61 72 74 20 6f 66 20 63 6f 64 65 20 75 73 69 6e 67 0a 20 | .compilable.part.of.code.using.. |
f7c0 | 20 20 20 20 70 72 65 70 72 6f 63 65 73 73 6f 72 29 2e 0a 0a 20 20 20 2a 20 63 6f 6d 70 69 6c 61 | ....preprocessor)......*.compila |
f7e0 | 62 6c 65 20 3d 20 30 20 28 64 6f 20 6e 6f 74 20 67 65 6e 65 72 61 74 65 20 61 20 63 6f 6d 70 69 | ble.=.0.(do.not.generate.a.compi |
f800 | 6c 61 62 6c 65 20 63 6f 64 65 29 2e 0a 0a 1f 0a 46 69 6c 65 3a 20 63 6c 6f 6f 67 2e 69 6e 66 6f | lable.code).....File:.cloog.info |
f820 | 2c 20 20 4e 6f 64 65 3a 20 43 4c 6f 6f 47 20 46 75 6e 63 74 69 6f 6e 73 2c 20 20 4e 65 78 74 3a | ,..Node:.CLooG.Functions,..Next: |
f840 | 20 45 78 61 6d 70 6c 65 20 6f 66 20 4c 69 62 72 61 72 79 20 55 74 69 6c 69 7a 61 74 69 6f 6e 2c | .Example.of.Library.Utilization, |
f860 | 20 20 50 72 65 76 3a 20 43 4c 6f 6f 47 20 44 61 74 61 20 53 74 72 75 63 74 75 72 65 73 2c 20 20 | ..Prev:.CLooG.Data.Structures,.. |
f880 | 55 70 3a 20 43 4c 6f 6f 47 20 4c 69 62 72 61 72 79 0a 0a 33 2e 32 20 43 4c 6f 6f 47 20 46 75 6e | Up:.CLooG.Library..3.2.CLooG.Fun |
f8a0 | 63 74 69 6f 6e 73 20 44 65 73 63 72 69 70 74 69 6f 6e 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d | ctions.Description.============= |
f8c0 | 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 0a 2a 20 4d 65 6e 75 3a 0a 0a 2a 20 63 | ==================..*.Menu:..*.c |
f8e0 | 6c 6f 6f 67 5f 70 72 6f 67 72 61 6d 5f 67 65 6e 65 72 61 74 65 3a 3a 0a 2a 20 63 6c 6f 6f 67 5f | loog_program_generate::.*.cloog_ |
f900 | 70 72 6f 67 72 61 6d 5f 73 63 61 74 74 65 72 3a 3a 0a 2a 20 63 6c 6f 6f 67 5f 70 72 6f 67 72 61 | program_scatter::.*.cloog_progra |
f920 | 6d 5f 70 70 72 69 6e 74 3a 3a 0a 2a 20 63 6c 6f 6f 67 5f 70 72 6f 67 72 61 6d 5f 72 65 61 64 3a | m_pprint::.*.cloog_program_read: |
f940 | 3a 0a 2a 20 46 72 6f 6d 20 4d 61 74 72 69 63 65 73 20 74 6f 20 44 6f 6d 61 69 6e 73 20 61 6e 64 | :.*.From.Matrices.to.Domains.and |
f960 | 20 43 6f 6e 76 65 72 73 65 6c 79 3a 3a 0a 2a 20 41 6c 6c 6f 63 61 74 69 6f 6e 20 61 6e 64 20 49 | .Conversely::.*.Allocation.and.I |
f980 | 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 46 75 6e 63 74 69 6f 6e 73 3a 3a 0a 2a 20 4d 65 6d 6f | nitialization.Functions::.*.Memo |
f9a0 | 72 79 20 44 65 61 6c 6c 6f 63 61 74 69 6f 6e 20 46 75 6e 63 74 69 6f 6e 73 3a 3a 0a 2a 20 50 72 | ry.Deallocation.Functions::.*.Pr |
f9c0 | 69 6e 74 69 6e 67 20 46 75 6e 63 74 69 6f 6e 73 3a 3a 0a 0a 1f 0a 46 69 6c 65 3a 20 63 6c 6f 6f | inting.Functions::....File:.cloo |
f9e0 | 67 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 63 6c 6f 6f 67 5f 70 72 6f 67 72 61 6d 5f 67 65 6e | g.info,..Node:.cloog_program_gen |
fa00 | 65 72 61 74 65 2c 20 20 4e 65 78 74 3a 20 63 6c 6f 6f 67 5f 70 72 6f 67 72 61 6d 5f 73 63 61 74 | erate,..Next:.cloog_program_scat |
fa20 | 74 65 72 2c 20 20 55 70 3a 20 43 4c 6f 6f 47 20 46 75 6e 63 74 69 6f 6e 73 0a 0a 33 2e 32 2e 31 | ter,..Up:.CLooG.Functions..3.2.1 |
fa40 | 20 63 6c 6f 6f 67 5f 70 72 6f 67 72 61 6d 5f 67 65 6e 65 72 61 74 65 0a 2d 2d 2d 2d 2d 2d 2d 2d | .cloog_program_generate.-------- |
fa60 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 20 20 20 20 20 43 6c 6f 6f 67 | --------------------.......Cloog |
fa80 | 50 72 6f 67 72 61 6d 20 20 20 2a 20 63 6c 6f 6f 67 5f 70 72 6f 67 72 61 6d 5f 67 65 6e 65 72 61 | Program...*.cloog_program_genera |
faa0 | 74 65 0a 20 20 20 20 20 28 20 43 6c 6f 6f 67 50 72 6f 67 72 61 6d 20 2a 20 70 72 6f 67 72 61 6d | te......(.CloogProgram.*.program |
fac0 | 2c 20 20 20 20 20 20 20 2f 2a 20 49 6e 70 75 74 20 70 72 6f 67 72 61 6d 2e 20 2a 2f 0a 20 20 20 | ,......./*.Input.program..*/.... |
fae0 | 20 20 20 20 43 6c 6f 6f 67 4f 70 74 69 6f 6e 73 20 2a 20 6f 70 74 69 6f 6e 73 20 20 20 20 20 20 | ....CloogOptions.*.options...... |
fb00 | 20 20 2f 2a 20 4f 70 74 69 6f 6e 73 2e 20 2a 2f 0a 20 20 20 20 20 29 20 3b 0a 0a 54 68 65 20 60 | ../*.Options..*/......).;..The.` |
fb20 | 63 6c 6f 6f 67 5f 70 72 6f 67 72 61 6d 5f 67 65 6e 65 72 61 74 65 27 20 66 75 6e 63 74 69 6f 6e | cloog_program_generate'.function |
fb40 | 20 67 65 6e 65 72 61 74 65 73 20 74 68 65 20 64 61 74 61 20 73 74 72 75 63 74 75 72 65 20 6f 66 | .generates.the.data.structure.of |
fb60 | 0a 74 68 65 20 73 6f 75 72 63 65 20 63 6f 64 65 20 74 68 61 74 20 73 63 61 6e 73 20 74 68 65 20 | .the.source.code.that.scans.the. |
fb80 | 69 6e 70 75 74 20 70 6f 6c 79 68 65 64 72 61 20 70 6f 69 6e 74 65 64 20 62 79 20 60 70 72 6f 67 | input.polyhedra.pointed.by.`prog |
fba0 | 72 61 6d 27 0a 61 63 63 6f 72 64 69 6e 67 20 74 6f 20 74 68 65 20 6f 70 74 69 6f 6e 73 20 70 6f | ram'.according.to.the.options.po |
fbc0 | 69 6e 74 65 64 20 62 79 20 60 6f 70 74 69 6f 6e 73 27 2e 20 20 54 68 65 20 70 72 6f 63 65 73 73 | inted.by.`options'...The.process |
fbe0 | 20 69 73 20 6d 61 64 65 0a 64 69 72 65 63 74 6c 79 20 6f 6e 20 74 68 65 20 69 6e 70 75 74 20 73 | .is.made.directly.on.the.input.s |
fc00 | 74 72 75 63 74 75 72 65 20 70 6f 69 6e 74 65 64 20 62 79 20 60 70 72 6f 67 72 61 6d 27 2c 20 74 | tructure.pointed.by.`program',.t |
fc20 | 68 75 73 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 0a 73 74 72 75 63 74 75 72 65 20 69 73 20 6e 6f | hus.the.original.structure.is.no |
fc40 | 20 6c 6f 6e 67 65 72 20 61 76 61 69 6c 61 62 6c 65 20 61 66 74 65 72 20 61 20 63 61 6c 6c 20 74 | .longer.available.after.a.call.t |
fc60 | 6f 20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 2e 20 49 74 0a 72 65 74 75 72 6e 73 20 61 20 70 6f | o.this.function..It.returns.a.po |
fc80 | 69 6e 74 65 72 20 74 6f 20 61 20 60 43 6c 6f 6f 67 50 72 6f 67 72 61 6d 27 20 73 74 72 75 63 74 | inter.to.a.`CloogProgram'.struct |
fca0 | 75 72 65 20 63 6f 6e 74 61 69 6e 69 6e 67 20 74 68 65 20 73 6f 6c 75 74 69 6f 6e 0a 69 6e 20 43 | ure.containing.the.solution.in.C |
fcc0 | 4c 6f 6f 47 20 73 74 72 75 63 74 75 72 65 73 2e 0a 0a 20 20 20 54 68 65 20 69 6e 70 75 74 20 60 | LooG.structures......The.input.` |
fce0 | 43 6c 6f 6f 67 50 72 6f 67 72 61 6d 27 20 73 74 72 75 63 74 75 72 65 20 6d 75 73 74 20 68 61 76 | CloogProgram'.structure.must.hav |
fd00 | 65 20 6f 6e 6c 79 20 6f 6e 65 20 6c 6f 6f 70 20 6c 65 76 65 6c 20 28 6e 6f 0a 69 6e 6e 65 72 20 | e.only.one.loop.level.(no.inner. |
fd20 | 6c 6f 6f 70 73 29 3a 20 74 68 65 72 65 20 69 73 20 6f 6e 65 20 6c 6f 6f 70 20 70 65 72 20 73 74 | loops):.there.is.one.loop.per.st |
fd40 | 61 74 65 6d 65 6e 74 20 62 6c 6f 63 6b 2e 20 46 6f 72 20 61 20 67 69 76 65 6e 20 62 6c 6f 63 6b | atement.block..For.a.given.block |
fd60 | 2c 0a 74 68 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 6c 6f 6f 70 20 63 61 72 72 69 65 73 | ,.the.corresponding.loop.carries |
fd80 | 20 74 68 65 20 69 74 65 72 61 74 69 6f 6e 20 64 6f 6d 61 69 6e 2c 20 74 68 65 20 73 74 61 74 65 | .the.iteration.domain,.the.state |
fda0 | 6d 65 6e 74 0a 62 6c 6f 63 6b 2c 20 61 6e 64 20 61 20 6c 6f 6f 70 20 73 74 72 69 64 65 20 69 6e | ment.block,.and.a.loop.stride.in |
fdc0 | 69 74 69 61 6c 69 7a 65 64 20 74 6f 20 31 2e 20 46 6f 72 20 69 6e 73 74 61 6e 63 65 2c 20 74 68 | itialized.to.1..For.instance,.th |
fde0 | 65 20 69 6e 70 75 74 0a 60 43 6c 6f 6f 67 50 72 6f 67 72 61 6d 27 20 73 74 72 75 63 74 75 72 65 | e.input.`CloogProgram'.structure |
fe00 | 20 74 68 61 74 20 68 61 76 65 20 62 65 65 6e 20 73 65 6e 74 20 74 6f 0a 60 63 6c 6f 6f 67 5f 70 | .that.have.been.sent.to.`cloog_p |
fe20 | 72 6f 67 72 61 6d 5f 67 65 6e 65 72 61 74 65 27 20 74 6f 20 61 63 68 69 65 76 65 20 74 68 65 20 | rogram_generate'.to.achieve.the. |
fe40 | 66 69 6e 61 6c 20 73 74 72 75 63 74 75 72 65 20 61 6e 64 20 63 6f 64 65 20 73 68 6f 77 6e 0a 61 | final.structure.and.code.shown.a |
fe60 | 73 20 65 78 61 6d 70 6c 65 20 69 6e 20 74 68 65 20 60 43 6c 6f 6f 67 50 72 6f 67 72 61 6d 27 20 | s.example.in.the.`CloogProgram'. |
fe80 | 73 74 72 75 63 74 75 72 65 20 64 65 73 63 72 69 70 74 69 6f 6e 20 28 2a 6e 6f 74 65 0a 43 6c 6f | structure.description.(*note.Clo |
fea0 | 6f 67 50 72 6f 67 72 61 6d 3a 3a 29 20 77 61 73 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 6f | ogProgram::).was.the.following.o |
fec0 | 6e 65 3a 0a 0a 20 20 20 20 20 2b 2d 2d 20 43 6c 6f 6f 67 50 72 6f 67 72 61 6d 0a 20 20 20 20 20 | ne:.......+--.CloogProgram...... |
fee0 | 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 4c 61 6e 67 75 61 67 65 3a | |.......|......|.......Language: |
ff00 | 20 63 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 53 | .c......|.......|......|.......S |
ff20 | 63 61 74 74 65 72 69 6e 67 20 64 69 6d 65 6e 73 69 6f 6e 20 6e 75 6d 62 65 72 3a 20 30 0a 20 20 | cattering.dimension.number:.0... |
ff40 | 20 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 2b 2d 2d 20 43 6c | ...|.......|......|.......+--.Cl |
ff60 | 6f 6f 67 4e 61 6d 65 73 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 0a | oogNames......|.......|.......|. |
ff80 | 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 53 63 61 74 74 65 72 69 6e 67 20 | .....|.......|.......Scattering. |
ffa0 | 64 69 6d 65 6e 73 69 6f 6e 20 6e 75 6d 62 65 72 3a 20 30 0a 20 20 20 20 20 7c 20 20 20 20 20 20 | dimension.number:.0......|...... |
ffc0 | 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 | .|.......|......|.......|....... |
ffe0 | 2b 2d 2d 20 4e 6f 20 73 63 61 74 74 65 72 69 6e 67 20 73 74 72 69 6e 67 0a 20 20 20 20 20 7c 20 | +--.No.scattering.string......|. |
10000 | 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 | ......|.......|......|.......|.. |
10020 | 20 20 20 20 20 49 74 65 72 61 74 6f 72 20 6e 75 6d 62 65 72 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | .....Iterator.number.----------- |
10040 | 3a 20 32 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 | :.2......|.......|.......|...... |
10060 | 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 2b 2d 2d 20 49 74 65 72 61 74 6f 72 20 73 74 72 | |.......|.......+--.Iterator.str |
10080 | 69 6e 67 73 20 2d 2d 2d 2d 2d 2d 3a 20 69 20 6a 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 | ings.------:.i.j......|.......|. |
100a0 | 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 50 61 72 | ......|......|.......|.......Par |
100c0 | 61 6d 65 74 65 72 20 6e 75 6d 62 65 72 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 3a 20 31 0a 20 20 20 20 | ameter.number.----------:.1..... |
100e0 | 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 | .|.......|.......|......|....... |
10100 | 7c 20 20 20 20 20 20 20 2b 2d 2d 20 50 61 72 61 6d 65 74 65 72 20 73 74 72 69 6e 67 73 20 2d 2d | |.......+--.Parameter.strings.-- |
10120 | 2d 2d 2d 3a 20 6e 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 20 20 20 | ---:.n......|.......|......|.... |
10140 | 20 20 20 2b 2d 2d 20 43 6f 6e 74 65 78 74 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 | ...+--.Context......|.......|... |
10160 | 20 20 20 20 5b 20 20 20 20 31 20 20 20 20 20 31 20 20 20 20 2d 32 20 20 5d 0a 20 20 20 20 20 7c | ....[....1.....1....-2..]......| |
10180 | 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 2b 2d 2d 20 43 6c 6f 6f 67 4c | .......|......|.......+--.CloogL |
101a0 | 6f 6f 70 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 | oop......|.......|.......|...... |
101c0 | 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 2b 2d 2d 20 43 6c 6f 6f 67 44 6f 6d 61 69 6e 0a | |.......|.......+--.CloogDomain. |
101e0 | 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 5b 20 20 | .....|.......|.......|.......[.. |
10200 | 20 20 31 20 20 20 20 20 31 20 20 20 20 20 30 20 20 20 20 20 30 20 20 20 20 20 30 20 20 5d 0a 20 | ..1.....1.....0.....0.....0..].. |
10220 | 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 5b 20 20 20 | ....|.......|.......|.......[... |
10240 | 20 31 20 20 20 20 2d 31 20 20 20 20 20 30 20 20 20 20 20 31 20 20 20 20 20 30 20 20 5d 0a 20 20 | .1....-1.....0.....1.....0..]... |
10260 | 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 5b 20 20 20 20 | ...|.......|.......|.......[.... |
10280 | 31 20 20 20 20 20 30 20 20 20 20 20 31 20 20 20 20 20 30 20 20 20 20 20 30 20 20 5d 0a 20 20 20 | 1.....0.....1.....0.....0..].... |
102a0 | 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 5b 20 20 20 20 31 | ..|.......|.......|.......[....1 |
102c0 | 20 20 20 20 20 30 20 20 20 20 2d 31 20 20 20 20 20 31 20 20 20 20 20 30 20 20 5d 0a 20 20 20 20 | .....0....-1.....1.....0..]..... |
102e0 | 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 | .|.......|.......|......|....... |
10300 | 7c 20 20 20 20 20 20 20 53 74 72 69 64 65 3a 20 31 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c | |.......Stride:.1......|.......| |
10320 | 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 2b 2d | .......|......|.......|.......+- |
10340 | 2d 20 43 6c 6f 6f 67 42 6c 6f 63 6b 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 | -.CloogBlock......|.......|..... |
10360 | 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 | ..|.......|......|.......|...... |
10380 | 20 7c 20 20 20 20 20 20 20 2b 2d 2d 20 43 6c 6f 6f 67 53 74 61 74 65 6d 65 6e 74 20 31 0a 20 20 | .|.......+--.CloogStatement.1... |
103a0 | 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 | ...|.......|.......|.......|.... |
103c0 | 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 | ......|......|.......|.......|.. |
103e0 | 20 20 20 20 20 7c 20 20 20 20 20 20 20 20 20 20 56 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c | .....|..........V......|.......| |
10400 | 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 43 6c 6f 6f 67 53 74 61 74 65 6d 65 6e | .......|.......|...CloogStatemen |
10420 | 74 20 32 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 | t.2......|.......|.......|...... |
10440 | 20 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 | .|......|.......|.......|....... |
10460 | 2b 2d 2d 20 4e 75 6c 6c 20 73 63 61 74 74 65 72 69 6e 67 20 66 75 6e 63 74 69 6f 6e 0a 20 20 20 | +--.Null.scattering.function.... |
10480 | 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 | ..|.......|.......|.......|..... |
104a0 | 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 44 65 70 74 68 3a 20 | .|.......|.......|.......Depth:. |
104c0 | 32 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 | 2......|.......|.......|......|. |
104e0 | 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 56 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 | ......|.......V......|.......|.. |
10500 | 20 43 6c 6f 6f 67 4c 6f 6f 70 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 | .CloogLoop......|.......|....... |
10520 | 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 2b 2d 2d 20 43 6c 6f 6f 67 | |......|.......|.......+--.Cloog |
10540 | 44 6f 6d 61 69 6e 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 | Domain......|.......|.......|... |
10560 | 20 20 20 20 5b 20 20 20 20 31 20 20 20 20 20 31 20 20 20 20 20 30 20 20 20 20 20 30 20 20 20 20 | ....[....1.....1.....0.....0.... |
10580 | 20 30 20 20 5d 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 | .0..]......|.......|.......|.... |
105a0 | 20 20 20 5b 20 20 20 20 31 20 20 20 20 2d 31 20 20 20 20 20 30 20 20 20 20 20 31 20 20 20 20 20 | ...[....1....-1.....0.....1..... |
105c0 | 30 20 20 5d 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 | 0..]......|.......|.......|..... |
105e0 | 20 20 5b 20 20 20 20 31 20 20 20 20 20 30 20 20 20 20 20 31 20 20 20 20 2d 31 20 20 20 20 2d 31 | ..[....1.....0.....1....-1....-1 |
10600 | 20 20 5d 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 | ..]......|.......|.......|...... |
10620 | 20 5b 20 20 20 20 31 20 20 20 20 20 30 20 20 20 20 2d 31 20 20 20 20 20 32 20 20 20 20 20 30 20 | .[....1.....0....-1.....2.....0. |
10640 | 20 5d 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c | .]......|.......|.......|......| |
10660 | 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 53 74 72 69 64 65 3a 20 31 0a 20 20 20 20 20 7c 20 | .......|.......Stride:.1......|. |
10680 | 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 | ......|.......|......|.......|.. |
106a0 | 20 20 20 20 20 2b 2d 2d 20 43 6c 6f 6f 67 42 6c 6f 63 6b 0a 20 20 20 20 20 7c 20 20 20 20 20 20 | .....+--.CloogBlock......|...... |
106c0 | 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 | .|.......|.......|......|....... |
106e0 | 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 2b 2d 2d 20 43 6c 6f 6f 67 53 74 61 74 65 6d 65 | |.......|.......+--.CloogStateme |
10700 | 6e 74 20 33 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 | nt.3......|.......|.......|..... |
10720 | 20 20 7c 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 | ..|......|.......|.......|...... |
10740 | 20 2b 2d 2d 20 4e 75 6c 6c 20 73 63 61 74 74 65 72 69 6e 67 20 66 75 6e 63 74 69 6f 6e 0a 20 20 | .+--.Null.scattering.function... |
10760 | 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 | ...|.......|.......|.......|.... |
10780 | 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 44 65 70 74 68 3a | ..|.......|.......|.......Depth: |
107a0 | 20 32 0a 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c | .2......|.......|.......|......| |
107c0 | 20 20 20 20 20 20 20 7c 0a 20 20 20 20 20 7c 0a 0a 1f 0a 46 69 6c 65 3a 20 63 6c 6f 6f 67 2e 69 | .......|......|....File:.cloog.i |
107e0 | 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 63 6c 6f 6f 67 5f 70 72 6f 67 72 61 6d 5f 70 70 72 69 6e 74 | nfo,..Node:.cloog_program_pprint |
10800 | 2c 20 20 4e 65 78 74 3a 20 63 6c 6f 6f 67 5f 70 72 6f 67 72 61 6d 5f 72 65 61 64 2c 20 20 50 72 | ,..Next:.cloog_program_read,..Pr |
10820 | 65 76 3a 20 63 6c 6f 6f 67 5f 70 72 6f 67 72 61 6d 5f 73 63 61 74 74 65 72 2c 20 20 55 70 3a 20 | ev:.cloog_program_scatter,..Up:. |
10840 | 43 4c 6f 6f 47 20 46 75 6e 63 74 69 6f 6e 73 0a 0a 33 2e 32 2e 32 20 63 6c 6f 6f 67 5f 70 72 6f | CLooG.Functions..3.2.2.cloog_pro |
10860 | 67 72 61 6d 5f 70 70 72 69 6e 74 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | gram_pprint.-------------------- |
10880 | 2d 2d 2d 2d 2d 2d 0a 0a 20 20 20 20 20 76 6f 69 64 20 63 6c 6f 6f 67 5f 70 72 6f 67 72 61 6d 5f | ------.......void.cloog_program_ |
108a0 | 70 70 72 69 6e 74 0a 20 20 20 20 20 28 20 46 49 4c 45 20 2a 20 66 69 6c 65 2c 20 20 20 20 20 20 | pprint......(.FILE.*.file,...... |
108c0 | 20 20 20 20 20 20 20 20 20 20 20 20 2f 2a 20 4f 75 74 70 75 74 20 66 69 6c 65 2e 20 2a 2f 0a 20 | ............/*.Output.file..*/.. |
108e0 | 20 20 20 20 20 20 43 6c 6f 6f 67 50 72 6f 67 72 61 6d 20 2a 20 70 72 6f 67 72 61 6d 2c 20 20 20 | ......CloogProgram.*.program,... |
10900 | 20 20 20 20 2f 2a 20 50 72 6f 67 72 61 6d 20 74 6f 20 70 72 69 6e 74 2e 20 2a 2f 0a 20 20 20 20 | ..../*.Program.to.print..*/..... |
10920 | 20 20 20 43 6c 6f 6f 67 4f 70 74 69 6f 6e 73 20 2a 20 6f 70 74 69 6f 6e 73 20 20 20 20 20 20 20 | ...CloogOptions.*.options....... |
10940 | 20 2f 2a 20 4f 70 74 69 6f 6e 73 2e 20 2a 2f 0a 20 20 20 20 20 29 20 3b 0a 0a 54 68 65 20 66 75 | ./*.Options..*/......).;..The.fu |
10960 | 6e 63 74 69 6f 6e 20 60 63 6c 6f 6f 67 5f 70 72 6f 67 72 61 6d 5f 70 70 72 69 6e 74 27 20 69 73 | nction.`cloog_program_pprint'.is |
10980 | 20 61 20 70 72 65 74 74 79 20 70 72 69 6e 74 65 72 20 66 6f 72 0a 60 43 6c 6f 6f 67 50 72 6f 67 | .a.pretty.printer.for.`CloogProg |
109a0 | 72 61 6d 27 20 73 74 72 75 63 74 75 72 65 73 20 77 68 65 6e 20 69 74 20 69 73 20 61 20 73 6f 6c | ram'.structures.when.it.is.a.sol |
109c0 | 75 74 69 6f 6e 20 70 72 6f 76 69 64 65 64 20 62 79 20 74 68 65 0a 60 63 6c 6f 6f 67 5f 70 72 6f | ution.provided.by.the.`cloog_pro |
109e0 | 67 72 61 6d 5f 67 65 6e 65 72 61 74 65 27 20 66 75 6e 63 74 69 6f 6e 2e 20 49 74 20 70 72 69 6e | gram_generate'.function..It.prin |
10a00 | 74 73 20 74 68 65 20 63 6f 64 65 20 6f 72 20 70 73 65 75 64 6f 2d 63 6f 64 65 20 69 6e 0a 74 68 | ts.the.code.or.pseudo-code.in.th |
10a20 | 65 20 66 69 6c 65 20 70 6f 69 6e 74 65 64 20 62 79 20 60 66 69 6c 65 27 20 28 70 6f 73 73 69 62 | e.file.pointed.by.`file'.(possib |
10a40 | 6c 79 20 60 73 74 64 6f 75 74 27 29 20 77 69 74 68 20 72 65 67 61 72 64 73 20 74 6f 20 74 68 65 | ly.`stdout').with.regards.to.the |
10a60 | 0a 6f 70 74 69 6f 6e 73 20 70 6f 69 6e 74 65 64 20 62 79 20 60 6f 70 74 69 6f 6e 73 27 2e 0a 0a | .options.pointed.by.`options'... |
10a80 | 1f 0a 46 69 6c 65 3a 20 63 6c 6f 6f 67 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 63 6c 6f 6f 67 | ..File:.cloog.info,..Node:.cloog |
10aa0 | 5f 70 72 6f 67 72 61 6d 5f 73 63 61 74 74 65 72 2c 20 20 4e 65 78 74 3a 20 63 6c 6f 6f 67 5f 70 | _program_scatter,..Next:.cloog_p |
10ac0 | 72 6f 67 72 61 6d 5f 70 70 72 69 6e 74 2c 20 20 50 72 65 76 3a 20 63 6c 6f 6f 67 5f 70 72 6f 67 | rogram_pprint,..Prev:.cloog_prog |
10ae0 | 72 61 6d 5f 67 65 6e 65 72 61 74 65 2c 20 20 55 70 3a 20 43 4c 6f 6f 47 20 46 75 6e 63 74 69 6f | ram_generate,..Up:.CLooG.Functio |
10b00 | 6e 73 0a 0a 33 2e 32 2e 33 20 63 6c 6f 6f 67 5f 70 72 6f 67 72 61 6d 5f 73 63 61 74 74 65 72 0a | ns..3.2.3.cloog_program_scatter. |
10b20 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 20 20 20 | ---------------------------..... |
10b40 | 20 20 76 6f 69 64 20 63 6c 6f 6f 67 5f 70 72 6f 67 72 61 6d 5f 73 63 61 74 74 65 72 0a 20 20 20 | ..void.cloog_program_scatter.... |
10b60 | 20 20 28 20 43 6c 6f 6f 67 50 72 6f 67 72 61 6d 20 2a 20 70 72 6f 67 72 61 6d 2c 20 20 20 20 20 | ..(.CloogProgram.*.program,..... |
10b80 | 20 20 2f 2a 20 49 6e 70 75 74 20 70 72 6f 67 72 61 6d 2e 20 2a 2f 0a 20 20 20 20 20 20 20 43 6c | ../*.Input.program..*/........Cl |
10ba0 | 6f 6f 67 44 6f 6d 61 69 6e 4c 69 73 74 20 2a 20 73 63 61 74 74 65 72 69 6e 67 2c 20 2f 2a 20 41 | oogDomainList.*.scattering,./*.A |
10bc0 | 64 64 69 74 69 6f 6e 61 6c 20 73 63 61 74 74 65 72 69 6e 67 20 66 75 6e 63 74 69 6f 6e 73 2e 20 | dditional.scattering.functions.. |
10be0 | 2a 2f 0a 20 20 20 20 20 20 20 63 68 61 72 20 2a 2a 20 6e 61 6d 65 73 20 3b 20 20 20 20 20 20 20 | */........char.**.names.;....... |
10c00 | 20 20 20 20 20 20 20 20 2f 2a 20 41 64 64 69 74 69 6f 6e 61 6c 20 64 69 6d 65 6e 73 69 6f 6e 20 | ......../*.Additional.dimension. |
10c20 | 6e 61 6d 65 73 2e 20 2a 2f 0a 20 20 20 20 20 29 20 3b 0a 0a 54 68 65 20 66 75 6e 63 74 69 6f 6e | names..*/......).;..The.function |
10c40 | 20 60 63 6c 6f 6f 67 5f 70 72 6f 67 72 61 6d 5f 73 63 61 74 74 65 72 27 20 61 70 70 6c 69 65 73 | .`cloog_program_scatter'.applies |
10c60 | 20 73 63 61 74 74 65 72 69 6e 67 20 66 75 6e 63 74 69 6f 6e 73 20 74 6f 0a 74 68 65 20 60 43 6c | .scattering.functions.to.the.`Cl |
10c80 | 6f 6f 67 50 72 6f 67 72 61 6d 27 20 73 74 72 75 63 74 75 72 65 20 70 6f 69 6e 74 65 64 20 62 79 | oogProgram'.structure.pointed.by |
10ca0 | 20 60 70 72 6f 67 72 61 6d 27 2e 20 20 4f 72 69 67 69 6e 61 6c 20 64 6f 6d 61 69 6e 73 20 6f 66 | .`program'...Original.domains.of |
10cc0 | 0a 60 70 72 6f 67 72 61 6d 27 20 61 72 65 20 66 72 65 65 64 2e 20 53 63 61 74 74 65 72 69 6e 67 | .`program'.are.freed..Scattering |
10ce0 | 20 66 75 6e 63 74 69 6f 6e 73 20 61 72 65 20 69 6e 73 69 64 65 20 74 68 65 0a 60 43 6c 6f 6f 67 | .functions.are.inside.the.`Cloog |
10d00 | 44 6f 6d 61 69 6e 4c 69 73 74 27 20 73 74 72 75 63 74 75 72 65 20 70 6f 69 6e 74 65 64 20 62 79 | DomainList'.structure.pointed.by |
10d20 | 20 60 73 63 61 74 74 65 72 69 6e 67 27 2e 20 20 54 68 65 72 65 20 6d 75 73 74 20 62 65 20 61 73 | .`scattering'...There.must.be.as |
10d40 | 0a 6d 61 6e 79 20 73 63 61 74 74 65 72 69 6e 67 20 66 75 6e 63 74 69 6f 6e 73 20 69 6e 20 74 68 | .many.scattering.functions.in.th |
10d60 | 65 20 60 43 6c 6f 6f 67 44 6f 6d 61 69 6e 4c 69 73 74 27 20 73 74 72 75 63 74 75 72 65 20 61 73 | e.`CloogDomainList'.structure.as |
10d80 | 20 6c 6f 6f 70 73 0a 28 69 2e 65 2e 20 69 74 65 72 61 74 69 6f 6e 20 64 6f 6d 61 69 6e 73 29 20 | .loops.(i.e..iteration.domains). |
10da0 | 69 6e 20 74 68 65 20 60 43 6c 6f 6f 67 50 72 6f 67 72 61 6d 27 20 73 74 72 75 63 74 75 72 65 2e | in.the.`CloogProgram'.structure. |
10dc0 | 20 54 68 65 20 66 69 72 73 74 0a 73 63 61 74 74 65 72 69 6e 67 20 66 75 6e 63 74 69 6f 6e 20 6f | .The.first.scattering.function.o |
10de0 | 66 20 74 68 65 20 6c 69 73 74 20 77 69 6c 6c 20 62 65 20 61 70 70 6c 69 65 64 20 74 6f 20 74 68 | f.the.list.will.be.applied.to.th |
10e00 | 65 20 69 74 65 72 61 74 69 6f 6e 20 64 6f 6d 61 69 6e 0a 6f 66 20 74 68 65 20 66 69 72 73 74 20 | e.iteration.domain.of.the.first. |
10e20 | 6c 6f 6f 70 20 69 6e 20 74 68 65 20 70 72 6f 67 72 61 6d 2c 20 61 6e 64 20 73 6f 20 6f 6e 2e 20 | loop.in.the.program,.and.so.on.. |
10e40 | 20 60 6e 61 6d 65 73 27 20 67 69 76 65 73 20 74 68 65 0a 73 63 61 74 74 65 72 69 6e 67 20 64 69 | .`names'.gives.the.scattering.di |
10e60 | 6d 65 6e 73 69 6f 6e 20 6e 61 6d 65 73 20 61 73 20 61 6e 20 61 72 72 61 79 20 6f 66 20 73 74 72 | mension.names.as.an.array.of.str |
10e80 | 69 6e 67 73 2e 20 49 66 20 60 6e 61 6d 65 73 27 20 69 73 0a 60 4e 55 4c 4c 27 2c 20 6e 61 6d 65 | ings..If.`names'.is.`NULL',.name |
10ea0 | 73 20 61 72 65 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 67 65 6e 65 72 61 74 65 64 3a 20 74 | s.are.automatically.generated:.t |
10ec0 | 68 65 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 6e 5e 74 68 0a 73 63 61 74 74 65 72 69 6e 67 20 64 | he.name.of.the.n^th.scattering.d |
10ee0 | 69 6d 65 6e 73 69 6f 6e 20 77 69 6c 6c 20 62 65 20 60 63 6e 27 2e 0a 0a 1f 0a 46 69 6c 65 3a 20 | imension.will.be.`cn'.....File:. |
10f00 | 63 6c 6f 6f 67 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 63 6c 6f 6f 67 5f 70 72 6f 67 72 61 6d | cloog.info,..Node:.cloog_program |
10f20 | 5f 72 65 61 64 2c 20 20 4e 65 78 74 3a 20 46 72 6f 6d 20 4d 61 74 72 69 63 65 73 20 74 6f 20 44 | _read,..Next:.From.Matrices.to.D |
10f40 | 6f 6d 61 69 6e 73 20 61 6e 64 20 43 6f 6e 76 65 72 73 65 6c 79 2c 20 20 50 72 65 76 3a 20 63 6c | omains.and.Conversely,..Prev:.cl |
10f60 | 6f 6f 67 5f 70 72 6f 67 72 61 6d 5f 70 70 72 69 6e 74 2c 20 20 55 70 3a 20 43 4c 6f 6f 47 20 46 | oog_program_pprint,..Up:.CLooG.F |
10f80 | 75 6e 63 74 69 6f 6e 73 0a 0a 33 2e 32 2e 34 20 63 6c 6f 6f 67 5f 70 72 6f 67 72 61 6d 5f 72 65 | unctions..3.2.4.cloog_program_re |
10fa0 | 61 64 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 20 20 20 | ad.------------------------..... |
10fc0 | 20 20 43 6c 6f 6f 67 50 72 6f 67 72 61 6d 20 2a 20 63 6c 6f 6f 67 5f 70 72 6f 67 72 61 6d 5f 72 | ..CloogProgram.*.cloog_program_r |
10fe0 | 65 61 64 28 46 49 4c 45 20 2a 29 20 3b 0a 54 68 65 20 60 63 6c 6f 6f 67 5f 70 72 6f 67 72 61 6d | ead(FILE.*).;.The.`cloog_program |
11000 | 5f 72 65 61 64 27 20 66 75 6e 63 74 69 6f 6e 20 72 65 61 64 73 20 74 68 65 20 70 72 6f 67 72 61 | _read'.function.reads.the.progra |
11020 | 6d 20 64 61 74 61 20 66 72 6f 6d 20 61 20 43 4c 6f 6f 47 0a 69 6e 70 75 74 20 66 69 6c 65 20 28 | m.data.from.a.CLooG.input.file.( |
11040 | 2a 6e 6f 74 65 20 57 72 69 74 69 6e 67 20 54 68 65 20 49 6e 70 75 74 20 46 69 6c 65 3a 3a 29 2e | *note.Writing.The.Input.File::). |
11060 | 20 49 74 20 74 61 6b 65 73 20 61 73 20 69 6e 70 75 74 20 61 0a 70 6f 69 6e 74 65 72 20 74 6f 20 | .It.takes.as.input.a.pointer.to. |
11080 | 74 68 65 20 66 69 6c 65 20 69 74 20 68 61 73 20 74 6f 20 72 65 61 64 20 28 70 6f 73 73 69 62 6c | the.file.it.has.to.read.(possibl |
110a0 | 79 20 60 73 74 64 69 6e 27 29 2c 20 61 6e 64 20 72 65 74 75 72 6e 20 61 0a 70 6f 69 6e 74 65 72 | y.`stdin'),.and.return.a.pointer |
110c0 | 20 74 6f 20 74 68 65 20 72 65 61 64 20 60 43 6c 6f 6f 67 50 72 6f 67 72 61 6d 27 20 73 74 72 75 | .to.the.read.`CloogProgram'.stru |
110e0 | 63 74 75 72 65 2e 0a 0a 1f 0a 46 69 6c 65 3a 20 63 6c 6f 6f 67 2e 69 6e 66 6f 2c 20 20 4e 6f 64 | cture.....File:.cloog.info,..Nod |
11100 | 65 3a 20 46 72 6f 6d 20 4d 61 74 72 69 63 65 73 20 74 6f 20 44 6f 6d 61 69 6e 73 20 61 6e 64 20 | e:.From.Matrices.to.Domains.and. |
11120 | 43 6f 6e 76 65 72 73 65 6c 79 2c 20 20 4e 65 78 74 3a 20 41 6c 6c 6f 63 61 74 69 6f 6e 20 61 6e | Conversely,..Next:.Allocation.an |
11140 | 64 20 49 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 46 75 6e 63 74 69 6f 6e 73 2c 20 20 50 72 65 | d.Initialization.Functions,..Pre |
11160 | 76 3a 20 63 6c 6f 6f 67 5f 70 72 6f 67 72 61 6d 5f 72 65 61 64 2c 20 20 55 70 3a 20 43 4c 6f 6f | v:.cloog_program_read,..Up:.CLoo |
11180 | 47 20 46 75 6e 63 74 69 6f 6e 73 0a 0a 33 2e 32 2e 35 20 46 72 6f 6d 20 4d 61 74 72 69 63 65 73 | G.Functions..3.2.5.From.Matrices |
111a0 | 20 74 6f 20 44 6f 6d 61 69 6e 73 20 61 6e 64 20 43 6f 6e 76 65 72 73 65 6c 79 0a 2d 2d 2d 2d 2d | .to.Domains.and.Conversely.----- |
111c0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
111e0 | 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 20 20 20 20 20 43 6c 6f 6f 67 4d 61 74 72 69 78 20 2a 20 63 6c 6f | --------.......CloogMatrix.*.clo |
11200 | 6f 67 5f 64 6f 6d 61 69 6e 5f 64 6f 6d 61 69 6e 32 6d 61 74 72 69 78 28 43 6c 6f 6f 67 44 6f 6d | og_domain_domain2matrix(CloogDom |
11220 | 61 69 6e 20 2a 29 20 3b 0a 20 20 20 20 20 43 6c 6f 6f 67 44 6f 6d 61 69 6e 20 2a 20 63 6c 6f 6f | ain.*).;......CloogDomain.*.cloo |
11240 | 67 5f 64 6f 6d 61 69 6e 5f 6d 61 74 72 69 78 32 64 6f 6d 61 69 6e 28 43 6c 6f 6f 67 4d 61 74 72 | g_domain_matrix2domain(CloogMatr |
11260 | 69 78 20 2a 29 20 3b 0a 54 77 6f 20 66 75 6e 63 74 69 6f 6e 73 20 61 72 65 20 70 72 6f 76 69 64 | ix.*).;.Two.functions.are.provid |
11280 | 65 64 20 74 6f 20 74 72 61 6e 73 6c 61 74 65 20 61 20 60 43 6c 6f 6f 67 44 6f 6d 61 69 6e 27 20 | ed.to.translate.a.`CloogDomain'. |
112a0 | 64 61 74 61 20 73 74 72 75 63 74 75 72 65 0a 74 6f 20 61 20 60 43 6c 6f 6f 67 4d 61 74 72 69 78 | data.structure.to.a.`CloogMatrix |
112c0 | 27 20 64 61 74 61 20 73 74 72 75 63 74 75 72 65 20 61 6e 64 20 63 6f 6e 76 65 72 73 65 6c 79 2e | '.data.structure.and.conversely. |
112e0 | 20 20 45 61 63 68 20 66 75 6e 63 74 69 6f 6e 20 74 61 6b 65 73 0a 61 73 20 69 6e 70 75 74 20 61 | ..Each.function.takes.as.input.a |
11300 | 20 70 6f 69 6e 74 65 72 20 74 6f 20 74 68 65 20 64 61 74 61 20 73 74 72 75 63 74 75 72 65 20 74 | .pointer.to.the.data.structure.t |
11320 | 6f 20 74 72 61 6e 73 6c 61 74 65 20 61 6e 64 20 72 65 74 75 72 6e 73 20 61 73 0a 6f 75 74 70 75 | o.translate.and.returns.as.outpu |
11340 | 74 20 61 20 70 6f 69 6e 74 65 72 20 74 6f 20 74 68 65 20 74 72 61 6e 73 6c 61 74 65 64 20 64 61 | t.a.pointer.to.the.translated.da |
11360 | 74 61 20 73 74 72 75 63 74 75 72 65 2e 20 54 68 65 20 69 6e 70 75 74 20 64 61 74 61 0a 73 74 72 | ta.structure..The.input.data.str |
11380 | 75 63 74 75 72 65 20 69 66 20 6e 65 69 74 68 65 72 20 6d 6f 64 69 66 69 65 64 20 6e 6f 72 20 66 | ucture.if.neither.modified.nor.f |
113a0 | 72 65 65 64 2e 20 54 68 65 79 20 6d 61 79 20 62 65 20 71 75 69 74 65 20 75 73 65 66 75 6c 20 66 | reed..They.may.be.quite.useful.f |
113c0 | 6f 72 0a 65 2e 67 2e 20 70 72 65 74 74 79 20 70 72 69 6e 74 69 6e 67 20 73 69 6e 63 65 20 69 74 | or.e.g..pretty.printing.since.it |
113e0 | 20 69 73 20 6d 6f 72 65 20 63 6f 6e 76 65 6e 69 65 6e 74 20 69 6e 20 63 6f 6e 73 74 72 61 69 6e | .is.more.convenient.in.constrain |
11400 | 74 20 28 6d 61 74 72 69 78 29 0a 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 2e 0a 0a 1f 0a 46 69 | t.(matrix).representation.....Fi |
11420 | 6c 65 3a 20 63 6c 6f 6f 67 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 41 6c 6c 6f 63 61 74 69 6f | le:.cloog.info,..Node:.Allocatio |
11440 | 6e 20 61 6e 64 20 49 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 46 75 6e 63 74 69 6f 6e 73 2c 20 | n.and.Initialization.Functions,. |
11460 | 20 4e 65 78 74 3a 20 4d 65 6d 6f 72 79 20 44 65 61 6c 6c 6f 63 61 74 69 6f 6e 20 46 75 6e 63 74 | .Next:.Memory.Deallocation.Funct |
11480 | 69 6f 6e 73 2c 20 20 50 72 65 76 3a 20 46 72 6f 6d 20 4d 61 74 72 69 63 65 73 20 74 6f 20 44 6f | ions,..Prev:.From.Matrices.to.Do |
114a0 | 6d 61 69 6e 73 20 61 6e 64 20 43 6f 6e 76 65 72 73 65 6c 79 2c 20 20 55 70 3a 20 43 4c 6f 6f 47 | mains.and.Conversely,..Up:.CLooG |
114c0 | 20 46 75 6e 63 74 69 6f 6e 73 0a 0a 33 2e 32 2e 36 20 41 6c 6c 6f 63 61 74 69 6f 6e 20 61 6e 64 | .Functions..3.2.6.Allocation.and |
114e0 | 20 49 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 46 75 6e 63 74 69 6f 6e 73 0a 2d 2d 2d 2d 2d 2d | .Initialization.Functions.------ |
11500 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
11520 | 2d 2d 2d 2d 2d 2d 2d 0a 0a 20 20 20 20 20 43 6c 6f 6f 67 53 74 72 75 63 74 75 72 65 20 2a 20 63 | -------.......CloogStructure.*.c |
11540 | 6c 6f 6f 67 5f 73 74 72 75 63 74 75 72 65 5f 6d 61 6c 6c 6f 63 28 29 20 3b 0a 45 61 63 68 20 43 | loog_structure_malloc().;.Each.C |
11560 | 4c 6f 6f 47 20 64 61 74 61 20 73 74 72 75 63 74 75 72 65 20 68 61 73 20 61 6e 20 61 6c 6c 6f 63 | LooG.data.structure.has.an.alloc |
11580 | 61 74 69 6f 6e 20 61 6e 64 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 66 75 6e 63 74 69 6f | ation.and.initialization.functio |
115a0 | 6e 0a 61 73 20 73 68 6f 77 6e 20 61 62 6f 76 65 2c 20 77 68 65 72 65 20 60 53 74 72 75 63 74 75 | n.as.shown.above,.where.`Structu |
115c0 | 72 65 27 20 61 6e 64 20 60 73 74 72 75 63 74 75 72 65 27 20 68 61 76 65 20 74 6f 20 62 65 20 72 | re'.and.`structure'.have.to.be.r |
115e0 | 65 70 6c 61 63 65 64 0a 62 79 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 63 6f 6e 76 65 | eplaced.by.the.name.of.the.conve |
11600 | 6e 69 65 6e 74 20 73 74 72 75 63 74 75 72 65 20 28 77 69 74 68 6f 75 74 20 60 43 6c 6f 6f 67 27 | nient.structure.(without.`Cloog' |
11620 | 20 70 72 65 66 69 78 29 20 66 6f 72 0a 69 6e 73 74 61 6e 63 65 20 60 43 6c 6f 6f 67 4c 6f 6f 70 | .prefix).for.instance.`CloogLoop |
11640 | 20 2a 20 63 6c 6f 6f 67 5f 6c 6f 6f 70 5f 6d 61 6c 6c 6f 63 28 29 20 3b 27 2e 20 54 68 65 73 65 | .*.cloog_loop_malloc().;'..These |
11660 | 20 66 75 6e 63 74 69 6f 6e 73 20 72 65 74 75 72 6e 0a 70 6f 69 6e 74 65 72 73 20 74 6f 20 61 6e | .functions.return.pointers.to.an |
11680 | 20 61 6c 6c 6f 63 61 74 65 64 20 73 74 72 75 63 74 75 72 65 20 77 69 74 68 20 66 69 65 6c 64 73 | .allocated.structure.with.fields |
116a0 | 20 73 65 74 20 74 6f 20 63 6f 6e 76 65 6e 69 65 6e 74 20 64 65 66 61 75 6c 74 0a 76 61 6c 75 65 | .set.to.convenient.default.value |
116c0 | 73 2e 20 2a 55 73 69 6e 67 20 74 68 6f 73 65 20 66 75 6e 63 74 69 6f 6e 73 20 69 73 20 6d 61 6e | s..*Using.those.functions.is.man |
116e0 | 64 61 74 6f 72 79 2a 20 74 6f 20 73 75 70 70 6f 72 74 20 69 6e 74 65 72 6e 61 6c 0a 6d 61 6e 61 | datory*.to.support.internal.mana |
11700 | 67 65 6d 65 6e 74 20 66 69 65 6c 64 73 20 61 6e 64 20 74 6f 20 61 76 6f 69 64 20 75 70 77 61 72 | gement.fields.and.to.avoid.upwar |
11720 | 64 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 70 72 6f 62 6c 65 6d 73 20 69 66 20 6e 65 77 0a | d.compatibility.problems.if.new. |
11740 | 66 69 65 6c 64 73 20 61 70 70 65 61 72 2e 20 41 6e 20 65 78 63 65 70 74 69 6f 6e 20 69 73 20 60 | fields.appear..An.exception.is.` |
11760 | 63 6c 6f 6f 67 5f 6d 61 74 72 69 78 5f 6d 61 6c 6c 6f 63 27 20 73 69 6e 63 65 20 74 68 65 0a 60 | cloog_matrix_malloc'.since.the.` |
11780 | 43 6c 6f 6f 67 4d 61 74 72 69 78 27 20 63 6f 6d 65 73 20 64 69 72 65 63 74 6c 79 20 66 72 6f 6d | CloogMatrix'.comes.directly.from |
117a0 | 20 74 68 65 20 50 6f 6c 79 4c 69 62 2e 20 49 74 20 74 61 6b 65 73 20 74 77 6f 20 70 61 72 61 6d | .the.PolyLib..It.takes.two.param |
117c0 | 65 74 65 72 73 3a 0a 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 72 6f 77 73 20 61 6e 64 20 63 6f | eters:.the.number.of.rows.and.co |
117e0 | 6c 75 6d 6e 73 20 6f 66 20 74 68 65 20 6d 61 74 72 69 78 20 77 65 20 77 61 6e 74 20 74 6f 20 61 | lumns.of.the.matrix.we.want.to.a |
11800 | 6c 6c 6f 63 61 74 65 3a 0a 20 20 20 20 20 43 6c 6f 6f 67 4d 61 74 72 69 78 20 2a 20 63 6c 6f 6f | llocate:......CloogMatrix.*.cloo |
11820 | 67 5f 6d 61 74 72 69 78 5f 6d 61 6c 6c 6f 63 28 75 6e 73 69 67 6e 65 64 20 6e 62 72 6f 77 73 2c | g_matrix_malloc(unsigned.nbrows, |
11840 | 20 75 6e 73 69 67 6e 65 64 20 6e 62 63 6f 6c 75 6d 6e 73 29 3b 0a 0a 1f 0a 46 69 6c 65 3a 20 63 | .unsigned.nbcolumns);....File:.c |
11860 | 6c 6f 6f 67 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 4d 65 6d 6f 72 79 20 44 65 61 6c 6c 6f 63 | loog.info,..Node:.Memory.Dealloc |
11880 | 61 74 69 6f 6e 20 46 75 6e 63 74 69 6f 6e 73 2c 20 20 4e 65 78 74 3a 20 50 72 69 6e 74 69 6e 67 | ation.Functions,..Next:.Printing |
118a0 | 20 46 75 6e 63 74 69 6f 6e 73 2c 20 20 50 72 65 76 3a 20 41 6c 6c 6f 63 61 74 69 6f 6e 20 61 6e | .Functions,..Prev:.Allocation.an |
118c0 | 64 20 49 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 46 75 6e 63 74 69 6f 6e 73 2c 20 20 55 70 3a | d.Initialization.Functions,..Up: |
118e0 | 20 43 4c 6f 6f 47 20 46 75 6e 63 74 69 6f 6e 73 0a 0a 33 2e 32 2e 37 20 4d 65 6d 6f 72 79 20 44 | .CLooG.Functions..3.2.7.Memory.D |
11900 | 65 61 6c 6c 6f 63 61 74 69 6f 6e 20 46 75 6e 63 74 69 6f 6e 73 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | eallocation.Functions.---------- |
11920 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 20 20 20 20 20 | -------------------------....... |
11940 | 76 6f 69 64 20 63 6c 6f 6f 67 5f 73 74 72 75 63 74 75 72 65 5f 66 72 65 65 28 43 6c 6f 6f 67 53 | void.cloog_structure_free(CloogS |
11960 | 74 72 75 63 74 75 72 65 20 2a 29 20 3b 0a 45 61 63 68 20 43 4c 6f 6f 47 20 64 61 74 61 20 73 74 | tructure.*).;.Each.CLooG.data.st |
11980 | 72 75 63 74 75 72 65 20 68 61 73 20 61 20 64 65 61 6c 6c 6f 63 61 74 69 6f 6e 20 66 75 6e 63 74 | ructure.has.a.deallocation.funct |
119a0 | 69 6f 6e 20 61 73 20 73 68 6f 77 6e 20 61 62 6f 76 65 2c 0a 77 68 65 72 65 20 60 53 74 72 75 63 | ion.as.shown.above,.where.`Struc |
119c0 | 74 75 72 65 27 20 61 6e 64 20 60 73 74 72 75 63 74 75 72 65 27 20 68 61 76 65 20 74 6f 20 62 65 | ture'.and.`structure'.have.to.be |
119e0 | 20 72 65 70 6c 61 63 65 64 20 62 79 20 74 68 65 20 6e 61 6d 65 20 6f 66 0a 74 68 65 20 63 6f 6e | .replaced.by.the.name.of.the.con |
11a00 | 76 65 6e 69 65 6e 74 20 73 74 72 75 63 74 75 72 65 20 28 77 69 74 68 6f 75 74 20 60 43 6c 6f 6f | venient.structure.(without.`Cloo |
11a20 | 67 27 20 70 72 65 66 69 78 29 20 66 6f 72 20 69 6e 73 74 61 6e 63 65 20 60 76 6f 69 64 0a 63 6c | g'.prefix).for.instance.`void.cl |
11a40 | 6f 6f 67 5f 6c 6f 6f 70 5f 66 72 65 65 28 43 6c 6f 6f 67 4c 6f 6f 70 20 2a 29 20 3b 27 2e 20 54 | oog_loop_free(CloogLoop.*).;'..T |
11a60 | 68 65 73 65 20 66 75 6e 63 74 69 6f 6e 73 20 66 72 65 65 20 74 68 65 20 61 6c 6c 6f 63 61 74 65 | hese.functions.free.the.allocate |
11a80 | 64 0a 6d 65 6d 6f 72 79 20 66 6f 72 20 74 68 65 20 73 74 72 75 63 74 75 72 65 20 70 72 6f 76 69 | d.memory.for.the.structure.provi |
11aa0 | 64 65 64 20 61 73 20 69 6e 70 75 74 2e 20 54 68 65 79 20 66 72 65 65 20 6d 65 6d 6f 72 79 0a 72 | ded.as.input..They.free.memory.r |
11ac0 | 65 63 75 72 73 69 76 65 6c 79 2c 20 69 2e 65 2e 20 74 68 65 79 20 61 6c 73 6f 20 66 72 65 65 20 | ecursively,.i.e..they.also.free. |
11ae0 | 74 68 65 20 61 6c 6c 6f 63 61 74 65 64 20 6d 65 6d 6f 72 79 20 66 6f 72 20 74 68 65 20 69 6e 74 | the.allocated.memory.for.the.int |
11b00 | 65 72 6e 61 6c 0a 73 74 72 75 63 74 75 72 65 73 2e 20 20 2a 55 73 69 6e 67 20 74 68 6f 73 65 20 | ernal.structures...*Using.those. |
11b20 | 66 75 6e 63 74 69 6f 6e 73 20 69 73 20 6d 61 6e 64 61 74 6f 72 79 2a 20 74 6f 20 61 76 6f 69 64 | functions.is.mandatory*.to.avoid |
11b40 | 20 6d 65 6d 6f 72 79 20 6c 65 61 6b 73 0a 6f 6e 20 69 6e 74 65 72 6e 61 6c 20 6d 61 6e 61 67 65 | .memory.leaks.on.internal.manage |
11b60 | 6d 65 6e 74 20 66 69 65 6c 64 73 20 61 6e 64 20 74 6f 20 61 76 6f 69 64 20 75 70 77 61 72 64 20 | ment.fields.and.to.avoid.upward. |
11b80 | 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 0a 70 72 6f 62 6c 65 6d 73 20 69 66 20 6e 65 77 20 66 69 | compatibility.problems.if.new.fi |
11ba0 | 65 6c 64 73 20 61 70 70 65 61 72 2e 0a 0a 1f 0a 46 69 6c 65 3a 20 63 6c 6f 6f 67 2e 69 6e 66 6f | elds.appear.....File:.cloog.info |
11bc0 | 2c 20 20 4e 6f 64 65 3a 20 50 72 69 6e 74 69 6e 67 20 46 75 6e 63 74 69 6f 6e 73 2c 20 20 50 72 | ,..Node:.Printing.Functions,..Pr |
11be0 | 65 76 3a 20 4d 65 6d 6f 72 79 20 44 65 61 6c 6c 6f 63 61 74 69 6f 6e 20 46 75 6e 63 74 69 6f 6e | ev:.Memory.Deallocation.Function |
11c00 | 73 2c 20 20 55 70 3a 20 43 4c 6f 6f 47 20 46 75 6e 63 74 69 6f 6e 73 0a 0a 33 2e 32 2e 38 20 50 | s,..Up:.CLooG.Functions..3.2.8.P |
11c20 | 72 69 6e 74 69 6e 67 20 46 75 6e 63 74 69 6f 6e 73 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | rinting.Functions.-------------- |
11c40 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 20 20 20 20 20 76 6f 69 64 20 63 6c 6f 6f 67 5f 73 74 72 75 | ----------.......void.cloog_stru |
11c60 | 63 74 75 72 65 5f 70 72 69 6e 74 28 46 49 4c 45 20 2a 2c 20 43 6c 6f 6f 67 53 74 72 75 63 74 75 | cture_print(FILE.*,.CloogStructu |
11c80 | 72 65 20 2a 29 20 3b 0a 45 61 63 68 20 43 4c 6f 6f 47 20 64 61 74 61 20 73 74 72 75 63 74 75 72 | re.*).;.Each.CLooG.data.structur |
11ca0 | 65 20 68 61 73 20 61 20 70 72 69 6e 74 69 6e 67 20 66 75 6e 63 74 69 6f 6e 20 61 73 20 73 68 6f | e.has.a.printing.function.as.sho |
11cc0 | 77 6e 20 61 62 6f 76 65 2c 0a 77 68 65 72 65 20 60 53 74 72 75 63 74 75 72 65 27 20 61 6e 64 20 | wn.above,.where.`Structure'.and. |
11ce0 | 60 73 74 72 75 63 74 75 72 65 27 20 68 61 76 65 20 74 6f 20 62 65 20 72 65 70 6c 61 63 65 64 20 | `structure'.have.to.be.replaced. |
11d00 | 62 79 20 74 68 65 20 6e 61 6d 65 20 6f 66 0a 74 68 65 20 63 6f 6e 76 65 6e 69 65 6e 74 20 73 74 | by.the.name.of.the.convenient.st |
11d20 | 72 75 63 74 75 72 65 20 28 77 69 74 68 6f 75 74 20 60 43 6c 6f 6f 67 27 20 70 72 65 66 69 78 29 | ructure.(without.`Cloog'.prefix) |
11d40 | 20 66 6f 72 20 69 6e 73 74 61 6e 63 65 20 60 76 6f 69 64 0a 63 6c 6f 6f 67 5f 6c 6f 6f 70 5f 70 | .for.instance.`void.cloog_loop_p |
11d60 | 72 69 6e 74 28 46 49 4c 45 20 2a 2c 20 43 6c 6f 6f 67 4c 6f 6f 70 20 2a 29 20 3b 27 2e 20 54 68 | rint(FILE.*,.CloogLoop.*).;'..Th |
11d80 | 65 73 65 20 66 75 6e 63 74 69 6f 6e 73 20 70 72 69 6e 74 20 74 68 65 0a 70 6f 69 6e 74 65 64 20 | ese.functions.print.the.pointed. |
11da0 | 73 74 72 75 63 74 75 72 65 20 28 61 6e 64 20 69 74 73 20 66 69 65 6c 64 73 20 72 65 63 75 72 73 | structure.(and.its.fields.recurs |
11dc0 | 69 76 65 6c 79 29 20 74 6f 20 74 68 65 20 66 69 6c 65 20 70 72 6f 76 69 64 65 64 20 61 73 0a 69 | ively).to.the.file.provided.as.i |
11de0 | 6e 70 75 74 20 28 70 6f 73 73 69 62 6c 79 20 60 73 74 64 6f 75 74 27 29 2e 0a 0a 1f 0a 46 69 6c | nput.(possibly.`stdout').....Fil |
11e00 | 65 3a 20 63 6c 6f 6f 67 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 45 78 61 6d 70 6c 65 20 6f 66 | e:.cloog.info,..Node:.Example.of |
11e20 | 20 4c 69 62 72 61 72 79 20 55 74 69 6c 69 7a 61 74 69 6f 6e 2c 20 20 50 72 65 76 3a 20 43 4c 6f | .Library.Utilization,..Prev:.CLo |
11e40 | 6f 47 20 46 75 6e 63 74 69 6f 6e 73 2c 20 20 55 70 3a 20 43 4c 6f 6f 47 20 4c 69 62 72 61 72 79 | oG.Functions,..Up:.CLooG.Library |
11e60 | 0a 0a 33 2e 33 20 45 78 61 6d 70 6c 65 20 6f 66 20 4c 69 62 72 61 72 79 20 55 74 69 6c 69 7a 61 | ..3.3.Example.of.Library.Utiliza |
11e80 | 74 69 6f 6e 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d | tion.=========================== |
11ea0 | 3d 3d 3d 3d 3d 3d 3d 0a 0a 48 65 72 65 20 69 73 20 61 20 62 61 73 69 63 20 65 78 61 6d 70 6c 65 | =======..Here.is.a.basic.example |
11ec0 | 20 73 68 6f 77 69 6e 67 20 68 6f 77 20 69 74 20 69 73 20 70 6f 73 73 69 62 6c 65 20 74 6f 20 75 | .showing.how.it.is.possible.to.u |
11ee0 | 73 65 20 74 68 65 20 43 4c 6f 6f 47 0a 6c 69 62 72 61 72 79 2c 20 61 73 73 75 6d 69 6e 67 20 74 | se.the.CLooG.library,.assuming.t |
11f00 | 68 61 74 20 61 20 73 74 61 6e 64 61 72 64 20 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 20 68 61 73 20 | hat.a.standard.installation.has. |
11f20 | 62 65 65 6e 20 64 6f 6e 65 2e 20 20 54 68 65 0a 66 6f 6c 6c 6f 77 69 6e 67 20 43 20 70 72 6f 67 | been.done...The.following.C.prog |
11f40 | 72 61 6d 20 72 65 61 64 73 20 61 20 43 4c 6f 6f 47 20 69 6e 70 75 74 20 66 69 6c 65 20 6f 6e 20 | ram.reads.a.CLooG.input.file.on. |
11f60 | 74 68 65 20 73 74 61 6e 64 61 72 64 20 69 6e 70 75 74 2c 0a 74 68 65 6e 20 70 72 69 6e 74 73 20 | the.standard.input,.then.prints. |
11f80 | 74 68 65 20 73 6f 6c 75 74 69 6f 6e 20 6f 6e 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 6f 75 74 | the.solution.on.the.standard.out |
11fa0 | 70 75 74 2e 20 20 4f 70 74 69 6f 6e 73 20 61 72 65 0a 70 72 65 73 65 6c 65 63 74 65 64 20 74 6f | put...Options.are.preselected.to |
11fc0 | 20 74 68 65 20 64 65 66 61 75 6c 74 20 76 61 6c 75 65 73 20 6f 66 20 74 68 65 20 43 4c 6f 6f 47 | .the.default.values.of.the.CLooG |
11fe0 | 20 73 6f 66 74 77 61 72 65 2e 20 20 54 68 69 73 20 65 78 61 6d 70 6c 65 0a 69 73 20 70 72 6f 76 | .software...This.example.is.prov |
12000 | 69 64 65 64 20 69 6e 20 74 68 65 20 60 65 78 61 6d 70 6c 65 27 20 64 69 72 65 63 74 6f 72 79 20 | ided.in.the.`example'.directory. |
12020 | 6f 66 20 74 68 65 20 43 4c 6f 6f 47 20 64 69 73 74 72 69 62 75 74 69 6f 6e 2e 0a 20 20 20 20 20 | of.the.CLooG.distribution....... |
12040 | 2f 2a 20 65 78 61 6d 70 6c 65 2e 63 20 2a 2f 0a 20 20 20 20 20 23 20 69 6e 63 6c 75 64 65 20 3c | /*.example.c.*/......#.include.< |
12060 | 73 74 64 69 6f 2e 68 3e 0a 20 20 20 20 20 23 20 69 6e 63 6c 75 64 65 20 3c 63 6c 6f 6f 67 2f 63 | stdio.h>......#.include.<cloog/c |
12080 | 6c 6f 6f 67 2e 68 3e 0a 0a 20 20 20 20 20 69 6e 74 20 6d 61 69 6e 28 29 0a 20 20 20 20 20 7b 20 | loog.h>.......int.main()......{. |
120a0 | 43 6c 6f 6f 67 50 72 6f 67 72 61 6d 20 2a 20 70 72 6f 67 72 61 6d 20 3b 0a 20 20 20 20 20 20 20 | CloogProgram.*.program.;........ |
120c0 | 43 6c 6f 6f 67 4f 70 74 69 6f 6e 73 20 2a 20 6f 70 74 69 6f 6e 73 20 3b 0a 0a 20 20 20 20 20 20 | CloogOptions.*.options.;........ |
120e0 | 20 2f 2a 20 53 65 74 74 69 6e 67 20 6f 70 74 69 6f 6e 73 20 61 6e 64 20 72 65 61 64 69 6e 67 20 | ./*.Setting.options.and.reading. |
12100 | 70 72 6f 67 72 61 6d 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 73 2e 20 2a 2f 0a 20 20 20 20 20 20 20 | program.informations..*/........ |
12120 | 6f 70 74 69 6f 6e 73 20 3d 20 63 6c 6f 6f 67 5f 6f 70 74 69 6f 6e 73 5f 6d 61 6c 6c 6f 63 28 29 | options.=.cloog_options_malloc() |
12140 | 20 3b 0a 20 20 20 20 20 20 20 70 72 6f 67 72 61 6d 20 3d 20 63 6c 6f 6f 67 5f 70 72 6f 67 72 61 | .;........program.=.cloog_progra |
12160 | 6d 5f 72 65 61 64 28 73 74 64 69 6e 2c 6f 70 74 69 6f 6e 73 29 20 3b 0a 0a 20 20 20 20 20 20 20 | m_read(stdin,options).;......... |
12180 | 2f 2a 20 47 65 6e 65 72 61 74 69 6e 67 20 61 6e 64 20 70 72 69 6e 74 69 6e 67 20 74 68 65 20 63 | /*.Generating.and.printing.the.c |
121a0 | 6f 64 65 2e 20 2a 2f 0a 20 20 20 20 20 20 20 70 72 6f 67 72 61 6d 20 3d 20 63 6c 6f 6f 67 5f 70 | ode..*/........program.=.cloog_p |
121c0 | 72 6f 67 72 61 6d 5f 67 65 6e 65 72 61 74 65 28 70 72 6f 67 72 61 6d 2c 6f 70 74 69 6f 6e 73 29 | rogram_generate(program,options) |
121e0 | 20 3b 0a 20 20 20 20 20 20 20 63 6c 6f 6f 67 5f 70 72 6f 67 72 61 6d 5f 70 70 72 69 6e 74 28 73 | .;........cloog_program_pprint(s |
12200 | 74 64 6f 75 74 2c 70 72 6f 67 72 61 6d 2c 6f 70 74 69 6f 6e 73 29 20 3b 0a 0a 20 20 20 20 20 20 | tdout,program,options).;........ |
12220 | 20 63 6c 6f 6f 67 5f 6f 70 74 69 6f 6e 73 5f 66 72 65 65 28 6f 70 74 69 6f 6e 73 29 20 3b 0a 20 | .cloog_options_free(options).;.. |
12240 | 20 20 20 20 20 20 63 6c 6f 6f 67 5f 70 72 6f 67 72 61 6d 5f 66 72 65 65 28 70 72 6f 67 72 61 6d | ......cloog_program_free(program |
12260 | 29 20 3b 0a 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 30 3b 0a 20 20 20 20 20 7d 0a 0a 54 68 65 | ).;........return.0;......}..The |
12280 | 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 63 6f 6d 6d 61 6e 64 20 63 6f 75 6c 64 20 62 65 3a 0a 20 | .compilation.command.could.be:.. |
122a0 | 20 20 20 20 67 63 63 20 65 78 61 6d 70 6c 65 2e 63 20 2d 6c 63 6c 6f 6f 67 20 2d 6f 20 65 78 61 | ....gcc.example.c.-lcloog.-o.exa |
122c0 | 6d 70 6c 65 0a 20 20 20 41 20 63 61 6c 6c 69 6e 67 20 63 6f 6d 6d 61 6e 64 20 77 69 74 68 20 74 | mple....A.calling.command.with.t |
122e0 | 68 65 20 69 6e 70 75 74 20 66 69 6c 65 20 74 65 73 74 2e 63 6c 6f 6f 67 20 63 6f 75 6c 64 20 62 | he.input.file.test.cloog.could.b |
12300 | 65 3a 0a 20 20 20 20 20 6d 6f 72 65 20 74 65 73 74 2e 63 6c 6f 6f 67 20 7c 20 2e 2f 65 78 61 6d | e:......more.test.cloog.|../exam |
12320 | 70 6c 65 0a 0a 1f 0a 46 69 6c 65 3a 20 63 6c 6f 6f 67 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 | ple....File:.cloog.info,..Node:. |
12340 | 49 6e 73 74 61 6c 6c 69 6e 67 2c 20 20 4e 65 78 74 3a 20 44 6f 63 75 6d 65 6e 74 61 74 69 6f 6e | Installing,..Next:.Documentation |
12360 | 2c 20 20 50 72 65 76 3a 20 43 4c 6f 6f 47 20 4c 69 62 72 61 72 79 2c 20 20 55 70 3a 20 54 6f 70 | ,..Prev:.CLooG.Library,..Up:.Top |
12380 | 0a 0a 34 20 49 6e 73 74 61 6c 6c 69 6e 67 20 43 4c 6f 6f 47 0a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a | ..4.Installing.CLooG.*********** |
123a0 | 2a 2a 2a 2a 2a 2a 2a 0a 0a 2a 20 4d 65 6e 75 3a 0a 0a 2a 20 4c 69 63 65 6e 73 65 3a 3a 0a 2a 20 | *******..*.Menu:..*.License::.*. |
123c0 | 52 65 71 75 69 72 65 6d 65 6e 74 73 3a 3a 0a 2a 20 42 61 73 69 63 20 49 6e 73 74 61 6c 6c 61 74 | Requirements::.*.Basic.Installat |
123e0 | 69 6f 6e 3a 3a 0a 2a 20 4f 70 74 69 6f 6e 61 6c 20 46 65 61 74 75 72 65 73 3a 3a 0a 2a 20 55 6e | ion::.*.Optional.Features::.*.Un |
12400 | 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 3a 3a 0a 0a 1f 0a 46 69 6c 65 3a 20 63 6c 6f 6f 67 2e 69 6e | installation::....File:.cloog.in |
12420 | 66 6f 2c 20 20 4e 6f 64 65 3a 20 4c 69 63 65 6e 73 65 2c 20 20 4e 65 78 74 3a 20 52 65 71 75 69 | fo,..Node:.License,..Next:.Requi |
12440 | 72 65 6d 65 6e 74 73 2c 20 20 55 70 3a 20 49 6e 73 74 61 6c 6c 69 6e 67 0a 0a 34 2e 31 20 4c 69 | rements,..Up:.Installing..4.1.Li |
12460 | 63 65 6e 73 65 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 0a 46 69 72 73 74 20 6f 66 20 61 6c 6c 2c | cense.===========..First.of.all, |
12480 | 20 69 74 20 77 6f 75 6c 64 20 62 65 20 76 65 72 79 20 6b 69 6e 64 20 74 6f 20 72 65 66 65 72 20 | .it.would.be.very.kind.to.refer. |
124a0 | 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 70 61 70 65 72 20 69 6e 20 61 6e 79 0a 70 75 62 6c 69 | the.following.paper.in.any.publi |
124c0 | 63 61 74 69 6f 6e 20 74 68 61 74 20 72 65 73 75 6c 74 20 66 72 6f 6d 20 74 68 65 20 75 73 65 20 | cation.that.result.from.the.use. |
124e0 | 6f 66 20 74 68 65 20 43 4c 6f 6f 47 20 73 6f 66 74 77 61 72 65 20 6f 72 20 69 74 73 0a 6c 69 62 | of.the.CLooG.software.or.its.lib |
12500 | 72 61 72 79 2c 20 2a 6e 6f 74 65 20 42 61 73 30 34 3a 3a 20 28 61 20 62 69 62 74 65 78 20 65 6e | rary,.*note.Bas04::.(a.bibtex.en |
12520 | 74 72 79 20 69 73 20 70 72 6f 76 69 64 65 64 20 62 65 68 69 6e 64 20 74 68 65 20 74 69 74 6c 65 | try.is.provided.behind.the.title |
12540 | 0a 70 61 67 65 20 6f 66 20 74 68 69 73 20 6d 61 6e 75 61 6c 2c 20 61 6c 6f 6e 67 20 77 69 74 68 | .page.of.this.manual,.along.with |
12560 | 20 63 6f 70 79 72 69 67 68 74 20 6e 6f 74 69 63 65 2c 20 61 6e 64 20 69 6e 20 74 68 65 20 43 4c | .copyright.notice,.and.in.the.CL |
12580 | 6f 6f 47 20 68 6f 6d 65 0a 60 68 74 74 70 3a 2f 2f 77 77 77 2e 43 4c 6f 6f 47 2e 6f 72 67 27 2e | ooG.home.`http://www.CLooG.org'. |
125a0 | 0a 0a 20 20 20 54 68 69 73 20 70 72 6f 67 72 61 6d 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 | .....This.program.is.free.softwa |
125c0 | 72 65 3b 20 79 6f 75 20 63 61 6e 20 72 65 64 69 73 74 72 69 62 75 74 65 20 69 74 20 61 6e 64 2f | re;.you.can.redistribute.it.and/ |
125e0 | 6f 72 20 6d 6f 64 69 66 79 0a 69 74 20 75 6e 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 | or.modify.it.under.the.terms.of. |
12600 | 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 76 | the.GNU.General.Public.License.v |
12620 | 65 72 73 69 6f 6e 20 32 20 61 73 0a 70 75 62 6c 69 73 68 65 64 20 62 79 20 74 68 65 20 46 72 65 | ersion.2.as.published.by.the.Fre |
12640 | 65 20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e 2e 20 20 54 68 69 73 20 70 72 6f | e.Software.Foundation...This.pro |
12660 | 67 72 61 6d 20 69 73 20 64 69 73 74 72 69 62 75 74 65 64 0a 69 6e 20 74 68 65 20 68 6f 70 65 20 | gram.is.distributed.in.the.hope. |
12680 | 74 68 61 74 20 69 74 20 77 69 6c 6c 20 62 65 20 75 73 65 66 75 6c 2c 20 62 75 74 20 57 49 54 48 | that.it.will.be.useful,.but.WITH |
126a0 | 4f 55 54 20 41 4e 59 20 57 41 52 52 41 4e 54 59 3b 20 77 69 74 68 6f 75 74 0a 65 76 65 6e 20 74 | OUT.ANY.WARRANTY;.without.even.t |
126c0 | 68 65 20 69 6d 70 6c 69 65 64 20 77 61 72 72 61 6e 74 79 20 6f 66 20 4d 45 52 43 48 41 4e 54 41 | he.implied.warranty.of.MERCHANTA |
126e0 | 42 49 4c 49 54 59 20 6f 72 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 0a 50 41 52 54 49 43 55 4c | BILITY.or.FITNESS.FOR.A.PARTICUL |
12700 | 41 52 20 50 55 52 50 4f 53 45 2e 20 20 53 65 65 20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c | AR.PURPOSE...See.the.GNU.General |
12720 | 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 6d 6f 72 65 0a 64 65 74 61 69 6c 73 | .Public.License.for.more.details |
12740 | 2e 20 20 60 68 74 74 70 3a 2f 2f 77 77 77 2e 67 6e 75 2e 6f 72 67 2f 63 6f 70 79 6c 65 66 74 2f | ...`http://www.gnu.org/copyleft/ |
12760 | 67 70 6c 2e 68 74 6d 6c 27 0a 0a 1f 0a 46 69 6c 65 3a 20 63 6c 6f 6f 67 2e 69 6e 66 6f 2c 20 20 | gpl.html'....File:.cloog.info,.. |
12780 | 4e 6f 64 65 3a 20 52 65 71 75 69 72 65 6d 65 6e 74 73 2c 20 20 4e 65 78 74 3a 20 42 61 73 69 63 | Node:.Requirements,..Next:.Basic |
127a0 | 20 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 2c 20 20 50 72 65 76 3a 20 4c 69 63 65 6e 73 65 2c 20 20 | .Installation,..Prev:.License,.. |
127c0 | 55 70 3a 20 49 6e 73 74 61 6c 6c 69 6e 67 0a 0a 34 2e 32 20 52 65 71 75 69 72 65 6d 65 6e 74 73 | Up:.Installing..4.2.Requirements |
127e0 | 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 0a 2a 20 4d 65 6e 75 3a 0a 0a 2a 20 50 6f | .================..*.Menu:..*.Po |
12800 | 6c 79 4c 69 62 3a 3a 0a 2a 20 47 4d 50 20 4c 69 62 72 61 72 79 3a 3a 0a 0a 1f 0a 46 69 6c 65 3a | lyLib::.*.GMP.Library::....File: |
12820 | 20 63 6c 6f 6f 67 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 50 6f 6c 79 4c 69 62 2c 20 20 4e 65 | .cloog.info,..Node:.PolyLib,..Ne |
12840 | 78 74 3a 20 47 4d 50 20 4c 69 62 72 61 72 79 2c 20 20 55 70 3a 20 52 65 71 75 69 72 65 6d 65 6e | xt:.GMP.Library,..Up:.Requiremen |
12860 | 74 73 0a 0a 34 2e 32 2e 31 20 50 6f 6c 79 4c 69 62 20 28 6d 61 6e 64 61 74 6f 72 79 29 0a 2d 2d | ts..4.2.1.PolyLib.(mandatory).-- |
12880 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 54 6f 20 73 75 63 63 | -----------------------..To.succ |
128a0 | 65 73 73 66 75 6c 6c 79 20 69 6e 73 74 61 6c 6c 20 43 4c 6f 6f 47 2c 20 74 68 65 20 75 73 65 72 | essfully.install.CLooG,.the.user |
128c0 | 20 6e 65 65 64 20 66 69 72 73 74 6c 79 20 74 6f 20 69 6e 73 74 61 6c 6c 20 50 6f 6c 79 4c 69 62 | .need.firstly.to.install.PolyLib |
128e0 | 0a 76 65 72 73 69 6f 6e 20 35 2e 32 32 2e 31 20 6f 72 20 61 62 6f 76 65 20 28 64 65 66 61 75 6c | .version.5.22.1.or.above.(defaul |
12900 | 74 20 36 34 20 62 69 74 73 20 76 65 72 73 69 6f 6e 20 69 73 20 73 61 74 69 73 66 79 69 6e 67 20 | t.64.bits.version.is.satisfying. |
12920 | 61 73 20 77 65 6c 6c 0a 61 73 20 33 32 20 62 69 74 73 20 6f 72 20 47 4d 50 20 6d 75 6c 74 69 70 | as.well.as.32.bits.or.GMP.multip |
12940 | 6c 65 20 70 72 65 63 69 73 69 6f 6e 20 76 65 72 73 69 6f 6e 29 2e 20 20 50 6f 6c 79 6c 69 62 20 | le.precision.version)...Polylib. |
12960 | 63 61 6e 20 62 65 0a 64 6f 77 6e 6c 6f 61 64 65 64 20 66 72 65 65 6c 79 20 61 74 20 60 68 74 74 | can.be.downloaded.freely.at.`htt |
12980 | 70 3a 2f 2f 69 63 70 73 2e 75 2d 73 74 72 61 73 62 67 2e 66 72 2f 50 6f 6c 79 4c 69 62 2f 27 20 | p://icps.u-strasbg.fr/PolyLib/'. |
129a0 | 6f 72 0a 60 68 74 74 70 3a 2f 2f 77 77 77 2e 69 72 69 73 61 2e 66 72 2f 70 6f 6c 79 6c 69 62 2f | or.`http://www.irisa.fr/polylib/ |
129c0 | 27 2e 20 4f 6e 63 65 20 64 6f 77 6e 6c 6f 61 64 65 64 20 61 6e 64 20 75 6e 70 61 63 6b 65 64 20 | '..Once.downloaded.and.unpacked. |
129e0 | 28 65 2e 67 2e 0a 75 73 69 6e 67 20 74 68 65 20 60 74 61 72 20 2d 7a 78 76 66 20 70 6f 6c 79 6c | (e.g..using.the.`tar.-zxvf.polyl |
12a00 | 69 62 2d 35 2e 32 32 2e 31 2e 74 61 72 2e 67 7a 27 20 63 6f 6d 6d 61 6e 64 29 2c 20 74 68 65 20 | ib-5.22.1.tar.gz'.command),.the. |
12a20 | 75 73 65 72 20 63 61 6e 0a 63 6f 6d 70 69 6c 65 20 69 74 20 62 79 20 74 79 70 69 6e 67 20 74 68 | user.can.compile.it.by.typing.th |
12a40 | 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 6f 6d 6d 61 6e 64 73 20 6f 6e 20 74 68 65 20 50 6f 6c 79 | e.following.commands.on.the.Poly |
12a60 | 4c 69 62 27 73 20 72 6f 6f 74 0a 64 69 72 65 63 74 6f 72 79 3a 0a 0a 20 20 20 2a 20 60 2e 2f 63 | Lib's.root.directory:.....*.`./c |
12a80 | 6f 6e 66 69 67 75 72 65 27 0a 0a 20 20 20 2a 20 60 6d 61 6b 65 27 0a 0a 20 20 20 2a 20 41 6e 64 | onfigure'.....*.`make'.....*.And |
12aa0 | 20 61 73 20 72 6f 6f 74 3a 20 60 6d 61 6b 65 20 69 6e 73 74 61 6c 6c 27 0a 0a 20 20 20 54 68 65 | .as.root:.`make.install'.....The |
12ac0 | 20 50 6f 6c 79 4c 69 62 20 64 65 66 61 75 6c 74 20 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 20 69 73 | .PolyLib.default.installation.is |
12ae0 | 20 60 2f 75 73 72 2f 6c 6f 63 61 6c 27 2e 20 54 68 69 73 20 64 69 72 65 63 74 6f 72 79 20 6d 61 | .`/usr/local'..This.directory.ma |
12b00 | 79 0a 6e 6f 74 20 62 65 20 69 6e 73 69 64 65 20 79 6f 75 72 20 6c 69 62 72 61 72 79 20 70 61 74 | y.not.be.inside.your.library.pat |
12b20 | 68 2e 20 54 6f 20 66 69 78 20 74 68 65 20 70 72 6f 62 6c 65 6d 2c 20 74 68 65 20 75 73 65 72 20 | h..To.fix.the.problem,.the.user. |
12b40 | 73 68 6f 75 6c 64 20 73 65 74 0a 20 20 20 20 20 65 78 70 6f 72 74 20 4c 44 5f 4c 49 42 52 41 52 | should.set......export.LD_LIBRAR |
12b60 | 59 5f 50 41 54 48 3d 24 4c 44 5f 4c 49 42 52 41 52 59 5f 50 41 54 48 3a 2f 75 73 72 2f 6c 6f 63 | Y_PATH=$LD_LIBRARY_PATH:/usr/loc |
12b80 | 61 6c 2f 6c 69 62 0a 20 20 20 69 66 20 79 6f 75 72 20 73 68 65 6c 6c 20 69 73 2c 20 65 2e 67 2e | al/lib....if.your.shell.is,.e.g. |
12ba0 | 2c 20 62 61 73 68 20 6f 72 0a 20 20 20 20 20 73 65 74 65 6e 76 20 4c 44 5f 4c 49 42 52 41 52 59 | ,.bash.or......setenv.LD_LIBRARY |
12bc0 | 5f 50 41 54 48 20 24 4c 44 5f 4c 49 42 52 41 52 59 5f 50 41 54 48 3a 2f 75 73 72 2f 6c 6f 63 61 | _PATH.$LD_LIBRARY_PATH:/usr/loca |
12be0 | 6c 2f 6c 69 62 0a 20 20 20 69 66 20 79 6f 75 72 20 73 68 65 6c 6c 20 69 73 2c 20 65 2e 67 2e 2c | l/lib....if.your.shell.is,.e.g., |
12c00 | 20 74 63 73 68 2e 20 41 64 64 20 74 68 65 20 6c 69 6e 65 20 74 6f 20 79 6f 75 72 20 2e 62 61 73 | .tcsh..Add.the.line.to.your..bas |
12c20 | 68 72 63 20 6f 72 0a 2e 74 63 73 68 72 63 20 28 6f 72 20 77 68 61 74 65 76 65 72 20 63 6f 6e 76 | hrc.or..tcshrc.(or.whatever.conv |
12c40 | 65 6e 69 65 6e 74 20 66 69 6c 65 29 20 74 6f 20 6d 61 6b 65 20 74 68 69 73 20 63 68 61 6e 67 65 | enient.file).to.make.this.change |
12c60 | 20 70 65 72 6d 61 6e 65 6e 74 2e 0a 41 6e 6f 74 68 65 72 20 73 6f 6c 75 74 69 6f 6e 20 69 73 20 | .permanent..Another.solution.is. |
12c80 | 74 6f 20 61 73 6b 20 50 6f 6c 79 4c 69 62 20 74 6f 20 69 6e 73 74 61 6c 6c 20 69 6e 20 74 68 65 | to.ask.PolyLib.to.install.in.the |
12ca0 | 20 73 74 61 6e 64 61 72 64 20 70 61 74 68 20 62 79 0a 75 73 69 6e 67 20 74 68 65 20 70 72 65 66 | .standard.path.by.using.the.pref |
12cc0 | 69 78 20 6f 70 74 69 6f 6e 20 6f 66 20 74 68 65 20 63 6f 6e 66 69 67 75 72 65 20 73 63 72 69 70 | ix.option.of.the.configure.scrip |
12ce0 | 74 3a 20 60 2e 2f 63 6f 6e 66 69 67 75 72 65 0a 2d 2d 70 72 65 66 69 78 3d 2f 75 73 72 27 2e 0a | t:.`./configure.--prefix=/usr'.. |
12d00 | 0a 20 20 20 43 4c 6f 6f 47 20 6d 61 6b 65 73 20 69 6e 74 65 6e 73 69 76 65 20 63 61 6c 6c 73 20 | ....CLooG.makes.intensive.calls. |
12d20 | 74 6f 20 70 6f 6c 79 68 65 64 72 61 6c 20 6f 70 65 72 61 74 69 6f 6e 73 2c 20 61 6e 64 20 50 6f | to.polyhedral.operations,.and.Po |
12d40 | 6c 79 4c 69 62 0a 66 75 6e 63 74 69 6f 6e 73 20 64 6f 20 74 68 65 20 6a 6f 62 2e 20 50 6f 6c 79 | lyLib.functions.do.the.job..Poly |
12d60 | 6c 69 62 20 69 73 20 61 20 66 72 65 65 20 6c 69 62 72 61 72 79 20 77 72 69 74 74 65 6e 20 69 6e | lib.is.a.free.library.written.in |
12d80 | 20 43 20 66 6f 72 20 74 68 65 0a 6d 61 6e 69 70 75 6c 61 74 69 6f 6e 20 6f 66 20 70 6f 6c 79 68 | .C.for.the.manipulation.of.polyh |
12da0 | 65 64 72 61 2e 20 54 68 65 20 6c 69 62 72 61 72 79 20 69 73 20 6f 70 65 72 61 74 69 6e 67 20 6f | edra..The.library.is.operating.o |
12dc0 | 6e 20 6f 62 6a 65 63 74 73 20 6c 69 6b 65 0a 76 65 63 74 6f 72 73 2c 20 6d 61 74 72 69 63 65 73 | n.objects.like.vectors,.matrices |
12de0 | 2c 20 6c 61 74 74 69 63 65 73 2c 20 70 6f 6c 79 68 65 64 72 61 2c 20 5a 2d 70 6f 6c 79 68 65 64 | ,.lattices,.polyhedra,.Z-polyhed |
12e00 | 72 61 2c 20 75 6e 69 6f 6e 73 20 6f 66 0a 70 6f 6c 79 68 65 64 72 61 20 61 6e 64 20 61 20 6c 6f | ra,.unions.of.polyhedra.and.a.lo |
12e20 | 74 20 6f 66 20 6f 74 68 65 72 20 69 6e 74 65 72 6d 65 64 69 61 72 79 20 73 74 72 75 63 74 75 72 | t.of.other.intermediary.structur |
12e40 | 65 73 2e 20 49 74 20 70 72 6f 76 69 64 65 73 0a 66 75 6e 63 74 69 6f 6e 73 20 66 6f 72 20 61 6c | es..It.provides.functions.for.al |
12e60 | 6c 20 74 68 65 20 69 6d 70 6f 72 74 61 6e 74 20 6f 70 65 72 61 74 69 6f 6e 73 20 6f 6e 20 74 68 | l.the.important.operations.on.th |
12e80 | 65 73 65 20 73 74 72 75 63 74 75 72 65 73 2e 0a 0a 1f 0a 46 69 6c 65 3a 20 63 6c 6f 6f 67 2e 69 | ese.structures.....File:.cloog.i |
12ea0 | 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 47 4d 50 20 4c 69 62 72 61 72 79 2c 20 20 50 72 65 76 3a 20 | nfo,..Node:.GMP.Library,..Prev:. |
12ec0 | 50 6f 6c 79 4c 69 62 2c 20 20 55 70 3a 20 52 65 71 75 69 72 65 6d 65 6e 74 73 0a 0a 34 2e 32 2e | PolyLib,..Up:.Requirements..4.2. |
12ee0 | 32 20 47 4d 50 20 4c 69 62 72 61 72 79 20 28 6f 70 74 69 6f 6e 61 6c 29 0a 2d 2d 2d 2d 2d 2d 2d | 2.GMP.Library.(optional).------- |
12f00 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 54 6f 20 62 65 20 61 62 6c | ---------------------..To.be.abl |
12f20 | 65 20 74 6f 20 64 65 61 6c 20 77 69 74 68 20 69 6e 73 61 6e 65 6c 79 20 6c 61 72 67 65 20 63 6f | e.to.deal.with.insanely.large.co |
12f40 | 65 66 66 69 63 69 65 6e 74 2c 20 74 68 65 20 75 73 65 72 20 77 69 6c 6c 20 6e 65 65 64 0a 74 6f | efficient,.the.user.will.need.to |
12f60 | 20 69 6e 73 74 61 6c 6c 20 74 68 65 20 47 4e 55 20 4d 75 6c 74 69 70 6c 65 20 50 72 65 63 69 73 | .install.the.GNU.Multiple.Precis |
12f80 | 69 6f 6e 20 4c 69 62 72 61 72 79 20 28 47 4d 50 20 66 6f 72 20 73 68 6f 72 74 29 20 76 65 72 73 | ion.Library.(GMP.for.short).vers |
12fa0 | 69 6f 6e 0a 34 2e 31 2e 34 20 6f 72 20 61 62 6f 76 65 2e 20 49 74 20 63 61 6e 20 62 65 20 66 72 | ion.4.1.4.or.above..It.can.be.fr |
12fc0 | 65 65 6c 79 20 64 6f 77 6e 6c 6f 61 64 65 64 20 66 72 6f 6d 0a 60 68 74 74 70 3a 2f 2f 77 77 77 | eely.downloaded.from.`http://www |
12fe0 | 2e 73 77 6f 78 2e 63 6f 6d 2f 67 6d 70 27 2e 20 20 54 68 65 20 75 73 65 72 20 63 61 6e 20 63 6f | .swox.com/gmp'...The.user.can.co |
13000 | 6d 70 69 6c 65 20 69 74 20 62 79 20 74 79 70 69 6e 67 20 74 68 65 0a 66 6f 6c 6c 6f 77 69 6e 67 | mpile.it.by.typing.the.following |
13020 | 20 63 6f 6d 6d 61 6e 64 73 20 6f 6e 20 74 68 65 20 47 4d 50 20 72 6f 6f 74 20 64 69 72 65 63 74 | .commands.on.the.GMP.root.direct |
13040 | 6f 72 79 3a 0a 0a 20 20 20 2a 20 60 2e 2f 63 6f 6e 66 69 67 75 72 65 27 0a 0a 20 20 20 2a 20 60 | ory:.....*.`./configure'.....*.` |
13060 | 6d 61 6b 65 27 0a 0a 20 20 20 2a 20 41 6e 64 20 61 73 20 72 6f 6f 74 3a 20 60 6d 61 6b 65 20 69 | make'.....*.And.as.root:.`make.i |
13080 | 6e 73 74 61 6c 6c 27 0a 0a 20 20 20 54 68 65 20 47 4d 50 20 64 65 66 61 75 6c 74 20 69 6e 73 74 | nstall'.....The.GMP.default.inst |
130a0 | 61 6c 6c 61 74 69 6f 6e 20 69 73 20 60 2f 75 73 72 2f 6c 6f 63 61 6c 27 2c 20 74 68 65 20 73 61 | allation.is.`/usr/local',.the.sa |
130c0 | 6d 65 20 6d 65 74 68 6f 64 20 74 6f 20 66 69 78 0a 61 20 6c 69 62 72 61 72 79 20 70 61 74 68 20 | me.method.to.fix.a.library.path. |
130e0 | 70 72 6f 62 6c 65 6d 20 61 70 70 6c 69 65 73 20 61 73 20 77 69 74 68 20 50 6f 6c 79 4c 69 62 20 | problem.applies.as.with.PolyLib. |
13100 | 28 2a 6e 6f 74 65 20 50 6f 6c 79 4c 69 62 3a 3a 29 2e 0a 0a 20 20 20 54 68 65 20 50 6f 6c 79 4c | (*note.PolyLib::)......The.PolyL |
13120 | 69 62 20 68 61 73 20 74 6f 20 62 65 20 62 75 69 6c 74 20 75 73 69 6e 67 20 74 68 65 20 47 4d 50 | ib.has.to.be.built.using.the.GMP |
13140 | 20 6c 69 62 72 61 72 79 20 62 79 20 73 70 65 63 69 66 79 69 6e 67 20 74 68 65 0a 6f 70 74 69 6f | .library.by.specifying.the.optio |
13160 | 6e 20 60 2d 2d 77 69 74 68 2d 6c 69 62 67 6d 70 3d 50 41 54 48 5f 54 4f 5f 47 4d 50 27 20 74 6f | n.`--with-libgmp=PATH_TO_GMP'.to |
13180 | 20 74 68 65 20 50 6f 6c 79 4c 69 62 20 63 6f 6e 66 69 67 75 72 65 20 73 63 72 69 70 74 0a 28 77 | .the.PolyLib.configure.script.(w |
131a0 | 68 65 72 65 20 60 50 41 54 48 5f 54 4f 5f 47 4d 50 27 20 69 73 20 60 2f 75 73 72 2f 6c 6f 63 61 | here.`PATH_TO_GMP'.is.`/usr/loca |
131c0 | 6c 27 20 69 66 20 79 6f 75 20 64 69 64 20 6e 6f 74 20 63 68 61 6e 67 65 20 74 68 65 20 47 4d 50 | l'.if.you.did.not.change.the.GMP |
131e0 | 0a 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 20 64 69 72 65 63 74 6f 72 79 29 2e 20 54 68 65 6e 20 79 | .installation.directory)..Then.y |
13200 | 6f 75 20 68 61 76 65 20 74 6f 20 73 65 74 20 74 68 65 20 63 6f 6e 76 65 6e 69 65 6e 74 20 43 4c | ou.have.to.set.the.convenient.CL |
13220 | 6f 6f 47 0a 63 6f 6e 66 69 67 75 72 65 20 73 63 72 69 70 74 20 6f 70 74 69 6f 6e 73 20 74 6f 20 | ooG.configure.script.options.to. |
13240 | 62 75 69 64 20 74 68 65 20 47 4d 50 20 76 65 72 73 69 6f 6e 20 28 2a 6e 6f 74 65 20 4f 70 74 69 | buid.the.GMP.version.(*note.Opti |
13260 | 6f 6e 61 6c 0a 46 65 61 74 75 72 65 73 3a 3a 29 2e 0a 0a 1f 0a 46 69 6c 65 3a 20 63 6c 6f 6f 67 | onal.Features::).....File:.cloog |
13280 | 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 42 61 73 69 63 20 49 6e 73 74 61 6c 6c 61 74 69 6f 6e | .info,..Node:.Basic.Installation |
132a0 | 2c 20 20 4e 65 78 74 3a 20 4f 70 74 69 6f 6e 61 6c 20 46 65 61 74 75 72 65 73 2c 20 20 50 72 65 | ,..Next:.Optional.Features,..Pre |
132c0 | 76 3a 20 52 65 71 75 69 72 65 6d 65 6e 74 73 2c 20 20 55 70 3a 20 49 6e 73 74 61 6c 6c 69 6e 67 | v:.Requirements,..Up:.Installing |
132e0 | 0a 0a 34 2e 33 20 43 4c 6f 6f 47 20 42 61 73 69 63 20 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 0a 3d | ..4.3.CLooG.Basic.Installation.= |
13300 | 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 0a 4f 6e 63 | ===========================..Onc |
13320 | 65 20 64 6f 77 6e 6c 6f 61 64 65 64 20 61 6e 64 20 75 6e 70 61 63 6b 65 64 20 28 65 2e 67 2e 20 | e.downloaded.and.unpacked.(e.g.. |
13340 | 75 73 69 6e 67 20 74 68 65 20 60 74 61 72 20 2d 7a 78 76 66 20 63 6c 6f 6f 67 2d 2e 74 61 72 2e | using.the.`tar.-zxvf.cloog-.tar. |
13360 | 67 7a 27 0a 63 6f 6d 6d 61 6e 64 29 2c 20 79 6f 75 20 63 61 6e 20 63 6f 6d 70 69 6c 65 20 43 4c | gz'.command),.you.can.compile.CL |
13380 | 6f 6f 47 20 62 79 20 74 79 70 69 6e 67 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 6f 6d 6d | ooG.by.typing.the.following.comm |
133a0 | 61 6e 64 73 20 6f 6e 20 74 68 65 0a 43 4c 6f 6f 47 27 73 20 72 6f 6f 74 20 64 69 72 65 63 74 6f | ands.on.the.CLooG's.root.directo |
133c0 | 72 79 3a 0a 0a 20 20 20 2a 20 60 2e 2f 63 6f 6e 66 69 67 75 72 65 27 0a 0a 20 20 20 2a 20 60 6d | ry:.....*.`./configure'.....*.`m |
133e0 | 61 6b 65 27 0a 0a 20 20 20 2a 20 41 6e 64 20 61 73 20 72 6f 6f 74 3a 20 60 6d 61 6b 65 20 69 6e | ake'.....*.And.as.root:.`make.in |
13400 | 73 74 61 6c 6c 27 0a 0a 20 20 20 44 65 70 65 6e 64 69 6e 67 20 6f 6e 20 74 68 65 20 6c 6f 63 61 | stall'.....Depending.on.the.loca |
13420 | 74 69 6f 6e 20 6f 66 20 74 68 65 20 50 6f 6c 79 4c 69 62 2c 20 79 6f 75 20 6d 61 79 20 6e 65 65 | tion.of.the.PolyLib,.you.may.nee |
13440 | 64 20 74 6f 20 73 65 74 20 74 68 65 0a 6f 70 74 69 6f 6e 20 60 2d 2d 77 69 74 68 2d 70 6f 6c 79 | d.to.set.the.option.`--with-poly |
13460 | 6c 69 62 27 20 6f 66 20 74 68 65 20 63 6f 6e 66 69 67 75 72 65 20 73 63 72 69 70 74 20 28 65 2e | lib'.of.the.configure.script.(e. |
13480 | 67 2e 20 60 2e 2f 63 6f 6e 66 69 67 75 72 65 0a 2d 2d 77 69 74 68 2d 70 6f 6c 79 6c 69 62 3d 2f | g..`./configure.--with-polylib=/ |
134a0 | 75 73 72 2f 6c 6f 63 61 6c 27 20 77 69 74 68 20 61 20 64 65 66 61 75 6c 74 20 50 6f 6c 79 4c 69 | usr/local'.with.a.default.PolyLi |
134c0 | 62 20 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 29 2e 0a 0a 20 20 20 54 68 65 20 70 72 6f 67 72 61 6d | b.installation)......The.program |
134e0 | 20 62 69 6e 61 72 69 65 73 20 61 6e 64 20 6f 62 6a 65 63 74 20 66 69 6c 65 73 20 63 61 6e 20 62 | .binaries.and.object.files.can.b |
13500 | 65 20 72 65 6d 6f 76 65 64 20 66 72 6f 6d 20 74 68 65 20 73 6f 75 72 63 65 0a 63 6f 64 65 20 64 | e.removed.from.the.source.code.d |
13520 | 69 72 65 63 74 6f 72 79 20 62 79 20 74 79 70 69 6e 67 20 60 6d 61 6b 65 20 63 6c 65 61 6e 27 2e | irectory.by.typing.`make.clean'. |
13540 | 20 54 6f 20 61 6c 73 6f 20 72 65 6d 6f 76 65 20 74 68 65 20 66 69 6c 65 73 20 74 68 61 74 0a 74 | .To.also.remove.the.files.that.t |
13560 | 68 65 20 60 63 6f 6e 66 69 67 75 72 65 27 20 73 63 72 69 70 74 20 63 72 65 61 74 65 64 20 28 73 | he.`configure'.script.created.(s |
13580 | 6f 20 79 6f 75 20 63 61 6e 20 63 6f 6d 70 69 6c 65 20 74 68 65 20 70 61 63 6b 61 67 65 20 66 6f | o.you.can.compile.the.package.fo |
135a0 | 72 20 61 0a 64 69 66 66 65 72 65 6e 74 20 6b 69 6e 64 20 6f 66 20 63 6f 6d 70 75 74 65 72 29 20 | r.a.different.kind.of.computer). |
135c0 | 74 79 70 65 20 60 6d 61 6b 65 20 64 69 73 74 63 6c 65 61 6e 27 2e 0a 0a 20 20 20 42 6f 74 68 20 | type.`make.distclean'......Both. |
135e0 | 74 68 65 20 43 4c 6f 6f 47 20 73 6f 66 74 77 61 72 65 20 61 6e 64 20 6c 69 62 72 61 72 79 20 68 | the.CLooG.software.and.library.h |
13600 | 61 76 65 20 62 65 65 6e 20 73 75 63 63 65 73 73 66 75 6c 6c 79 20 63 6f 6d 70 69 6c 65 64 0a 6f | ave.been.successfully.compiled.o |
13620 | 6e 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 73 79 73 74 65 6d 73 3a 0a 20 20 20 2a 20 50 43 | n.the.following.systems:....*.PC |
13640 | 27 73 20 75 6e 64 65 72 20 4c 69 6e 75 78 2c 20 77 69 74 68 20 74 68 65 20 60 67 63 63 27 20 63 | 's.under.Linux,.with.the.`gcc'.c |
13660 | 6f 6d 70 69 6c 65 72 2c 0a 0a 20 20 20 2a 20 50 43 27 73 20 75 6e 64 65 72 20 57 69 6e 64 6f 77 | ompiler,.....*.PC's.under.Window |
13680 | 73 20 28 43 79 67 77 69 6e 29 2c 20 77 69 74 68 20 74 68 65 20 60 67 63 63 27 20 63 6f 6d 70 69 | s.(Cygwin),.with.the.`gcc'.compi |
136a0 | 6c 65 72 2c 0a 0a 20 20 20 2a 20 53 70 61 72 63 20 61 6e 64 20 55 6c 74 72 61 53 70 61 72 63 20 | ler,.....*.Sparc.and.UltraSparc. |
136c0 | 53 74 61 74 69 6f 6e 73 2c 20 77 69 74 68 20 74 68 65 20 60 67 63 63 27 20 63 6f 6d 70 69 6c 65 | Stations,.with.the.`gcc'.compile |
136e0 | 72 2e 0a 0a 1f 0a 46 69 6c 65 3a 20 63 6c 6f 6f 67 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 4f | r.....File:.cloog.info,..Node:.O |
13700 | 70 74 69 6f 6e 61 6c 20 46 65 61 74 75 72 65 73 2c 20 20 4e 65 78 74 3a 20 55 6e 69 6e 73 74 61 | ptional.Features,..Next:.Uninsta |
13720 | 6c 6c 61 74 69 6f 6e 2c 20 20 50 72 65 76 3a 20 42 61 73 69 63 20 49 6e 73 74 61 6c 6c 61 74 69 | llation,..Prev:.Basic.Installati |
13740 | 6f 6e 2c 20 20 55 70 3a 20 49 6e 73 74 61 6c 6c 69 6e 67 0a 0a 34 2e 34 20 4f 70 74 69 6f 6e 61 | on,..Up:.Installing..4.4.Optiona |
13760 | 6c 20 46 65 61 74 75 72 65 73 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d | l.Features.===================== |
13780 | 0a 0a 54 68 65 20 60 63 6f 6e 66 69 67 75 72 65 27 20 73 68 65 6c 6c 20 73 63 72 69 70 74 20 61 | ..The.`configure'.shell.script.a |
137a0 | 74 74 65 6d 70 74 73 20 74 6f 20 67 75 65 73 73 20 63 6f 72 72 65 63 74 20 76 61 6c 75 65 73 20 | ttempts.to.guess.correct.values. |
137c0 | 66 6f 72 0a 76 61 72 69 6f 75 73 20 73 79 73 74 65 6d 2d 64 65 70 65 6e 64 65 6e 74 20 76 61 72 | for.various.system-dependent.var |
137e0 | 69 61 62 6c 65 73 20 61 6e 64 20 75 73 65 72 20 6f 70 74 69 6f 6e 73 20 75 73 65 64 20 64 75 72 | iables.and.user.options.used.dur |
13800 | 69 6e 67 0a 63 6f 6d 70 69 6c 61 74 69 6f 6e 2e 20 20 49 74 20 75 73 65 73 20 74 68 6f 73 65 20 | ing.compilation...It.uses.those. |
13820 | 76 61 6c 75 65 73 20 74 6f 20 63 72 65 61 74 65 20 74 68 65 20 60 4d 61 6b 65 66 69 6c 65 27 2e | values.to.create.the.`Makefile'. |
13840 | 20 56 61 72 69 6f 75 73 0a 75 73 65 72 20 6f 70 74 69 6f 6e 73 20 61 72 65 20 70 72 6f 76 69 64 | .Various.user.options.are.provid |
13860 | 65 64 20 62 79 20 74 68 65 20 43 4c 6f 6f 47 27 73 20 63 6f 6e 66 69 67 75 72 65 20 73 63 72 69 | ed.by.the.CLooG's.configure.scri |
13880 | 70 74 2e 20 54 68 65 79 20 61 72 65 0a 73 75 6d 6d 61 72 69 7a 65 64 20 69 6e 20 74 68 65 20 66 | pt..They.are.summarized.in.the.f |
138a0 | 6f 6c 6c 6f 77 69 6e 67 20 6c 69 73 74 20 61 6e 64 20 6d 61 79 20 62 65 20 70 72 69 6e 74 65 64 | ollowing.list.and.may.be.printed |
138c0 | 20 62 79 20 74 79 70 69 6e 67 0a 60 2e 2f 63 6f 6e 66 69 67 75 72 65 20 2d 2d 68 65 6c 70 27 20 | .by.typing.`./configure.--help'. |
138e0 | 69 6e 20 74 68 65 20 43 4c 6f 6f 47 20 74 6f 70 2d 6c 65 76 65 6c 20 64 69 72 65 63 74 6f 72 79 | in.the.CLooG.top-level.directory |
13900 | 2e 0a 0a 20 20 20 2a 20 42 79 20 64 65 66 61 75 6c 74 2c 20 74 68 65 20 69 6e 73 74 61 6c 6c 61 | ......*.By.default,.the.installa |
13920 | 74 69 6f 6e 20 64 69 72 65 63 74 6f 72 79 20 69 73 20 60 2f 75 73 72 2f 6c 6f 63 61 6c 27 3a 20 | tion.directory.is.`/usr/local':. |
13940 | 60 6d 61 6b 65 0a 20 20 20 20 20 69 6e 73 74 61 6c 6c 27 20 77 69 6c 6c 20 69 6e 73 74 61 6c 6c | `make......install'.will.install |
13960 | 20 74 68 65 20 70 61 63 6b 61 67 65 27 73 20 66 69 6c 65 73 20 69 6e 20 60 2f 75 73 72 2f 6c 6f | .the.package's.files.in.`/usr/lo |
13980 | 63 61 6c 2f 62 69 6e 27 2c 0a 20 20 20 20 20 60 2f 75 73 72 2f 6c 6f 63 61 6c 2f 6c 69 62 27 20 | cal/bin',......`/usr/local/lib'. |
139a0 | 61 6e 64 20 60 2f 75 73 72 2f 6c 6f 63 61 6c 2f 69 6e 63 6c 75 64 65 27 2e 20 20 54 68 65 20 75 | and.`/usr/local/include'...The.u |
139c0 | 73 65 72 20 63 61 6e 20 73 70 65 63 69 66 79 0a 20 20 20 20 20 61 6e 20 69 6e 73 74 61 6c 6c 61 | ser.can.specify......an.installa |
139e0 | 74 69 6f 6e 20 70 72 65 66 69 78 20 6f 74 68 65 72 20 74 68 61 6e 20 60 2f 75 73 72 2f 6c 6f 63 | tion.prefix.other.than.`/usr/loc |
13a00 | 61 6c 27 20 62 79 20 67 69 76 69 6e 67 0a 20 20 20 20 20 60 63 6f 6e 66 69 67 75 72 65 27 20 74 | al'.by.giving......`configure'.t |
13a20 | 68 65 20 6f 70 74 69 6f 6e 20 60 2d 2d 70 72 65 66 69 78 3d 50 41 54 48 27 2e 0a 0a 20 20 20 2a | he.option.`--prefix=PATH'......* |
13a40 | 20 42 79 20 64 65 66 61 75 6c 74 2c 20 60 63 6f 6e 66 69 67 75 72 65 27 20 77 69 6c 6c 20 6c 6f | .By.default,.`configure'.will.lo |
13a60 | 6f 6b 20 66 6f 72 20 74 68 65 20 50 6f 6c 79 4c 69 62 20 69 6e 20 73 74 61 6e 64 61 72 64 0a 20 | ok.for.the.PolyLib.in.standard.. |
13a80 | 20 20 20 20 6c 6f 63 61 74 69 6f 6e 73 2e 20 49 66 20 6e 65 63 65 73 73 61 72 79 2c 20 74 68 65 | ....locations..If.necessary,.the |
13aa0 | 20 75 73 65 72 20 63 61 6e 20 73 70 65 63 69 66 79 20 74 68 65 20 50 6f 6c 79 4c 69 62 20 70 61 | .user.can.specify.the.PolyLib.pa |
13ac0 | 74 68 20 62 79 0a 20 20 20 20 20 67 69 76 69 6e 67 20 60 63 6f 6e 66 69 67 75 72 65 27 20 74 68 | th.by......giving.`configure'.th |
13ae0 | 65 20 6f 70 74 69 6f 6e 20 60 2d 2d 77 69 74 68 2d 70 6f 6c 79 6c 69 62 3d 50 41 54 48 27 2e 0a | e.option.`--with-polylib=PATH'.. |
13b00 | 0a 20 20 20 2a 20 42 79 20 64 65 66 61 75 6c 74 2c 20 62 6f 74 68 20 43 4c 6f 6f 47 20 73 6f 66 | ....*.By.default,.both.CLooG.sof |
13b20 | 74 77 61 72 65 20 61 6e 64 20 6c 69 62 72 61 72 79 20 61 72 65 20 63 6f 6d 70 69 6c 65 64 20 61 | tware.and.library.are.compiled.a |
13b40 | 6e 64 0a 20 20 20 20 20 69 6e 73 74 61 6c 6c 65 64 2e 20 20 42 79 20 67 69 76 69 6e 67 20 20 60 | nd......installed...By.giving..` |
13b60 | 63 6f 6e 66 69 67 75 72 65 27 20 74 68 65 20 6f 70 74 69 6f 6e 20 60 2d 2d 77 69 74 68 6f 75 74 | configure'.the.option.`--without |
13b80 | 2d 63 6c 6f 6f 67 27 0a 20 20 20 20 20 74 68 65 20 75 73 65 72 20 64 69 73 61 62 6c 65 20 74 68 | -cloog'......the.user.disable.th |
13ba0 | 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 61 6e 64 20 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 20 6f | e.compilation.and.installation.o |
13bc0 | 66 20 74 68 65 20 43 4c 6f 6f 47 0a 20 20 20 20 20 73 6f 66 74 77 61 72 65 2e 20 20 42 79 20 67 | f.the.CLooG......software...By.g |
13be0 | 69 76 69 6e 67 20 60 63 6f 6e 66 69 67 75 72 65 27 20 74 68 65 20 6f 70 74 69 6f 6e 20 60 2d 2d | iving.`configure'.the.option.`-- |
13c00 | 77 69 74 68 6f 75 74 2d 6c 69 62 27 20 74 68 65 0a 20 20 20 20 20 75 73 65 72 20 64 69 73 61 62 | without-lib'.the......user.disab |
13c20 | 6c 65 20 74 68 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 61 6e 64 20 69 6e 73 74 61 6c 6c 61 74 | le.the.compilation.and.installat |
13c40 | 69 6f 6e 20 6f 66 20 74 68 65 20 43 4c 6f 6f 47 20 6c 69 62 72 61 72 79 2e 0a 0a 20 20 20 2a 20 | ion.of.the.CLooG.library......*. |
13c60 | 42 79 20 64 65 66 61 75 6c 74 2c 20 43 4c 6f 6f 47 20 69 73 20 62 75 69 6c 74 20 69 6e 20 36 34 | By.default,.CLooG.is.built.in.64 |
13c80 | 62 69 74 73 20 76 65 72 73 69 6f 6e 20 69 66 20 73 75 63 68 20 76 65 72 73 69 6f 6e 20 6f 66 20 | bits.version.if.such.version.of. |
13ca0 | 74 68 65 0a 20 20 20 20 20 50 6f 6c 79 4c 69 62 20 69 73 20 66 6f 75 6e 64 20 62 79 20 60 63 6f | the......PolyLib.is.found.by.`co |
13cc0 | 6e 66 69 67 75 72 65 27 2e 20 49 66 20 74 68 65 20 6f 6e 6c 79 20 65 78 69 73 74 69 6e 67 20 76 | nfigure'..If.the.only.existing.v |
13ce0 | 65 72 73 69 6f 6e 20 6f 66 0a 20 20 20 20 20 74 68 65 20 50 6f 6c 79 4c 69 62 20 69 73 20 74 68 | ersion.of......the.PolyLib.is.th |
13d00 | 65 20 33 32 62 69 74 73 20 6f 72 20 69 66 20 74 68 65 20 75 73 65 72 20 67 69 76 65 20 74 6f 20 | e.32bits.or.if.the.user.give.to. |
13d20 | 60 63 6f 6e 66 69 67 75 72 65 27 20 74 68 65 0a 20 20 20 20 20 6f 70 74 69 6f 6e 20 60 2d 2d 77 | `configure'.the......option.`--w |
13d40 | 69 74 68 2d 62 69 74 73 3d 33 32 27 2c 20 74 68 65 20 33 32 62 69 74 73 20 76 65 72 73 69 6f 6e | ith-bits=32',.the.32bits.version |
13d60 | 20 6f 66 20 43 4c 6f 6f 47 20 77 69 6c 6c 20 62 65 0a 20 20 20 20 20 63 6f 6d 70 69 6c 65 64 2e | .of.CLooG.will.be......compiled. |
13d80 | 20 49 6e 20 74 68 65 20 73 61 6d 65 20 77 61 79 2c 20 74 68 65 20 6f 70 74 69 6f 6e 20 60 2d 2d | .In.the.same.way,.the.option.`-- |
13da0 | 77 69 74 68 2d 62 69 74 73 3d 67 6d 70 27 20 68 61 76 65 20 74 6f 20 62 65 0a 20 20 20 20 20 75 | with-bits=gmp'.have.to.be......u |
13dc0 | 73 65 64 20 74 6f 20 62 75 69 6c 64 20 74 68 65 20 6d 75 6c 74 69 70 6c 65 20 70 72 65 63 69 73 | sed.to.build.the.multiple.precis |
13de0 | 69 6f 6e 20 76 65 72 73 69 6f 6e 2e 0a 0a 20 20 20 2a 20 42 79 20 64 65 66 61 75 6c 74 2c 20 60 | ion.version......*.By.default,.` |
13e00 | 63 6f 6e 66 69 67 75 72 65 27 20 77 69 6c 6c 20 6c 6f 6f 6b 20 66 6f 72 20 74 68 65 20 47 4d 50 | configure'.will.look.for.the.GMP |
13e20 | 20 6c 69 62 72 61 72 79 20 28 6e 65 63 65 73 73 61 72 79 0a 20 20 20 20 20 74 6f 20 62 75 69 6c | .library.(necessary......to.buil |
13e40 | 64 20 74 68 65 20 6d 75 6c 74 69 70 6c 65 20 70 72 65 63 69 73 69 6f 6e 20 76 65 72 73 69 6f 6e | d.the.multiple.precision.version |
13e60 | 29 20 69 6e 20 73 74 61 6e 64 61 72 64 20 6c 6f 63 61 74 69 6f 6e 73 2e 20 49 66 0a 20 20 20 20 | ).in.standard.locations..If..... |
13e80 | 20 6e 65 63 65 73 73 61 72 79 2c 20 74 68 65 20 75 73 65 72 20 63 61 6e 20 73 70 65 63 69 66 79 | .necessary,.the.user.can.specify |
13ea0 | 20 74 68 65 20 47 4d 50 20 70 61 74 68 20 62 79 20 67 69 76 69 6e 67 20 60 63 6f 6e 66 69 67 75 | .the.GMP.path.by.giving.`configu |
13ec0 | 72 65 27 0a 20 20 20 20 20 74 68 65 20 6f 70 74 69 6f 6e 20 60 2d 2d 77 69 74 68 2d 67 6d 70 3d | re'......the.option.`--with-gmp= |
13ee0 | 50 41 54 48 27 2e 0a 0a 1f 0a 46 69 6c 65 3a 20 63 6c 6f 6f 67 2e 69 6e 66 6f 2c 20 20 4e 6f 64 | PATH'.....File:.cloog.info,..Nod |
13f00 | 65 3a 20 55 6e 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 2c 20 20 50 72 65 76 3a 20 4f 70 74 69 6f 6e | e:.Uninstallation,..Prev:.Option |
13f20 | 61 6c 20 46 65 61 74 75 72 65 73 2c 20 20 55 70 3a 20 49 6e 73 74 61 6c 6c 69 6e 67 0a 0a 34 2e | al.Features,..Up:.Installing..4. |
13f40 | 35 20 55 6e 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d | 5.Uninstallation.=============== |
13f60 | 3d 3d 3d 0a 0a 54 68 65 20 75 73 65 72 20 63 61 6e 20 65 61 73 69 6c 79 20 72 65 6d 6f 76 65 20 | ===..The.user.can.easily.remove. |
13f80 | 74 68 65 20 43 4c 6f 6f 47 20 73 6f 66 74 77 61 72 65 20 61 6e 64 20 6c 69 62 72 61 72 79 20 66 | the.CLooG.software.and.library.f |
13fa0 | 72 6f 6d 20 68 69 73 0a 73 79 73 74 65 6d 20 62 79 20 74 79 70 69 6e 67 20 28 61 73 20 72 6f 6f | rom.his.system.by.typing.(as.roo |
13fc0 | 74 20 69 66 20 6e 65 63 65 73 73 61 72 79 29 20 66 72 6f 6d 20 74 68 65 20 43 4c 6f 6f 47 20 74 | t.if.necessary).from.the.CLooG.t |
13fe0 | 6f 70 2d 6c 65 76 65 6c 0a 64 69 72 65 63 74 6f 72 79 20 60 6d 61 6b 65 20 75 6e 69 6e 73 74 61 | op-level.directory.`make.uninsta |
14000 | 6c 6c 27 2e 0a 0a 1f 0a 46 69 6c 65 3a 20 63 6c 6f 6f 67 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a | ll'.....File:.cloog.info,..Node: |
14020 | 20 44 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 2c 20 20 4e 65 78 74 3a 20 52 65 66 65 72 65 6e 63 65 | .Documentation,..Next:.Reference |
14040 | 73 2c 20 20 50 72 65 76 3a 20 49 6e 73 74 61 6c 6c 69 6e 67 2c 20 20 55 70 3a 20 54 6f 70 0a 0a | s,..Prev:.Installing,..Up:.Top.. |
14060 | 35 20 44 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 0a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 0a | 5.Documentation.***************. |
14080 | 0a 54 68 65 20 43 4c 6f 6f 47 20 64 69 73 74 72 69 62 75 74 69 6f 6e 20 70 72 6f 76 69 64 65 73 | .The.CLooG.distribution.provides |
140a0 | 20 73 65 76 65 72 61 6c 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 73 6f 75 72 63 65 73 2e 20 | .several.documentation.sources.. |
140c0 | 46 69 72 73 74 2c 0a 74 68 65 20 73 6f 75 72 63 65 20 63 6f 64 65 20 69 74 73 65 6c 66 20 69 73 | First,.the.source.code.itself.is |
140e0 | 20 61 73 20 64 6f 63 75 6d 65 6e 74 65 64 20 61 73 20 70 6f 73 73 69 62 6c 65 2e 20 54 68 65 20 | .as.documented.as.possible..The. |
14100 | 63 6f 64 65 20 63 6f 6d 6d 65 6e 74 73 0a 75 73 65 20 61 20 44 6f 78 79 67 65 6e 2d 63 6f 6d 70 | code.comments.use.a.Doxygen-comp |
14120 | 61 74 69 62 6c 65 20 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 28 73 6f 6d 65 74 68 69 6e 67 20 73 | atible.presentation.(something.s |
14140 | 69 6d 69 6c 61 72 20 74 6f 20 77 68 61 74 0a 4a 61 76 61 44 6f 63 20 64 6f 65 73 20 66 6f 72 20 | imilar.to.what.JavaDoc.does.for. |
14160 | 4a 41 56 41 29 2e 20 54 68 65 20 75 73 65 72 20 6d 61 79 20 69 6e 73 74 61 6c 6c 20 44 6f 78 79 | JAVA)..The.user.may.install.Doxy |
14180 | 67 65 6e 20 28 73 65 65 0a 60 68 74 74 70 3a 2f 2f 77 77 77 2e 73 74 61 63 6b 2e 6e 6c 2f 7e 64 | gen.(see.`http://www.stack.nl/~d |
141a0 | 69 6d 69 74 72 69 2f 64 6f 78 79 67 65 6e 27 29 20 74 6f 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c | imitri/doxygen').to.automaticall |
141c0 | 79 20 67 65 6e 65 72 61 74 65 20 61 0a 74 65 63 68 6e 69 63 61 6c 20 64 6f 63 75 6d 65 6e 74 61 | y.generate.a.technical.documenta |
141e0 | 74 69 6f 6e 20 62 79 20 74 79 70 69 6e 67 20 60 6d 61 6b 65 20 64 6f 63 27 20 6f 72 20 60 64 6f | tion.by.typing.`make.doc'.or.`do |
14200 | 78 79 67 65 6e 0a 2e 2f 61 75 74 6f 63 6f 6e 66 2f 44 6f 78 79 66 69 6c 65 27 20 61 74 20 74 68 | xygen../autoconf/Doxyfile'.at.th |
14220 | 65 20 43 4c 6f 6f 47 20 74 6f 70 2d 6c 65 76 65 6c 20 64 69 72 65 63 74 6f 72 79 20 61 66 74 65 | e.CLooG.top-level.directory.afte |
14240 | 72 20 72 75 6e 6e 69 6e 67 20 74 68 65 0a 63 6f 6e 66 69 67 75 72 65 20 73 63 72 69 70 74 20 28 | r.running.the.configure.script.( |
14260 | 2a 6e 6f 74 65 20 49 6e 73 74 61 6c 6c 69 6e 67 3a 3a 29 2e 20 44 6f 78 79 67 65 6e 20 77 69 6c | *note.Installing::)..Doxygen.wil |
14280 | 6c 20 67 65 6e 65 72 61 74 65 0a 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 73 6f 75 72 63 65 73 | l.generate.documentation.sources |
142a0 | 20 28 69 6e 20 48 54 4d 4c 2c 20 4c 61 54 65 58 20 61 6e 64 20 6d 61 6e 29 20 69 6e 20 74 68 65 | .(in.HTML,.LaTeX.and.man).in.the |
142c0 | 20 60 64 6f 63 2f 73 6f 75 72 63 65 27 0a 64 69 72 65 63 74 6f 72 79 20 6f 66 20 74 68 65 20 43 | .`doc/source'.directory.of.the.C |
142e0 | 4c 6f 6f 47 20 64 69 73 74 72 69 62 75 74 69 6f 6e 2e 0a 0a 20 20 20 54 68 65 20 54 65 78 69 6e | LooG.distribution......The.Texin |
14300 | 66 6f 20 73 6f 75 72 63 65 73 20 6f 66 20 74 68 65 20 70 72 65 73 65 6e 74 20 64 6f 63 75 6d 65 | fo.sources.of.the.present.docume |
14320 | 6e 74 20 61 72 65 20 61 6c 73 6f 20 70 72 6f 76 69 64 65 64 20 69 6e 20 74 68 65 0a 60 64 6f 63 | nt.are.also.provided.in.the.`doc |
14340 | 27 20 64 69 72 65 63 74 6f 72 79 2e 20 59 6f 75 20 63 61 6e 20 62 75 69 6c 64 20 69 74 20 69 6e | '.directory..You.can.build.it.in |
14360 | 20 65 69 74 68 65 72 20 44 56 49 20 66 6f 72 6d 61 74 20 28 62 79 20 74 79 70 69 6e 67 0a 60 74 | .either.DVI.format.(by.typing.`t |
14380 | 65 78 69 32 64 76 69 20 63 6c 6f 6f 67 2e 74 65 78 69 27 29 20 6f 72 20 50 44 46 20 66 6f 72 6d | exi2dvi.cloog.texi').or.PDF.form |
143a0 | 61 74 20 28 62 79 20 74 79 70 69 6e 67 20 60 74 65 78 69 32 70 64 66 20 63 6c 6f 6f 67 2e 74 65 | at.(by.typing.`texi2pdf.cloog.te |
143c0 | 78 69 27 29 0a 6f 72 20 48 54 4d 4c 20 66 6f 72 6d 61 74 20 28 62 79 20 74 79 70 69 6e 67 20 60 | xi').or.HTML.format.(by.typing.` |
143e0 | 6d 61 6b 65 69 6e 66 6f 20 2d 2d 68 74 6d 6c 20 63 6c 6f 6f 67 2e 74 65 78 69 27 2c 20 75 73 69 | makeinfo.--html.cloog.texi',.usi |
14400 | 6e 67 0a 60 2d 2d 6e 6f 2d 73 70 6c 69 74 27 20 6f 70 74 69 6f 6e 20 74 6f 20 67 65 6e 65 72 61 | ng.`--no-split'.option.to.genera |
14420 | 74 65 20 61 20 73 69 6e 67 6c 65 20 48 54 4d 4c 20 66 69 6c 65 29 20 6f 72 20 69 6e 66 6f 20 66 | te.a.single.HTML.file).or.info.f |
14440 | 6f 72 6d 61 74 20 28 62 79 0a 74 79 70 69 6e 67 20 60 6d 61 6b 65 69 6e 66 6f 20 63 6c 6f 6f 67 | ormat.(by.typing.`makeinfo.cloog |
14460 | 2e 74 65 78 69 27 29 2e 0a 0a 1f 0a 46 69 6c 65 3a 20 63 6c 6f 6f 67 2e 69 6e 66 6f 2c 20 20 4e | .texi').....File:.cloog.info,..N |
14480 | 6f 64 65 3a 20 52 65 66 65 72 65 6e 63 65 73 2c 20 20 50 72 65 76 3a 20 44 6f 63 75 6d 65 6e 74 | ode:.References,..Prev:.Document |
144a0 | 61 74 69 6f 6e 2c 20 20 55 70 3a 20 54 6f 70 0a 0a 36 20 52 65 66 65 72 65 6e 63 65 73 0a 2a 2a | ation,..Up:.Top..6.References.** |
144c0 | 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 0a 0a 20 20 20 2a 20 5b 42 61 73 30 33 61 5d 20 43 2e 20 42 61 73 | **********.....*.[Bas03a].C..Bas |
144e0 | 74 6f 75 6c 2c 20 50 2e 20 46 65 61 75 74 72 69 65 72 2e 20 49 6d 70 72 6f 76 69 6e 67 20 64 61 | toul,.P..Feautrier..Improving.da |
14500 | 74 61 20 6c 6f 63 61 6c 69 74 79 20 62 79 0a 20 20 20 20 20 63 68 75 6e 6b 69 6e 67 2e 20 43 43 | ta.locality.by......chunking..CC |
14520 | 27 31 32 20 49 6e 74 65 72 6e 61 74 69 6f 6e 61 6c 20 43 6f 6e 66 65 72 65 6e 63 65 20 6f 6e 20 | '12.International.Conference.on. |
14540 | 43 6f 6d 70 69 6c 65 72 20 43 6f 6e 73 74 72 75 63 74 69 6f 6e 2c 0a 20 20 20 20 20 4c 4e 43 53 | Compiler.Construction,......LNCS |
14560 | 20 32 36 32 32 2c 20 70 61 67 65 73 20 33 32 30 2d 33 33 35 2c 20 57 61 72 73 61 77 2c 20 61 70 | .2622,.pages.320-335,.Warsaw,.ap |
14580 | 72 69 6c 20 32 30 30 33 2e 0a 0a 20 20 20 2a 20 5b 42 61 73 30 33 62 5d 20 43 2e 20 42 61 73 74 | ril.2003......*.[Bas03b].C..Bast |
145a0 | 6f 75 6c 2e 20 45 66 66 69 63 69 65 6e 74 20 63 6f 64 65 20 67 65 6e 65 72 61 74 69 6f 6e 20 66 | oul..Efficient.code.generation.f |
145c0 | 6f 72 20 61 75 74 6f 6d 61 74 69 63 0a 20 20 20 20 20 70 61 72 61 6c 6c 65 6c 69 7a 61 74 69 6f | or.automatic......parallelizatio |
145e0 | 6e 20 61 6e 64 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 2e 20 49 53 50 44 43 27 30 33 20 49 45 45 | n.and.optimization..ISPDC'03.IEE |
14600 | 45 20 49 6e 74 65 72 6e 61 74 69 6f 6e 61 6c 0a 20 20 20 20 20 53 79 6d 70 6f 73 69 75 6d 20 6f | E.International......Symposium.o |
14620 | 6e 20 50 61 72 61 6c 6c 65 6c 20 61 6e 64 20 44 69 73 74 72 69 62 75 74 65 64 20 43 6f 6d 70 75 | n.Parallel.and.Distributed.Compu |
14640 | 74 69 6e 67 2c 20 70 61 67 65 73 20 32 33 2d 33 30 2c 0a 20 20 20 20 20 4c 6a 75 62 6c 6a 61 6e | ting,.pages.23-30,......Ljubljan |
14660 | 61 2c 20 6f 63 74 6f 62 65 72 20 32 30 30 33 2e 0a 0a 20 20 20 2a 20 5b 42 61 73 30 34 5d 20 43 | a,.october.2003......*.[Bas04].C |
14680 | 2e 20 42 61 73 74 6f 75 6c 2e 20 43 6f 64 65 20 47 65 6e 65 72 61 74 69 6f 6e 20 69 6e 20 74 68 | ..Bastoul..Code.Generation.in.th |
146a0 | 65 20 50 6f 6c 79 68 65 64 72 61 6c 20 4d 6f 64 65 6c 20 49 73 0a 20 20 20 20 20 45 61 73 69 65 | e.Polyhedral.Model.Is......Easie |
146c0 | 72 20 54 68 61 6e 20 59 6f 75 20 54 68 69 6e 6b 2e 20 50 41 43 54 27 31 33 20 49 45 45 45 20 49 | r.Than.You.Think..PACT'13.IEEE.I |
146e0 | 6e 74 65 72 6e 61 74 69 6f 6e 61 6c 20 43 6f 6e 66 65 72 65 6e 63 65 20 6f 6e 0a 20 20 20 20 20 | nternational.Conference.on...... |
14700 | 50 61 72 61 6c 6c 65 6c 20 41 72 63 68 69 74 65 63 74 75 72 65 20 61 6e 64 20 43 6f 6d 70 69 6c | Parallel.Architecture.and.Compil |
14720 | 61 74 69 6f 6e 20 54 65 63 68 6e 69 71 75 65 73 2c 20 70 61 67 65 73 20 37 2d 31 36 2c 0a 20 20 | ation.Techniques,.pages.7-16,... |
14740 | 20 20 20 4a 75 61 6e 2d 6c 65 73 2d 50 69 6e 73 2c 20 73 65 70 74 65 6d 62 65 72 20 32 30 30 34 | ...Juan-les-Pins,.september.2004 |
14760 | 2e 0a 0a 20 20 20 2a 20 5b 46 65 61 39 32 5d 20 50 2e 20 46 65 61 75 74 72 69 65 72 20 53 6f 6d | ......*.[Fea92].P..Feautrier.Som |
14780 | 65 20 65 66 66 69 63 69 65 6e 74 20 73 6f 6c 75 74 69 6f 6e 73 20 74 6f 20 74 68 65 20 61 66 66 | e.efficient.solutions.to.the.aff |
147a0 | 69 6e 65 0a 20 20 20 20 20 73 63 68 65 64 75 6c 69 6e 67 20 70 72 6f 62 6c 65 6d 2c 20 70 61 72 | ine......scheduling.problem,.par |
147c0 | 74 20 49 49 3a 20 6d 75 6c 74 69 64 69 6d 65 6e 73 69 6f 6e 61 6c 20 74 69 6d 65 2e 20 20 49 6e | t.II:.multidimensional.time...In |
147e0 | 74 65 72 6e 61 74 69 6f 6e 61 6c 0a 20 20 20 20 20 4a 6f 75 72 6e 61 6c 20 6f 66 20 50 61 72 61 | ternational......Journal.of.Para |
14800 | 6c 6c 65 6c 20 50 72 6f 67 72 61 6d 6d 69 6e 67 2c 20 32 31 28 36 29 3a 33 38 39 2d 34 32 30 2c | llel.Programming,.21(6):389-420, |
14820 | 20 44 65 63 65 6d 62 65 72 20 31 39 39 32 2e 0a 0a 20 20 20 2a 20 5b 47 72 69 30 34 5d 20 4d 2e | .December.1992......*.[Gri04].M. |
14840 | 20 47 72 69 65 62 6c 2e 20 41 75 74 6f 6d 61 74 69 63 20 70 61 72 61 6c 6c 65 6c 69 7a 61 74 69 | .Griebl..Automatic.parallelizati |
14860 | 6f 6e 20 6f 66 20 6c 6f 6f 70 20 70 72 6f 67 72 61 6d 73 20 66 6f 72 0a 20 20 20 20 20 64 69 73 | on.of.loop.programs.for......dis |
14880 | 74 72 69 62 75 74 65 64 20 6d 65 6d 6f 72 79 20 61 72 63 68 69 74 65 63 74 75 72 65 73 2e 20 48 | tributed.memory.architectures..H |
148a0 | 61 62 69 6c 69 74 61 74 69 6f 6e 20 54 68 65 73 69 73 2e 20 46 61 63 75 6c 74 61 22 74 0a 20 20 | abilitation.Thesis..Faculta"t... |
148c0 | 20 20 20 66 75 22 72 20 4d 61 74 68 65 6d 61 74 69 6b 20 75 6e 64 20 49 6e 66 6f 72 6d 61 74 69 | ...fu"r.Mathematik.und.Informati |
148e0 | 6b 2c 20 55 6e 69 76 65 72 73 69 74 61 22 74 20 50 61 73 73 61 75 2c 20 32 30 30 34 2e 0a 20 20 | k,.Universita"t.Passau,.2004.... |
14900 | 20 20 20 5f 68 74 74 70 3a 2f 2f 77 77 77 2e 69 6e 66 6f 73 75 6e 2e 66 6d 69 2e 75 6e 69 2d 70 | ..._http://www.infosun.fmi.uni-p |
14920 | 61 73 73 61 75 2e 64 65 2f 63 6c 2f 6c 6f 6f 70 6f 2f 5f 0a 0a 20 20 20 2a 20 5b 51 75 69 30 30 | assau.de/cl/loopo/_.....*.[Qui00 |
14940 | 5d 20 46 2e 20 51 75 69 6c 6c 65 72 65 27 2c 20 53 2e 20 52 61 6a 6f 70 61 64 68 79 65 2c 20 61 | ].F..Quillere',.S..Rajopadhye,.a |
14960 | 6e 64 20 44 2e 20 57 69 6c 64 65 2e 20 20 47 65 6e 65 72 61 74 69 6f 6e 20 6f 66 0a 20 20 20 20 | nd.D..Wilde...Generation.of..... |
14980 | 20 65 66 66 69 63 69 65 6e 74 20 6e 65 73 74 65 64 20 6c 6f 6f 70 73 20 66 72 6f 6d 20 70 6f 6c | .efficient.nested.loops.from.pol |
149a0 | 79 68 65 64 72 61 2e 20 20 49 6e 74 65 72 6e 61 74 69 6f 6e 61 6c 20 4a 6f 75 72 6e 61 6c 20 6f | yhedra...International.Journal.o |
149c0 | 66 0a 20 20 20 20 20 50 61 72 61 6c 6c 65 6c 20 50 72 6f 67 72 61 6d 6d 69 6e 67 2c 20 32 38 28 | f......Parallel.Programming,.28( |
149e0 | 35 29 3a 34 36 39 2d 34 39 38 2c 20 6f 63 74 6f 62 65 72 20 32 30 30 30 2e 0a 0a 20 20 20 2a 20 | 5):469-498,.october.2000......*. |
14a00 | 5b 57 69 6c 39 33 5d 20 44 6f 72 61 6e 20 4b 2e 20 57 69 6c 64 65 2e 20 20 41 20 6c 69 62 72 61 | [Wil93].Doran.K..Wilde...A.libra |
14a20 | 72 79 20 66 6f 72 20 64 6f 69 6e 67 20 70 6f 6c 79 68 65 64 72 61 6c 20 6f 70 65 72 61 74 69 6f | ry.for.doing.polyhedral.operatio |
14a40 | 6e 73 2e 0a 20 20 20 20 20 54 65 63 68 6e 69 63 61 6c 20 52 65 70 6f 72 74 20 37 38 35 2c 20 49 | ns.......Technical.Report.785,.I |
14a60 | 52 49 53 41 2c 20 52 65 6e 6e 65 73 2c 20 46 72 61 6e 63 65 2c 20 31 39 39 33 2e 0a 0a 0a 0a 1f | RISA,.Rennes,.France,.1993...... |
14a80 | 0a 54 61 67 20 54 61 62 6c 65 3a 0a 4e 6f 64 65 3a 20 54 6f 70 7f 31 34 33 39 0a 4e 6f 64 65 3a | .Tag.Table:.Node:.Top.1439.Node: |
14aa0 | 20 49 6e 74 72 6f 64 75 63 74 69 6f 6e 7f 32 38 35 37 0a 4e 6f 64 65 3a 20 42 61 73 69 63 73 7f | .Introduction.2857.Node:.Basics. |
14ac0 | 35 32 38 33 0a 4e 6f 64 65 3a 20 53 63 61 74 74 65 72 69 6e 67 7f 37 39 36 31 0a 4e 6f 64 65 3a | 5283.Node:.Scattering.7961.Node: |
14ae0 | 20 43 4c 6f 6f 47 20 53 6f 66 74 77 61 72 65 7f 31 32 36 32 38 0a 4e 6f 64 65 3a 20 41 20 46 69 | .CLooG.Software.12628.Node:.A.Fi |
14b00 | 72 73 74 20 45 78 61 6d 70 6c 65 7f 31 32 38 38 39 0a 4e 6f 64 65 3a 20 57 72 69 74 69 6e 67 20 | rst.Example.12889.Node:.Writing. |
14b20 | 54 68 65 20 49 6e 70 75 74 20 46 69 6c 65 7f 31 35 38 30 35 0a 4e 6f 64 65 3a 20 44 6f 6d 61 69 | The.Input.File.15805.Node:.Domai |
14b40 | 6e 20 52 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 7f 32 30 30 38 34 0a 4e 6f 64 65 3a 20 53 63 61 | n.Representation.20084.Node:.Sca |
14b60 | 74 74 65 72 69 6e 67 20 52 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 7f 32 32 35 31 36 0a 4e 6f 64 | ttering.Representation.22516.Nod |
14b80 | 65 3a 20 43 61 6c 6c 69 6e 67 20 43 4c 6f 6f 47 7f 32 36 31 38 38 0a 4e 6f 64 65 3a 20 43 4c 6f | e:.Calling.CLooG.26188.Node:.CLo |
14ba0 | 6f 47 20 4f 70 74 69 6f 6e 73 7f 32 36 39 37 36 0a 4e 6f 64 65 3a 20 4c 61 73 74 20 44 65 70 74 | oG.Options.26976.Node:.Last.Dept |
14bc0 | 68 20 74 6f 20 4f 70 74 69 6d 69 7a 65 20 43 6f 6e 74 72 6f 6c 7f 32 37 34 35 30 0a 4e 6f 64 65 | h.to.Optimize.Control.27450.Node |
14be0 | 3a 20 46 69 72 73 74 20 44 65 70 74 68 20 74 6f 20 4f 70 74 69 6d 69 7a 65 20 43 6f 6e 74 72 6f | :.First.Depth.to.Optimize.Contro |
14c00 | 6c 7f 32 39 30 34 33 0a 4e 6f 64 65 3a 20 53 69 6d 70 6c 69 66 79 20 43 6f 6e 76 65 78 20 48 75 | l.29043.Node:.Simplify.Convex.Hu |
14c20 | 6c 6c 7f 33 30 31 32 38 0a 4e 6f 64 65 3a 20 4f 6e 63 65 20 54 69 6d 65 20 4c 6f 6f 70 20 45 6c | ll.30128.Node:.Once.Time.Loop.El |
14c40 | 69 6d 69 6e 61 74 69 6f 6e 7f 33 31 34 33 35 0a 4e 6f 64 65 3a 20 45 71 75 61 6c 69 74 79 20 53 | imination.31435.Node:.Equality.S |
14c60 | 70 72 65 61 64 69 6e 67 7f 33 32 30 32 34 0a 4e 6f 64 65 3a 20 43 6f 6e 73 74 61 6e 74 20 53 70 | preading.32024.Node:.Constant.Sp |
14c80 | 72 65 61 64 69 6e 67 7f 33 32 36 36 33 0a 4e 6f 64 65 3a 20 46 69 72 73 74 20 4c 65 76 65 6c 20 | reading.32663.Node:.First.Level. |
14ca0 | 66 6f 72 20 53 70 72 65 61 64 69 6e 67 7f 33 33 33 38 38 0a 4e 6f 64 65 3a 20 43 20 50 72 65 50 | for.Spreading.33388.Node:.C.PreP |
14cc0 | 72 6f 63 65 73 73 6f 72 20 46 72 69 65 6e 64 6c 79 7f 33 34 33 33 36 0a 4e 6f 64 65 3a 20 53 74 | rocessor.Friendly.34336.Node:.St |
14ce0 | 61 74 65 6d 65 6e 74 20 42 6c 6f 63 6b 7f 33 35 34 33 38 0a 4e 6f 64 65 3a 20 4c 6f 6f 70 20 53 | atement.Block.35438.Node:.Loop.S |
14d00 | 74 72 69 64 65 73 7f 33 36 32 30 39 0a 4e 6f 64 65 3a 20 43 6f 6d 70 69 6c 61 62 6c 65 20 43 6f | trides.36209.Node:.Compilable.Co |
14d20 | 64 65 7f 33 37 30 30 32 0a 4e 6f 64 65 3a 20 4f 75 74 70 75 74 7f 33 38 36 36 39 0a 4e 6f 64 65 | de.37002.Node:.Output.38669.Node |
14d40 | 3a 20 48 65 6c 70 7f 33 38 39 36 38 0a 4e 6f 64 65 3a 20 56 65 72 73 69 6f 6e 7f 33 39 31 37 35 | :.Help.38968.Node:.Version.39175 |
14d60 | 0a 4e 6f 64 65 3a 20 46 75 6c 6c 20 45 78 61 6d 70 6c 65 7f 33 39 33 39 35 0a 4e 6f 64 65 3a 20 | .Node:.Full.Example.39395.Node:. |
14d80 | 43 4c 6f 6f 47 20 4c 69 62 72 61 72 79 7f 34 34 34 33 37 0a 4e 6f 64 65 3a 20 43 4c 6f 6f 47 20 | CLooG.Library.44437.Node:.CLooG. |
14da0 | 44 61 74 61 20 53 74 72 75 63 74 75 72 65 73 7f 34 35 34 31 39 0a 4e 6f 64 65 3a 20 43 6c 6f 6f | Data.Structures.45419.Node:.Cloo |
14dc0 | 67 4d 61 74 72 69 78 7f 34 35 39 30 30 0a 4e 6f 64 65 3a 20 43 6c 6f 6f 67 44 6f 6d 61 69 6e 7f | gMatrix.45900.Node:.CloogDomain. |
14de0 | 34 38 31 37 30 0a 4e 6f 64 65 3a 20 43 6c 6f 6f 67 44 6f 6d 61 69 6e 4c 69 73 74 7f 35 30 30 36 | 48170.Node:.CloogDomainList.5006 |
14e00 | 31 0a 4e 6f 64 65 3a 20 43 6c 6f 6f 67 53 74 61 74 65 6d 65 6e 74 7f 35 30 34 36 38 0a 4e 6f 64 | 1.Node:.CloogStatement.50468.Nod |
14e20 | 65 3a 20 43 6c 6f 6f 67 42 6c 6f 63 6b 7f 35 31 34 32 39 0a 4e 6f 64 65 3a 20 43 6c 6f 6f 67 42 | e:.CloogBlock.51429.Node:.CloogB |
14e40 | 6c 6f 63 6b 4c 69 73 74 7f 35 32 36 30 34 0a 4e 6f 64 65 3a 20 43 6c 6f 6f 67 4c 6f 6f 70 7f 35 | lockList.52604.Node:.CloogLoop.5 |
14e60 | 32 39 39 35 0a 4e 6f 64 65 3a 20 43 6c 6f 6f 67 4e 61 6d 65 73 7f 35 34 31 39 37 0a 4e 6f 64 65 | 2995.Node:.CloogNames.54197.Node |
14e80 | 3a 20 43 6c 6f 6f 67 50 72 6f 67 72 61 6d 7f 35 35 35 38 36 0a 4e 6f 64 65 3a 20 43 6c 6f 6f 67 | :.CloogProgram.55586.Node:.Cloog |
14ea0 | 4f 70 74 69 6f 6e 73 7f 36 31 38 35 33 0a 4e 6f 64 65 3a 20 43 4c 6f 6f 47 20 46 75 6e 63 74 69 | Options.61853.Node:.CLooG.Functi |
14ec0 | 6f 6e 73 7f 36 33 35 30 32 0a 4e 6f 64 65 3a 20 63 6c 6f 6f 67 5f 70 72 6f 67 72 61 6d 5f 67 65 | ons.63502.Node:.cloog_program_ge |
14ee0 | 6e 65 72 61 74 65 7f 36 33 39 35 36 0a 4e 6f 64 65 3a 20 63 6c 6f 6f 67 5f 70 72 6f 67 72 61 6d | nerate.63956.Node:.cloog_program |
14f00 | 5f 70 70 72 69 6e 74 7f 36 37 35 33 37 0a 4e 6f 64 65 3a 20 63 6c 6f 6f 67 5f 70 72 6f 67 72 61 | _pprint.67537.Node:.cloog_progra |
14f20 | 6d 5f 73 63 61 74 74 65 72 7f 36 38 32 32 34 0a 4e 6f 64 65 3a 20 63 6c 6f 6f 67 5f 70 72 6f 67 | m_scatter.68224.Node:.cloog_prog |
14f40 | 72 61 6d 5f 72 65 61 64 7f 36 39 33 36 38 0a 4e 6f 64 65 3a 20 46 72 6f 6d 20 4d 61 74 72 69 63 | ram_read.69368.Node:.From.Matric |
14f60 | 65 73 20 74 6f 20 44 6f 6d 61 69 6e 73 20 61 6e 64 20 43 6f 6e 76 65 72 73 65 6c 79 7f 36 39 38 | es.to.Domains.and.Conversely.698 |
14f80 | 36 34 0a 4e 6f 64 65 3a 20 41 6c 6c 6f 63 61 74 69 6f 6e 20 61 6e 64 20 49 6e 69 74 69 61 6c 69 | 64.Node:.Allocation.and.Initiali |
14fa0 | 7a 61 74 69 6f 6e 20 46 75 6e 63 74 69 6f 6e 73 7f 37 30 36 38 34 0a 4e 6f 64 65 3a 20 4d 65 6d | zation.Functions.70684.Node:.Mem |
14fc0 | 6f 72 79 20 44 65 61 6c 6c 6f 63 61 74 69 6f 6e 20 46 75 6e 63 74 69 6f 6e 73 7f 37 31 37 36 37 | ory.Deallocation.Functions.71767 |
14fe0 | 0a 4e 6f 64 65 3a 20 50 72 69 6e 74 69 6e 67 20 46 75 6e 63 74 69 6f 6e 73 7f 37 32 36 32 32 0a | .Node:.Printing.Functions.72622. |
15000 | 4e 6f 64 65 3a 20 45 78 61 6d 70 6c 65 20 6f 66 20 4c 69 62 72 61 72 79 20 55 74 69 6c 69 7a 61 | Node:.Example.of.Library.Utiliza |
15020 | 74 69 6f 6e 7f 37 33 32 31 31 0a 4e 6f 64 65 3a 20 49 6e 73 74 61 6c 6c 69 6e 67 7f 37 34 35 33 | tion.73211.Node:.Installing.7453 |
15040 | 33 0a 4e 6f 64 65 3a 20 4c 69 63 65 6e 73 65 7f 37 34 37 36 38 0a 4e 6f 64 65 3a 20 52 65 71 75 | 3.Node:.License.74768.Node:.Requ |
15060 | 69 72 65 6d 65 6e 74 73 7f 37 35 36 32 37 0a 4e 6f 64 65 3a 20 50 6f 6c 79 4c 69 62 7f 37 35 38 | irements.75627.Node:.PolyLib.758 |
15080 | 30 31 0a 4e 6f 64 65 3a 20 47 4d 50 20 4c 69 62 72 61 72 79 7f 37 37 34 35 37 0a 4e 6f 64 65 3a | 01.Node:.GMP.Library.77457.Node: |
150a0 | 20 42 61 73 69 63 20 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 7f 37 38 34 35 31 0a 4e 6f 64 65 3a 20 | .Basic.Installation.78451.Node:. |
150c0 | 4f 70 74 69 6f 6e 61 6c 20 46 65 61 74 75 72 65 73 7f 37 39 35 38 38 0a 4e 6f 64 65 3a 20 55 6e | Optional.Features.79588.Node:.Un |
150e0 | 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 7f 38 31 36 34 30 0a 4e 6f 64 65 3a 20 44 6f 63 75 6d 65 6e | installation.81640.Node:.Documen |
15100 | 74 61 74 69 6f 6e 7f 38 31 39 32 36 0a 4e 6f 64 65 3a 20 52 65 66 65 72 65 6e 63 65 73 7f 38 33 | tation.81926.Node:.References.83 |
15120 | 30 35 30 0a 52 65 66 3a 20 42 61 73 30 33 61 7f 38 33 31 35 33 0a 52 65 66 3a 20 42 61 73 30 33 | 050.Ref:.Bas03a.83153.Ref:.Bas03 |
15140 | 62 7f 38 33 33 34 34 0a 52 65 66 3a 20 42 61 73 30 34 7f 38 33 35 37 35 0a 52 65 66 3a 20 46 65 | b.83344.Ref:.Bas04.83575.Ref:.Fe |
15160 | 61 39 32 7f 38 33 38 31 36 0a 52 65 66 3a 20 47 72 69 30 34 7f 38 34 30 32 32 0a 52 65 66 3a 20 | a92.83816.Ref:.Gri04.84022.Ref:. |
15180 | 51 75 69 30 30 7f 38 34 32 38 32 0a 52 65 66 3a 20 57 69 6c 39 33 7f 38 34 34 38 30 0a 1f 0a 45 | Qui00.84282.Ref:.Wil93.84480...E |
151a0 | 6e 64 20 54 61 67 20 54 61 62 6c 65 0a | nd.Tag.Table. |