- Jan 24, 2017
-
-
Kostya Serebryany authored
[sanitizer-coverage] emit __sanitizer_cov_trace_pc_guard w/o a preceding 'if' by default. Update the docs, also add deprecation notes around other parts of sanitizer coverage git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@292862 91177308-0d34-0410-b5e6-96231b3b80d8
-
Hans Wennborg authored
This re-commits r292522 with the addition that it also handles calls through pointer to member functions without crashing. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@292856 91177308-0d34-0410-b5e6-96231b3b80d8
-
David L. Jones authored
Summary: The LibFunc::Func enum holds enumerators named for libc functions. Unfortunately, there are real situations, including libc implementations, where function names are actually macros (musl uses "#define fopen64 fopen", for example; any other transitively visible macro would have similar effects). Strictly speaking, a conforming C++ Standard Library should provide any such macros as functions instead (via <cstdio>). However, there are some "library" functions which are not part of the standard, and thus not subject to this rule (fopen64, for example). So, in order to be both portable and consistent, the enum should not use the bare function names. The old enum naming used a namespace LibFunc and an enum Func, with bare enumerators. This patch changes LibFunc to be an enum with enumerators prefixed with "LF_". (Unfortunately, a scoped enum is not sufficient to override macros.) These changes are for clang. See https://reviews.llvm.org/D28476 for LLVM. Reviewers: rsmith Subscribers: cfe-commits Differential Revision: https://reviews.llvm.org/D28477 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@292849 91177308-0d34-0410-b5e6-96231b3b80d8
-
Richard Smith authored
PR31692: Don't mark a declaration as invalid if we haven't necessarily emitted a (user-visible) error. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@292847 91177308-0d34-0410-b5e6-96231b3b80d8
-
- Jan 23, 2017
-
-
Tim Shen authored
Summary: This patch changes the layout of DoubleAPFloat, and adjust all operations to do either: 1) (IEEEdouble, IEEEdouble) -> (uint64_t, uint64_t) -> PPCDoubleDoubleImpl, then run the old algorithm. 2) Do the right thing directly. 1) includes multiply, divide, remainder, mod, fusedMultiplyAdd, roundToIntegral, convertFromString, next, convertToInteger, convertFromAPInt, convertFromSignExtendedInteger, convertFromZeroExtendedInteger, convertToHexString, toString, getExactInverse. 2) includes makeZero, makeLargest, makeSmallest, makeSmallestNormalized, compare, bitwiseIsEqual, bitcastToAPInt, isDenormal, isSmallest, isLargest, isInteger, ilogb, scalbn, frexp, hash_value, Profile. I could split this into two patches, e.g. use 1) for all operatoins first, then incrementally change some of them to 2). I didn't do that, because 1) involves code that converts data between PPCDoubleDoubleImpl and (IEEEdouble, IEEEdouble) back and forth, and may pessimize the compiler. Instead, I find easy functions and use approach 2) for them directly. Next step is to implement move multiply and divide from 1) to 2). I don't have plans for other functions in 1). Differential Revision: https://reviews.llvm.org/D27872 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@292839 91177308-0d34-0410-b5e6-96231b3b80d8
-
Matt Arsenault authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@292838 91177308-0d34-0410-b5e6-96231b3b80d8
-
Paul Robinson authored
Differential Revision: http://reviews.llvm.org/D28620 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@292819 91177308-0d34-0410-b5e6-96231b3b80d8
-
Richard Smith authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@292811 91177308-0d34-0410-b5e6-96231b3b80d8
-
Alex Lorenz authored
rdar://23454249 Differential Revision: https://reviews.llvm.org/D28514 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@292805 91177308-0d34-0410-b5e6-96231b3b80d8
-
Anastasia Stulova authored
- Removed duplicated word typo. - Made coherent across multiple similar diagnostics. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@292804 91177308-0d34-0410-b5e6-96231b3b80d8
-
David Blaikie authored
Patch crashing on a bootstrapping sanitizer bot: http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux-bootstrap/builds/679 Reverting while I investigate. This reverts commit r292768. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@292801 91177308-0d34-0410-b5e6-96231b3b80d8
-
Artem Dergachev authored
When a block within a function accesses a function's static local variable, this local is captured by reference rather than copied to the heap. Therefore this variable's memory space is known: StaticGlobalSpaceRegion. Used to be UnknownSpaceRegion, same as for stack locals. Fixes a false positive in MacOSXAPIChecker. rdar://problem/30105546 Differential revision: https://reviews.llvm.org/D28946 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@292800 91177308-0d34-0410-b5e6-96231b3b80d8
-
Krasimir Georgiev authored
Summary: With the introduction of LK_ObjC, the comment line for LK_Cpp became obsolete. Reviewers: djasper Reviewed By: djasper Subscribers: cfe-commits, klimek Differential Revision: https://reviews.llvm.org/D29033 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@292796 91177308-0d34-0410-b5e6-96231b3b80d8
-
Arpith Chacko Jacob authored
The DSAChecker code in SemaOpenMP looks at the captured statement associated with an OpenMP directive. A combined directive such as 'target parallel' has nested capture statements, which have to be fully traversed before executing the DSAChecker. This is a patch to perform the traversal for such combined directives. Reviewers: ABataev Differential Revision: https://reviews.llvm.org/D29026 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@292794 91177308-0d34-0410-b5e6-96231b3b80d8
-
Martin Bohme authored
Summary: This reverts commit r292662. This change broke internal builds. Will provide a reproducer internally. Subscribers: pcc, mehdi_amini, cfe-commits, mgorny Differential Revision: https://reviews.llvm.org/D29025 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@292791 91177308-0d34-0410-b5e6-96231b3b80d8
-
Antonio Maiorano authored
These tests fail for developers who place their build directories under the llvm root directory because llvm's own .clang-format file will be found. Anyway these cases are covered by FormatStyle.GetStyleOfFile tests (FormatTest.cpp). Differential Revision: https://reviews.llvm.org/D28983 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@292787 91177308-0d34-0410-b5e6-96231b3b80d8
-
Aleksei Sidorin authored
Differential Revision: https://reviews.llvm.org/D26753 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@292781 91177308-0d34-0410-b5e6-96231b3b80d8
-
Aleksei Sidorin authored
Differential Revision: https://reviews.llvm.org/D26753 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@292779 91177308-0d34-0410-b5e6-96231b3b80d8
-
Aleksei Sidorin authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@292778 91177308-0d34-0410-b5e6-96231b3b80d8
-
Aleksei Sidorin authored
* Support template partial specialization * Avoid infinite recursion in IsStructurallyEquivalent for TemplateArgument with implementing IsStructurallyEquivalent for TemplateName git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@292776 91177308-0d34-0410-b5e6-96231b3b80d8
-
David Blaikie authored
To ensure optimization level doesn't pessimize the -fstandalone-debug vtable debug info optimization (where class definitions are only emitted where the vtable is emitted - reducing redundant debug info) ensure the debug info class definition is still omitted when an available_externally vtable definition is emitted for optimization purposes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@292768 91177308-0d34-0410-b5e6-96231b3b80d8
-
- Jan 21, 2017
-
-
Justin Lebar authored
Summary: Specifically, we upgrade llvm.nvvm.: * brev{32,64} * clz.{i,ll} * popc.{i,ll} * abs.{i,ll} * {min,max}.{i,ll,u,ull} * h2f These either map directly to an existing LLVM target-generic intrinsic or map to a simple LLVM target-generic idiom. In all cases, we check that the code we generate is lowered to PTX as we expect. These builtins don't need to be backfilled in clang: They're not accessible to user code from nvcc. Reviewers: tra Subscribers: majnemer, cfe-commits, llvm-commits, jholewinski Differential Revision: https://reviews.llvm.org/D28793 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@292694 91177308-0d34-0410-b5e6-96231b3b80d8
-
- Jan 20, 2017
-
-
Petr Hosek authored
The 32-bit architectures are no longer supported by Fuchsia. Differential Revision: https://reviews.llvm.org/D28974 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@292671 91177308-0d34-0410-b5e6-96231b3b80d8
-
Peter Collingbourne authored
This is the final change necessary to support CFI with ThinLTO. Differential Revision: https://reviews.llvm.org/D28843 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@292662 91177308-0d34-0410-b5e6-96231b3b80d8
-
Tim Shen authored
For a << b (as original vec_sl does), if b >= sizeof(a) * 8, the behavior is undefined. However, Power instructions do define the behavior, which is equivalent to a << (b % (sizeof(a) * 8)). This patch changes altivec.h to use a << (b % (sizeof(a) * 8)), to ensure the consistent semantic of the instructions. Then it combines the generated multiple instructions back to a single shift. This patch handles left shift only. Right shift, on the other hand, is more complicated, considering arithematic/logical right shift. Differential Revision: https://reviews.llvm.org/D28037 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@292659 91177308-0d34-0410-b5e6-96231b3b80d8
-
Reid Kleckner authored
This reverts commit r292522. It appears to be causing crashes in builds using dllimport. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@292643 91177308-0d34-0410-b5e6-96231b3b80d8
-
Manman Ren authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@292639 91177308-0d34-0410-b5e6-96231b3b80d8
-
Richard Smith authored
[docs] Regenerate DiagnosticsReference.rst. We don't have automatic generation of this set up server-side yet. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@292637 91177308-0d34-0410-b5e6-96231b3b80d8
-
Matt Arsenault authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@292636 91177308-0d34-0410-b5e6-96231b3b80d8
-
Bruno Cardoso Lopes authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@292635 91177308-0d34-0410-b5e6-96231b3b80d8
-
Richard Smith authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@292632 91177308-0d34-0410-b5e6-96231b3b80d8
-
Alex Lorenz authored
be defined for non Objective-C code as well rdar://29794915 Differential Revision: https://reviews.llvm.org/D28349 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@292617 91177308-0d34-0410-b5e6-96231b3b80d8
-
Alex Lorenz authored
This commit improves the mismatched destructor type error by detecting when the destructor call has used a '.' instead of a '->' on a pointer to the destructed type. The diagnostic now suggests to use '->' instead of '.', and adds a fixit where appropriate. rdar://28766702 Differential Revision: https://reviews.llvm.org/D25817 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@292615 91177308-0d34-0410-b5e6-96231b3b80d8
-
Krasimir Georgiev authored
Summary: rL292562 added a fix to always format if the fallback style is set to "none". In test/Format/style-on-command-line.cpp:19 is redundant, since -fallback-style has a default value of LLVM set in ClangFormat.cpp:72. @amaiorano: I believe that the rest of the test cases still cover your change in case the fallback style is explicitly set to "none". Please, if this is not the case, initiate a discussion. Reviewers: ioeric, bkramer Reviewed By: ioeric Subscribers: cfe-commits, klimek, amaiorano Differential Revision: https://reviews.llvm.org/D28943 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@292604 91177308-0d34-0410-b5e6-96231b3b80d8
-
Krasimir Georgiev authored
Summary: It seems that rL292518 introduced a RUN: false, but the continuation rL292545 forgot to remove it back. This has flown under the radar, because it's a long test and doesn't get executed by default during sanity testing. To test: $ cd llvm_build $ ./bin/llvm-lit --param run_long_tests=true tools/clang/test/Driver/response-file.c @rsmith: have a look if this change is OK please. Reviewers: bkramer Reviewed By: bkramer Subscribers: cfe-commits, rsmith Differential Revision: https://reviews.llvm.org/D28941 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@292600 91177308-0d34-0410-b5e6-96231b3b80d8
-
Malcolm Parsons authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@292595 91177308-0d34-0410-b5e6-96231b3b80d8
-
Philipp Stephani authored
Summary: Instead of picking the buffer file coding system, always use utf-8-unix for communicating with clang-format. This is fine because clang-format never actually reads the file to be formatted, only standard input. This is a bit simpler (process coding system is now a constant) and potentially faster, as utf-8-unix is Emacs's internal coding system. Also add an end-to-end test that actually invokes clang-format. Reviewers: klimek Reviewed By: klimek Differential Revision: https://reviews.llvm.org/D28904 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@292593 91177308-0d34-0410-b5e6-96231b3b80d8
-
Alexey Bataev authored
with SEH and openmp In some cituations (during codegen for Windows SEH constructs) CodeGenFunction instance may have CurFn equal to nullptr. OpenMP related code does not expect such situation during cleanup. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@292590 91177308-0d34-0410-b5e6-96231b3b80d8
-
Jordan Rose authored
The AST printer was dropping attributes on enumerators (enum constants). Now it's not. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@292571 91177308-0d34-0410-b5e6-96231b3b80d8
-
Greg Parker authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@292568 91177308-0d34-0410-b5e6-96231b3b80d8
-