summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Add a -no-libcxxabi option to the test-release.sh script.Dimitry Andric2018-01-181-1/+8
| | | | | | | | | | | On FreeBSD, it is currently not possible to build libcxxabi and link against it, so we have been building releases with -no-libs for quite some time. However, libcxx and libunwind should build without problems, so provide an option to skip just libcxxabi. llvm-svn: 322875
* [X86][AVX] Add 256/512-bit slow PMULLD testsSimon Pilgrim2018-01-181-24/+768
| | | | llvm-svn: 322874
* [ClangFormat] ObjCSpaceBeforeProtocolList should be true in the google styleBen Hamilton2018-01-182-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | Summary: The Google style guide is neutral on whether there should be a space before the protocol list in an Objective-C @interface or @implementation. The majority of Objective-C code in both Apple's public header files and Google's open-source uses a space before the protocol list, so this changes the google style to default ObjCSpaceBeforeProtocolList to true. Test Plan: make -j12 FormatTests && ./tools/clang/unittests/Format/FormatTests Reviewers: krasimir, djasper, klimek Reviewed By: krasimir Subscribers: klimek, cfe-commits Differential Revision: https://reviews.llvm.org/D41074 llvm-svn: 322873
* Add memory trackingMarshall Clow2018-01-181-1/+84
| | | | llvm-svn: 322872
* Speed up iteration of CodeView record streams.Zachary Turner2018-01-183-49/+82
| | | | | | | | | | | | | There's some abstraction overhead in the underlying mechanisms that were being used, and it was leading to an abundance of small but not-free copies being made. This showed up on a profile. Eliminating this and going back to a low-level byte-based implementation speeds up lld with /DEBUG between 10 and 15%. Differential Revision: https://reviews.llvm.org/D42148 llvm-svn: 322871
* [cmake] [libcxxabi] Don't print warning when tests are disabled.Don Hinton2018-01-181-14/+17
| | | | | | | | | | | | Summary: Don't print, possibly erroneous, warning if LIBCXXABI_INCLUDE_TESTS is false. This patch fixes a problem introduced in r291367. Differential Revision: https://reviews.llvm.org/D42229 llvm-svn: 322870
* Sprinkle a few <cstdlib> includes, for libomptarget sources usingDimitry Andric2018-01-183-0/+3
| | | | | | malloc, free, alloca and getenv. NFCI. llvm-svn: 322869
* [CodeGen][NFC] Rename IsVerbose to IsStandalone in Machine*::printFrancis Visoiu Mistrih2018-01-1810-25/+26
| | | | | | | | Committed r322867 too soon. Differential Revision: https://reviews.llvm.org/D42239 llvm-svn: 322868
* [CodeGen] Print RegClasses on MI in verbose modeFrancis Visoiu Mistrih2018-01-1819-96/+107
| | | | | | | | | | | | | r322086 removed the trailing information describing reg classes for each register. This patch adds printing reg classes next to every register when individual operands/instructions/basic blocks are printed. In the case of dumping MIR or printing a full function, by default don't print it. Differential Revision: https://reviews.llvm.org/D42239 llvm-svn: 322867
* [SLP] Fix test checks, NFC.Alexey Bataev2018-01-181-12/+22
| | | | llvm-svn: 322865
* Use high_resolution_clock instead of steady_clock. Also now builds with gcc ↵Marshall Clow2018-01-181-2/+3
| | | | | | 7.2 (for comparison purposes) llvm-svn: 322864
* A simple program for testing OSS-Fuzz test cases locally.Marshall Clow2018-01-181-0/+111
| | | | llvm-svn: 322863
* [ADT] Just give up on GCC, I can't fix this.Benjamin Kramer2018-01-182-11/+5
| | | | | | | | | | While the memmove workaround fixed it for GCC 6.3. GCC 4.8 and GCC 7.1 are still broken. I have no clue what's going on, just blacklist GCC for now. Needless to say this code is ubsan, asan and msan-clean. llvm-svn: 322862
* [ELF][MIPS] Rename function. NFCSimon Atanasyan2018-01-181-21/+21
| | | | llvm-svn: 322861
* [ELF][MIPS] Decompose relocation type for N32 / N64 earlier. NFCSimon Atanasyan2018-01-181-3/+3
| | | | | | | | We need to decompose relocation type for N32 / N64 ABI. Let's do it before any other manipulations with relocation type in the `relocateOne` routine. llvm-svn: 322860
* [ADT] Add a workaround for GCC miscompiling the trivially copyable OptionalBenjamin Kramer2018-01-181-2/+9
| | | | | | | | | I've seen random crashes with GCC 4.8, GCC 6.3 and GCC 7.3, triggered by my Optional change. All of them affect a different set of targets. This change fixes the instance of the problem I'm seeing on my local machine, let's hope it's good enough for the other instances too. llvm-svn: 322859
* [OpenMP] Correct generation of offloading entriesJonas Hahnfeld2018-01-182-29/+28
| | | | | | | | | | | Firstly, each offloading entry must have a unique name or the linker will complain if there are multiple files with target regions. Secondly, the compiler must not introduce padding so mark the struct with a PackedAttr. Differential Revision: https://reviews.llvm.org/D42168 llvm-svn: 322858
* [clangd] Remove unused IncludeGlobals completion option, always pass true to ↵Sam McCall2018-01-183-9/+5
| | | | | | sema llvm-svn: 322856
* [TargetLowering] add punctuation for readability; NFCSanjay Patel2018-01-181-1/+1
| | | | llvm-svn: 322855
* [clangd] Always use preamble (even stale) for code completionIlya Biryukov2018-01-183-19/+19
| | | | | | | | | | | | | | | | | | | | | | | Summary: This improves performance of code completion, because we avoid stating the files from the preamble and never attempt to parse the files without using the preamble if it's provided. However, the change comes at a cost of sometimes providing incorrect results when doing code completion after making actually considerable changes to the files used in the preamble or the preamble itself. Eventually the preamble will get rebuilt and code completion will be providing the correct results. Reviewers: bkramer, sammccall, jkorous-apple Reviewed By: sammccall Subscribers: klimek, cfe-commits Differential Revision: https://reviews.llvm.org/D41991 llvm-svn: 322854
* [Frontend] Allow to use PrecompiledPreamble without calling CanReuseIlya Biryukov2018-01-182-17/+47
| | | | | | | | | | | | | | | | | | | Summary: The new method 'OverridePreamble' allows to override the preamble of any source file without checking if preamble bounds or dependencies were changed. This is used for completion in clangd. Reviewers: bkramer, sammccall Reviewed By: sammccall Subscribers: cfe-commits Differential Revision: https://reviews.llvm.org/D41990 llvm-svn: 322853
* [ScopBuilder] Revise statement naming when there are multiple statements per BB.Michael Kruse2018-01-1812-60/+139
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | The goal is to have -polly-stmt-granularity=bb and -polly-stmt-granularity=scalar-indep to have the same names if there is just one statement per basic block. This fixes a fluke when Polybench's jacobi-2d is optimized differently depending on the -polly-stmt-granularity option, although both options create the same SCoP, just with different statement names. The new naming scheme is: With -polly-use-llvm-names=0: Stmt<BBIdx as decimal><Idx within BB as letter> With -polly-use-llvm-names=1: Stmt_BBName_<Idx within BB as letter> The <Idx within BB> suffix is omitted for the main statement of a BB. The main statement is either the one containing the first store or call (those cannot be removed by the simplifyer), or if there is no such instruction, the first. If after simplification there is just a single statement left, it should be the main statement and have the same names as with -polly-stmt-granularity=bb. Differential Revision: https://reviews.llvm.org/D42136 llvm-svn: 322852
* [ScopInfo] Pass name to ScopStmt ctor. NFC.Michael Kruse2018-01-183-32/+53
| | | | | | | | This will give control of the statement's name to the caller. Required to give -polly-stmt-granularity=scalar-indep more control over the name of the generated statement in a follow-up commit. llvm-svn: 322851
* [MachineOutliner] Fix r322788 - don't write to working directorySam McCall2018-01-181-1/+1
| | | | llvm-svn: 322850
* [docs] Make ReleaseProcess.rst 80 column. NFCIJoel Jones2018-01-181-59/+80
| | | | llvm-svn: 322849
* [CodeGen][NFC] Refactor MachineInstr::printFrancis Visoiu Mistrih2018-01-181-21/+45
| | | | | | | * Handle more cases where the MI is not attached yet * Add similar asserts like in MIRPrinter::print llvm-svn: 322848
* [HWAsan] Fix uninitialized variable.Benjamin Kramer2018-01-181-0/+1
| | | | | | Found by msan. llvm-svn: 322847
* [X86] Add PR35918 test caseSimon Pilgrim2018-01-181-0/+108
| | | | llvm-svn: 322846
* Fix MSVC "uninitialized variable" warning.Simon Pilgrim2018-01-181-1/+4
| | | | llvm-svn: 322845
* test commitKlaus Kretzschmar2018-01-181-1/+1
| | | | llvm-svn: 322844
* [RISCV] Codegen support for the standard RV32M instruction set extensionAlex Bradbury2018-01-185-11/+229
| | | | llvm-svn: 322843
* Enable sanitizer_common tests on NetBSDKamil Rytarowski2018-01-183-3/+14
| | | | | | | | | | | | | | | | | | Summary: NetBSD can handle asan, ubsan, msan, tsan tests on 64-bit and when applicable 32-bit X86 OS. Sponsored by <The NetBSD Foundation> Reviewers: joerg, vitalybuka Subscribers: srhines, llvm-commits, kubamracek, mgorny, #sanitizers Tags: #sanitizers Differential Revision: https://reviews.llvm.org/D42236 llvm-svn: 322842
* Break a line into two linesKamil Rytarowski2018-01-181-1/+2
| | | | | | This should restore the rule of <=80 characters per line. llvm-svn: 322841
* [RISCV] Implement frame pointer eliminationAlex Bradbury2018-01-1833-1841/+1996
| | | | llvm-svn: 322839
* [ADT] Split optional to only include copy mechanics and dtor for non-trivial ↵Benjamin Kramer2018-01-182-69/+112
| | | | | | | | | | | | | types. This makes uses of Optional more transparent to the compiler (and clang-tidy) and generates slightly smaller code. This is a re-land of r317019, which had issues with GCC 4.8 back then. Those issues don't reproduce anymore, but I'll watch the buildbots closely in case anything goes wrong. llvm-svn: 322838
* Add new NetBSD interceptors: getgrouplist(3) & getgroupmembership(3)Kamil Rytarowski2018-01-184-0/+101
| | | | | | | | | | | | | | | | | | | Summary: getgrouplist, getgroupmembership -- calculate group access list Sponsored by <The NetBSD Foundation> Reviewers: vitalybuka, joerg Reviewed By: vitalybuka Subscribers: llvm-commits, kubamracek, #sanitizers Tags: #sanitizers Differential Revision: https://reviews.llvm.org/D42064 llvm-svn: 322836
* Fix logging test on windowsPavel Labath2018-01-181-2/+2
| | | | | | | | | | | | | Refactor in r322653 broke the logging test on windows because MSVC uses a fully qualified name as the value of __FUNCTION__, which is not what we were expecting. I'm changing the code to use the more portable __func__, which behaves the same as on clang/gcc. The standard still says that the value of __func__ is implementation defined, so if we run into problems with this test again we may just need to drop it. llvm-svn: 322834
* Add new interceptors: access(2), faccessat(2)Kamil Rytarowski2018-01-184-0/+41
| | | | | | | | | | | | | | | | | | | Summary: access, faccessat - check access permissions of a file or pathname Sponsored by <The NetBSD Foundation> Reviewers: joerg, vitalybuka Reviewed By: vitalybuka Subscribers: llvm-commits, kubamracek, #sanitizers Tags: #sanitizers Differential Revision: https://reviews.llvm.org/D42065 llvm-svn: 322831
* Add missing headers for Debug buildsJonas Hahnfeld2018-01-182-0/+2
| | | | llvm-svn: 322830
* Add new interceptors for pwcache(3)-style functionsKamil Rytarowski2018-01-186-0/+138
| | | | | | | | | | | | | | | | | | | | | Summary: From <pwd.h>: user_from_uid, uid_from_user From <grp.h>: group_from_gid, gid_from_group Sponsored by <The NetBSD Foundation> Reviewers: joerg, vitalybuka Reviewed By: vitalybuka Subscribers: kubamracek, llvm-commits, #sanitizers Tags: #sanitizers Differential Revision: https://reviews.llvm.org/D42068 llvm-svn: 322829
* A new test to demostrate the current SHLD/SHRD code generation.Andrew V. Tischenko2018-01-181-0/+464
| | | | llvm-svn: 322828
* [clangd] Output log messages to stderr when not configured (e.g. in tests). NFCSam McCall2018-01-182-5/+12
| | | | llvm-svn: 322827
* [ASTMatcher] Add isScoped matcher for enumDecl.Haojian Wu2018-01-184-0/+26
| | | | | | | | | | | | Summary: Reviewers: bkramer, aaron.ballman Subscribers: aaron.ballman, cfe-commits, klimek Differential Revision: https://reviews.llvm.org/D42185 llvm-svn: 322826
* [RISCV][NFC] Add nounwind to functions in div.ll and mul.llAlex Bradbury2018-01-182-16/+16
| | | | | | | Committing this separately to minimise irrelevant changes for an upcoming patch. llvm-svn: 322825
* [clangd] CodeCompleteTests cleanup: naming, ordering, helpers. NFCSam McCall2018-01-181-164/+157
| | | | llvm-svn: 322824
* [SelectionDAG] Convert assert to condtionSam Parker2018-01-181-3/+2
| | | | | | | | | Follow-up to r322120 which can cause assertions for AArch64 because v1f64 and v1i64 are legal types. Differential Revision: https://reviews.llvm.org/D42097 llvm-svn: 322823
* [clang-tidy] Don't generate fix for argument constructed from ↵Haojian Wu2018-01-183-3/+30
| | | | | | | | | | | | | | | | | | | | | | std::initializer_list. Summary: A follow-up fix of rL311652. The previous `vector` in our test is different with `std::vector`, so The check still generates fixes for std::vector (`auto p = std::unique_ptr<Foo>(new Foo({1,2,3}))`) in real world, the patch makes the vector behavior in test align with std::vector (both AST nodes are the same now). Reviewers: ilya-biryukov, alexfh Reviewed By: ilya-biryukov Subscribers: klimek, xazax.hun, cfe-commits Differential Revision: https://reviews.llvm.org/D41852 llvm-svn: 322822
* [clangd] Use fuzzy match to select top N index results.Sam McCall2018-01-182-13/+25
| | | | | | | | | | | | | | | | | | | | | Summary: This makes performance slower but more predictable (it always processes every symbol). We need to find ways to make this fast, possibly by precomputing short queries or capping the number of scored results. But our current approach is too naive. It also no longer returns results in a "good" order. In fact it's pathological: the top N results are ranked from worst to best. Indexes aren't responsible for ranking and MergedIndex can't do a good job, so I'm pleased that this will make any hidden assumptions we have more noticeable :-) Reviewers: hokein Subscribers: klimek, ilya-biryukov, cfe-commits Differential Revision: https://reviews.llvm.org/D42060 llvm-svn: 322821
* [X86] Use vmovdqu64/vmovdqa64 for unmasked integer vector stores for ↵Craig Topper2018-01-1810-57/+63
| | | | | | | | consistency with loads. Previously we used 64 for vXi64 stores and 32 for everything else. This change uses 64 for everything just like do for loads. llvm-svn: 322820
* [X86] Remove isel patterns for using unmasked vmovdqa32/vmovdqu32 for ↵Craig Topper2018-01-1817-115/+116
| | | | | | | | integer vector loads. These patterns were just looking for a vXi64 bitcasted to vXi32, but there is no advantage to using vmovdqa32 over vmovdqa64. llvm-svn: 322819
OpenPOWER on IntegriCloud