- Jul 26, 2016
-
-
Enrico Granata authored
llvm-svn: 276709
-
Xinliang David Li authored
llvm-svn: 276708
-
Adam Nemet authored
For example, stop expanding 'opt' in -passes='require<opt-remark-emit>'. llvm-svn: 276707
-
Rui Ueyama authored
createSections function is getting longer, so it is time to split it into small functions. The reason why the function is long is because it has deeply nested for-loops. This patch constructs temporary data to reduce nesting level. Differential Revision: https://reviews.llvm.org/D22786 llvm-svn: 276706
-
Rui Ueyama authored
match() returns true of the first argument, a target string, matches one of the second argument, a list of glob patterns. Calling the target string, which is not a glob pattern, "Pattern" was very confusing. llvm-svn: 276705
-
Jan Vesely authored
OpenCL 1.0: "Returns y if y < x, otherwise it returns x. If x *and* y are infinite or NaN, the return values are undefined." OpenCL 1.1+: "Returns y if y < x, otherwise it returns x. If x *or* y are infinite or NaN, the return values are undefined." The 1.0 version is stricter so use that one. Signed-off-by:
Jan Vesely <jan.vesely@rutgers.edu> llvm-svn: 276704
-
Michael Kuperstein authored
llvm-svn: 276703
-
Rui Ueyama authored
Because the file from which an input section is created can be obtained using getFile(). llvm-svn: 276702
-
Renato Golin authored
The saturation instructions appeared in v6T2, with DSP extensions, but they were being accepted / generated on any, with the new introduction of the saturation detection in the back-end. This commit restricts the usage to DSP-enable only cores. Fixes PR28607. llvm-svn: 276701
-
David Majnemer authored
This reverts commit r276698. Clang has tests which rely on the optimizer :( llvm-svn: 276700
-
David Majnemer authored
BitCasts of BitCasts can be folded away as can BitCasts which don't change the type of the operand. llvm-svn: 276698
-
Rui Ueyama authored
llvm-svn: 276697
-
- Jul 25, 2016
-
-
Akira Hatanaka authored
on the nullabilities of its operands. This commit is a follow-up to r276076 and enables computeConditionalNullability to compute the merged nullability when the operands are objective-c pointers. rdar://problem/22074116 llvm-svn: 276696
-
Davide Italiano authored
This will grow because I have a patch to support more complex constructs, e.g.: KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) Let's make this a separate function. llvm-svn: 276695
-
David Blaikie authored
llvm-svn: 276694
-
Rui Ueyama authored
Re-commit r276543 with a fix for buildbots. llvm-svn: 276693
-
Simon Pilgrim authored
llvm-svn: 276692
-
Simon Pilgrim authored
llvm-svn: 276691
-
Tim Northover authored
This adds LLVM's 3 main cast instructions (inttoptr, ptrtoint, bitcast) to the IRTranslator. The first two are direct translations (with 2 MachineInstr types each). Since LLT discards information, a bitcast might become trivial and we emit a COPY in those cases instead. llvm-svn: 276690
-
Tim Northover authored
They're basically i64 for AArch64, but we'll leave them intact for stranger targets. Also add some tests for the (very few) other cases we can handle right now. llvm-svn: 276689
-
Michael Kuperstein authored
Differential Revision: https://reviews.llvm.org/D22703 llvm-svn: 276687
-
Kevin Enderby authored
I consulted with Lang Hames on this work, and the goal was to add a bit of "where" in the archive the error occurred along with what the error was. So this step changes ArchiveMemberHeader into a class with a pointer to the archive header and the parent archive. Which allows the methods in the ArchiveMemberHeader to determine which member the header is for to include that information in the error message. For this first step the "where" is just the offset to the member in the archive. The next step will be a new method on ArchiveMemberHeader to get the full name, if possible, to be use in the error message. Which will now be possible as ArchiveMemberHeader contains a pointer to the Archive with its string table and its size, etc. so the full name can be determined from the header if it is valid. Also this change adds the missing checks the archive header is actually contained in the buffer and is not truncated, as well as if the terminating characters are correct in the header. And changes one error message in Archive::Child::getNext() where the name or offset to member is now added. llvm-svn: 276686
-
Jordan Rose authored
MSVC won't provide the body of this move constructor and assignment operator, possibly because the copy constructor is banned. Just write it manually. llvm-svn: 276685
-
Eugene Zelenko authored
Also fixed some Include What You Use Warnings. Differential revision: https://reviews.llvm.org/D22654 llvm-svn: 276684
-
Chris Bieneman authored
This reverts commit r276333. As I commented in the review (https://reviews.llvm.org/D22415), this change isn't needed because CMAKE_C_FLAGS is implicitly added by CMake to the command line for all C source files. With this patch enabled CMAKE_C_FLAGS is duplicated on all C sources, and applied to ASM sources, which is not ideal. I sent an email about this to llvm-commits on the commit thread. I suspect the problem the patch author was actually seeing is that CMAKE_C_FLAGS isn't applied to ASM files, and the builtins library has quite a few of those. The correct solution there is to specify CMAKE_ASM_FLAGS with whatever flags need to be passed to the compiler when compiling ASM files. If there are other problems with flag propagation, please let me know. llvm-svn: 276683
-
Jan Vesely authored
Differential revision: https://reviews.llvm.org/D22732 llvm-svn: 276682
-
Matt Arsenault authored
llvm-svn: 276681
-
Matt Arsenault authored
llvm-svn: 276680
-
Matt Arsenault authored
llvm-svn: 276679
-
Matt Arsenault authored
Fixes weird asymmetry with insertion llvm-svn: 276678
-
Matt Arsenault authored
llvm-svn: 276677
-
Evgeniy Stepanov authored
llvm-svn: 276676
-
Matt Arsenault authored
llvm-svn: 276675
-
Chris Bieneman authored
In Bootstrap builds Clang logs some warnings. These are caused because Clang passes CLANG_STAGE and BOOTSTRAP_DEFAULT_PASSTHROUGH into the next stage's configuration. BOOTSTRAP_DEFAULT_PASSTHROUGH shouldn't be passed, so it is renamed to _BOOTSTRAP_DEFAULT_PASSTHROUGH, to prevent passthrough. CLANG_STAGE should be passed, so I've changed the code to log it if it is set outside the if(CLANG_ENABLE_BOOTSTRAP) block. This makes the variable always used, so the warning goes away. llvm-svn: 276674
-
Rong Xu authored
Pre-instrumentation inline (pre-inliner) greatly improves the IR instrumentation code performance, among other benefits. One issue of the pre-inliner is it can introduce CFG-mismatch for COMDAT functions. This is due to the fact that the same COMDAT function may have different early inline decisions across different modules -- that means different copies of COMDAT functions will have different CFG checksum. In this patch, we propose a partially renaming the COMDAT group and its member function/variable so we have different profile counter for each version. We will post-fix the COMDAT function and the group name with its FunctionHash. Differential Revision: http://reviews.llvm.org/D22600 llvm-svn: 276673
-
Michael Kuperstein authored
llvm-svn: 276672
-
Jordan Rose authored
This prevents StringSwitch from being used with 'auto', which is important because the inferred type is StringSwitch rather than the result type. This is a problem because StringSwitch stores addresses of temporary values rather than copying or moving the value into its own storage. This is a compromise that still allows wrapping StringSwitch in other temporary structures, which (unlike StringSwitch) may be non-trivial to set up and therefore want to at least be movable. (For an example, see QueryParser.cpp in clang-tools-extra.) Changing this uncovered the bug in PassBuilder, also in this patch. Clang doesn't seem to have any occurrences of the issue. Re-commit of r276652. llvm-svn: 276671
-
Daniel Berlin authored
llvm-svn: 276670
-
Zachary Turner authored
Differential Revision: https://reviews.llvm.org/D22769 llvm-svn: 276669
-
Michael Kuperstein authored
There didn't appear to be a good reason to use iplist in this case, a regular list of unique_ptr works just as well. Change made in preparation to a new PM port (since iplist is not moveable). llvm-svn: 276668
-