- Jun 13, 2016
-
-
Richard Smith authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272575 91177308-0d34-0410-b5e6-96231b3b80d8
-
Artem Belevich authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272573 91177308-0d34-0410-b5e6-96231b3b80d8
-
Taewook Oh authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272572 91177308-0d34-0410-b5e6-96231b3b80d8
-
Samuel Antao authored
Summary: This patch introduces the concept of offloading tool chain and offloading kind. Each tool chain may have associated an offloading kind that marks it as used in a given programming model that requires offloading. It also adds the logic to iterate on the tool chains based on the kind. Currently, only CUDA is supported, but in general a programming model (an offloading kind) may have associated multiple tool chains that require supporting offloading. This patch does not add tests - its goal is to keep the existing functionality. This patch is the first of a series of three that attempts to make the current support of CUDA more generic and easier to extend to other programming models, namely OpenMP. It tries to capture the suggestions/improvements/concerns on the initial proposal in http://lists.llvm.org/pipermail/cfe-dev/2016-February/047547.html. It only tackles the more consensual part of the proposal, i.e.does not address the problem of intermediate files bundling yet. Reviewers: ABataev, jlebar, echristo, hfinkel, tra Subscribers: guansong, Hahnfeld, andreybokhanko, tcramer, mkuron, cfe-commits, arpith-jacob, carlo.bertolli, caomhin Differential Revision: http://reviews.llvm.org/D18170 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272571 91177308-0d34-0410-b5e6-96231b3b80d8
-
Martin Probst authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272569 91177308-0d34-0410-b5e6-96231b3b80d8
-
Paul Robinson authored
This is the same tactic used in linux-header-search.cpp. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272568 91177308-0d34-0410-b5e6-96231b3b80d8
-
David Majnemer authored
There is no need to use a target-specific intrinsic to implement _bit_scan_forward or _bit_scan_reverse, reimplementing them using generic intrinsics makes it more likely that the middle end will understand what's going on. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272564 91177308-0d34-0410-b5e6-96231b3b80d8
-
Taewook Oh authored
Use the name of the file on disk to issue a new diagnostic about non-portable #include and #import paths. Differential Revision: http://reviews.llvm.org/D19843 Corresponding LLVM change: http://reviews.llvm.org/D19842 Re-commit after addressing issues with of generating too many warnings for Windows and asan test failures. Patch by Eric Niebler git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272562 91177308-0d34-0410-b5e6-96231b3b80d8
-
Martin Probst authored
Summary: There's no convention of avoiding the nested indentation. Reviewers: djasper Subscribers: klimek, alexeagle, cfe-commits Differential Revision: http://reviews.llvm.org/D21275 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272559 91177308-0d34-0410-b5e6-96231b3b80d8
-
Martin Probst authored
Summary: When turned on, clang-format wraps JavaScript imports (and importing exports), instead of forcing the entire import statement onto one line. Reviewers: djasper Subscribers: klimek, cfe-commits Differential Revision: http://reviews.llvm.org/D21273 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272558 91177308-0d34-0410-b5e6-96231b3b80d8
-
Roger Ferrer Ibanez authored
This patch implements PR#22821. Taking the address of a packed member is dangerous since the reduced alignment of the pointee is lost. This can lead to memory alignment faults in some architectures if the pointer value is dereferenced. This change adds a new warning to clang emitted when taking the address of a packed member. A packed member is either a field/data member declared as attribute((packed)) or belonging to a struct/class declared as such. The associated flag is -Waddress-of-packed-member Differential Revision: http://reviews.llvm.org/D20561 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272552 91177308-0d34-0410-b5e6-96231b3b80d8
-
Asaf Badouh authored
CR: Michael Zuckerman git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272549 91177308-0d34-0410-b5e6-96231b3b80d8
-
Daniel Jasper authored
Seems this isn't generally desirable. Before: int const * a; After: int const* a; git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272548 91177308-0d34-0410-b5e6-96231b3b80d8
-
Simon Pilgrim authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272541 91177308-0d34-0410-b5e6-96231b3b80d8
-
Simon Pilgrim authored
We can now use __builtin_nontemporal_store instead of target specific builtins for naturally aligned nontemporal stores which avoids the need for handling in CGBuiltin.cpp The scalar integer nontemporal (unaligned) store builtins will have to wait as __builtin_nontemporal_store currently assumes natural alignment and doesn't accept the 'packed struct' trick that we use for normal unaligned load/stores. The nontemporal loads require further backend support before we can safely convert them to __builtin_nontemporal_load Differential Revision: http://reviews.llvm.org/D21272 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272540 91177308-0d34-0410-b5e6-96231b3b80d8
-
Daniel Jasper authored
Before: returnsFunction (¶m1, ¶m2)(param); After: returnsFunction(¶m1, ¶m2)(param); git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272538 91177308-0d34-0410-b5e6-96231b3b80d8
-
Daniel Jasper authored
Before (when aligning & to the right): SomeType MemberFunction(const Deleted &) const&; After: SomeType MemberFunction(const Deleted &) const &; This also applies to variable declarations, e.g.: int const * a; However, this form is very uncommon (most people would write "const int* a" instead) and contracting to "const*" might actually send the wrong signal of what the const binds to. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272537 91177308-0d34-0410-b5e6-96231b3b80d8
-
Daniel Jasper authored
Before: auto s = sizeof...(Ts)-1; After: auto s = sizeof...(Ts) - 1; git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272536 91177308-0d34-0410-b5e6-96231b3b80d8
-
Daniel Jasper authored
Before: []() // -> int { return 1; // }; After: []() // -> int { return 1; // }; git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272535 91177308-0d34-0410-b5e6-96231b3b80d8
-
NAKAMURA Takumi authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272534 91177308-0d34-0410-b5e6-96231b3b80d8
-
Craig Topper authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272532 91177308-0d34-0410-b5e6-96231b3b80d8
-
Mike Spertus authored
Create a special visualizer for OpaquePtr<QualType> because the standard visualizer doesn't work with OpaquePtr<QualType> due to QualType being heavily dependent on traits to be pointer-like. Also, created an identical visualizer for UnionOpaquePtr git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272531 91177308-0d34-0410-b5e6-96231b3b80d8
-
Devin Coughlin authored
This is a speculative attempt to fix the compiler error: "list initialization inside member initializer list or non-static data member initializer is not implemented" with r272529. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272530 91177308-0d34-0410-b5e6-96231b3b80d8
-
Devin Coughlin authored
This commit adds a static analysis checker to verify the correct usage of the MPI API in C and C++. This version updates the reverted r271981 to fix a memory corruption found by the ASan bots. Three path-sensitive checks are included: - Double nonblocking: Double request usage by nonblocking calls without intermediate wait - Missing wait: Nonblocking call without matching wait. - Unmatched wait: Waiting for a request that was never used by a nonblocking call Examples of how to use the checker can be found at https://github.com/0ax1/MPI-Checker A patch by Alexander Droste! Reviewers: zaks.anna, dcoughlin Differential Revision: http://reviews.llvm.org/D21081 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272529 91177308-0d34-0410-b5e6-96231b3b80d8
-
Martin Probst authored
Summary: Do not insert whitespace preceding the "!" postfix operator. This is an incomplete fix, but should cover common usage. Reviewers: djasper Subscribers: cfe-commits, klimek Differential Revision: http://reviews.llvm.org/D21204 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272524 91177308-0d34-0410-b5e6-96231b3b80d8
-
Mike Spertus authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272522 91177308-0d34-0410-b5e6-96231b3b80d8
-
Mike Spertus authored
Does a good job with type and non-type template arguments and lays the groundwork for template template arguments to visualize well once there is a TemplateName visualizer. Also fixed what looks like an incorrect comment in the header for ParsedTemplate.h. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272521 91177308-0d34-0410-b5e6-96231b3b80d8
-
- Jun 12, 2016
-
-
Benjamin Kramer authored
This mostly affects smart pointers. No functionality change intended. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272520 91177308-0d34-0410-b5e6-96231b3b80d8
-
Mike Spertus authored
Better than nothing... git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272518 91177308-0d34-0410-b5e6-96231b3b80d8
-
Craig Topper authored
[CodeGen] Update to use an ArrayRef of uint32_t instead of int in calls to CreateShuffleVector to match llvm interface change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272492 91177308-0d34-0410-b5e6-96231b3b80d8
-
Simon Pilgrim authored
Ready for matching with llvm/test/CodeGen/X86/bmi-intrinsics-fast-isel.ll (to be added shortly) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272490 91177308-0d34-0410-b5e6-96231b3b80d8
-
- Jun 11, 2016
-
-
Mike Spertus authored
Created a visualizer for ActionResult that displayed the validity and the pointer, but many of them initially displayed poorly. It turns out that the primary culprit is that LocInfoType is often passed in an action result, but it is not the same as other types. For example, LocInfoType is not in TypeNodes.def and clang::Type::TypeClass does not have a LocInfoType enum. After adding a special visualizer for LocInfoType, the display was more useful git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272487 91177308-0d34-0410-b5e6-96231b3b80d8
-
Faisal Vali authored
The bug report by Gonzalo (https://llvm.org/bugs/show_bug.cgi?id=27507 -- which results in clang crashing when generic lambdas that capture 'this' are instantiated in contexts where the Functionscopeinfo stack is not in a reliable state - yet getCurrentThisType expects it to be) - unearthed some additional bugs in regards to maintaining proper cv qualification through 'this' when performing by value captures of '*this'. This patch attempts to correct those bugs and makes the following changes: o) when capturing 'this', we do not need to remember the type of 'this' within the LambdaScopeInfo's Capture - it is never really used for a this capture - so remove it. o) teach getCurrentThisType to walk the stack of lambdas (even in scenarios where we run out of LambdaScopeInfo's such as when instantiating call operators) looking for by copy captures of '*this' and resetting the type of 'this' based on the constness of that capturing lambda's call operator. This patch has been baking in review-hell for > 6 weeks - all the comments so far have been addressed and the bug (that it addresses in passing, and I regret not submitting as a separate patch initially) has been reported twice independently, so is frequent and important for us not to just sit on. I merged the cv qualification-fix and the PR-fix initially in one patch, since they resulted from my initial implementation of star-this and so were related. If someone really feels strongly, I can put in the time to revert this - separate the two out - and recommit. I won't claim it's immunized against all bugs, but I feel confident enough about the fix to land it for now. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272480 91177308-0d34-0410-b5e6-96231b3b80d8
-
Craig Topper authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272470 91177308-0d34-0410-b5e6-96231b3b80d8
-
Craig Topper authored
[AVX512] Implement masked and 512-bit pshufd intrinsics directly with __builtin_shufflevector and __builtin_ia32_select. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272467 91177308-0d34-0410-b5e6-96231b3b80d8
-
Craig Topper authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272466 91177308-0d34-0410-b5e6-96231b3b80d8
-
Eric Liu authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272465 91177308-0d34-0410-b5e6-96231b3b80d8
-
Chandler Carruth authored
basic block. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272456 91177308-0d34-0410-b5e6-96231b3b80d8
-
Chandler Carruth authored
This reverts commit r272413. The tests here have been failing on several different build bots for over 10 hours. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272454 91177308-0d34-0410-b5e6-96231b3b80d8
-
Chandler Carruth authored
This reverts commit r272386. It doesn't compile with MSVC and those bots have been red the entire day as a consequence. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272453 91177308-0d34-0410-b5e6-96231b3b80d8
-