summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Remove "const" from the MachineFunction reference in VLIWPacketizerListKrzysztof Parzyszek2015-06-221-1/+1
| | | | llvm-svn: 240317
* docs: Update allowed values for LLVM_USE_SANITIZERJustin Bogner2015-06-221-2/+2
| | | | | | | "Thread" and combinations of "Address" and "Undefined" have been accepted for a while now. llvm-svn: 240316
* Make CMake generate isl/stdint.hMichael Kruse2015-06-221-0/+1
| | | | | | | | | | | | ISL's ./configure examines the system for the stdint.h to include and creates a header file that points to it. On C99-compatible system #include <stdint.h> is always valid such there no need for system introspection. This should unbreak the build bots. llvm-svn: 240315
* test: Set lit features appropriately when using asan and ubsan togetherJustin Bogner2015-06-221-4/+3
| | | | | | | | | The asan/not_asan and ubsan/not_ubsan features weren't being set correctly when LLVM_USE_SANITIZER is set to 'Address;Undefined'. Fix this by doing substring instead of exact matching. Also simplify the msan check for consistency. llvm-svn: 240314
* [modules] Include merged definition information in AST dumps.Richard Smith2015-06-221-0/+4
| | | | llvm-svn: 240313
* Handle zero-element ArrayRefs in CUDA run-time debug builderTobias Grosser2015-06-221-1/+3
| | | | llvm-svn: 240312
* [x86] set default reciprocal (division and square root) codegen to match GCCSanjay Patel2015-06-223-60/+63
| | | | | | | | | | | | | | | | D8982 ( checked in at http://reviews.llvm.org/rL239001 ) added command-line options to allow reciprocal estimate instructions to be used in place of divisions and square roots. This patch changes the default settings for x86 targets to allow that recip codegen (except for scalar division because that breaks too much code) when using -ffast-math or its equivalent. This matches GCC behavior for this kind of codegen. Differential Revision: http://reviews.llvm.org/D10396 llvm-svn: 240310
* Fix MSVC build (again!).Sanjoy Das2015-06-221-3/+2
| | | | | | | Remove two `typename`s that I should have removed in r240307 but left in by mistake. llvm-svn: 240309
* Do not pass -allow-shlib-undefined to the Solaris linker.Rafael Espindola2015-06-221-1/+1
| | | | | | Patch by Xan López. llvm-svn: 240308
* Fix MSVC build.Sanjoy Das2015-06-221-4/+3
| | | | | | | | I had some unnecessary `typename`s left in after addressing review. This compiled successfully with clang++ but MSVC reported an error. Fix the build error by removing the redundant `typename`s. llvm-svn: 240307
* Replace repository version of ISL by 'make dist' outputMichael Kruse2015-06-22106-26716/+49023
| | | | | | | | | | | The 'make dist' archive is not dependent on ./configure output and contains a GIT_HEAD_ID file that identifies the version of ISL used. None of the files added or removed are used part of Polly's build process (except of GIT_HEAD_ID since the previous revision r240301). No functional change intended. llvm-svn: 240306
* Remove the IsStreamed member variable.Rafael Espindola2015-06-221-15/+9
| | | | | | | | | | | | | | | | | | Having different code paths for streamed and regular bitcode reading was a source of bugs in the past and this defines them away. It has a small but noticeable impact on performance. I timed running "opt -disable-output -disable-verify" on a ltoed clang. It goes from 14.752845231 seconds time elapsed ( +- 0.16% ) to 15.012463721 seconds time elapsed ( +- 0.11% ) Extracted from a patch by Karl Schimpf. llvm-svn: 240305
* [FaultMaps] Add a parser for the __llvm__faultmaps section.Sanjoy Das2015-06-225-1/+286
| | | | | | | | | | | | | | | Summary: The parser is exercised by llvm-objdump using -print-fault-maps. As is probably obvious, the code itself was "heavily inspired" by http://reviews.llvm.org/D10434. Reviewers: reames, atrick, JosephTremoulet Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D10491 llvm-svn: 240304
* [NFC] Capitalization in documentation.Sanjoy Das2015-06-221-1/+1
| | | | llvm-svn: 240303
* Bring r240130 back.Rafael Espindola2015-06-2225-130/+125
| | | | | | | | | | | | | | | | | | | | | | Now that pr23900 is fixed, we can bring it back with no changes. Original message: Make all temporary symbols unnamed. What this does is make all symbols that would otherwise start with a .L (or L on MachO) unnamed. Some of these symbols still show up in the symbol table, but we can just make them unnamed. In order to make sure we produce identical results when going thought assembly, all .L (not just the compiler produced ones), are now unnamed. Running llc on llvm-as.opt.bc, the peak memory usage goes from 208.24MB to 205.57MB. llvm-svn: 240302
* Prepare replacing ISL by its 'make dist' filesMichael Kruse2015-06-228-9/+248
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently the Polly repository contains the ISL sources with bogus isl_config.h and gitversion.h. This is problematic. In this state a macro #define __attribute__(x) becomes active in the source, leading to various problems e.g. when included before system header files. This patch will instead generate the two files specific to the host system at configure-time. For CMake, we replicate the tests that ISL's configure performs using try_compile(). In autotools build, we just invoke ISL's configure to generate the two files. This consequently required regenerating autoconf/configure. 'make dist' distributions of ISL contain a file GIT_HEAD_ID which contains the version the distribution is derived from. The repository files themselves do not contain such a hint. In a later commit we will replace the isl directory by the contents of such a .tar.gz. It does not contain the files imdrover.c iprime.c pi.c and rsamath.c currently compiled into Polly, but not used and therefore are removed by this patch. In the long term we plan to generate a dedicated library for ISL instead of adding its files to Polly. This also does not yet include the switch to small-integer optimized ISL nor enabling C99 mode required for the former. Those will come as well in separate patches. Differential version: http://reviews.llvm.org/D10603 Reviewers: grosser llvm-svn: 240301
* Avoid a Symbol -> Name -> Symbol conversion.Rafael Espindola2015-06-2217-46/+103
| | | | | | | | | | | | | | Before this we were producing a TargetExternalSymbol from a MCSymbol. That meant extracting the symbol name and fetching the symbol again down the pipeline. This patch adds a DAG.getMCSymbol that lets the MCSymbol pass unchanged on the DAG. Doing so removes the need for MO_NOPREFIX and fixes the root cause of pr23900, allowing r240130 to be committed again. llvm-svn: 240300
* Cleanup the code a bit to make it more readable. Greg Clayton2015-06-221-4/+14
| | | | | | | | Add some if/then to avoid calling a function to get dynamic/synthetic types if we know we aren't going to need to call it. Avoid calling a function that returns a shared pointer twice: once for testing it and once for assigning it (even though that shared pointer is cached inside the value object), it just makes the code a bit clearer. llvm-svn: 240299
* Fix typo.Rui Ueyama2015-06-221-1/+1
| | | | llvm-svn: 240298
* Misc. cleanups suggested by Aaron BallmanDouglas Gregor2015-06-222-7/+13
| | | | llvm-svn: 240297
* Document the nullability attributes.Douglas Gregor2015-06-223-110/+808
| | | | llvm-svn: 240296
* MIR Serialization: Serialize machine instruction names.Alex Lorenz2015-06-229-4/+236
| | | | | | | | | | | | | | | | This commit implements initial machine instruction serialization. It serializes machine instruction names. The instructions are represented using a YAML sequence of string literals and are a part of machine basic block YAML mapping. This commit introduces a class called 'MIParser' which will be used to parse the machine instructions and operands. Reviewers: Duncan P. N. Exon Smith Differential Revision: http://reviews.llvm.org/D10481 llvm-svn: 240295
* Allow machine hierarchy expansionJonathan Peyton2015-06-221-10/+78
| | | | | | | | | This fix allows the machine hierarchy to be expanded in case it needs to handle more threads. It adds a resize function to accomplish this. Differential Revision: http://reviews.llvm.org/D9900 llvm-svn: 240292
* Fix shl folding in DAG combiner.Pawel Bylica2015-06-222-1/+9
| | | | | | | | | | | | | | | | Summary: The code responsible for shl folding in the DAGCombiner was assuming incorrectly that all constants are less than 64 bits. This patch simply changes the way values are compared. Test Plan: A regression test included. Reviewers: andreadb Reviewed By: andreadb Subscribers: andreadb, test, llvm-commits Differential Revision: http://reviews.llvm.org/D10602 llvm-svn: 240291
* Re-enable Visual Studio Builds.Jonathan Peyton2015-06-222-7/+4
| | | | | | | | | I tried to compile with Visual Studio using CMake and found these two sections of code causing problems for Visual Studio. The first one removes the use of variable length arrays by instead using KMP_ALLOCA(). The second part eliminates a redundant cpuid assembly call by using the already existing __kmp_x86_cpuid() call instead. llvm-svn: 240290
* Add a triple to the test to fix it on some hosts.Rafael Espindola2015-06-221-1/+1
| | | | | | | | The slp vectorizer doesn't optimize this case in 32 bits. Fixes PR23453. llvm-svn: 240289
* [ORC] Add NullResolverJoseph Tremoulet2015-06-223-12/+76
| | | | | | | | | | | | | | | | | Summary: This is an implementation of RuntimeDyld::SymbolResolver that simply rejects all resolution requests; useful for clients that do not have any cross-object symbol references. Reviewers: lhames Reviewed By: lhames Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D10455 llvm-svn: 240288
* Support Solaris unused sections' gc link syntax.Rafael Espindola2015-06-221-0/+3
| | | | | | | | | It is not clear if this would work or not with LLVM_NO_DEAD_STRIP binaries, so be conservative for now. Patch by Xan López. llvm-svn: 240287
* Make seeking on an ostream that has eofbit set work correctly. Fixes PR#21361Marshall Clow2015-06-223-2/+24
| | | | llvm-svn: 240286
* Test CommitJaydeep Patil2015-06-221-0/+2
| | | | llvm-svn: 240280
* Don't use &* when get() will suffice; NFC.Aaron Ballman2015-06-221-4/+4
| | | | llvm-svn: 240279
* [mips] [IAS] Add support for LAReg with identical source and destination ↵Toma Tabacu2015-06-222-15/+31
| | | | | | | | | | | | | | | | register operands. Summary: In this case, we're supposed to load the immediate in AT and then ADDu it with the source register and put it in the destination register. Reviewers: dsanders Reviewed By: dsanders Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D9367 llvm-svn: 240278
* AVX-512: added VPSHUFB instruction - all SKX formsElena Demikhovsky2015-06-227-0/+184
| | | | | | Added intrinsics and encoding tests. llvm-svn: 240277
* Do not pass optimization flags to Solaris' linker.Rafael Espindola2015-06-221-1/+1
| | | | | | | | It is not supported. Patch by Xan López. llvm-svn: 240276
* Use right syntax to pass version script to Solaris' ld.Rafael Espindola2015-06-221-2/+7
| | | | | | Patch by Xan Lopez! llvm-svn: 240275
* [mips] [IAS] Add support for LASym with identical source and destination ↵Toma Tabacu2015-06-222-8/+26
| | | | | | | | | | | | | | | | | | register operands. Summary: In this case, we're supposed to load the address of the symbol in AT and then ADDu it with the source register and put it in the destination register. Reviewers: dsanders Reviewed By: dsanders Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D9366 llvm-svn: 240273
* AVX-512: All forms of VCOPMRESS VEXPAND instructions,Elena Demikhovsky2015-06-225-79/+535
| | | | | | encoding tests. llvm-svn: 240272
* Fixed/added namespace ending comments using clang-tidy. NFCAlexander Kornienko2015-06-224-4/+4
| | | | | | A few more files that were fixed while preparing r240270. llvm-svn: 240271
* Fixed/added namespace ending comments using clang-tidy. NFCAlexander Kornienko2015-06-22344-619/+643
| | | | | | | | | | | | The patch is generated using this command: $ tools/extra/clang-tidy/tool/run-clang-tidy.py -fix \ -checks=-*,llvm-namespace-comment -header-filter='llvm/.*|clang/.*' \ work/llvm/tools/clang To reduce churn, not touching namespaces spanning less than 10 lines. llvm-svn: 240270
* Removing empty directories.Alexander Kornienko2015-06-220-0/+0
| | | | llvm-svn: 240269
* [Mips] Support R_MICROMIPS_HI0_LO16 relocation handlingSimon Atanasyan2015-06-223-1/+63
| | | | llvm-svn: 240268
* [Mips] Support R_MICROMIPS_LITERAL relocation handlingSimon Atanasyan2015-06-223-0/+64
| | | | llvm-svn: 240267
* [Mips] Support R_MIPS_LITERAL relocation handlingSimon Atanasyan2015-06-223-1/+62
| | | | llvm-svn: 240266
* [Mips] Support R_MICROMIPS_SUB relocation handlingSimon Atanasyan2015-06-222-2/+68
| | | | llvm-svn: 240265
* [Mips] Reject R_MIPS_GPREL32 against external symbolsSimon Atanasyan2015-06-222-2/+57
| | | | llvm-svn: 240264
* [Mips] Fix test case - do not use R_MIPS_GPREL32 against external symbolsSimon Atanasyan2015-06-221-3/+3
| | | | | | No functional changes. llvm-svn: 240263
* [Mips] Reject position-dependent relocations in case of shared library linkingSimon Atanasyan2015-06-222-10/+152
| | | | llvm-svn: 240262
* [Mips] Fix test case - do not use R_MIPS_HI16 for shared library linkingSimon Atanasyan2015-06-221-3/+4
| | | | | | No functional changes. llvm-svn: 240261
* [Mips] Support R_MICROMIPS_HIGHER / R_MICROMIPS_HIGHEST relocations handlingSimon Atanasyan2015-06-222-0/+59
| | | | llvm-svn: 240260
* [Mips] Support R_MIPS_HIGHER / R_MIPS_HIGHEST relocations handlingSimon Atanasyan2015-06-222-0/+69
| | | | llvm-svn: 240259
OpenPOWER on IntegriCloud