summaryrefslogtreecommitdiffstats
path: root/polly/lib/CodeGen/RuntimeDebugBuilder.cpp
Commit message (Collapse)AuthorAgeFilesLines
* [IR] Include target specific intrinsic headersHeejin Ahn2019-12-121-1/+1
| | | | After D71320, target-specific intrinsic headers should be included.
* Apply include-what-you-use #include removal suggestions. NFC.Michael Kruse2019-03-281-1/+0
| | | | | | | | | | | | This removes unused includes (and forward declarations) as suggested by include-what-you-use. If a transitive include of a removed include is required to compile a file, I added the required header (or forward declaration if suggested by include-what-you-use). This should reduce compilation time and reduce the number of iterative recompilations when a header was changed. llvm-svn: 357209
* Update the file headers across all of the LLVM projects in the monorepoChandler Carruth2019-01-191-4/+3
| | | | | | | | | | | | | | | | | to reflect the new license. We understand that people may be surprised that we're moving the header entirely to discuss the new license. We checked this carefully with the Foundation's lawyer and we believe this is the correct approach. Essentially, all code in the project is now made available by the LLVM project under our new license, so you will see that the license headers include that license only. Some of our contributors have contributed code under our old license, and accordingly, we have retained a copy of our old license notice in the top-level files in each project and repository. llvm-svn: 351636
* [CodeGen] Print executed statement instances at runtime.Michael Kruse2018-04-251-0/+13
| | | | | | | | | | | | | Add the options -polly-codegen-trace-stmts and -polly-codegen-trace-scalars. When enabled, adds a call to the beginning of every generated statement that prints the executed statement instance. With -polly-codegen-trace-scalars, it also prints the value of all scalars that are used in the statement, and PHIs defined in the beginning of the statement. Differential Revision: https://reviews.llvm.org/D45743 llvm-svn: 330864
* [RuntimeDebugBuilder] Do not break for 64 bit integersTobias Grosser2018-04-191-3/+6
| | | | | | | | | In r330292 this assert was turned incorrectly into an unreachable, but the correct behavior (thanks Michael) is to assert for anything that is not 64 bit, but falltrough for 64 bit. I document this in the source code. llvm-svn: 330309
* [RuntimeDebugBuilder] Turn assert into an unreachableTobias Grosser2018-04-181-2/+1
| | | | llvm-svn: 330289
* Update for alloca construction changesMatt Arsenault2017-04-111-1/+3
| | | | llvm-svn: 299905
* Update for llvm r274769Justin Bogner2016-07-071-6/+6
| | | | llvm-svn: 274777
* polly/ADT: Remove implicit ilist iterator conversions, NFCDuncan P. N. Exon Smith2015-11-061-1/+1
| | | | | | | | | | | | | Remove all the implicit ilist iterator conversions from polly, in preparation for making them illegal in ADT. There was one oddity I came across: at line 95 of lib/CodeGen/LoopGenerators.cpp, there was a post-increment `Builder.GetInsertPoint()++`. Since it was a no-op, I removed it, but I admit I wonder if it might be a bug (both before and after this change)? Perhaps it should be a pre-increment? llvm-svn: 252357
* RunTimeDebugBuilder: Allocate memory _after_ knowing how much is neededTobias Grosser2015-11-051-7/+7
| | | | | | | This fixes a memory corruption issue, where we accessed more memory than actually allocated. llvm-svn: 252197
* Add option -polly-codegen-add-debug-printingTobias Grosser2015-09-061-31/+78
| | | | | | | | | | | | | When this option is enabled, Polly will emit printf calls for each scalar load/and store which dump the scalar value loaded/stored at run time. This patch also refactors the RuntimeDebugBuilder to use variadic templates when generating CPU printfs. As result, it now becomes easier to print strings that consist of a set of arguments. Also, as a single printf call is emitted, it is more likely for such strings to be emitted atomically if executed multi-threaded. llvm-svn: 246941
* RuntimeDebugPrinter: Simplify code [NFC]Tobias Grosser2015-09-061-12/+8
| | | | llvm-svn: 246940
* GPURuntimeDebugPrinter: Printer pointer values (except if they are strings)Tobias Grosser2015-07-171-7/+12
| | | | | | | Only pointer values in constant address space are assumed to be strings. For all other pointers their address is printed. llvm-svn: 242524
* Print thread-identifiers in GPU debug outputTobias Grosser2015-07-061-1/+46
| | | | | | This helps us to understand which thread prints which information. llvm-svn: 241452
* Fix the clang -Werror build (-Wbraced-scalar-init)David Blaikie2015-06-191-1/+1
| | | | llvm-svn: 240172
* Add NVIDIA vprintf printing to RuntimeDebugBuilderTobias Grosser2015-06-191-0/+101
| | | | | | 2nd try, this time with the corresponding LLVM IRBuilder changes in place. llvm-svn: 240119
* Revert "Add NVIDIA vprintf printing to RuntimeDebugBuilder"Tobias Grosser2015-06-081-101/+0
| | | | | | | This reverts commit 239219 which requires some LLVM changes I forgot to commit. Reported-by: Marshall Clow llvm-svn: 239306
* Add NVIDIA vprintf printing to RuntimeDebugBuilderTobias Grosser2015-06-061-0/+101
| | | | llvm-svn: 239219
* Adapt to IRBuilder::CreateCall interface changeTobias Grosser2015-05-191-1/+1
| | | | | | | The IRBuilder::CreateCall interface was changed in r237624 and now requires an initializer list. llvm-svn: 237666
* Sort include directivesTobias Grosser2015-05-091-1/+0
| | | | | | | | | | Upcoming revisions of isl require us to include header files explicitly, which have previously been already transitively included. Before we add them, we sort the existing includes. Thanks to Chandler for sort_includes.py. A simple, but very convenient script. llvm-svn: 236930
* Use argument type directly from fflush if available in translation unitTobias Grosser2014-11-041-1/+7
| | | | | | | | | | | | | | | When our RuntimeDebugBuilder calles fflush(NULL) to flush all output streams, it is important that the types we use in the call match the ones used in a declaration of fflush possible already available in the translation unit. As we just pass on a NULL pointer, the type of the pointer value does not really matter. However, as LLVM complains in case of mismatched types, we make sure to create a NULL pointer of identical type. No test case, as RuntimeDebugBuilder is not permanently used in Polly. Calls to it are until now only used to add informative output during debugging sessions. llvm-svn: 221251
* [Refactor] Expose the runtime debug builderJohannes Doerfert2014-07-241-0/+74
llvm-svn: 213908
OpenPOWER on IntegriCloud