summaryrefslogtreecommitdiffstats
path: root/clang
Commit message (Collapse)AuthorAgeFilesLines
...
* Revert "[CodeView] Add option to disable inline line tables."Amy Huang2019-10-306-40/+0
| | | | | | because it breaks compiler-rt tests. This reverts commit 6d03890384517919a3ba7fe4c35535425f278f89.
* [CodeView] Add option to disable inline line tables.Amy Huang2019-10-306-0/+40
| | | | | | | | | | | | | | | | | Summary: This adds a clang option to disable inline line tables. When it is used, the inliner uses the call site as the location of the inlined function instead of marking it as an inline location with the function location. See https://bugs.llvm.org/show_bug.cgi?id=42344 Reviewers: rnk Subscribers: hiraditya, cfe-commits, llvm-commits Tags: #clang, #llvm Differential Revision: https://reviews.llvm.org/D67723
* [clang][ScanDeps] Fix shadowing warning.Michael Spencer2019-10-301-5/+5
|
* Disable new clang-scan-deps test on Windows due to backslash path matching ↵Reid Kleckner2019-10-301-0/+3
| | | | problems
* [clang][clang-scan-deps] Add support for extracting full module dependencies.Michael Spencer2019-10-3011-25/+470
| | | | | | | | | | | This is a recommit of d8a4ef0e685c with the nondeterminism fixed. This adds experimental support for extracting a Clang module dependency graph from a compilation database. The output format is experimental and will change. It is currently a concatenation of JSON outputs for each compilation. Future patches will change this to deduplicate modules between compilations. Differential Revision: https://reviews.llvm.org/D69420
* Revert "[clang][clang-scan-deps] Add support for extracting full module ↵Michael Spencer2019-10-3011-470/+25
| | | | | | | | dependencies." This reverts commit d8a4ef0e685cec1fc73d4953b48220b649d05b40. This commit broke some of the bots. I believe it's due to nondeterminism. Will fix and recommit.
* [MS] Don't reference deleted copy ctors from catchable typesReid Kleckner2019-10-302-1/+28
| | | | | | | | | | | When throwing objects with deleted copy constructors, the copy ctor field of the catchable type should remain null and the mangle name changes. This already worked in simple cases, but in cases involving non-trivial subobjects, sometimes LookupCopyingConstructor could return a non-null but deleted constructor decl. Skip those and don't reference them. Fixes PR43680
* [clang][clang-scan-deps] Add support for extracting full module dependencies.Michael Spencer2019-10-3011-25/+470
| | | | | | | | | This adds experimental support for extracting a Clang module dependency graph from a compilation database. The output format is experimental and will change. It is currently a concatenation of JSON outputs for each compilation. Future patches will change this to deduplicate modules between compilations. Differential Revision: https://reviews.llvm.org/D69420
* Fix __attribute__((enable_if)) to treat arguments with side-effects asRichard Smith2019-10-302-12/+57
| | | | | | | | non-constant. We previously failed the entire condition evaluation if an unmodeled side-effect was encountered in an argument, even if that argument was unused in the attribute's condition.
* [clang][llvm] Obsolete Exynos M1 and M2Evandro Menezes2019-10-306-79/+1
|
* Revert "[NFC] Rename LLVM_NO_DEAD_STRIP"David Tenty2019-10-301-2/+2
| | | | This reverts commit 11c2a85db8849db1a5907e80d9966592248ef825.
* Fix readability-identifier-naming to prevent variables becoming keywords.Daniel2019-10-301-0/+2
| | | | | Do not provide a fix-it when clang-tidy encounters a name that would become a keyword.
* [clang][driver][flang] Mark test as unsupported on darwinPeter Waller2019-10-301-0/+4
| | | | | | | D63607 made mac builders unhappy by failing this test, and it isn't yet obvious why. Mark as unsupported as a temporary measure. Signed-off-by: Peter Waller <peter.waller@arm.com>
* Updating the documentation for the _Noreturn attribute; NFC.Aaron Ballman2019-10-301-1/+3
|
* [OPENMP][DOC]Provide correct info about supported features, NFC.Alexey Bataev2019-10-301-23/+2
| | | | | | | Removed the explicit list of supported features from OpenMP 5.0 and used the reference to the table instead. Also, fixed info about constructs that can be executed in SPMD mode, if and num_threads clauses do not affect it anymore.
* [OPENMP][DOC]Update list of supported functions, NFC.Alexey Bataev2019-10-301-2/+2
| | | | Added support for parallel master taskloop simd construct.
* [OPENMP50]Add support for parallel master taskloop simd directive.Alexey Bataev2019-10-3046-19/+5971
| | | | Added full support for parallel master taskloop simd directive.
* [ASTImporter] Add support for BuiltinTemplateDeclRaphael Isemann2019-10-303-0/+62
| | | | | | | | | | | | | | | | | Summary: That decl kind is currently not implemented. BuiltinTemplateDecl is for decls that are hardcoded in the ASTContext, so we can import them like we do other builtin decls by just taking the equivalent decl from the target ASTContext. Reviewers: martong, a.sidorin, shafik Reviewed By: martong, shafik Subscribers: rnkovacs, kristina, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D69566
* Rename a flang test caseJeremy Morse2019-10-302-2/+2
| | | | | | On Windows and macOS, the filesystem is case insensitive, and these files interfere with each other. Reading through, the case of the file extension is part of the test. I've altered the rest of the name instead.
* [clang][driver] Add basic --driver-mode=flang support for fortranPeter Waller2019-10-3018-21/+322
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds a new Flang mode. When in Flang mode, the driver will invoke flang for fortran inputs instead of falling back to the GCC toolchain as it would otherwise do. The behaviour of other driver modes are left unmodified to preserve backwards compatibility. It is intended that a soon to be implemented binary in the flang project will import libclangDriver and run the clang driver in the new flang mode. Please note that since the binary invoked by the driver is under development, there will no doubt be further tweaks necessary in future commits. * Initial support is added for basic driver phases * -E, -fsyntax-only, -emit-llvm -S, -emit-llvm, -S, (none specified) * -### tests are added for all of the above * This is more than is supported by f18 so far, which will emit errors for those options which are unimplemented. * A test is added that ensures that clang gives a reasonable error message if flang is not available in the path (without -###). * Test that the driver accepts multiple inputs in --driver-mode=flang. * Test that a combination of C and Fortran inputs run both clang and flang in --driver-mode=flang. * clang/test/Driver/fortran.f95 is fixed to use the correct fortran comment character. Differential revision: https://reviews.llvm.org/D63607
* Suppress useless GCC "bitfield is too small to hold all values of enum ↵Richard Smith2019-10-291-1/+1
| | | | class" warning.
* [MS] Fix constexpr data member pointer conversionsReid Kleckner2019-10-292-2/+45
| | | | | | | | | | | | | | | Constexpr data member conversions work by starting with the class that originally introduced the field, and converting from there to the type that the user desires. Before this change, Clang was using the inheritance model from the final destination class type instead of the model from the class that originally introduced the field. To fix this, find the relevant FieldDecl and take its parent class instead of using the member pointer type the user provided. Indirect field decls require some special handling to find the parent class. Fixes PR43803
* Thread safety analysis: Peel away NoOp implicit casts in initializersAaron Puchert2019-10-302-0/+17
| | | | | | | | | | | | Summary: This happens when someone initializes a variable with guaranteed copy elision and an added const qualifier. Fixes PR43826. Reviewers: aaron.ballman, rsmith Reviewed By: aaron.ballman Differential Revision: https://reviews.llvm.org/D69533
* Replace std::function in PrintingPolicy with a callbacks object.Richard Smith2019-10-294-11/+29
| | | | | This makes PrintingPolicy significantly more lightweight and provides groundwork for more printing customization hooks.
* [Headers] Fix compatibility between arm_acle.h and intrin.hEli Friedman2019-10-292-0/+8
| | | | | | Make sure they don't both define __nop. Differential Revision: https://reviews.llvm.org/D69012
* Accept __is_same_as as a GCC-compatibility synonym for the proper trait name ↵Richard Smith2019-10-294-0/+8
| | | | __is_same.
* [DWARF5] Added support for deleted C++ special member functions.Adrian Prantl2019-10-292-0/+54
| | | | | | | | | | This patch adds support for deleted C++ special member functions in clang and llvm. Also added Defaulted member encodings for future support for defaulted member functions. Patch by Sourabh Singh Tomar! Differential Revision: https://reviews.llvm.org/D69215
* Fix argument numbering confusion when diagnosing a non-viable operator().Richard Smith2019-10-292-2/+11
| | | | | This could lead to crashes if operator() is a variadic template, as we could end up asking for an out-of-bounds argument.
* Revert "[clang-format] Remove the dependency on frontend"Vlad Tsyrklevich2019-10-292-26/+15
| | | | | | This reverts commit ec66603ac7ea655be5c2c5f508c5bf0d5eaeb65b. It was causing ubsan failures like the following on the ubsan bot: llvm/lib/Support/SourceMgr.cpp:440:48: runtime error: pointer index expression with base 0x000000000000 overflowed to 0xfffffffffffffffa
* isBuiltinFunc() uses StringRef instead of const char*Guillaume Chatelet2019-10-293-4/+3
| | | | | | | | | | | | Summary: This prevents a bug when passing nullptr, StringRef ctor would call strlen(nullptr). Reviewers: vlad.tsyrklevich Subscribers: cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D69569
* Fix missing memcpy builtin on ppc64beGuillaume Chatelet2019-10-292-0/+2
| | | | See D68028
* [clang] Add no_builtin attributeGuillaume Chatelet2019-10-2910-4/+269
| | | | | | | | | | | | | | | | Summary: This is a follow up on https://reviews.llvm.org/D61634 This patch is simpler and only adds the no_builtin attribute. Reviewers: tejohnson, courbet, theraven, t.p.northover, jdoerfert Subscribers: mgrang, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D68028 This is a re-submit after it got reverted in https://reviews.llvm.org/rGbd8791610948 since the breakage doesn't seem to come from this patch.
* [OPENMP]Fix PR43772: No warning in non-combined target regions.Alexey Bataev2019-10-295-7/+38
| | | | | | Need to analyze inner target regions in case of implicit mapping of the data members when target region is created in one of the class member functions.
* [Hexagon] Handle remaining registers in getRegisterByName()Krzysztof Parzyszek2019-10-291-1/+4
| | | | This fixes https://llvm.org/PR43829.
* [clang][clang-scan-deps] Add -fcxx-modules to test for Darwin.Michael Spencer2019-10-281-2/+2
|
* [NFC] Fix some indentation disturbed in D67368Reid Kleckner2019-10-282-74/+73
|
* [Builtins] Teach Clang about memccpyDávid Bolvanský2019-10-283-0/+20
| | | | | | | | | | | | | | Summary: Hopefully, -fno-builtin-memccpy will work now. Required for https://reviews.llvm.org/D67986. Reviewers: aaron.ballman, rsmith Reviewed By: aaron.ballman Subscribers: RKSimon, kristina, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D68377
* Revert "[clang] Add no_builtin attribute"Vlad Tsyrklevich2019-10-2810-269/+4
| | | | | This reverts commit bd87916109483d33455cbf20da2309197b983cdd. It was causing ASan/MSan failures on the sanitizer buildbots.
* Revert "[Concepts] Constraint Enforcement & Diagnostics"Vlad Tsyrklevich2019-10-2823-1059/+133
| | | | | This reverts commit ffa214ef22892d75340dc6720271863901dc2c90, it was causing ASAN test failures on sanitizer-x86_64-linux-bootstrap.
* Revert "Use -fdebug-compilation-dir to form absolute paths in coverage mappings"Reid Kleckner2019-10-283-40/+9
| | | | | | | This reverts commit 9d4806a387892972fd544c0dcaefb0926126220c. There seem to be bugs in llvm-cov --path-equivalence that are causing Chromium problems. Revert this until they are understood or fixed.
* [Driver] Enable ShadowCallStack, not SafeStack, by default on AArch64 FuchsiaLeonard Chan2019-10-282-5/+11
| | | | | | | | | | | Submitted for mcgrathr. On AArch64, Fuchsia fully supports both SafeStack and ShadowCallStack ABIs. The latter is now preferred and will be the default. It's possible to enable both simultaneously, but ShadowCallStack is believed to have most of the practical benefit of SafeStack with less cost. Differential Revision: https://reviews.llvm.org/D66712
* [Remarks] Fix Sphinx formattingFrancis Visoiu Mistrih2019-10-281-0/+3
|
* [Remarks] Add bitstream to the list of supported formats in clangFrancis Visoiu Mistrih2019-10-281-0/+2
|
* Lexer::ReadToEndOfLine - fix Token uninitialised value warnings. NFCI.Simon Pilgrim2019-10-281-0/+1
| | | | Use Token::startToken to initialize Token.
* [OPENMP]Fix PR43771: Do not capture contexprs variables.Alexey Bataev2019-10-282-1/+26
| | | | If the variable is a constexpr variable, it should not be captured in the OpenMP region.
* [clang] Add no_builtin attributeGuillaume Chatelet2019-10-2810-4/+269
| | | | | | | | | | | | | | Summary: This is a follow up on https://reviews.llvm.org/D61634 This patch is simpler and only adds the no_builtin attribute. Reviewers: tejohnson, courbet, theraven, t.p.northover, jdoerfert Subscribers: mgrang, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D68028
* Add Windows Control Flow Guard checks (/guard:cf).Andrew Paverd2019-10-2811-33/+67
| | | | | | | | | | | | | | | | | | | Summary: A new function pass (Transforms/CFGuard/CFGuard.cpp) inserts CFGuard checks on indirect function calls, using either the check mechanism (X86, ARM, AArch64) or or the dispatch mechanism (X86-64). The check mechanism requires a new calling convention for the supported targets. The dispatch mechanism adds the target as an operand bundle, which is processed by SelectionDAG. Another pass (CodeGen/CFGuardLongjmp.cpp) identifies and emits valid longjmp targets, as required by /guard:cf. This feature is enabled using the `cfguard` CC1 option. Reviewers: thakis, rnk, theraven, pcc Subscribers: ychen, hans, metalcanine, dmajor, tomrittervg, alex, mehdi_amini, mgorny, javed.absar, kristof.beyls, hiraditya, steven_wu, dexonsmith, cfe-commits, llvm-commits Tags: #clang, #llvm Differential Revision: https://reviews.llvm.org/D65761
* [ARM][AArch64] Implement __cls, __clsl and __clsll intrinsics from ACLEvhscampos2019-10-287-0/+95
| | | | | | | | | | | | | | | | | | | | | | | | | Summary: Writing support for three ACLE functions: unsigned int __cls(uint32_t x) unsigned int __clsl(unsigned long x) unsigned int __clsll(uint64_t x) CLS stands for "Count number of leading sign bits". In AArch64, these two intrinsics can be translated into the 'cls' instruction directly. In AArch32, on the other hand, this functionality is achieved by implementing it in terms of clz (count number of leading zeros). Reviewers: compnerd Reviewed By: compnerd Subscribers: kristof.beyls, hiraditya, cfe-commits, llvm-commits Tags: #clang, #llvm Differential Revision: https://reviews.llvm.org/D69250
* [ARM][AArch64] Implement __arm_rsrf, __arm_rsrf64, __arm_wsrf & __arm_wsrf64vhscampos2019-10-282-0/+53
| | | | | | | | | | | | | | | | | Summary: Adding support for ACLE intrinsics. Patch by Michael Platings. Reviewers: chill, t.p.northover, efriedma Reviewed By: chill Subscribers: kristof.beyls, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D69297
* [clangd] Do not insert parentheses when completing a using declarationIlya Biryukov2019-10-286-32/+41
| | | | | | | | | | | | | | | | | | Summary: Would be nice to also fix this in clang, but that looks like more work if we want to preserve signatures in informative chunks. Fixes https://github.com/clangd/clangd/issues/118 Reviewers: kadircet Reviewed By: kadircet Subscribers: merge_guards_bot, MaskRay, jkorous, arphaman, usaxena95, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D69382
OpenPOWER on IntegriCloud