Re: [PATCH] D10677: Allow deque to handle incomplete types

2015-10-19 Thread Evgeniy Stepanov via cfe-commits
eugenis updated this revision to Diff 37795. eugenis marked 3 inline comments as done. Repository: rL LLVM http://reviews.llvm.org/D10677 Files: include/__config include/deque test/libcxx/containers/sequences/deque/incomplete.pass.cpp Index: test/libcxx/containers/sequences/deque/incomp

Re: [PATCH] D10677: Allow deque to handle incomplete types

2015-10-19 Thread Evgeniy Stepanov via cfe-commits
eugenis added a comment. In http://reviews.llvm.org/D10677#266595, @EricWF wrote: > For the most part this looks good. I'm a touch concerned though about the > changes to the static initialization. The initializer is moved from within > the function body to outside it. Could you have somebody c

[PATCH] D13925: Implement __attribute__((internal_linkage))

2015-10-20 Thread Evgeniy Stepanov via cfe-commits
eugenis created this revision. eugenis added a reviewer: rsmith. eugenis added subscribers: cfe-commits, EricWF, rnk. eugenis set the repository for this revision to rL LLVM. The attrubite is applicable to functions and variables and changes the linkage of the subject to internal. Following the

Re: [PATCH] D13925: Implement __attribute__((internal_linkage))

