- Jan 16, 2017
-
-
Justin Lebar authored
llvm-svn: 292069
-
Justin Lebar authored
Summary: Previously there were three ways to inform the NVVMReflect pass whether you wanted to flush denormals to zero: * An LLVM command-line option * Parameters to the NVVMReflect constructor * Metadata on the module itself. This change removes the first two, leaving only the third. The motivation for this change, aside from simplifying things, is that we want LLVM to be aware of whether it's operating in FTZ mode, so other passes can use this information. Ideally we'd have a target-generic piece of metadata on the module. This change moves us in that direction. Reviewers: tra Subscribers: jholewinski, llvm-commits Differential Revision: https://reviews.llvm.org/D28700 llvm-svn: 292068
-
Hongbin Zheng authored
Differential Revision: https://reviews.llvm.org/D28739 llvm-svn: 292067
-
Michael Zuckerman authored
Fix blend mask by switch the side of the operand since Blend node uses opposite mask then Select NODE. llvm-svn: 292066
-
Daniel Jasper authored
This is uncovered when running tools/dsymutil/X86/empty_range.s.test with ASAN. Haven't investigate yet, whether that means there is an ODR violation in that test. llvm-svn: 292065
-
Sanjay Patel authored
llvm-svn: 292064
-
Sanjay Patel authored
llvm-svn: 292063
-
- Jan 15, 2017
-
-
Serge Pavlov authored
Commits r291882 and related r291887. llvm-svn: 292062
-
Daniel Jasper authored
This reverts commit r291973. The test fails in a Release build with LLVM_BUILD_GLOBAL_ISEL enabled. AFAICT, llc segfaults. I'll add a few more details to the original commit. llvm-svn: 292061
-
Chandler Carruth authored
First, I've moved a test of IVUsers from the LSR tree to a dedicated IVUsers test directory. I've also simplified its RUN line now that the new pass manager's loop PM is providing analyses on their own. No functionality changed, but it makes subsequent changes cleaner. llvm-svn: 292060
-
Daniel Berlin authored
NewGVN: Change a bunch of densemap find_or_creates to lookups, since they should not be creating new entries llvm-svn: 292059
-
Chandler Carruth authored
events. This pass sometimes has a pointer to BlockFrequencyInfo so it needs custom invalidation logic. It is also otherwise immutable so we can reduce the number of invalidations that happen substantially. llvm-svn: 292058
-
Daniel Berlin authored
llvm-svn: 292057
-
Daniel Berlin authored
llvm-svn: 292056
-
Lang Hames authored
negotiateFunction where appropriate. Replacing the old ECError with a custom type allows us to attach the name of the function that could not be negotiated, enabling better diagnostics for negotiation failures. llvm-svn: 292055
-
Chandler Carruth authored
a function's CFG when that CFG is unchanged. This allows transformation passes to simply claim they preserve the CFG and analysis passes to check for the CFG being preserved to remove the fanout of all analyses being listed in all passes. I've gone through and removed or cleaned up as many of the comments reminding us to do this as I could. Differential Revision: https://reviews.llvm.org/D28627 llvm-svn: 292054
-
Craig Topper authored
llvm-svn: 292053
-
Argyrios Kyrtzidis authored
[code-completion] Fix crash when trying to do postfix completion of instance member inside a static function. llvm-svn: 292052
-
Craig Topper authored
[AVX-512] Replicate some broadcast patterns to VLX and disable the AVX2 patterns when VLX is available. llvm-svn: 292051
-
Craig Topper authored
These all involve bitcasts around the memory operands. This isn't something we normally do for isel patterns. I suspect DAG combine should convert the load type making this unnecessary. llvm-svn: 292050
-
Rui Ueyama authored
llvm-svn: 292049
-
Rui Ueyama authored
llvm-svn: 292048
-
Mehdi Amini authored
Summary: This string parameter is passed to -fuse-ld when linking. It can be an absolute path to your custom linker, otherwise clang will look for `ld.{name}`. Reviewers: davide, tejohnson, pcc Subscribers: llvm-commits, mgorny Differential Revision: https://reviews.llvm.org/D28738 llvm-svn: 292047 -
Rui Ueyama authored
llvm-svn: 292046
-
Rui Ueyama authored
llvm-svn: 292045
-
Rui Ueyama authored
llvm-svn: 292044
-
Eric Fiselier authored
llvm-svn: 292043
-
Rui Ueyama authored
llvm-svn: 292042
-
Rui Ueyama authored
Previous code had a bug that if the program exits with an assert() or fail() before the control reaches end of writeMapFile(), it leaves a temporary file, because FileRemover's dtor isn't called in that case. I could fix that by removeFileOnSignal() and other functions, but I think we can simply write to the result file directly. I think that is straightforward and easy to understand. Additionally, that allows something like `-Map /dev/null` or a bash hack such as `-Map >(grep symbol-im-looking-for)`. Previously, that kind of things didn't work. Differential Revision: https://reviews.llvm.org/D28714 llvm-svn: 292041
-
Rui Ueyama authored
This patch adds a new class NameHashTableBuilder which creates /names streams. This patch contains a test to confirm that a stream created by NameHashTableBuilder can be read by NameHashTable reader class. Differential Revision: https://reviews.llvm.org/D28707 llvm-svn: 292040
-
Chandler Carruth authored
mark it as never invalidated in the new PM. The old PM already required this to work, and after a discussion with Hal this seems to really be the only sensible answer. The cache gracefully degrades as the IR is mutated, and most things which do this should already be incrementally updating the cache. This gets rid of a bunch of logic preserving and testing the invalidation of this analysis. llvm-svn: 292039
-
Eric Fiselier authored
llvm-svn: 292038
-
Chandler Carruth authored
cover domtree and alias analysis. These are the pretty clear analyses that we would always want to survive this pass. To make these survive, we also need to preserve the assumption cache. Added a test that verifies the important bits of this preservation. llvm-svn: 292037
-
Sanjay Patel authored
llvm-svn: 292036
-
Sanjay Patel authored
llvm-svn: 292035
-
David Majnemer authored
This fixes some problems when building ClangDiagnostics.cpp on Visual Studio 2017 RC. As far as I understand, there was a change in the implementation of the constructor for std::vector with two iterator parameters, which in our case causes an attempt to dereference const Iterator objects. Since there was no overload for a const Iterator, the compile would fail. Patch by Hugo Puhlmann! Differential Revision: https://reviews.llvm.org/D28726 llvm-svn: 292034
-
Yaron Keren authored
Thanks Dimitry Andric for the report and fix! llvm-svn: 292032
-
Davide Italiano authored
Patch by Gonsolo. Differential Revision: https://reviews.llvm.org/D28731 llvm-svn: 292031
-
Tobias Grosser authored
To benefit of the type safety guarantees of C++11 typed enums, which would have caught the type mismatch fixed in r291960, we make MemoryKind a typed enum. This change also allows us to drop the 'MK_' prefix and to instead use the more descriptive full name of the enum as prefix. To reduce the amount of typing needed, we use this opportunity to move MemoryKind from ScopArrayInfo to a global scope, which means the ScopArrayInfo:: prefix is not needed. This move also makes historically sense. In the beginning of Polly we had different MemoryKind enums in both MemoryAccess and ScopArrayInfo, which were later canonicalized to one. During this canonicalization we just choose the enum in ScopArrayInfo, but did not consider to move this shared enum to global scope. Reviewed-by:
Michael Kruse <llvm@meinersbur.de> Differential Revision: https://reviews.llvm.org/D28090 llvm-svn: 292030
-
Eric Fiselier authored
llvm-svn: 292029
-