- Dec 05, 2016
-
-
Kuba Mracek authored
Use Darwin libtool's -no_warning_for_no_symbols if available to silence the "has no symbols" link warning Building compiler-rt on Darwin produces dozens of meaningless warnings about object files having no symbols during static archive creation. This is very intentional as compiler-rt uses #ifdefs to conditionally compile platform-specific code, and we even have a .cpp source file that only contains static asserts to make sure the environment is configured right. On Linux, this situation is fine and no warning is produced. This patch adds a libtool version detection and if it's new enough, we'll use the -no_warning_for_no_symbols flag that suppresses this warning. Build logs should be much cleaner now! Differential Revision: https://reviews.llvm.org/D27119 llvm-svn: 288640
-
Matthias Braun authored
Introduce new constructor for STRCONCAT binop with a shortcut that immediately concatenates if the two arguments are StringInits. Makes the QualifyName code more readable and tablegen 2-3% faster. llvm-svn: 288639
-
Matthias Braun authored
llvm-svn: 288638
-
Colin LeMahieu authored
[Hexagon] Adding additional tokenization characters in preparation for removing spacing from syntax. llvm-svn: 288637
-
Craig Topper authored
[AVX-512] Teach fast isel to use masked compare and movss for handling scalar cmp and select sequence when AVX-512 is enabled. This matches the behavior of normal isel. llvm-svn: 288636
-
Craig Topper authored
Currently the fast isel code emits an avx1 instruction sequence even with avx512. This is different than normal isel. A follow up commit will fix this. llvm-svn: 288635
-
Colin LeMahieu authored
[Hexagon] Changing from literal numeric value to argument since #-1 will not parse when '-' is converted to a token. llvm-svn: 288634
-
Chris Bieneman authored
This is updating to take r288632 into account. llvm-svn: 288633
-
Chris Bieneman authored
The old implementation of add_llvm_tool_symlink could fail in odd ways when building out of tree. This version solves that problem by not using the LLVM_* variables, and instead reaeding the target's properties. llvm-svn: 288632
-
Rui Ueyama authored
Remainders of tasks were ran in the main thread, so parallel_for_each could theoretically take 2x time than the ideal. llvm-svn: 288631
-
Rui Ueyama authored
llvm-svn: 288630
-
Peter Collingbourne authored
llvm-svn: 288629
-
- Dec 04, 2016
-
-
Simon Pilgrim authored
llvm-svn: 288628
-
Simon Pilgrim authored
llvm-svn: 288627
-
Daniel Jasper authored
Revert "Recover better from an incompatible .pcm file being provided by -fmodule-file=. We try to include the headers of the module textually in this case, still enforcing the modules semantic rules. In order to make that work, we need to still track that we're entering and leaving the module. Also, if the module was also marked as unavailable (perhaps because it was missing a file), we shouldn't mark the module unavailable -- we don't need the module to be complete if we're going to enter it textually." This reverts commit r288449. I believe that this is currently faulty wrt. modules being imported inside namespaces. Adding these lines to the new test: namespace n { #include "foo.h" } Makes it break with fatal error: import of module 'M' appears within namespace 'n' However, I believe it should fail with error: redundant #include of module 'M' appears within namespace 'n' I have tracked this down to us now inserting a tok::annot_module_begin instead of a tok::annot_module_include in Preprocessor::HandleIncludeDirective() and then later in Parser::parseMisplacedModuleImport(), we hit the code path for tok::annot_module_begin, which doesn't set FromInclude of checkModuleImportContext to true (thus leading to the "wrong" diagnostic). llvm-svn: 288626
-
Eric Fiselier authored
llvm-svn: 288625
-
Kuba Mracek authored
On macOS, we often symbolicate using atos (when llvm-symbolizer is not found). The current way we invoke atos involves creating a pseudo-terminal to make sure atos doesn't buffer its output. This however also makes atos think that it's stdin is interactive and in some error situations it will ask the user to enter some input instead of just printing out an error message. For example, when Developer Mode isn't enabled on a machine, atos cannot examine processes, and it will ask the user to enter an administrator's password, which will make the sanitized process get stuck. This patch only connects the pseudo-terminal to the stdout of atos, and uses a regular pipe as its stdin. Differential Revision: https://reviews.llvm.org/D27239 llvm-svn: 288624
-
Eric Fiselier authored
Previously these hashes were 0 and -1 respectively. These seem like common sentinel values and should be avoided to prevent needless collisions. This patch changes those values to different arbitrary numbers, which should hopefully cause less collisions. Because I couldn't help myself I choose the fundamental constants for gravity and the speed of light. llvm-svn: 288623
-
Craig Topper authored
llvm-svn: 288622
-
Craig Topper authored
I think these intrinsics were added after the Commutative was added to most of the rest of the intrinsics and it must have been forgotten. llvm-svn: 288621
-
Rui Ueyama authored
I removed a wrong optimization for ICF in r288527. Sean Silva suggested in a post commit review that the correct algorithm can be implemented easily. So is this patch. llvm-svn: 288620
-
Michael Gottesman authored
llvm-svn: 288619
-
Dylan McKay authored
This seems to be fixed as of r288052. llvm-svn: 288618
-
Rafael Espindola authored
They might be used by relocations. Fixes pr31252. llvm-svn: 288617
-
Rafael Espindola authored
It is not clear if it is worth the complexity to use \ on windows. This should fix the bots. llvm-svn: 288616
-
Rafael Espindola authored
Patch by Mark Santaniello. llvm-svn: 288615
-
Matthias Braun authored
llvm-svn: 288614
-
Matthias Braun authored
All these records are internalized and will live until exit. This makes them perfect candidates for a fast BumpPtrAllocator. llvm-svn: 288613
-
Matthias Braun authored
This will allow to switch to a different string storage in an upcoming commit. llvm-svn: 288612
-
Matthias Braun authored
llvm-svn: 288611
-
Matthias Braun authored
This avoid an extra construction of a std::string (and a heap allocation) when the caller only has a StringRef but no std::string at hand. llvm-svn: 288610
-
Rui Ueyama authored
llvm-svn: 288609
-
Lang Hames authored
Changes all static helper functions in MachOObjectFile.cpp that expect a non-null MachOObjectFile pointer to take a reference instead. llvm-svn: 288608
-
Dan Gohman authored
Change SectionSymbols so that it doesn't hard-code ELF types, so that it can be used for non-ELF targets. llvm-svn: 288607
-
Rui Ueyama authored
llvm-svn: 288606
-
Sylvestre Ledru authored
llvm-svn: 288605
-
Dan Gohman authored
Revert r288447 which introduced -mdirect. It turns out we don't need a custom flag for this, as the information we need is in the target triple. llvm-svn: 288604
-
Matt Arsenault authored
getNode already prevents formation of out of bounds constant extract_vector_elts. Do the same for insert_vector_elt. llvm-svn: 288603
-
Dan Gohman authored
Use the target triple to determine whether to run the explicit-locals pass, rather than using a separate command-line argument. llvm-svn: 288602
-
- Dec 03, 2016
-
-
Saleem Abdulrasool authored
lib/Target/AMDGPU/SIRegisterInfo.cpp: In member function 'void llvm::SIRegisterInfo::spillSGPR(llvm::MachineBasicBlock::iterator, int, llvm::RegScavenger*) const': lib/Target/AMDGPU/SIRegisterInfo.cpp:572:30: warning: variable 'SubRC' set but not used [-Wunused-but-set-variable] const TargetRegisterClass *SubRC = nullptr; ^ lib/Target/AMDGPU/SIRegisterInfo.cpp: In member function 'void llvm::SIRegisterInfo::restoreSGPR(llvm::MachineBasicBlock::iterator, int, llvm::RegScavenger*) const': lib/Target/AMDGPU/SIRegisterInfo.cpp:723:30: warning: variable 'SubRC' set but not used [-Wunused-but-set-variable] const TargetRegisterClass *SubRC = nullptr; ^ The variable was assigned to, but never used. The functions called did not mutate state. Simplify the logic and remove the variable. Identified by gcc 5.4.0. llvm-svn: 288601
-