2015-10-20 Thread Evgeniy Stepanov via cfe-commits
eugenis added inline comments. Comment at: lib/Sema/SemaDeclAttr.cpp:1580-1585 @@ -1577,3 +1579,8 @@ + + if (InternalLinkageAttr *Internal = D->getAttr()) { +S.Diag(Attr.getRange().getBegin(), diag::warn_attribute_ignored) +<< Attr.getName(); +S.Diag(Internal->get

r250941 - MemorySanitizer does not require PIE.

2015-10-21 Thread Evgeniy Stepanov via cfe-commits
Author: eugenis Date: Wed Oct 21 15:20:03 2015 New Revision: 250941 URL: http://llvm.org/viewvc/llvm-project?rev=250941&view=rev Log: MemorySanitizer does not require PIE. Since r249754 MemorySanitizer should work equally well for PIE and non-PIE executables. Beware, with this change -fsanitize=

r250944 - Revert "MemorySanitizer does not require PIE."

2015-10-21 Thread Evgeniy Stepanov via cfe-commits
Author: eugenis Date: Wed Oct 21 15:47:00 2015 New Revision: 250944 URL: http://llvm.org/viewvc/llvm-project?rev=250944&view=rev Log: Revert "MemorySanitizer does not require PIE." It actually does require PIE on some targets. Modified: cfe/trunk/lib/Driver/SanitizerArgs.cpp cfe/trunk/te

r250949 - MemorySanitizer does not require PIE.

2015-10-21 Thread Evgeniy Stepanov via cfe-commits
Author: eugenis Date: Wed Oct 21 16:28:49 2015 New Revision: 250949 URL: http://llvm.org/viewvc/llvm-project?rev=250949&view=rev Log: MemorySanitizer does not require PIE. Since r249754 MemorySanitizer should work equally well for PIE and non-PIE executables on Linux/x86_64. Beware, with this ch

Re: [PATCH] D10677: Allow deque to handle incomplete types

2015-10-21 Thread Evgeniy Stepanov via cfe-commits
eugenis added a comment. What kind of confirmation are you looking for? I've compiled the following code with 2 versions of : one as in this review, another the same but with __block_size initializers moved back into respective classes. Resulting object files are identical. #include int main

Re: [PATCH] D13925: Implement __attribute__((internal_linkage))

2015-10-21 Thread Evgeniy Stepanov via cfe-commits
eugenis updated this revision to Diff 38071. eugenis marked 2 inline comments as done. eugenis added a comment. This new version supports __attribute__((internal_linkage)) on classes and even namespaces! Repository: rL LLVM http://reviews.llvm.org/D13925 Files: include/clang/Basic/Attr.td

Re: [PATCH] D13925: Implement __attribute__((internal_linkage))

2015-10-21 Thread Evgeniy Stepanov via cfe-commits
eugenis added inline comments. Comment at: lib/Sema/SemaDeclAttr.cpp:1580-1585 @@ -1577,3 +1579,8 @@ + + if (InternalLinkageAttr *Internal = D->getAttr()) { +S.Diag(Attr.getRange().getBegin(), diag::warn_attribute_ignored) +<< Attr.getName(); +S.Diag(Internal->get

Re: [PATCH] D12382: Extend linux header search to find libc++ headers in c++/vN for any N.

2015-10-26 Thread Evgeniy Stepanov via cfe-commits
eugenis added a comment. ping We will need this when libc++ is bumped to v2. There are no plans to do this AFAIK but the ABI version macros are in so it is possible and clang should be ready. http://reviews.llvm.org/D12382 ___ cfe-commits mailing

Re: [PATCH] D13925: Implement __attribute__((internal_linkage))

2015-10-28 Thread Evgeniy Stepanov via cfe-commits
eugenis updated this revision to Diff 38679. Repository: rL LLVM http://reviews.llvm.org/D13925 Files: include/clang/Basic/Attr.td include/clang/Basic/AttrDocs.td include/clang/Sema/Sema.h lib/AST/Decl.cpp lib/Sema/Sema.cpp lib/Sema/SemaDecl.cpp lib/Sema/SemaDeclAttr.cpp test/C

Re: [PATCH] D13925: Implement __attribute__((internal_linkage))

2015-10-28 Thread Evgeniy Stepanov via cfe-commits
eugenis added a comment. In http://reviews.llvm.org/D13925#276626, @majnemer wrote: > No diagnostic is issued for the following C test case: > > int x __attribute__((internal_linkage)); > int x __attribute__((common)); > int *f() { return &x; } Thanks for noticing! Added missing attribute

Re: [PATCH] D13925: Implement __attribute__((internal_linkage))

2015-11-02 Thread Evgeniy Stepanov via cfe-commits
eugenis updated this revision to Diff 38979. eugenis added a comment. Added a [[clang::internal_linkage]] spelling to the attribute. Added tests for namespace re-declarations with and without the attribute. Repository: rL LLVM http://reviews.llvm.org/D13925 Files: include/clang/Basic/Attr.

Re: [PATCH] D13925: Implement __attribute__((internal_linkage))

2015-11-03 Thread Evgeniy Stepanov via cfe-commits
eugenis added inline comments. Comment at: include/clang/Basic/Attr.td:2125 @@ +2124,3 @@ + +def InternalLinkage : InheritableAttr { + let Spellings = [GNU<"internal_linkage">, CXX11<"clang", "internal_linkage">]; aaron.ballman wrote: > rsmith wrote: > > `Inheri

Re: [PATCH] D13925: Implement __attribute__((internal_linkage))

2015-11-03 Thread Evgeniy Stepanov via cfe-commits
eugenis updated this revision to Diff 39124. eugenis marked 5 inline comments as done. eugenis added a comment. Disabled the new attribute on namespaces. Repository: rL LLVM http://reviews.llvm.org/D13925 Files: include/clang/Basic/Attr.td include/clang/Basic/AttrDocs.td include/clang/

Re: [PATCH] D13925: Implement __attribute__((internal_linkage))

2015-11-03 Thread Evgeniy Stepanov via cfe-commits
eugenis updated this revision to Diff 39128. eugenis added a comment. One more test for forward declarations. Repository: rL LLVM http://reviews.llvm.org/D13925 Files: include/clang/Basic/Attr.td include/clang/Basic/AttrDocs.td include/clang/Sema/Sema.h lib/AST/Decl.cpp lib/Sema/Se

Re: [PATCH] D13925: Implement __attribute__((internal_linkage))

2015-11-03 Thread Evgeniy Stepanov via cfe-commits
eugenis updated this revision to Diff 39135. eugenis marked 2 inline comments as done. Repository: rL LLVM http://reviews.llvm.org/D13925 Files: include/clang/Basic/Attr.td include/clang/Basic/AttrDocs.td include/clang/Sema/Sema.h lib/AST/Decl.cpp lib/Sema/SemaDecl.cpp lib/Sema/Sem

Re: [PATCH] D13925: Implement __attribute__((internal_linkage))

2015-11-03 Thread Evgeniy Stepanov via cfe-commits
eugenis added inline comments. Comment at: lib/AST/Decl.cpp:635-641 @@ -634,2 +634,9 @@ assert(!isa(D) && "Didn't expect a FieldDecl!"); + for (const DeclContext *DC = D->getDeclContext(); + !isa(DC); DC = DC->getParent()) { +const NamespaceDecl *ND = dyn_cast(DC);

Re: [PATCH] D10677: Allow deque to handle incomplete types

2015-11-04 Thread Evgeniy Stepanov via cfe-commits
eugenis added a comment. Hi Eric, could you please clarify what exactly you are looking for here? Repository: rL LLVM http://reviews.llvm.org/D10677 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/li

Re: [PATCH] D13925: Implement __attribute__((internal_linkage))

2015-11-04 Thread Evgeniy Stepanov via cfe-commits
eugenis added a comment. Hm, the current implementation allows all of the following: void f(int a [[clang::internal_linkage]]) { // 1 int b [[clang::internal_linkage]]; // 2 static int c [[clang::internal_linkage]]; // 3 } I'll fix (1). Is it OK to allow (2) and (3)? The attribute has

Re: [PATCH] D13925: Implement __attribute__((internal_linkage))

2015-11-04 Thread Evgeniy Stepanov via cfe-commits
eugenis added a comment. How do I check if a Var is a local variable? Comment at: test/CodeGenCXX/attribute_internal_linkage.cpp:35-36 @@ +34,4 @@ +__attribute__((internal_linkage)) void A::f3() { +} + +// Forward declaration w/o an attribute. OK, done. Still al

Re: [PATCH] D13925: Implement __attribute__((internal_linkage))

2015-11-04 Thread Evgeniy Stepanov via cfe-commits
eugenis updated this revision to Diff 39245. Repository: rL LLVM http://reviews.llvm.org/D13925 Files: include/clang/Basic/Attr.td include/clang/Basic/AttrDocs.td include/clang/Basic/DiagnosticSemaKinds.td include/clang/Sema/Sema.h lib/AST/Decl.cpp lib/Sema/SemaDecl.cpp lib/Sema/

Re: [PATCH] D13925: Implement __attribute__((internal_linkage))

2015-11-04 Thread Evgeniy Stepanov via cfe-commits
eugenis updated this revision to Diff 39249. Repository: rL LLVM http://reviews.llvm.org/D13925 Files: include/clang/Basic/Attr.td include/clang/Basic/AttrDocs.td include/clang/Basic/DiagnosticSemaKinds.td include/clang/Sema/Sema.h lib/AST/Decl.cpp lib/Sema/SemaDecl.cpp lib/Sema/

Re: [PATCH] D13925: Implement __attribute__((internal_linkage))

2015-11-04 Thread Evgeniy Stepanov via cfe-commits
eugenis added a comment. In http://reviews.llvm.org/D13925#281349, @eugenis wrote: > Hm, the current implementation allows all of the following: > > void f(int a [[clang::internal_linkage]]) { // 1 > > int b [[clang::internal_linkage]]; // 2 > static int c [[clang::internal_linkage]]; //

Re: [PATCH] D13925: Implement __attribute__((internal_linkage))

2015-11-04 Thread Evgeniy Stepanov via cfe-commits
eugenis added inline comments. Comment at: test/SemaCXX/internal_linkage.cpp:23 @@ +22,3 @@ + +__attribute__((internal_linkage)) void A::f4() {} // expected-error{{'internal_linkage' attribute does not appear on the first declaration of 'f4'}} + Btw, this trigge

Re: [PATCH] D13925: Implement __attribute__((internal_linkage))

2015-11-05 Thread Evgeniy Stepanov via cfe-commits
eugenis updated this revision to Diff 39389. eugenis marked an inline comment as done. eugenis added a comment. Added the new warning to a -W group. Repository: rL LLVM http://reviews.llvm.org/D13925 Files: include/clang/Basic/Attr.td include/clang/Basic/AttrDocs.td include/clang/Basic

Re: [PATCH] D13925: Implement __attribute__((internal_linkage))

2015-11-05 Thread Evgeniy Stepanov via cfe-commits
eugenis added inline comments. Comment at: lib/Sema/SemaDeclAttr.cpp:3407 @@ +3406,3 @@ + : ExpectedVariableOrFunction); +D->dropAttr(); + } aaron.ballman wrote: > Why is this dropping AlwaysInlineAttr instead of re

[PATCH] D14409: Remove visibility attributes from out-of-class method definitions in iostreams.

2015-11-05 Thread Evgeniy Stepanov via cfe-commits
eugenis created this revision. eugenis added reviewers: mclow.lists, EricWF. eugenis added a subscriber: cfe-commits. eugenis set the repository for this revision to rL LLVM. No point in pretending that these methods are hidden - they are actually exported from libc++.so. Extern template declarati

[PATCH] D14410: Cleanup: move all visibility attributes to the first declaration.

2015-11-05 Thread Evgeniy Stepanov via cfe-commits
eugenis created this revision. eugenis added reviewers: EricWF, mclow.lists. eugenis added a subscriber: cfe-commits. eugenis set the repository for this revision to rL LLVM. This change moves visibility attributes from out-of-class method definitions to in-class declaration. This is needed for a

[PATCH] D14411: Use __attribute__((internal_linkage)) when available.

2015-11-05 Thread Evgeniy Stepanov via cfe-commits
eugenis created this revision. eugenis added reviewers: EricWF, mclow.lists. eugenis added a subscriber: cfe-commits. eugenis set the repository for this revision to rL LLVM. Use __attribute__((internal_linkage)) instead of always_inline and visibility("hidden") when it is available. Repository:

Re: [PATCH] D12382: Extend linux header search to find libc++ headers in c++/vN for any N.

2015-11-06 Thread Evgeniy Stepanov via cfe-commits
eugenis marked an inline comment as done. eugenis added a comment. Repository: rL LLVM http://reviews.llvm.org/D12382 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Re: [PATCH] D12382: Extend linux header search to find libc++ headers in c++/vN for any N.

2015-11-06 Thread Evgeniy Stepanov via cfe-commits
eugenis set the repository for this revision to rL LLVM. eugenis updated this revision to Diff 39587. Repository: rL LLVM http://reviews.llvm.org/D12382 Files: lib/Driver/ToolChains.cpp test/Driver/Inputs/basic_linux_libcxxv2_tree/usr/bin/.keep test/Driver/Inputs/basic_linux_libcxxv2_tre

Re: [PATCH] D14410: Cleanup: move all visibility attributes to the first declaration.

2015-11-06 Thread Evgeniy Stepanov via cfe-commits
eugenis added a comment. This is a mechanical change, and AFAIR I checked that no bits of libc++.so are affected. The same mechanical change in streambuf/istream/ostream (the stuff that's parts of extern templates) breaks libc++ because of https://llvm.org/bugs/show_bug.cgi?id=25427, that's wh

Re: [PATCH] D10677: Allow deque to handle incomplete types

2015-11-06 Thread Evgeniy Stepanov via cfe-commits
eugenis closed this revision. eugenis added a comment. Thanks! Landed as r252350. Repository: rL LLVM http://reviews.llvm.org/D10677 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commit

[libcxx] r252350 - Allow deque to handle incomplete types.

2015-11-06 Thread Evgeniy Stepanov via cfe-commits
Author: eugenis Date: Fri Nov 6 16:02:29 2015 New Revision: 252350 URL: http://llvm.org/viewvc/llvm-project?rev=252350&view=rev Log: Allow deque to handle incomplete types. Allow deque and deque::iterator instantiation with incomplete element type. This is an ABI breaking change, and it is only

Re: [PATCH] D14410: Cleanup: move all visibility attributes to the first declaration.

2015-11-06 Thread Evgeniy Stepanov via cfe-commits
eugenis added a comment. Yes. I'm just using libc++.so as a (incomplete) test that this is actually NFC. It did catch the extern template issue. Repository: rL LLVM http://reviews.llvm.org/D14410 ___ cfe-commits mailing list cfe-commits@lists.ll

[libcxx] r252385 - Cleanup: move visibility/linkage attributes to the first declaration.

2015-11-06 Thread Evgeniy Stepanov via cfe-commits
Author: eugenis Date: Fri Nov 6 19:22:13 2015 New Revision: 252385 URL: http://llvm.org/viewvc/llvm-project?rev=252385&view=rev Log: Cleanup: move visibility/linkage attributes to the first declaration. This change moves visibility attributes from out-of-class method definitions to in-class decl

Re: [PATCH] D14410: Cleanup: move all visibility attributes to the first declaration.

2015-11-06 Thread Evgeniy Stepanov via cfe-commits
eugenis closed this revision. eugenis added a comment. Confirmed and landed as r252385. Thanks for the quick response! Repository: rL LLVM http://reviews.llvm.org/D14410 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.or

Re: [PATCH] D13925: Implement __attribute__((internal_linkage))

2015-11-09 Thread Evgeniy Stepanov via cfe-commits
eugenis added a comment. Richard, are you OK with this? Repository: rL LLVM http://reviews.llvm.org/D13925 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

r252514 - Extend linux header search to find libc++ headers in c++/vN for any N.

2015-11-09 Thread Evgeniy Stepanov via cfe-commits
Author: eugenis Date: Mon Nov 9 15:10:54 2015 New Revision: 252514 URL: http://llvm.org/viewvc/llvm-project?rev=252514&view=rev Log: Extend linux header search to find libc++ headers in c++/vN for any N. Added: cfe/trunk/test/Driver/Inputs/basic_linux_libcxxv2_tree/ cfe/trunk/test/Driver

Re: [PATCH] D12382: Extend linux header search to find libc++ headers in c++/vN for any N.

2015-11-09 Thread Evgeniy Stepanov via cfe-commits
eugenis closed this revision. eugenis added a comment. r252514 Repository: rL LLVM http://reviews.llvm.org/D12382 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Re: [PATCH] D14409: Remove visibility attributes from out-of-class method definitions in iostreams.

2015-11-09 Thread Evgeniy Stepanov via cfe-commits
eugenis updated this revision to Diff 39750. eugenis added a comment. Applied the same change to . No idea how I missed it. Repository: rL LLVM http://reviews.llvm.org/D14409 Files: include/istream include/ostream include/sstream include/streambuf Index: include/streambuf ==

Re: [PATCH] D13925: Implement __attribute__((internal_linkage))

2015-11-09 Thread Evgeniy Stepanov via cfe-commits
eugenis updated this revision to Diff 39751. eugenis added a comment. Rebase. Repository: rL LLVM http://reviews.llvm.org/D13925 Files: include/clang/Basic/Attr.td include/clang/Basic/AttrDocs.td include/clang/Basic/DiagnosticSemaKinds.td include/clang/Sema/Sema.h lib/AST/Decl.cpp

Re: [PATCH] D14409: Remove visibility attributes from out-of-class method definitions in iostreams.

2015-11-09 Thread Evgeniy Stepanov via cfe-commits
eugenis added a comment. is an interesting case. There are no cases of visibility attribute present on an out-of-class definition but missing on an in-class declaration, so nothing needs to be done for a switch to internal_linkage. Setting hidden visibility on an "extern template" method is pr

Re: [PATCH] D13925: Implement __attribute__((internal_linkage))

2015-11-10 Thread Evgeniy Stepanov via cfe-commits
eugenis closed this revision. eugenis added a comment. r252648. Thanks everyone for the very detailed review! Repository: rL LLVM http://reviews.llvm.org/D13925 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin

r252648 - Implement __attribute__((internal_linkage)).

2015-11-10 Thread Evgeniy Stepanov via cfe-commits
Author: eugenis Date: Tue Nov 10 15:28:44 2015 New Revision: 252648 URL: http://llvm.org/viewvc/llvm-project?rev=252648&view=rev Log: Implement __attribute__((internal_linkage)). The attrubite is applicable to functions and variables and changes the linkage of the subject to internal. This is th

r350361 - [cmake] Fix monorepo + LLVM_BUILD_EXTERNAL_COMPILER_RT=ON.

2019-01-03 Thread Evgeniy Stepanov via cfe-commits
Author: eugenis Date: Thu Jan 3 14:41:10 2019 New Revision: 350361 URL: http://llvm.org/viewvc/llvm-project?rev=350361&view=rev Log: [cmake] Fix monorepo + LLVM_BUILD_EXTERNAL_COMPILER_RT=ON. In cmake 3.10.2, if (${VARIABLE_NAME}) seems to always be false no matter what documentation says (or ma

r350363 - Fix check-hwasan with LLVM_BUILD_EXTERNAL_COMPILER_RT=ON

2019-01-03 Thread Evgeniy Stepanov via cfe-commits
Author: eugenis Date: Thu Jan 3 14:50:45 2019 New Revision: 350363 URL: http://llvm.org/viewvc/llvm-project?rev=350363&view=rev Log: Fix check-hwasan with LLVM_BUILD_EXTERNAL_COMPILER_RT=ON Add a forwarding target for check-hwasan in clang. Modified: cfe/trunk/runtime/CMakeLists.txt Modifi

r307341 - Update Cross-DSO CFI documentation.

2017-07-06 Thread Evgeniy Stepanov via cfe-commits
Author: eugenis Date: Thu Jul 6 17:48:12 2017 New Revision: 307341 URL: http://llvm.org/viewvc/llvm-project?rev=307341&view=rev Log: Update Cross-DSO CFI documentation. Reviewers: pcc Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D35094 Modified: cfe/trunk/docs

r302590 - Remove unnecessary calls to MakeArgString.

2017-05-09 Thread Evgeniy Stepanov via cfe-commits
Author: eugenis Date: Tue May 9 16:57:39 2017 New Revision: 302590 URL: http://llvm.org/viewvc/llvm-project?rev=302590&view=rev Log: Remove unnecessary calls to MakeArgString. Modified: cfe/trunk/lib/Driver/SanitizerArgs.cpp cfe/trunk/lib/Driver/ToolChains/Arch/Mips.cpp Modified: cfe/tr

r302591 - [asan] A clang flag to enable ELF globals-gc.

2017-05-09 Thread Evgeniy Stepanov via cfe-commits
Author: eugenis Date: Tue May 9 16:57:43 2017 New Revision: 302591 URL: http://llvm.org/viewvc/llvm-project?rev=302591&view=rev Log: [asan] A clang flag to enable ELF globals-gc. This feature is subtly broken when the linker is gold 2.26 or earlier. See the following bug for details: https://s

r302594 - Fix clang_cl argument in fsanitize.c driver test.

2017-05-09 Thread Evgeniy Stepanov via cfe-commits
Author: eugenis Date: Tue May 9 17:28:57 2017 New Revision: 302594 URL: http://llvm.org/viewvc/llvm-project?rev=302594&view=rev Log: Fix clang_cl argument in fsanitize.c driver test. Modified: cfe/trunk/test/Driver/fsanitize.c Modified: cfe/trunk/test/Driver/fsanitize.c URL: http://llvm.or

r303114 - [asan] One more test for -fsanitize-address-globals-dead-stripping.

2017-05-15 Thread Evgeniy Stepanov via cfe-commits
Author: eugenis Date: Mon May 15 15:43:48 2017 New Revision: 303114 URL: http://llvm.org/viewvc/llvm-project?rev=303114&view=rev Log: [asan] One more test for -fsanitize-address-globals-dead-stripping. Added: cfe/trunk/test/CodeGen/asan-no-globals-no-comdat.cpp Added: cfe/trunk/test/CodeGen/

r299806 - [cfi] Emit __cfi_check stub in the frontend.

2017-04-07 Thread Evgeniy Stepanov via cfe-commits
Author: eugenis Date: Fri Apr 7 18:00:38 2017 New Revision: 299806 URL: http://llvm.org/viewvc/llvm-project?rev=299806&view=rev Log: [cfi] Emit __cfi_check stub in the frontend. Previously __cfi_check was created in LTO optimization pipeline, which means LLD has no way of knowing about the exist

r301225 - [asan] Disable ASan global-GC depending on the target and compiler flags.

2017-04-24 Thread Evgeniy Stepanov via cfe-commits
Author: eugenis Date: Mon Apr 24 14:34:12 2017 New Revision: 301225 URL: http://llvm.org/viewvc/llvm-project?rev=301225&view=rev Log: [asan] Disable ASan global-GC depending on the target and compiler flags. Added: cfe/trunk/test/CodeGen/asan-globals-gc.cpp Modified: cfe/trunk/lib/CodeGen

r301374 - [asan] Unconditionally enable GC of globals on COFF.

2017-04-25 Thread Evgeniy Stepanov via cfe-commits
Author: eugenis Date: Tue Apr 25 19:51:06 2017 New Revision: 301374 URL: http://llvm.org/viewvc/llvm-project?rev=301374&view=rev Log: [asan] Unconditionally enable GC of globals on COFF. This change restores pre-r301225 behavior, where linker GC compatible global instrumentation was used on COFF

r286613 - [cfi] Enable cfi-icall on ARM and AArch64.

2016-11-11 Thread Evgeniy Stepanov via cfe-commits
Author: eugenis Date: Fri Nov 11 12:49:49 2016 New Revision: 286613 URL: http://llvm.org/viewvc/llvm-project?rev=286613&view=rev Log: [cfi] Enable cfi-icall on ARM and AArch64. Modified: cfe/trunk/lib/Driver/ToolChain.cpp cfe/trunk/test/Driver/fsanitize.c Modified: cfe/trunk/lib/Driver/T

[PATCH] D26461: Tread TSan LLVM flags to driver: add TSan controlling flags to clang.

2016-11-11 Thread Evgeniy Stepanov via cfe-commits
eugenis added inline comments. Comment at: lib/Frontend/CompilerInvocation.cpp:732 Args.hasArg(OPT_fsanitize_coverage_trace_pc_guard); + Opts.SanitizeThreadMemoryAccess = + Args.hasFlag(OPT_fsanitize_thread_memory_access, It looks like lib/Frontend c

[PATCH] D26461: Tread TSan LLVM flags to driver: add TSan controlling flags to clang.

2016-11-11 Thread Evgeniy Stepanov via cfe-commits
eugenis accepted this revision. eugenis added a comment. LGTM https://reviews.llvm.org/D26461 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

r286669 - Tread TSan LLVM flags to driver: add TSan controlling flags to clang.

2016-11-11 Thread Evgeniy Stepanov via cfe-commits
Author: eugenis Date: Fri Nov 11 17:17:36 2016 New Revision: 286669 URL: http://llvm.org/viewvc/llvm-project?rev=286669&view=rev Log: Tread TSan LLVM flags to driver: add TSan controlling flags to clang. Summary: New clang flags, all default to true: -f[no-]sanitize-thread-data-races -f[no-]sanit

[PATCH] D26461: Tread TSan LLVM flags to driver: add TSan controlling flags to clang.

2016-11-11 Thread Evgeniy Stepanov via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL286669: Tread TSan LLVM flags to driver: add TSan controlling flags to clang. (authored by eugenis). Changed prior to commit: https://reviews.llvm.org/D26461?vs=77667&id=77683#toc Repository: rL LLVM

r295267 - Add missing regexp quantifiers in a test.

2017-02-15 Thread Evgeniy Stepanov via cfe-commits
Author: eugenis Date: Wed Feb 15 19:35:23 2017 New Revision: 295267 URL: http://llvm.org/viewvc/llvm-project?rev=295267&view=rev Log: Add missing regexp quantifiers in a test. Modified: cfe/trunk/test/CodeGen/sanitize-init-order.cpp Modified: cfe/trunk/test/CodeGen/sanitize-init-order.cpp UR

[PATCH] D25928: [cfi] Enable cfi-icall on ARM and AArch64.

2016-10-24 Thread Evgeniy Stepanov via cfe-commits
eugenis created this revision. eugenis added a reviewer: pcc. eugenis added a subscriber: cfe-commits. eugenis set the repository for this revision to rL LLVM. Herald added subscribers: srhines, danalbert, tberghammer, rengolin, aemerson. Backend support added in https://reviews.llvm.org/D25927

[PATCH] D26164: [cfi] Fix missing !type annotation.

2016-10-31 Thread Evgeniy Stepanov via cfe-commits
eugenis created this revision. eugenis added a reviewer: pcc. eugenis added a subscriber: cfe-commits. eugenis set the repository for this revision to rL LLVM. CFI (only in the cross-dso mode) fails to set !type annotations when a function is used before it is defined. Repository: rL LLVM htt

[PATCH] D26164: [cfi] Fix missing !type annotation.

2016-10-31 Thread Evgeniy Stepanov via cfe-commits
eugenis updated this revision to Diff 76489. Repository: rL LLVM https://reviews.llvm.org/D26164 Files: lib/CodeGen/CodeGenModule.cpp test/CodeGen/cfi-icall-cross-dso2.c Index: test/CodeGen/cfi-icall-cross-dso2.c === --- /de

r285650 - [cfi] Fix missing !type annotation.

2016-10-31 Thread Evgeniy Stepanov via cfe-commits
Author: eugenis Date: Mon Oct 31 17:28:10 2016 New Revision: 285650 URL: http://llvm.org/viewvc/llvm-project?rev=285650&view=rev Log: [cfi] Fix missing !type annotation. CFI (only in the cross-dso mode) fails to set !type annotations when a function is used before it is defined. Added: cfe/t

[PATCH] D26164: [cfi] Fix missing !type annotation.

2016-10-31 Thread Evgeniy Stepanov via cfe-commits
eugenis closed this revision. eugenis added a comment. thanks! r285650 Repository: rL LLVM https://reviews.llvm.org/D26164 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D26354: Use -fsanitize-recover instead of -mllvm -msan-keep-going: clang.

2016-11-07 Thread Evgeniy Stepanov via cfe-commits
eugenis accepted this revision. eugenis added a comment. This revision is now accepted and ready to land. LGTM It appears that this code is not testable in clang. There is a compiler-rt test in https://reviews.llvm.org/D26355. https://reviews.llvm.org/D26354

r286148 - Use -fsanitize-recover instead of -mllvm -msan-keep-going: clang.

2016-11-07 Thread Evgeniy Stepanov via cfe-commits
Author: eugenis Date: Mon Nov 7 15:02:11 2016 New Revision: 286148 URL: http://llvm.org/viewvc/llvm-project?rev=286148&view=rev Log: Use -fsanitize-recover instead of -mllvm -msan-keep-going: clang. Summary: Use -fsanitize-recover instead of -mllvm -msan-keep-going: pass -fsanitize-recover valu

[PATCH] D26385: Define __ANDROID_API__ for all Android builds.

2016-11-08 Thread Evgeniy Stepanov via cfe-commits
eugenis added a comment. This is a good change, but I don't think it is the right fix for PR30940. Instead of handling this in the NDK, we should change *::getIRStackGuard to fallback to __stack_chk_guard when targeting an old version. https://reviews.llvm.org/D26385 ___

[PATCH] D26385: Define __ANDROID_API__ for all Android builds.

2016-11-08 Thread Evgeniy Stepanov via cfe-commits
eugenis accepted this revision. eugenis added a reviewer: eugenis. eugenis added a comment. LGTM https://reviews.llvm.org/D26385 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D26461: Tread TSan LLVM flags to driver: add TSan controlling flags to clang.

2016-11-09 Thread Evgeniy Stepanov via cfe-commits
eugenis added inline comments. Comment at: lib/Frontend/CompilerInvocation.cpp:735 + OPT_fno_sanitize_thread_data_races, + Opts.SanitizeThreadDataRaces); + Opts.SanitizeThreadStackTraces = It seems common to hardcode the defau

[PATCH] D26461: Tread TSan LLVM flags to driver: add TSan controlling flags to clang.

2016-11-09 Thread Evgeniy Stepanov via cfe-commits
eugenis added a comment. Oh, and this needs a test. See test/Driver/fsanitize.c (search for -fsanitize-address-use-after-scope as an example). https://reviews.llvm.org/D26461 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm

[PATCH] D26461: Tread TSan LLVM flags to driver: add TSan controlling flags to clang.

2016-11-09 Thread Evgeniy Stepanov via cfe-commits
eugenis added inline comments. Comment at: lib/Frontend/CompilerInvocation.cpp:735 + OPT_fno_sanitize_thread_data_races, + Opts.SanitizeThreadDataRaces); + Opts.SanitizeThreadStackTraces = alekseyshl wrote: > eugenis wrote: >

[PATCH] D26461: Tread TSan LLVM flags to driver: add TSan controlling flags to clang.

2016-11-09 Thread Evgeniy Stepanov via cfe-commits
eugenis added inline comments. Comment at: test/Driver/fsanitize.c:288 +// RUN: %clang -target x86_64-linux-gnu -fsanitize=thread -fsanitize-thread-data-races -fno-sanitize-thread-data-races %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-TSAN-DATA-RACES-OFF +// CHECK-TSAN-DAT

[PATCH] D26491: Define __ANDROID_API__ when specified as part of an Android target.

2016-11-10 Thread Evgeniy Stepanov via cfe-commits
eugenis accepted this revision. eugenis added a reviewer: eugenis. eugenis added a comment. Looks great! https://reviews.llvm.org/D26491 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commi

Re: [PATCH] D14858: Support building tsan on android.

2015-11-20 Thread Evgeniy Stepanov via cfe-commits
eugenis added a comment. In http://reviews.llvm.org/D14858#293651, @danalbert wrote: > I assume we're going to actually want to go the other direction on this and > build a shared library for Android's TSAN (see eugenis' comment on > https://android-review.googlesource.com/#/c/120507/1/core/con

Re: [PATCH] D14858: Support building tsan on android.

2015-11-20 Thread Evgeniy Stepanov via cfe-commits
eugenis added a comment. I vaguely recall that android runtime loader had some symbol lookup differencies with glibc and that prevented interceptors (when statically linked into the main executable) from working. Maybe it is not the case now. http://reviews.llvm.org/D14858 _

Re: [PATCH] D14858: Support building tsan on android.

2015-11-20 Thread Evgeniy Stepanov via cfe-commits
eugenis added a comment. OK, it sounds like static runtime would work fine. We would still need a way to switch to the shared runtime for the apps (the workflow when we LD_PRELOAD the runtime into the Zygote to run instrumented apps on a non-instrumented device). Something like -shared-libasan f

Re: [PATCH] D14409: Remove visibility attributes from out-of-class method definitions in iostreams.

2015-11-30 Thread Evgeniy Stepanov via cfe-commits
eugenis added a comment. ping Repository: rL LLVM http://reviews.llvm.org/D14409 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Re: [PATCH] D15246: [Docs] Update MSan docs

2015-12-04 Thread Evgeniy Stepanov via cfe-commits
eugenis accepted this revision. This revision is now accepted and ready to land. Comment at: docs/MemorySanitizer.rst:109 @@ -107,3 +108,3 @@ MemorySanitizer can track origins of unitialized values, similar to Valgrind's --track-origins option. This feature is enabled by -

Re: [PATCH] D15208: Patch for inline abort code generation

2015-12-08 Thread Evgeniy Stepanov via cfe-commits
eugenis added a comment. Better -fsanitize-merge-checks, and it should apply to non-trap checks as well (i.e. SIGILL address should uniquely correspond to the failure source location). Repository: rL LLVM http://reviews.llvm.org/D15208 ___ cfe-c

Re: [PATCH] D15208: Patch for inline abort code generation

2015-12-08 Thread Evgeniy Stepanov via cfe-commits
eugenis added a comment. I misunderstood the meaning of -fsanitize-trap, and now I prefer -fsanitize-merge-traps for the flag name. Repository: rL LLVM http://reviews.llvm.org/D15208 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http:/

[PATCH] D15367: Cross-DSO control flow integrity (Clang part)

2015-12-08 Thread Evgeniy Stepanov via cfe-commits
eugenis created this revision. eugenis added reviewers: kcc, pcc. eugenis added a subscriber: cfe-commits. eugenis set the repository for this revision to rL LLVM. Clang-side cross-DSO CFI. * Enabled with -fsanitize-cfi-cross-dso * uses a runtime library, unlike "plain" CFI * does not yet support

Re: [PATCH] D14409: Remove visibility attributes from out-of-class method definitions in iostreams.

2015-12-09 Thread Evgeniy Stepanov via cfe-commits
eugenis added a comment. Hi, Have you had a chance to look at this? Repository: rL LLVM http://reviews.llvm.org/D14409 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Re: [PATCH] D14409: Remove visibility attributes from out-of-class method definitions in iostreams.

2015-12-09 Thread Evgeniy Stepanov via cfe-commits
eugenis added a comment. In http://reviews.llvm.org/D14409#306272, @EricWF wrote: > Does the `inline` keyword have any effect when it's on function definitions > that are externally instantiated? I could not detect any difference in behavior with or without inline keyword. Remove it? Reposit

[PATCH] D15395: Add 3 more missing inline/visibility attributes

2015-12-09 Thread Evgeniy Stepanov via cfe-commits
eugenis created this revision. eugenis added reviewers: EricWF, mclow.lists. eugenis added a subscriber: cfe-commits. eugenis set the repository for this revision to rL LLVM. These are the cases when an out-of-class definition of a method is marked _LIBCPP_INLINE_VISIBILITY, but the in-class decl

Re: [PATCH] D15395: Add 3 more missing inline/visibility attributes

2015-12-09 Thread Evgeniy Stepanov via cfe-commits
eugenis added a comment. Should be fine. Repository: rL LLVM http://reviews.llvm.org/D15395 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[libcxx] r255166 - Add 3 more missing inline/visibility attributes.

2015-12-09 Thread Evgeniy Stepanov via cfe-commits
Author: eugenis Date: Wed Dec 9 16:32:36 2015 New Revision: 255166 URL: http://llvm.org/viewvc/llvm-project?rev=255166&view=rev Log: Add 3 more missing inline/visibility attributes. These are the cases when an out-of-class definition of a method is marked _LIBCPP_INLINE_VISIBILITY, but the in-cl

Re: [PATCH] D15395: Add 3 more missing inline/visibility attributes

2015-12-09 Thread Evgeniy Stepanov via cfe-commits
eugenis closed this revision. eugenis added a comment. r255166 Repository: rL LLVM http://reviews.llvm.org/D15395 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Re: [PATCH] D14409: Remove visibility attributes from out-of-class method definitions in iostreams.

2015-12-09 Thread Evgeniy Stepanov via cfe-commits
eugenis added a comment. In http://reviews.llvm.org/D14409#306379, @eugenis wrote: > In http://reviews.llvm.org/D14409#306272, @EricWF wrote: > > > Does the `inline` keyword have any effect when it's on function definitions > > that are externally instantiated? > > > I could not detect any diffe

Re: [PATCH] D14409: Remove visibility attributes from out-of-class method definitions in iostreams.

2015-12-09 Thread Evgeniy Stepanov via cfe-commits
eugenis added a comment. In http://reviews.llvm.org/D14409#306531, @eugenis wrote: > In http://reviews.llvm.org/D14409#306379, @eugenis wrote: > > > In http://reviews.llvm.org/D14409#306272, @EricWF wrote: > > > > > Does the `inline` keyword have any effect when it's on function > > > definition

[libcxx] r255177 - Remove visibility attributes from out-of-class method definitions in iostreams.

2015-12-09 Thread Evgeniy Stepanov via cfe-commits
Author: eugenis Date: Wed Dec 9 17:42:30 2015 New Revision: 255177 URL: http://llvm.org/viewvc/llvm-project?rev=255177&view=rev Log: Remove visibility attributes from out-of-class method definitions in iostreams. No point in pretending that these methods are hidden - they are actually exported f

Re: [PATCH] D14409: Remove visibility attributes from out-of-class method definitions in iostreams.

2015-12-09 Thread Evgeniy Stepanov via cfe-commits
eugenis closed this revision. eugenis added a comment. r255177 Thanks for the review! Repository: rL LLVM http://reviews.llvm.org/D14409 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-co

[libcxxabi] r255186 - Replace cmake check for printf with a check for fopen.

2015-12-09 Thread Evgeniy Stepanov via cfe-commits
Author: eugenis Date: Wed Dec 9 18:44:42 2015 New Revision: 255186 URL: http://llvm.org/viewvc/llvm-project?rev=255186&view=rev Log: Replace cmake check for printf with a check for fopen. Printf is a builtin, and the check fails with -Werror because of a clang warning about an incompatible redec

[libcxx] r255187 - Replace cmake check for printf with a check for fopen.

2015-12-09 Thread Evgeniy Stepanov via cfe-commits
Author: eugenis Date: Wed Dec 9 18:45:18 2015 New Revision: 255187 URL: http://llvm.org/viewvc/llvm-project?rev=255187&view=rev Log: Replace cmake check for printf with a check for fopen. Printf is a builtin, and the check fails with -Werror because of a clang warning about an incompatible redec

[libunwind] r255188 - Replace cmake check for printf with a check for fopen.

2015-12-09 Thread Evgeniy Stepanov via cfe-commits
Author: eugenis Date: Wed Dec 9 18:47:08 2015 New Revision: 255188 URL: http://llvm.org/viewvc/llvm-project?rev=255188&view=rev Log: Replace cmake check for printf with a check for fopen. Printf is a builtin, and the check fails with -Werror because of a clang warning about an incompatible redec

Re: [PATCH] D14411: Use __attribute__((internal_linkage)) when available.

2015-12-09 Thread Evgeniy Stepanov via cfe-commits
eugenis added a dependency: D12502: [libcxx] Better constain tuples constructors -- Fix PR23256 and PR22806. eugenis added a comment. Note, this breaks tuple_cat.pass.cpp test. With -O0, replacing always_inline with internal_linkage results in less optimization being done (namely, no inlining h

[PATCH] D15404: Cleanup: move visibility/linkage attributes to the first declaration (part 2).

2015-12-09 Thread Evgeniy Stepanov via cfe-commits
eugenis created this revision. eugenis added reviewers: EricWF, mclow.lists. eugenis added a subscriber: cfe-commits. eugenis set the repository for this revision to rL LLVM. This is a follow-up to r252385. For some reason, I missed a lot of cases when the visibility attribute was applied to the

<    1   2   3   4   >