Commit Graph

52 Commits

Author SHA1 Message Date
Michael Kruse 9b67e569c6 [doc] Overhaul doc on preparing IR for processing by Polly.
The previously documented method did not work (anymore).

Suggested-by: Philip Pfaffe <philip.pfaffe@gmail.com>
llvm-svn: 329446
2018-04-06 19:24:18 +00:00
Hans Wennborg e525b18620 Docs, release notes: update version to 7.0.0
llvm-svn: 321731
2018-01-03 15:54:54 +00:00
Siddharth Bhat 6cb10168f4 [Docs] Replace 0-byte incorrect GEMM_double image with the one from www/images
llvm-svn: 314423
2017-09-28 15:31:24 +00:00
Siddharth Bhat 9859707189 [Docs] fix rendering of alpha and beta
llvm-svn: 314422
2017-09-28 15:31:20 +00:00
Siddharth Bhat 99d3567b0d [Docs] Add a performance document.
Summary:
Add a document which describes:

- GEMM performance comparison.
- An experiment that measures the compile time impact
  of enabling Polly when compiling LLVM+Clang+Polly.

Contributed-by: Theodoros Theodoridis<theodoros.theodoridis@inf.ethz.ch>
Differential Revision: https://reviews.llvm.org/D38330

llvm-svn: 314419
2017-09-28 15:10:22 +00:00
Hans Wennborg ce99589225 Tiny docs fix
llvm-svn: 309300
2017-07-27 18:14:00 +00:00
Eli Friedman 84c73fd9fc [docs] Minor formatting fixes.
Patch by Tarun Rajendran.

llvm-svn: 308505
2017-07-19 18:18:37 +00:00
Hans Wennborg 5a1606d562 Clear release notes for 6.0.0
llvm-svn: 308477
2017-07-19 14:11:00 +00:00
Hans Wennborg d3ae835c9e Bump docs version to 6.0
llvm-svn: 308464
2017-07-19 13:48:55 +00:00
Tobias Grosser 5c88f00765 [Polly][docs][Release Notes] Adding Information about Remarks to Release Notes and Documentation
Summary: Based off of D35399

Reviewers: pollydev, llvm-commits, bollu, grosser

Reviewed By: grosser

Tags: #polly

Contributed-by: Tarun Ranjendran

Differential Revision: https://reviews.llvm.org/D35596

llvm-svn: 308403
2017-07-19 01:16:55 +00:00
Tobias Grosser c016d2d02a [doc] Add Davide's links regarding automated bisecting
llvm-svn: 305634
2017-06-17 08:44:12 +00:00
Tobias Grosser 3addd89dd0 Add information about bisecting
llvm-svn: 305633
2017-06-17 07:45:44 +00:00
Siddharth Bhat c705003275 [Docs] Add a catch-all file to document workflow & tricks.
- Write about `bugpoint` and `git-svn` for now.

Differential Revision: https://reviews.llvm.org/D34147

llvm-svn: 305464
2017-06-15 12:43:12 +00:00
Tobias Grosser a710dcfb6a [www] Add missing '.' at the end of the sentence
llvm-svn: 305336
2017-06-13 23:09:54 +00:00
Tobias Grosser 0fea84e5b9 [www] Add the new AOSP buildbot to release notes
llvm-svn: 305334
2017-06-13 23:09:09 +00:00
Tobias Grosser 58822e8441 Update information on isl C++ bindings in Polly release notes
llvm-svn: 304068
2017-05-27 11:01:01 +00:00
Siddharth Bhat c56a355a35 [Docs] Fix exception name being caught in case ReadTheDocs does not exist.
The exception is `ImportError`, not `ModuleNotFoundError`.

