summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Fix modules build by adding missing includesRaphael Isemann2019-11-192-0/+2
|
* [AMDGPU] Tune inlining parameters for AMDGPU target (part 2)dfukalov2019-11-195-4/+11
| | | | | | | | | | | | | | | | | Summary: Most of IR instructions got better code size estimations after commit 47a5c36b. So default parameters values should be updated to improve inlining and unrolling for the target. Reviewers: rampitec, arsenm Reviewed By: rampitec Subscribers: kzhuravl, jvesely, wdng, nhaehnle, yaxunl, dstuttard, tpr, t-tye, hiraditya, zzheng, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D70391
* [NFC][X86] Fixup comment in CodeGen/X86/cmov.llRoman Lebedev2019-11-191-2/+0
| | | | | As noted in post-commit review for https://reviews.llvm.org/D59035#inline-631659
* [ARM] Regenerate vector lane store testsSimon Pilgrim2019-11-191-98/+285
|
* [PowerPC] Regenerate vsx_insert_extract_le.ll testsSimon Pilgrim2019-11-191-12/+17
|
* Revert "[RISCV] Support mutilib in baremetal environment"Nico Weber2019-11-1929-201/+11
| | | | | This reverts commit b6d7bbfa004310777cd41448ffc377aea082fc8c. Driver/riscv64-toolchain.c fails on Windows.
* [ThinLTO] Simplify code. NFCevgeny2019-11-191-5/+4
|
* [lldb] Also test Get[De]mangledName of SBType in TestSBTypeClassMembers.pyRaphael Isemann2019-11-191-0/+14
| | | | | | I just used the mangled names as this test is anyway a Darwin-only ObjC++ test. We probably should also test this on other platforms but that will be another commit as we need to untangle the ObjC and C++ parts first.
* [clang-tidy] modernize-use-override new option AllowOverrideAndFinalMitchell Balan2019-11-195-4/+63
| | | | | | | | | | | | | | | | | | | Summary: In addition to adding `override` wherever possible, clang-tidy's `modernize-use-override` nicely removes `virtual` when `override` or `final` is specified, and further removes override when final is specified. While this is great default behavior, when code needs to be compiled with gcc at high warning levels that include `gcc -Wsuggest-override` or `gcc -Werror=suggest-override`, clang-tidy's removal of the redundant `override` keyword causes gcc to emit a warning or error. This discrepancy / conflict has been noted by others including a comment on Stack Overflow and by Mozilla's Firefox developers. This patch adds an AllowOverrideAndFinal option defaulting to 0 - thus preserving current behavior - that when enabled allows both `override` and `final` to co-exist, while still fixing all other issues. The patch includes a test file verifying all combinations of virtual/override/final, and mentions the new option in the release notes. Reviewers: alexfh, djasper, JonasToth Patch by: poelmanc Subscribers: JonasToth, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D70165
* [clang-tidy] Fix readability-redundant-string-init for c++17/c++2aMitchell Balan2019-11-193-9/+18
| | | | | | | | | | | | | | | | | | | Summary: `readability-redundant-string-init` was one of several clang-tidy checks documented as failing for C++17. (The failure mode in C++17 is that it changes `std::string Name = ""`; to `std::string Name = Name;`, which actually compiles but crashes at run-time.) Analyzing the AST with `clang -Xclang -ast-dump` showed that the outer `CXXConstructExprs` that previously held the correct SourceRange were being elided in C++17/2a, but the containing `VarDecl` expressions still had all the relevant information. So this patch changes the fix to get its source ranges from `VarDecl`. It adds one test `std::string g = "u", h = "", i = "uuu", j = "", k;` to confirm proper warnings and fixit replacements in a single `DeclStmt` where some strings require replacement and others don't. The readability-redundant-string-init.cpp and readability-redundant-string-init-msvc.cpp tests now pass for C++11/14/17/2a. Reviewers: gribozavr, etienneb, alexfh, hokein, aaron.ballman, gribozavr2 Patch by: poelmanc Subscribers: NoQ, MyDeveloperDay, Eugene.Zelenko, dylanmckay, cfe-commits Tags: #clang, #clang-tools-extra Differential Revision: https://reviews.llvm.org/D69238
* Revert "[clang-tidy] modernize-use-override new option AllowOverrideAndFinal"Mitchell Balan2019-11-193-18/+9
| | | | This reverts commit 50e99563fb0459f5160572eef3c4e6062b8ad3f2.
* Revert "[clang-tidy] Fix readability-redundant-string-init for c++17/c++2a"Mitchell Balan2019-11-194-23/+4
| | | | This reverts commit 06f3dabe4a2e85a32ade27c0769b6084c828a206.
* [llvm-objdump] Print relocation addends in hexadecimalDavid Bozier2019-11-1913-62/+171
| | | | | | | | | | | | | | Summary: Matches GNU objdump. Makes debugging easier for me as I'm working out addresses from symbol+addend, so it would be good to be calculating in a single format. Reviewers: MaskRay, grimar, jhenderson, bd1976llvm Reviewed By: jhenderson Subscribers: sdardis, jrtc27, atanasyan, rupprecht, seiya, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D69997
* [X86][SSE] Remove XFormVExtractWithShuffleIntoLoad to prevent legalization ↵Simon Pilgrim2019-11-195-139/+83
| | | | | | | | infinite loops (PR43971) As detailed in PR43971/D70267, the use of XFormVExtractWithShuffleIntoLoad causes issues where we end up in infinite loops of extract(targetshuffle(vecload)) -> extract(shuffle(vecload)) -> extract(vecload) -> extract(targetshuffle(vecload)), there are just too many legalization checks at every stage that we can't guarantee that extract(shuffle(vecload)) -> scalarload can occur. At the moment we see a number of minor regressions as we don't fold extract(shuffle(vecload)) -> scalarload before legal ops, these can be addressed in future patches and extension of X86ISelLowering's combineExtractWithShuffle.
* [lldb] Remove ClangExpressionDeclMap::ResolveUnknownTypesRaphael Isemann2019-11-194-93/+1
| | | | | | | | | | | | | | | | | | | | | Summary: This is some really shady code. It's supposed to kick in after an expression already failed and then try to look up "unknown types" that for some undocumented reason can't be resolved during/before parsing. Beside the fact that we never mark any type as `EVUnknownType` in either swift-lldb or lldb (which means this code is unreachable), this code doesn't even make the expression evaluation succeed if if would ever be executed but instead seems to try to load more debug info that maybe any following expression evaluations might succeed. This patch removes ClangExpressionDeclMap::ResolveUnknownTypes and the related data structures/checks/calls. Reviewers: davide Reviewed By: davide Subscribers: aprantl, abidh, JDevlieghere, lldb-commits Tags: #lldb Differential Revision: https://reviews.llvm.org/D70388
* Fix PR44001: assert failure in getFunctionLocalOffsetAfterInsnThomas Preud'homme2019-11-192-6/+100
| | | | | | | | | | | | | | | | | | | | | | | | | | Summary: Assert in getFunctionLocalOffsetAfterInsn() fails when processing a call MachineInstr inside a bundle and compiling with debug info. This is because labels are added by DwarfDebug::beginInstruction() which is called for each top-level MI by EmitFunctionBody()'s for-loop iteration but constructCallSiteEntryDIEs() which calls getFunctionLocalOffsetAfterInsn() iterates over all MIs. This commit modifies constructCallSiteEntryDIEs() to get the associated bundle MI for call MIs inside a bundle and use that to when calling getFunctionLocalOffsetAfterInsn() and getLabelAfterInsn(). It also skips loop iterations for bundle MIs since the loop statements are concerned with debug info for each physical instructions and bundles represent a group of instructions. It also fix the comment about PCAddr since the code is getting the return address and not the call address. Reviewers: dstenb, vsk, aprantl, djtodoro, dblaikie, NikolaPrica Subscribers: hiraditya, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D70293
* [mips] Joint MipsMemSimmXXXAsmOperand into the single template class. NFCSimon Atanasyan2019-11-192-60/+14
|
* gn build: Merge e8a4c74f115LLVM GN Syncbot2019-11-191-0/+1
|
* [clang-tidy] Added DefaultOperatorNewCheck.Balázs Kéri2019-11-199-5/+193
| | | | | | | | | | | | | | | | Summary: Added new checker 'cert-default-operator-new' that checks for CERT rule MEM57-CPP. Simple version. Reviewers: aaron.ballman, alexfh, JonasToth, lebedev.ri Reviewed By: aaron.ballman Subscribers: hiraditya, martong, mehdi_amini, mgorny, inglorion, xazax.hun, dkrupp, steven_wu, dexonsmith, Szelethus, gamesh411, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D67545
* [DependenceAnalysis] Dependecies for loads marked with "ivnariant.load" ↵Evgeniy Brevnov2019-11-191-6/+19
| | | | | | | | | | | | | | | | | | | should not be shared with general accesses. Fix for https://bugs.llvm.org/show_bug.cgi?id=42151 Summary: Dependence anlysis has a mechanism to cache results. Thus for particular memory access the cache keep track of side effects in basic blocks. The problem is that for invariant loads dependepce analysis legally ignores many dependencies due to a special semantic rules for such loads. But later results calculated for invariant load retrived from the cache for general case acceses. As a result we have wrong dependence information causing GVN to do illegal transformation. Fixes, T42151. Proposed solution is to disable caching of invariant loads. I think such loads a pretty rare and it doesn't make sense to extend caching mechanism for them. Reviewers: reames, chandlerc, skatkov, morisset, jdoerfert Reviewed By: reames Subscribers: hiraditya, test, jdoerfert, lebedev.ri, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D64405
* [RISCV] Support mutilib in baremetal environmentZakk Chen2019-11-1929-11/+201
| | | | | | | | | | Currently only support the set of multilibs same to riscv-gnu-toolchain. Reviewers: espindola, asb, kito-cheng, lenary Reviewed By: lenary Differential Revision: https://reviews.llvm.org/D67508
* [ThinLTO] Make ValueInfo::operator bool() explicitevgeny2019-11-193-9/+32
| | | | Differential revision: https://reviews.llvm.org/D70383
* [libunwind] Adjust the signal_frame test for ArmMikhail Maltsev2019-11-191-1/+7
| | | | | | | | | | | | | | | | | | | | Summary: This patch adjusts the signal_frame.pass.cpp to pass on Arm targets: * When Arm EHABI is used the unwinder does not use DWARF, hence the DWARF-specific check unw_is_signal_frame() must be disabled. * Certain C libraries don't include EH tables, so the unwinder must not try to step out of main(). The patch moves the test code out of main() into a separate function to avoid this. Reviewers: saugustine, ostannard, phosek, jfb, mclow.lists Reviewed By: saugustine Subscribers: dexonsmith, aprantl, kristof.beyls, christof, libcxx-commits, pbarrio, labrinea Tags: #libc Differential Revision: https://reviews.llvm.org/D70397
* gn build: Merge c0fc29c4684LLVM GN Syncbot2019-11-191-0/+1
|
* gn build: Merge 39285a0f02cLLVM GN Syncbot2019-11-192-0/+2
|
* [kate] Add various missing keywordsSven van Haastregt2019-11-191-0/+14
| | | | Patch by Pedro Olsen Ferreira.
* [clangd] Fix hover 'local scope' to include class template paramsSam McCall2019-11-192-11/+11
| | | | | | | | | | | | Summary: Fixes the last part of https://github.com/clangd/clangd/issues/76 Reviewers: kadircet Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, usaxena95, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D70325
* Mark PR44037 tests as XFAIL on AArch64 Linux dwoDiana Picus2019-11-194-1/+24
| | | | | | | | | | | | These tests are failing with various assertion failures, but they all throw the following error message first: error: a.out 0x0000002d: adding range [0x14-0x24) which has a base that is less than the function's low PC 0x40060c. See llvm.org/pr44037. Differential Revision: https://reviews.llvm.org/D70381
* [clangd] More sensible output for constructors/destructors in hover.Sam McCall2019-11-194-41/+68
| | | | | | | | | | | | | | Summary: Previously: both had type void() and return type void. Now: neither have a type. Constructors return T, destructors return void. Reviewers: hokein Subscribers: merge_guards_bot, ilya-biryukov, MaskRay, jkorous, arphaman, kadircet, usaxena95, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D70317
* [clangd] Fix ps4 buildbot failure.Haojian Wu2019-11-191-2/+0
| | | | | dynamic_cast on ps4 buildbot seems relying on rtti flag which is off by default. Remove the dynamic_cast in the tests.
* Revert "gn build: (manually) try to merge 1689ad27af"Nico Weber2019-11-191-2/+0
| | | | | This reverts commit e4ec2ecf6d4768d681a89263c0a4d29a7b7761ad. 1689ad27af was reverted as well.
* Add streaming/equality operators to DWARFAddressRange/DWARFLocationExpressionPavel Labath2019-11-196-2/+72
| | | | | | | The main motivation for this is being able to write simpler assertions and get better error messages in unit tests. Split off from D70394.
* Add operator<< for object::SectionedAddressPavel Labath2019-11-194-0/+30
| | | | | | The main motivation for this is better failure messages in unit tests. Split off from D70394.
* Reland "[clangd] Implement rename by using SelectionTree and ↵Haojian Wu2019-11-192-48/+459
| | | | | | | | | findExplicitReferences." this reland the commit 4f80fc2491cc35730a9a84b86975278b7daa8522 which has been reverted at f805c60a093325c16ce4200d2615ef48555d9cb8. Fixed windows buildbot failure (by adding -fno-delayed-template-parsing flag).
* [APInt] add wrap support for `setBits` and `getBitsSet`czhengsz2019-11-192-2/+63
| | | | | | | | Add two new interfaces getBitsSet and getBitsSetWithWrap Reviewed by: lebedev.ri, craig.topper Differential Revision: https://reviews.llvm.org/D69032
* [ARM][MVE] Enable narrow vectors for tail predSam Parker2019-11-194-267/+838
| | | | | | | | Remove the restriction, from the mve tail predication pass, that the all masked vectors instructions need to be 128-bits. This allows us to supported extending loads and truncating stores. Differential Revision: https://reviews.llvm.org/D69946
* [clang-format] [NFC] add recent changes to release notesmydeveloperday2019-11-191-12/+30
| | | | | | | | | | | | | | Summary: clang-tidy keeps nice release notes of what is added, have clang-format do the same. Reviewers: klimek, mitchell-stellar, sylvestre.ledru, sammccall Reviewed By: mitchell-stellar Subscribers: merge_guards_bot, Eugene.Zelenko, cfe-commits Tags: #clang-format, #clang Differential Revision: https://reviews.llvm.org/D70355
* [NFC] Test commit. Please ignore.Evgeniy Brevnov2019-11-191-1/+1
| | | | | As a test commit I fixed a misspelling in one of comments in SLP vectorizer.
* Revert 1689ad27af5 "[builtins] Implement rounding mode support for i386/x86_64"Hans Wennborg2019-11-194-44/+2
| | | | | | | | It broke the build with MSVC: fp_mode.c(20): error C2065: '__asm__': undeclared identifier > Differential Revision: https://reviews.llvm.org/D69870
* [ARM][MVE] Tail predication conversionSam Parker2019-11-196-186/+461
| | | | | | | | | | | | | | | This patch modifies ARMLowOverheadLoops to convert a predicated vector low-overhead loop into a tail-predicatd one. This is currently a very basic conversion, with the following restrictions: - Operates only on single block loops. - The loop can only contain a single vctp instruction. - No other instructions can write to the vpr. - We only allow a subset of the mve instructions in the loop. TODO: Pass the number of elements, not the number of iterations to dlstp/wlstp. Differential Revision: https://reviews.llvm.org/D69945
* [X86] Add more addcarry testsPaweł Bylica2019-11-192-0/+298
| | | | | | | | | | | | | | Summary: More addcarry tests for incoming https://reviews.llvm.org/D70079. Reviewers: davezarzycki, RKSimon, spatel, craig.topper Reviewed By: spatel Subscribers: craig.topper, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D70237
* [lldb-server] Use LLDB_LOG_ERROR to consume Error<> even if logging is disabledMartin Storsjö2019-11-193-12/+12
| | | | Differential Revision: https://reviews.llvm.org/D70386
* Revert "[clang][IFS] Driver pipeline: generate interface stubs after ↵Puyan Lotfi2019-11-196-123/+37
| | | | | | | | | standard pipeline." This reverts commit 58ea00b51fe9b011301484957556872fced7dd08. Test for .o + .ifs sidecar files is brittle and failing on bots. Reverting to unblock.
* [clang][IFS] Driver pipeline: generate interface stubs after standard pipeline.Puyan Lotfi2019-11-196-37/+123
| | | | | | | | | | | | | | | | | Up until now, clang interface stubs has replaced the standard PP -> C -> BE -> ASM -> LNK pipeline. With this change, it will happen in conjunction with it. So what when you build your code you will get an a.out or lib.so as well as an interface stub file. Example: clang -shared -o libfoo.so -emit-interface-stubs ... will generate both a libfoo.so and a libfoo.ifso. The .so file will contain the code from the standard compilation pipeline and the .ifso file will contain the ELF stub library. Differential Revision: https://reviews.llvm.org/D70274
* AMDGPU: Split test functions to avoid dependency on subtargetMatt Arsenault2019-11-191-57/+155
| | | | | Prepare this test for moving tthe denormal setting out of the subtarget features.
* bugpoint: Add option to disable attribute removalMatt Arsenault2019-11-192-27/+37
| | | | | | | This takes a long time and never reduces anything useful for me (e.g. I've been waiting for 3 hours on a testcase and it hasn't found any attributes to remove yet). This should probably start by assuming no attributes matter, and adding back.
* [SelectionDAG] Merge the two identical ExpandChainLibCall methods from ↵Craig Topper2019-11-186-82/+47
| | | | | | | | | | | | | | LegalizeTypes and LegalizeDAG to one version in TaretLowering. Reviewers: RKSimon, efriedma, spatel Reviewed By: efriedma Subscribers: hiraditya, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D70354
* Revert "implement printing out raw section data of xcoff objectfile for ↵Leonard Chan2019-11-183-107/+8
| | | | | | | | llvm-objdump" This reverts commit 8f8a9f3437d4517f674395da30edb59d5514f7bc. Reverting since this patch seems to break a lot of llvm buildbots.
* Revert "Fix shared lib build."Rui Ueyama2019-11-192-4/+2
| | | | | | | This reverts commit 17e37ba57a696198c9744eeba4f8f293f155587a because it introduced a circular dependency between Core and Common. Because d0371f473675ede1d79a615ec4fdf0cf5368944c fixed a build issue, we no longer need that dependency.
* Fix component buildRui Ueyama2019-11-197-25/+25
| | | | | b11386f9be9b2dc7276a758d64f66833da10bdea broke lld build if `-DBUILD_SHARED_LIBS=ON` is passed to CMake.
OpenPOWER on IntegriCloud