- Nov 18, 2016
-
-
Tom Stellard authored
Reviewers: t.p.northover, ab, qcolombet Subscribers: mehdi_amini, vkalintiris, wdng, dberris, llvm-commits, rovka Differential Revision: https://reviews.llvm.org/D26765 llvm-svn: 287344
-
Joey Gouly authored
This allows Sema to diagnose passing a read_only pipe to a write_only pipe argument. llvm-svn: 287343
-
Tom Stellard authored
Summary: The 32-bit instructions don't zero the high 16-bits like the 16-bit instructions do. Reviewers: arsenm Subscribers: kzhuravl, wdng, nhaehnle, yaxunl, llvm-commits, tony-tye Differential Revision: https://reviews.llvm.org/D26828 llvm-svn: 287342
-
Florian Hahn authored
insertUniqueBackedgeBlock in lib/Transforms/Utils/LoopSimplify.cpp now propagates existing llvm.loop metadata to newly the added backedge. llvm::TryToSimplifyUncondBranchFromEmptyBlock in lib/Transforms/Utils/Local.cpp now propagates existing llvm.loop metadata to the branch instructions in the predecessor blocks of the empty block that is removed. Differential Revision: https://reviews.llvm.org/D26495 llvm-svn: 287341
-
Simon Pilgrim authored
llvm-svn: 287340
-
Nicolai Haehnle authored
Summary: The addr64-based legalization is incorrect for MUBUF instructions with idxen set as well as for BUFFER_LOAD/STORE_FORMAT_* instructions. This affects e.g. shaders that access buffer textures. Since we never actually need the addr64-legalization in shaders, this patch takes the easy route and keys off the calling convention. If this ever affects (non-OpenGL) compute, the type of legalization needs to be chosen based on some TSFlag. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=98664 Reviewers: arsenm, tstellarAMD Subscribers: kzhuravl, wdng, yaxunl, tony-tye, llvm-commits Differential Revision: https://reviews.llvm.org/D26747 llvm-svn: 287339
-
Simon Pilgrim authored
Identified by Pedro Giffuni in PR27636. llvm-svn: 287338
-
Eric Fiselier authored
llvm-svn: 287337
-
Eric Fiselier authored
llvm-svn: 287336
-
Simon Pilgrim authored
llvm-svn: 287335
-
Ehsan Amiri authored
Exploit new instructions by adding patterns to .td file. https://reviews.llvm.org/D26551 llvm-svn: 287334
-
Simon Pilgrim authored
Identified by Pedro Giffuni in PR27636. llvm-svn: 287333
-
Simon Pilgrim authored
llvm-svn: 287332
-
Simon Pilgrim authored
Identified by Pedro Giffuni in PR27636. llvm-svn: 287331
-
Haojian Wu authored
Reviewers: ioeric Subscribers: cfe-commits Differential Revision: https://reviews.llvm.org/D26844 llvm-svn: 287330
-
Ehsan Amiri authored
When we see a SETCC whose only users are zero extend operations, we can replace it with a subtraction. This results in doing all calculations in GPRs and avoids CR use. Currently we do this only for ULT, ULE, UGT and UGE condition codes. There are ways that this can be extended. For example for signed condition codes. In that case we will be introducing additional sign extend instructions, so more careful profitability analysis may be required. Another direction to extend this is for equal, not equal conditions. Also when users of SETCC are any_ext or sign_ext, we might be able to do something similar. llvm-svn: 287329
-
Amaury Sechet authored
https://reviews.llvm.org/D26339 llvm-svn: 287328
-
Eric Fiselier authored
In order to easily merge libc++ and libc++abi static archives it's important that none of the source files share the same name. (See http://stackoverflow.com/questions/3821916/how-to-merge-two-ar-static-libraries-into-one) This patch renames source files which share a name with libc++ sources. llvm-svn: 287327
-
Eugene Leviant authored
Differential revision: https://reviews.llvm.org/D26834 llvm-svn: 287326
-
Rui Ueyama authored
llvm-svn: 287325
-
Rui Ueyama authored
llvm-svn: 287324
-
Rui Ueyama authored
llvm-svn: 287323
-
Eugene Leviant authored
Differential revision: https://reviews.llvm.org/D26792 llvm-svn: 287322
-
Eric Fiselier authored
libc++ no longer supports C++11 compilers that don't implement `= default`. This patch removes all instances of the feature test macro _LIBCPP_HAS_NO_DEFAULTED_FUNCTIONS as well as the potentially dead code it hides. llvm-svn: 287321
-
Zachary Turner authored
This reverts commit r287315, as it introduces a bug that breaks many things. llvm-svn: 287320
-
Rui Ueyama authored
readVersionDeclaration was to read anonymous version definition and named version definition. Splitting it into two functions should improve readability as the two cases are different enough. I also changed a few helper functions to return values instead of mutating given references. llvm-svn: 287319
-
Rui Ueyama authored
llvm-svn: 287318
-
Ekaterina Romanova authored
The doxygen comments are automatically generated based on Sony's intrinsics document. I got an OK from Eric Christopher to commit doxygen comments without prior code review upstream. This patch was internally reviewed by Charles Li. llvm-svn: 287317
-
Craig Topper authored
[InstCombine][AVX-512] Teach InstCombineCalls how to handle the intrinsics for variable shift with 16-bit elements. This is a straightforward extension of the existing support for 32/64-bit element types. Just needed to add the additional instrinsics to the switches. llvm-svn: 287316
-
Zachary Turner authored
This argument was only used in one place in the codebase, and it was in a non-critical log statement and can be easily substituted for an equally meaningful field instead. The payoff of computing this value is not worth the added complexity. llvm-svn: 287315
-
Rui Ueyama authored
MergeOutputSection class was a bit hard to use because it provdes a series of finalize functions that have to be called in a right way at a right time. It also intereacted with MergeInputSection, and the logic was somewhat entangled between the two classes. This patch simplifies it by providing only one finalize function. Now, all you have to do is to call MergeOutputSection::finalize when you have added all sections to the output section. Then, it internally merges strings and initliazes StringPiece objects. I think this is much easier to understand. This patch also adds comments. llvm-svn: 287314
-
Craig Topper authored
[AVX-512] Replace masked 16-bit element variable shift builtins with new unmasked versions and selects. llvm-svn: 287313
-
Craig Topper authored
[AVX-512] Replace masked 16-bit element variable shift intrinsics with new unmasked versions and selects. The same thing was done to 32-bit and 64-bit element sizes previously. This will allow us to support these shuffls in InstCombineCalls along with the other variable shift intrinsics. llvm-svn: 287312
-
Matt Arsenault authored
llvm-svn: 287311
-
Matt Arsenault authored
There are still crashes on non-MVT types in other places. llvm-svn: 287310
-
Shoaib Meenai authored
Fix a typo in the conditional. Caught by going through list of removed symbols when building with hidden visibility. Differential Revision: https://reviews.llvm.org/D26825 llvm-svn: 287309
-
Zachary Turner authored
Apparently these two enormous functions were dead. Which is good, since one was largely a copy of another function with only a few minor tweaks. llvm-svn: 287308
-
Zachary Turner authored
Originally I converted this entire function and all dependents to use StringRef, but there were some test failures that were tricky to track down, as this is a complicated function. So I'm starting over, this time in smaller increments. llvm-svn: 287307
-
Peter Collingbourne authored
llvm-svn: 287305
-
Matthias Braun authored
llvm-svn: 287302
-