llvm-svn: 303982
2017-05-26 12:56:35 +00:00
Tobias Grosser 6e770813c9 Drop newline in docs builder to see if Polly docs are updated
llvm-svn: 303839
2017-05-25 05:38:05 +00:00
Tobias Grosser 0bb785fc62 Add new C++ bindings to release notes
llvm-svn: 303724
2017-05-24 06:46:09 +00:00
Tobias Grosser 7eacc04836 Update version number in Polly release notes
llvm-svn: 303723
2017-05-24 06:46:06 +00:00
Siddharth Bhat 68ae83e68c [Docs] Use ReadTheDocs theme if available.
Use ReadTheDocs theme for Sphinx if available since it is well
maintained and used by readthedocs.org.

Differential Revision: https://reviews.llvm.org/D33387

llvm-svn: 303550
2017-05-22 13:36:15 +00:00
Siddharth Bhat b2f754e39f [Docs] Fix Sphinx documentation in CMake check.
Summary:
- `include(AddSphinxTarget)` needs to occur before checking `SPHINX_FOUND`.
- `docs-polly-html` and `docs-polly-man` are now usable again.
- Perhaps we should build docs in the CI as well?

Differential Revision: https://reviews.llvm.org/D33386

llvm-svn: 303549
2017-05-22 13:16:02 +00:00
Tobias Grosser 30a02088c0 Porting the example illustrating Polly from HTML to reStructuredText
http://polly.llvm.org/example_manual_matmul.html which illustrates individual
passes of Polly, has been ported to reStructuredText and necessary changes have
been made to the configuration files used by SPHINX to include the new source as
a part of the documentation.

Contributed-by: Singapuram Sanjay Srivallabh <singapuram.sanjay@gmail.com>

Differential Revision: https://reviews.llvm.org/D25163

llvm-svn: 294735
2017-02-10 11:46:57 +00:00
Tobias Grosser 7f8da87c34 docs: Add source of LLVM pass order illustration
llvm-svn: 292199
2017-01-17 06:16:09 +00:00
Hans Wennborg d5a5d72382 Clear the release notes for 5.0.0
llvm-svn: 291852
2017-01-12 22:47:01 +00:00
Tobias Grosser 0a828aa000 docs: Remove reference to PoCC
Since several releases we do not ship any more with PoCC.

llvm-svn: 269809
2016-05-17 19:44:16 +00:00
Tobias Grosser 35b544adc5 docs: Do not suggest the user to ignore aliasing
Since a long time Polly can automatically generate run-time alias checks.

llvm-svn: 269806
2016-05-17 19:42:19 +00:00
Tobias Grosser 97afc45b08 docs: Fix code-block to avoid sphinx error
llvm-svn: 269763
2016-05-17 13:41:00 +00:00
Tobias Grosser c4a80160b0 doc: A source code with Polly does not use a separate module (by default)
llvm-svn: 268034
2016-04-29 12:35:46 +00:00
Tobias Grosser 77e2128580 docs: Fix section header committed in r264575
Ensure the length of the header underline matches the length of the header.
This prevents SPHINX from erroring on this file and consequently not updating
the documentation.

Also, make this its own point not belonging to the 'increased applicability'
section.

llvm-svn: 264592
2016-03-28 17:00:14 +00:00
Hongbin Zheng 52ae58259d Add fine-grain dependences analysis to release notes.
Differential Revision: http://reviews.llvm.org/D17905

llvm-svn: 264575
2016-03-28 12:41:49 +00:00
Tobias Grosser e34aa7f482 Add title above the release notes
llvm-svn: 264448
2016-03-25 19:23:54 +00:00
Tobias Grosser 7a1e66b98a docs: Show two levels of content in index:
llvm-svn: 264447
2016-03-25 19:23:52 +00:00
Tobias Grosser 054ca24be7 docs: Describe Polly in the LLVM pass pipeline
llvm-svn: 264446
2016-03-25 19:23:44 +00:00
Tobias Grosser ddca355fe3 docs: Clearify that our release note describe the upcoming release of Polly
llvm-svn: 264406
2016-03-25 14:22:53 +00:00
Tobias Grosser 563c57b2e7 docs: Add links to the old documentation
llvm-svn: 264404
2016-03-25 14:18:42 +00:00
Tobias Grosser e16b8df605 Center picture
llvm-svn: 264402
2016-03-25 14:09:40 +00:00
Tobias Grosser 063ca0fc50 docs: Add architecture diagram
llvm-svn: 264400
2016-03-25 13:44:30 +00:00
Johannes Doerfert 9ea44aee64 [DOCS] Exclude python and shell scripts
llvm-svn: 264273
2016-03-24 13:21:12 +00:00
Tobias Grosser 45a8534893 doxygen: Also show private members
llvm-svn: 262859
2016-03-07 21:38:19 +00:00
Tobias Grosser af97a282b9 Test documentation rebuild
llvm-svn: 262850
2016-03-07 20:44:20 +00:00
Tobias Grosser 4e442d75e5 docs: Fix some spelling mistakes
llvm-svn: 262647
2016-03-03 19:48:30 +00:00
Johannes Doerfert 0a21113a52 [DOC] Add documentation for the supported call instructions
llvm-svn: 262608
2016-03-03 11:33:49 +00:00
Johannes Doerfert d1be3b05bb [DOC] Add more documentation about the different element type support
llvm-svn: 262607
2016-03-03 11:33:30 +00:00
Tobias Grosser b4d54d7ccd docs: Drop modindex from sphinx
For an unknown reason modindex is not be built correctly by sphinx. Take it
out of the index until we can build it correctly.

llvm-svn: 262588
2016-03-03 07:01:00 +00:00
Tobias Grosser d840fc7277 Support accesses with differently sized types to the same array
This allows code such as:

void multiple_types(char *Short, char *Float, char *Double) {
  for (long i = 0; i < 100; i++) {
    Short[i] = *(short *)&Short[2 * i];
    Float[i] = *(float *)&Float[4 * i];
    Double[i] = *(double *)&Double[8 * i];
  }
}

To model such code we use as canonical element type of the modeled array the
smallest element type of all original array accesses, if type allocation sizes
are multiples of each other. Otherwise, we use a newly created iN type, where N
is the gcd of the allocation size of the types used in the accesses to this
array. Accesses with types larger as the canonical element type are modeled as
multiple accesses with the smaller type.

For example the second load access is modeled as:

  { Stmt_bb2[i0] -> MemRef_Float[o0] : 4i0 <= o0 <= 3 + 4i0 }

To support code-generating these memory accesses, we introduce a new method
getAccessAddressFunction that assigns each statement instance a single memory
location, the address we load from/store to. Currently we obtain this address by
taking the lexmin of the access function. We may consider keeping track of the
memory location more explicitly in the future.

We currently do _not_ handle multi-dimensional arrays and also keep the
restriction of not supporting accesses where the offset expression is not a
multiple of the access element type size. This patch adds tests that ensure
we correctly invalidate a scop in case these accesses are found. Both types of
accesses can be handled using the very same model, but are left to be added in
the future.

We also move the initialization of the scop-context into the constructor to
ensure it is already available when invalidating the scop.

Finally, we add this as a new item to the 2.9 release notes

Reviewers: jdoerfert, Meinersbur

Differential Revision: http://reviews.llvm.org/D16878

llvm-svn: 259784
2016-02-04 13:18:42 +00:00
Tobias Grosser a91684d554 Add 3.9 release notes document
llvm-svn: 259768
2016-02-04 08:10:29 +00:00
Tobias Grosser 719f843e67 Add 'Using Polly with Clang' to Spinx
llvm-svn: 259767
2016-02-04 07:45:32 +00:00
Tobias Grosser d7ccafe35f Add Sphinx configuration
This just adds the basic configuration with an empty index/welcome page

llvm-svn: 259765
2016-02-04 07:27:57 +00:00
Tobias Grosser b6948c1289 Add basic doxygen infrastructure for Polly
llvm-svn: 259764
2016-02-04 07:16:36 +00:00