Re: [PATCH] D155580: [trivial-auto-var-init] Do not emit initialization code for empty class

2023-07-18 Thread JF Bastien via cfe-commits
On Tue, Jul 18, 2023 at 8:41 PM serge via Phabricator < revi...@reviews.llvm.org> wrote: > serge-sans-paille created this revision. > serge-sans-paille added reviewers: nickdesaulniers, jfb, aaron.ballman. > Herald added a subscriber: kristof.beyls. > Herald added a project: All. >

[clang] e18c6ef - [clang] improve diagnostics for misaligned and large atomics

2020-08-04 Thread JF Bastien via cfe-commits
Author: Thorsten Schuett Date: 2020-08-04T11:10:29-07:00 New Revision: e18c6ef6b41a59af73bf5c3d7d52a8c53a471e5d URL: https://github.com/llvm/llvm-project/commit/e18c6ef6b41a59af73bf5c3d7d52a8c53a471e5d DIFF:

[clang] 389f009 - [NFC] Sema: use checkArgCount instead of custom checking

2020-07-28 Thread JF Bastien via cfe-commits
Author: JF Bastien Date: 2020-07-28T13:41:06-07:00 New Revision: 389f009c5757cf09c0b2d77a15b3b541fb0f2a1c URL: https://github.com/llvm/llvm-project/commit/389f009c5757cf09c0b2d77a15b3b541fb0f2a1c DIFF: https://github.com/llvm/llvm-project/commit/389f009c5757cf09c0b2d77a15b3b541fb0f2a1c.diff

[clang] 00c9a50 - CrashTracer: clang at clang: llvm::BitstreamWriter::ExitBlock

2020-07-09 Thread JF Bastien via cfe-commits
Author: Oliver Hunt Date: 2020-07-09T20:27:33-07:00 New Revision: 00c9a504aeed2603bd8bc9b89d753534e929c8e8 URL: https://github.com/llvm/llvm-project/commit/00c9a504aeed2603bd8bc9b89d753534e929c8e8 DIFF: https://github.com/llvm/llvm-project/commit/00c9a504aeed2603bd8bc9b89d753534e929c8e8.diff

[clang] b10bd6d - [NFC] Bump ObjCOrBuiltinIDBits to 15

2020-06-26 Thread JF Bastien via cfe-commits
Author: JF Bastien Date: 2020-06-26T13:48:51-07:00 New Revision: b10bd6dfc62161671892b2dd3be5152754d14995 URL: https://github.com/llvm/llvm-project/commit/b10bd6dfc62161671892b2dd3be5152754d14995 DIFF: https://github.com/llvm/llvm-project/commit/b10bd6dfc62161671892b2dd3be5152754d14995.diff

[clang] 13fdcd3 - [NFC] Builtins: list 'R' for restrict

2020-06-26 Thread JF Bastien via cfe-commits
Author: JF Bastien Date: 2020-06-26T12:58:17-07:00 New Revision: 13fdcd37b325f62ff2513c59807de9ad0a9d2a51 URL: https://github.com/llvm/llvm-project/commit/13fdcd37b325f62ff2513c59807de9ad0a9d2a51 DIFF: https://github.com/llvm/llvm-project/commit/13fdcd37b325f62ff2513c59807de9ad0a9d2a51.diff

r368939 - Remove LVALUE / RVALUE workarounds

2019-08-14 Thread JF Bastien via cfe-commits
Author: jfb Date: Wed Aug 14 15:48:12 2019 New Revision: 368939 URL: http://llvm.org/viewvc/llvm-project?rev=368939=rev Log: Remove LVALUE / RVALUE workarounds Summary: LLVM_HAS_RVALUE_REFERENCE_THIS and LLVM_LVALUE_FUNCTION shouldn't be needed anymore because the minimum compiler versions

Re: r367889 - [docs] document -Weveything more betterer

2019-08-05 Thread JF Bastien via cfe-commits
1/builders/clang-sphinx-docs/builds/45204/steps/docs-clang-html/logs/stdio> >> >> Warning, treated as error: >> /home/buildbot/llvm-build-dir/clang-sphinx-docs/llvm/src/tools/clang/docs/UsersManual.rst:995: >> WARNING: unknown option: -Wno-c++98-compat >> >>

r367918 - [docs] don't use :option: for Wall Wextra

2019-08-05 Thread JF Bastien via cfe-commits
Author: jfb Date: Mon Aug 5 12:59:07 2019 New Revision: 367918 URL: http://llvm.org/viewvc/llvm-project?rev=367918=rev Log: [docs] don't use :option: for Wall Wextra The bots are sad that they're not documented. Modified: cfe/trunk/docs/UsersManual.rst Modified:

Re: r367889 - [docs] document -Weveything more betterer

2019-08-05 Thread JF Bastien via cfe-commits
clang-sphinx-docs/builds/45204/steps/docs-clang-html/logs/stdio> > > Warning, treated as error: > /home/buildbot/llvm-build-dir/clang-sphinx-docs/llvm/src/tools/clang/docs/UsersManual.rst:995: > WARNING: unknown option: -Wno-c++98-compat > > On Mon, Aug 5, 2019 at 12:52 PM JF

r367914 - [docs] don't use :option: for C++ compat

2019-08-05 Thread JF Bastien via cfe-commits
Author: jfb Date: Mon Aug 5 12:45:23 2019 New Revision: 367914 URL: http://llvm.org/viewvc/llvm-project?rev=367914=rev Log: [docs] don't use :option: for C++ compat The bots are sad that they're not documented. Modified: cfe/trunk/docs/UsersManual.rst Modified:

r367889 - [docs] document -Weveything more betterer

2019-08-05 Thread JF Bastien via cfe-commits
Author: jfb Date: Mon Aug 5 09:53:45 2019 New Revision: 367889 URL: http://llvm.org/viewvc/llvm-project?rev=367889=rev Log: [docs] document -Weveything more betterer Reviewers: aaron.ballman Subscribers: jkorous, dexonsmith, cfe-commits Tags: #clang Differential Revision:

r367383 - [NFC] Remove LLVM_ALIGNAS

2019-07-30 Thread JF Bastien via cfe-commits
Author: jfb Date: Tue Jul 30 20:22:08 2019 New Revision: 367383 URL: http://llvm.org/viewvc/llvm-project?rev=367383=rev Log: [NFC] Remove LLVM_ALIGNAS Summary: The minimum compilers support all have alignas, and we don't use LLVM_ALIGNAS anywhere anymore. This also removes an MSVC diagnostic

[clang-tools-extra] r367383 - [NFC] Remove LLVM_ALIGNAS

2019-07-30 Thread JF Bastien via cfe-commits
Author: jfb Date: Tue Jul 30 20:22:08 2019 New Revision: 367383 URL: http://llvm.org/viewvc/llvm-project?rev=367383=rev Log: [NFC] Remove LLVM_ALIGNAS Summary: The minimum compilers support all have alignas, and we don't use LLVM_ALIGNAS anywhere anymore. This also removes an MSVC diagnostic

r367350 - [NFC] simplify Darwin environment handling

2019-07-30 Thread JF Bastien via cfe-commits
Author: jfb Date: Tue Jul 30 13:01:46 2019 New Revision: 367350 URL: http://llvm.org/viewvc/llvm-project?rev=367350=rev Log: [NFC] simplify Darwin environment handling The previous code detected conflicts through copy-pasta, this versions uses a 'loop'. Modified:

r367276 - Fix Linux build

2019-07-29 Thread JF Bastien via cfe-commits
Author: jfb Date: Mon Jul 29 16:28:44 2019 New Revision: 367276 URL: http://llvm.org/viewvc/llvm-project?rev=367276=rev Log: Fix Linux build r367274 broke it Modified: cfe/trunk/lib/DirectoryWatcher/linux/DirectoryWatcher-linux.cpp Modified:

r367274 - [NFC] avoid AlignedCharArray in clang

2019-07-29 Thread JF Bastien via cfe-commits
Author: jfb Date: Mon Jul 29 16:12:48 2019 New Revision: 367274 URL: http://llvm.org/viewvc/llvm-project?rev=367274=rev Log: [NFC] avoid AlignedCharArray in clang As discussed in D65249, don't use AlignedCharArray or std::aligned_storage. Just use alignas(X) char Buf[Size];. This will allow me

r367051 - Revert "CodeGen: ensure placeholder instruction for cleanup is created"

2019-07-25 Thread JF Bastien via cfe-commits
Author: jfb Date: Thu Jul 25 13:50:09 2019 New Revision: 367051 URL: http://llvm.org/viewvc/llvm-project?rev=367051=rev Log: Revert "CodeGen: ensure placeholder instruction for cleanup is created" Originally in https://reviews.llvm.org/D64656 Causes bot failures:

r367032 - Allow prefetching from non-zero address spaces

2019-07-25 Thread JF Bastien via cfe-commits
Author: jfb Date: Thu Jul 25 09:11:57 2019 New Revision: 367032 URL: http://llvm.org/viewvc/llvm-project?rev=367032=rev Log: Allow prefetching from non-zero address spaces Summary: This is useful for targets which have prefetch instructions for non-default address spaces. Subscribers:

r366028 - Support __seg_fs and __seg_gs on x86

2019-07-14 Thread JF Bastien via cfe-commits
Author: jfb Date: Sun Jul 14 11:33:51 2019 New Revision: 366028 URL: http://llvm.org/viewvc/llvm-project?rev=366028=rev Log: Support __seg_fs and __seg_gs on x86 Summary: GCC supports named address spaces macros: https://gcc.gnu.org/onlinedocs/gcc/Named-Address-Spaces.html clang does as well

Re: r365030 - Make a buildbot using a buggy gcc happy

2019-07-08 Thread JF Bastien via cfe-commits
gt; template <> void CFGDominatorTreeImpl::anchor(); > > Clang will tell you to do this under -Wundefined-func-template (which we > haven't turned on by default because people get this wrong too often...). > > On Mon, 8 Jul 2019 at 12:29, JF Bastien via cfe-commits > mailto:cfe

Re: r365030 - Make a buildbot using a buggy gcc happy

2019-07-08 Thread JF Bastien via cfe-commits
Kristof, It looks like your fix didn’t address all the bots: /Users/buildslave/jenkins/workspace/clang-stage2-coverage-R/llvm/tools/clang/lib/Analysis/Dominators.cpp:14:48: error: explicit specialization of 'anchor' after instantiation void CFGDominatorTreeImpl::anchor() {}

r364855 - Fix breakage introduced by D60974

2019-07-01 Thread JF Bastien via cfe-commits
Author: jfb Date: Mon Jul 1 14:57:31 2019 New Revision: 364855 URL: http://llvm.org/viewvc/llvm-project?rev=364855=rev Log: Fix breakage introduced by D60974 D60974 added tests which incorrectly assume that llvm-readelf is available. This is a bad assumption, it should instead declare the

[clang-tools-extra] r364464 - BitStream reader: propagate errors

2019-06-26 Thread JF Bastien via cfe-commits
Author: jfb Date: Wed Jun 26 12:50:12 2019 New Revision: 364464 URL: http://llvm.org/viewvc/llvm-project?rev=364464=rev Log: BitStream reader: propagate errors The bitstream reader handles errors poorly. This has two effects: * Bugs in file handling (especially modules) manifest as an

r364464 - BitStream reader: propagate errors

2019-06-26 Thread JF Bastien via cfe-commits
Author: jfb Date: Wed Jun 26 12:50:12 2019 New Revision: 364464 URL: http://llvm.org/viewvc/llvm-project?rev=364464=rev Log: BitStream reader: propagate errors The bitstream reader handles errors poorly. This has two effects: * Bugs in file handling (especially modules) manifest as an

r359636 - Fix auto-init test

2019-04-30 Thread JF Bastien via cfe-commits
Author: jfb Date: Tue Apr 30 16:27:28 2019 New Revision: 359636 URL: http://llvm.org/viewvc/llvm-project?rev=359636=rev Log: Fix auto-init test r359628 changed the initialization of padding to follow C, but I didn't update the C++ tests. Modified:

r359628 - Variable auto-init: don't initialize aggregate padding of all aggregates

2019-04-30 Thread JF Bastien via cfe-commits
Author: jfb Date: Tue Apr 30 15:56:53 2019 New Revision: 359628 URL: http://llvm.org/viewvc/llvm-project?rev=359628=rev Log: Variable auto-init: don't initialize aggregate padding of all aggregates Summary: C guarantees that brace-init with fewer initializers than members in the aggregate will

r359524 - [NFC] typo

2019-04-29 Thread JF Bastien via cfe-commits
Author: jfb Date: Mon Apr 29 17:19:43 2019 New Revision: 359524 URL: http://llvm.org/viewvc/llvm-project?rev=359524=rev Log: [NFC] typo Modified: cfe/trunk/lib/Sema/Sema.cpp Modified: cfe/trunk/lib/Sema/Sema.cpp URL:

r359523 - [NFC] typo

2019-04-29 Thread JF Bastien via cfe-commits
Author: jfb Date: Mon Apr 29 17:11:53 2019 New Revision: 359523 URL: http://llvm.org/viewvc/llvm-project?rev=359523=rev Log: [NFC] typo Modified: cfe/trunk/include/clang/AST/ASTContext.h cfe/trunk/lib/AST/ASTContext.cpp Modified: cfe/trunk/include/clang/AST/ASTContext.h URL:

r358243 - Variable auto-init: also auto-init alloca

2019-04-11 Thread JF Bastien via cfe-commits
Author: jfb Date: Thu Apr 11 17:11:27 2019 New Revision: 358243 URL: http://llvm.org/viewvc/llvm-project?rev=358243=rev Log: Variable auto-init: also auto-init alloca Summary: alloca isn’t auto-init’d right now because it’s a different path in clang that all the other stuff we support (it’s a

r356940 - Thread Safety: also look at ObjC methods

2019-03-25 Thread JF Bastien via cfe-commits
Author: jfb Date: Mon Mar 25 13:06:32 2019 New Revision: 356940 URL: http://llvm.org/viewvc/llvm-project?rev=356940=rev Log: Thread Safety: also look at ObjC methods Summary: SExprBuilder::translateDeclRefExpr was only looking at FunctionDecl and not also looking at ObjCMethodDecl. It should

r355660 - Variable auto-init: split out small arrays

2019-03-07 Thread JF Bastien via cfe-commits
Author: jfb Date: Thu Mar 7 17:26:49 2019 New Revision: 355660 URL: http://llvm.org/viewvc/llvm-project?rev=355660=rev Log: Variable auto-init: split out small arrays Summary: Following up with r355181, initialize small arrays as well. LLVM stage2 shows a tiny size gain. Reviewers: glider,

r355547 - Passthrough compiler launcher

2019-03-06 Thread JF Bastien via cfe-commits
Author: jfb Date: Wed Mar 6 12:36:00 2019 New Revision: 355547 URL: http://llvm.org/viewvc/llvm-project?rev=355547=rev Log: Passthrough compiler launcher Summary: Not having this seems like an oversight, and makes stage2 builds odd. Reviewers: ddunbar, dexonsmith Subscribers: mgorny, jkorous,

r354831 - [NFC] Reorder some mis-ordered tests

2019-02-25 Thread JF Bastien via cfe-commits
Author: jfb Date: Mon Feb 25 15:09:34 2019 New Revision: 354831 URL: http://llvm.org/viewvc/llvm-project?rev=354831=rev Log: [NFC] Reorder some mis-ordered tests I somehow had misaligned some of the tests when I originally wrote this. Re-order them properly. Modified:

r354147 - Variable auto-init of blocks capturing self after init bugfix

2019-02-15 Thread JF Bastien via cfe-commits
Author: jfb Date: Fri Feb 15 09:26:29 2019 New Revision: 354147 URL: http://llvm.org/viewvc/llvm-project?rev=354147=rev Log: Variable auto-init of blocks capturing self after init bugfix Summary: Blocks that capture themselves (and escape) after initialization currently codegen wrong because

r353875 - [NFC] typo

2019-02-12 Thread JF Bastien via cfe-commits
Author: jfb Date: Tue Feb 12 12:19:16 2019 New Revision: 353875 URL: http://llvm.org/viewvc/llvm-project?rev=353875=rev Log: [NFC] typo Modified: cfe/trunk/include/clang/AST/Decl.h Modified: cfe/trunk/include/clang/AST/Decl.h URL:

r353495 - Variable auto-init: fix __block initialization

2019-02-07 Thread JF Bastien via cfe-commits
Author: jfb Date: Thu Feb 7 17:29:17 2019 New Revision: 353495 URL: http://llvm.org/viewvc/llvm-project?rev=353495=rev Log: Variable auto-init: fix __block initialization Summary: Automatic initialization [1] of __block variables was trampling over the block's headers after they'd been

r353490 - [NFC] Variable auto-init: use getAsVariableArrayType helper

2019-02-07 Thread JF Bastien via cfe-commits
Author: jfb Date: Thu Feb 7 16:51:05 2019 New Revision: 353490 URL: http://llvm.org/viewvc/llvm-project?rev=353490=rev Log: [NFC] Variable auto-init: use getAsVariableArrayType helper As suggested by @rjmccall in D57797. Modified: cfe/trunk/lib/CodeGen/CGDecl.cpp Modified:

r350644 - [NFC] Don't over-eagerly check block alignment

2019-01-08 Thread JF Bastien via cfe-commits
Author: jfb Date: Tue Jan 8 10:51:38 2019 New Revision: 350644 URL: http://llvm.org/viewvc/llvm-project?rev=350644=rev Log: [NFC] Don't over-eagerly check block alignment Alignment of __block isn't relevant to this test, remove its checking. Modified:

r349442 - Automatic variable initialization

2018-12-17 Thread JF Bastien via cfe-commits
Author: jfb Date: Mon Dec 17 21:12:21 2018 New Revision: 349442 URL: http://llvm.org/viewvc/llvm-project?rev=349442=rev Log: Automatic variable initialization Summary: Add an option to initialize automatic variables with either a pattern or with zeroes. The default is still that automatic

r346915 - CGDecl::emitStoresForConstant fix synthesized constant's name

2018-11-14 Thread JF Bastien via cfe-commits
Author: jfb Date: Wed Nov 14 16:19:18 2018 New Revision: 346915 URL: http://llvm.org/viewvc/llvm-project?rev=346915=rev Log: CGDecl::emitStoresForConstant fix synthesized constant's name Summary: The name of the synthesized constants for constant initialization was using mangling for statics,

r342750 - [NFC] remove unused variable

2018-09-21 Thread JF Bastien via cfe-commits
Author: jfb Date: Fri Sep 21 10:38:41 2018 New Revision: 342750 URL: http://llvm.org/viewvc/llvm-project?rev=342750=rev Log: [NFC] remove unused variable It was causing a warning. Modified: cfe/trunk/lib/CodeGen/CGOpenMPRuntime.cpp Modified: cfe/trunk/lib/CodeGen/CGOpenMPRuntime.cpp URL:

r342734 - NFC: deduplicate isRepeatedBytePattern from clang to LLVM's isBytewiseValue

2018-09-21 Thread JF Bastien via cfe-commits
Author: jfb Date: Fri Sep 21 06:54:09 2018 New Revision: 342734 URL: http://llvm.org/viewvc/llvm-project?rev=342734=rev Log: NFC: deduplicate isRepeatedBytePattern from clang to LLVM's isBytewiseValue Summary: This code was in CGDecl.cpp and really belongs in LLVM. It happened to have

r341860 - Implement -Watomic-implicit-seq-cst

2018-09-10 Thread JF Bastien via cfe-commits
Author: jfb Date: Mon Sep 10 13:42:56 2018 New Revision: 341860 URL: http://llvm.org/viewvc/llvm-project?rev=341860=rev Log: Implement -Watomic-implicit-seq-cst Summary: _Atomic and __sync_* operations are implicitly sequentially-consistent. Some codebases want to force explicit usage of memory

r340511 - Missing quote in previous commit

2018-08-22 Thread JF Bastien via cfe-commits
Author: jfb Date: Wed Aug 22 21:09:49 2018 New Revision: 340511 URL: http://llvm.org/viewvc/llvm-project?rev=340511=rev Log: Missing quote in previous commit The test was failing because I missed a quote. Modified: cfe/trunk/test/CodeGen/pr18235.c Modified: cfe/trunk/test/CodeGen/pr18235.c

r340510 - Improve incompatible triple error

2018-08-22 Thread JF Bastien via cfe-commits
Author: jfb Date: Wed Aug 22 20:55:24 2018 New Revision: 340510 URL: http://llvm.org/viewvc/llvm-project?rev=340510=rev Log: Improve incompatible triple error When complaining that the triple is incompatible with all targets, print out the triple not just a generic error about triples not

r339273 - CDDecl More automatic variable tail padding test

2018-08-08 Thread JF Bastien via cfe-commits
Author: jfb Date: Wed Aug 8 10:05:17 2018 New Revision: 339273 URL: http://llvm.org/viewvc/llvm-project?rev=339273=rev Log: CDDecl More automatic variable tail padding test Test tail padded automatic variable at different width, because they encounter different codegen. Modified:

r339196 - [NFC] Improve auto-var-init alignment check

2018-08-07 Thread JF Bastien via cfe-commits
Author: jfb Date: Tue Aug 7 15:43:44 2018 New Revision: 339196 URL: http://llvm.org/viewvc/llvm-project?rev=339196=rev Log: [NFC] Improve auto-var-init alignment check We're not actually testing for alignment, we just want to know that whatever incoming alignment got propagated. Do that by

r339191 - [NFC] CGDecl factor out constant emission

2018-08-07 Thread JF Bastien via cfe-commits
Author: jfb Date: Tue Aug 7 14:55:13 2018 New Revision: 339191 URL: http://llvm.org/viewvc/llvm-project?rev=339191=rev Log: [NFC] CGDecl factor out constant emission The code is cleaner this way, and with some changes I'm playing with it makes sense to split it out so we can reuse it.

r339093 - Auto var init test fix #2

2018-08-06 Thread JF Bastien via cfe-commits
Author: jfb Date: Mon Aug 6 21:44:13 2018 New Revision: 339093 URL: http://llvm.org/viewvc/llvm-project?rev=339093=rev Log: Auto var init test fix #2 It turns out that the AVX bots have different alignment for their vectors, and my test mistakenly assumed a particular vector alignent on the

r339090 - Remove broken command flag

2018-08-06 Thread JF Bastien via cfe-commits
Author: jfb Date: Mon Aug 6 21:03:03 2018 New Revision: 339090 URL: http://llvm.org/viewvc/llvm-project?rev=339090=rev Log: Remove broken command flag I was using it for testing, r339089 shouldn't have contained it. Modified: cfe/trunk/test/CodeGenCXX/auto-var-init.cpp Modified:

r339089 - [NFC] Test automatic variable initialization

2018-08-06 Thread JF Bastien via cfe-commits
Author: jfb Date: Mon Aug 6 20:12:52 2018 New Revision: 339089 URL: http://llvm.org/viewvc/llvm-project?rev=339089=rev Log: [NFC] Test automatic variable initialization Summary: r337887 started using memset for automatic variable initialization where sensible. A follow-up discussion leads me

r338743 - __c11_atomic_load's _Atomic can be const

2018-08-02 Thread JF Bastien via cfe-commits
Author: jfb Date: Thu Aug 2 10:35:46 2018 New Revision: 338743 URL: http://llvm.org/viewvc/llvm-project?rev=338743=rev Log: __c11_atomic_load's _Atomic can be const Summary: C++11 onwards specs the non-member functions atomic_load and atomic_load_explicit as taking the atomic by const

r337887 - CodeGen: use non-zero memset when possible for automatic variables

2018-07-24 Thread JF Bastien via cfe-commits
Author: jfb Date: Tue Jul 24 21:29:03 2018 New Revision: 337887 URL: http://llvm.org/viewvc/llvm-project?rev=337887=rev Log: CodeGen: use non-zero memset when possible for automatic variables Summary: Right now automatic variables are either initialized with bzero followed by a few stores, or

r337636 - [NFC] CodeGen: rename memset to bzero

2018-07-20 Thread JF Bastien via cfe-commits
Author: jfb Date: Fri Jul 20 16:37:12 2018 New Revision: 337636 URL: http://llvm.org/viewvc/llvm-project?rev=337636=rev Log: [NFC] CodeGen: rename memset to bzero The optimization looks for opportunities to emit bzero, not memset. Rename the functions accordingly (and clang-format the diff)

r337410 - Support implicit _Atomic struct load / store

2018-07-18 Thread JF Bastien via cfe-commits
Author: jfb Date: Wed Jul 18 11:01:41 2018 New Revision: 337410 URL: http://llvm.org/viewvc/llvm-project?rev=337410=rev Log: Support implicit _Atomic struct load / store Summary: Using _Atomic to do implicit load / store is just a seq_cst atomic_load / atomic_store. Stores currently assert in

r337041 - CodeGen: specify alignment + inbounds for automatic variable initialization

2018-07-13 Thread JF Bastien via cfe-commits
Author: jfb Date: Fri Jul 13 13:33:23 2018 New Revision: 337041 URL: http://llvm.org/viewvc/llvm-project?rev=337041=rev Log: CodeGen: specify alignment + inbounds for automatic variable initialization Summary: Automatic variable initialization was generating default-aligned stores (which are

r336840 - [NFC] typo

2018-07-11 Thread JF Bastien via cfe-commits
Author: jfb Date: Wed Jul 11 12:51:40 2018 New Revision: 336840 URL: http://llvm.org/viewvc/llvm-project?rev=336840=rev Log: [NFC] typo Modified: cfe/trunk/lib/CodeGen/ConstantEmitter.h Modified: cfe/trunk/lib/CodeGen/ConstantEmitter.h URL:

r335393 - [Sema] -Wformat-pedantic only for NSInteger/NSUInteger %zu/%zi on Darwin

2018-06-22 Thread JF Bastien via cfe-commits
Author: jfb Date: Fri Jun 22 14:54:40 2018 New Revision: 335393 URL: http://llvm.org/viewvc/llvm-project?rev=335393=rev Log: [Sema] -Wformat-pedantic only for NSInteger/NSUInteger %zu/%zi on Darwin Summary: Pick D42933 back up, and make NSInteger/NSUInteger with %zu/%zi specifiers on Darwin

[libcxx] r333776 - Mark __c11_atomic_load as const

2018-06-01 Thread JF Bastien via cfe-commits
Author: jfb Date: Fri Jun 1 11:02:53 2018 New Revision: 333776 URL: http://llvm.org/viewvc/llvm-project?rev=333776=rev Log: Mark __c11_atomic_load as const Summary: C++11 onwards specs the non-member functions atomic_load and atomic_load_explicit as taking the atomic by const (potentially

[libcxx] r333723 - Filesystem tests: un-confuse write time

2018-05-31 Thread JF Bastien via cfe-commits
Author: jfb Date: Thu May 31 21:59:48 2018 New Revision: 333723 URL: http://llvm.org/viewvc/llvm-project?rev=333723=rev Log: Filesystem tests: un-confuse write time Summary: The filesystem test was confused about access versus write / modification time. The spec says: file_time_type

[libcxx] r333479 - Mark deduction guide tests as failing on apple-clang-9

2018-05-29 Thread JF Bastien via cfe-commits
Author: jfb Date: Tue May 29 16:28:04 2018 New Revision: 333479 URL: http://llvm.org/viewvc/llvm-project?rev=333479=rev Log: Mark deduction guide tests as failing on apple-clang-9 As discussed here: http://lists.llvm.org/pipermail/cfe-dev/2018-May/058116.html The tests fail on clang-5, as well

Re: [libcxx] r333325 - Add nonnull; use it for atomics

2018-05-29 Thread JF Bastien via cfe-commits
26, 2018, at 12:50 PM, JF Bastien via cfe-commits > wrote: > > > >> On May 26, 2018, at 12:36 PM, Marshall Clow > <mailto:mclow.li...@gmail.com>> wrote: >> >> >> >> On Fri, May 25, 2018 at 4:43 PM, JF Bastien via cfe-commits >> ma

Re: [libcxx] r333325 - Add nonnull; use it for atomics

2018-05-26 Thread JF Bastien via cfe-commits
> On May 26, 2018, at 12:36 PM, Marshall Clow <mclow.li...@gmail.com> wrote: > > > > On Fri, May 25, 2018 at 4:43 PM, JF Bastien via cfe-commits > <cfe-commits@lists.llvm.org <mailto:cfe-commits@lists.llvm.org>> wrote: > Author: jfb > Date: Fri M

[libcxx] r333351 - Revert "Add nonnull; use it for atomics"

2018-05-26 Thread JF Bastien via cfe-commits
Author: jfb Date: Sat May 26 12:44:45 2018 New Revision: 51 URL: http://llvm.org/viewvc/llvm-project?rev=51=rev Log: Revert "Add nonnull; use it for atomics" That's r25, as well as follow-up "Fix GCC handling of ATOMIC_VAR_INIT" r27. Marshall asked to revert: Let's have a

[libcxx] r333327 - Fix GCC handling of ATOMIC_VAR_INIT

2018-05-25 Thread JF Bastien via cfe-commits
Author: jfb Date: Fri May 25 17:13:53 2018 New Revision: 27 URL: http://llvm.org/viewvc/llvm-project?rev=27=rev Log: Fix GCC handling of ATOMIC_VAR_INIT r25 from D47225 added warning checks, and the test was written to be C++11 correct by using ATOMIC_VAR_INIT (note that the

[libcxx] r333325 - Add nonnull; use it for atomics

2018-05-25 Thread JF Bastien via cfe-commits
Author: jfb Date: Fri May 25 16:43:53 2018 New Revision: 25 URL: http://llvm.org/viewvc/llvm-project?rev=25=rev Log: Add nonnull; use it for atomics Summary: The atomic non-member functions accept pointers to std::atomic / std::atomic_flag as well as to the non-atomic value. These are

[libcxx] r333317 - Fix optional test breakage

2018-05-25 Thread JF Bastien via cfe-commits
Author: jfb Date: Fri May 25 14:32:27 2018 New Revision: 17 URL: http://llvm.org/viewvc/llvm-project?rev=17=rev Log: Fix optional test breakage It seems GCC and clang disagree. Talked to mclow on IRC, disabling for now. Modified:

[libcxx] r333315 - Fix array deduction guide test breakage

2018-05-25 Thread JF Bastien via cfe-commits
Author: jfb Date: Fri May 25 14:17:43 2018 New Revision: 15 URL: http://llvm.org/viewvc/llvm-project?rev=15=rev Log: Fix array deduction guide test breakage No matching constructor Modified: libcxx/trunk/test/std/containers/sequences/array/array.cons/deduct.pass.cpp Modified:

[libcxx] r333308 - Fix optional deduction guide test breakage

2018-05-25 Thread JF Bastien via cfe-commits
Author: jfb Date: Fri May 25 13:43:57 2018 New Revision: 08 URL: http://llvm.org/viewvc/llvm-project?rev=08=rev Log: Fix optional deduction guide test breakage Modified: libcxx/trunk/test/std/utilities/optional/optional.object/optional.object.ctor/deduct.fail.cpp

r333290 - Follow-up fix for nonnull atomic non-member functions

2018-05-25 Thread JF Bastien via cfe-commits
Author: jfb Date: Fri May 25 10:36:49 2018 New Revision: 333290 URL: http://llvm.org/viewvc/llvm-project?rev=333290=rev Log: Follow-up fix for nonnull atomic non-member functions Handling of the third parameter was only checking for *_n and not for the C11 variant, which means that cmpxchg of a

r333246 - Make atomic non-member functions as nonnull

2018-05-24 Thread JF Bastien via cfe-commits
Author: jfb Date: Thu May 24 17:07:09 2018 New Revision: 333246 URL: http://llvm.org/viewvc/llvm-project?rev=333246=rev Log: Make atomic non-member functions as nonnull Summary: As a companion to libc++ patch https://reviews.llvm.org/D47225, mark builtin atomic non-member functions which accept

r332801 - CodeGen: block capture shouldn't ICE

2018-05-18 Thread JF Bastien via cfe-commits
Author: jfb Date: Fri May 18 21:21:26 2018 New Revision: 332801 URL: http://llvm.org/viewvc/llvm-project?rev=332801=rev Log: CodeGen: block capture shouldn't ICE When a lambda capture captures a __block in the same statement, the compiler asserts out because isCapturedBy assumes that an Expr

Re: [PATCH] D42933: [Sema] Avoid -Wformat warning for NSInteger/NSUInteger 'int' values with %zu/%zi long specifiers

2018-05-09 Thread JF Bastien via cfe-commits
> On May 9, 2018, at 1:25 PM, Shoaib Meenai via Phabricator > wrote: > > smeenai added a comment. > > Yeah, I think we all agree now that a portability warning isn't really > tractable. Note that even for the warnings that motivated this diff, they > should have

r331845 - _Atomic of empty struct shouldn't assert

2018-05-08 Thread JF Bastien via cfe-commits
Author: jfb Date: Tue May 8 20:51:12 2018 New Revision: 331845 URL: http://llvm.org/viewvc/llvm-project?rev=331845=rev Log: _Atomic of empty struct shouldn't assert Summary: An _Atomic of an empty struct is pretty silly. In general we just widen empty structs to hold a byte's worth of storage,

Re: [PATCH] D22711: Diagnose invalid failure memory orderings.

2016-08-10 Thread JF Bastien via cfe-commits
jfb added a comment. Warnings look correct. Could they be made more useful by suggesting that `acq_rel` be `acquire` instead, and `release` be `relaxed` instead? https://reviews.llvm.org/D22711 ___ cfe-commits mailing list

Re: [PATCH] D23041: Un-XFAIL GCC atomics.align

2016-08-03 Thread JF Bastien via cfe-commits
jfb added a comment. I wrote a quick test, and I think this is technically OK for x86 because alignment "Just Works", but I think it's borked on GCC+ARM (I don't have a system to test that here): https://github.com/jfbastien/atomic_nullptr/blob/master/atomic_nullptr.cc

Re: [PATCH] D23041: Un-XFAIL GCC atomics.align

2016-08-03 Thread JF Bastien via cfe-commits
jfb added a comment. @EricWF ran this on configuration `cxx_under_test=g++-4.9`. It generates the following error: libcxx/test/libcxx/atomics/atomics.align/align.pass.sh.cpp:32: atomic_test::atomic_test() [with T = std::nullptr_t]: Assertion `alignof(this->__a_) >= sizeof(this->__a_) &&

[PATCH] D23041: Un-XFAIL GCC atomics.align

2016-08-01 Thread JF Bastien via cfe-commits
jfb created this revision. jfb added a reviewer: EricWF. jfb added a subscriber: cfe-commits. The ABI version flag should fix the error. https://reviews.llvm.org/D23041 Files: test/libcxx/atomics/atomics.align/align.pass.sh.cpp test/libcxx/test/config.py Index: test/libcxx/test/config.py

[libcxx] r277404 - NFC: fix typo

2016-08-01 Thread JF Bastien via cfe-commits
Author: jfb Date: Mon Aug 1 18:34:29 2016 New Revision: 277404 URL: http://llvm.org/viewvc/llvm-project?rev=277404=rev Log: NFC: fix typo Modified: libcxx/trunk/test/libcxx/test/config.py Modified: libcxx/trunk/test/libcxx/test/config.py URL:

Re: [libcxx] r277380 - atomics.align: XFAIL GCC

2016-08-01 Thread JF Bastien via cfe-commits
I don't think I can: - Hack around __gcc_atomic_t. - Unconditionally pass -fabi-version=6 to the RUN command (because LLVM won't accept it). it seems like changing test/libcxx/test/config.py would be better. WDYT? On Mon, Aug 1, 2016 at 1:28 PM, JF Bastien via cfe-commits <

[libcxx] r277380 - atomics.align: XFAIL GCC

2016-08-01 Thread JF Bastien via cfe-commits
Author: jfb Date: Mon Aug 1 15:28:13 2016 New Revision: 277380 URL: http://llvm.org/viewvc/llvm-project?rev=277380=rev Log: atomics.align: XFAIL GCC It currently fails because GCC changed the mangling of templates, which affects std::atomic using __attribute__((vector(X))). The bot using GCC

Re: [PATCH] D22073: libc++: test lock-free atomic alignment

2016-08-01 Thread JF Bastien via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL277368: libc++: test lock-free atomic alignment (authored by jfb). Changed prior to commit: https://reviews.llvm.org/D22073?vs=66342=66356#toc Repository: rL LLVM https://reviews.llvm.org/D22073

[libcxx] r277368 - libc++: test lock-free atomic alignment

2016-08-01 Thread JF Bastien via cfe-commits
Author: jfb Date: Mon Aug 1 14:27:08 2016 New Revision: 277368 URL: http://llvm.org/viewvc/llvm-project?rev=277368=rev Log: libc++: test lock-free atomic alignment Summary: libc++ implements std::atomic<_Tp> using __atomic_base<_Tp> with `mutable _Atomic(_Tp) __a_`. That member must be suitably

Re: [PATCH] D22073: libc++: test lock-free atomic alignment

2016-08-01 Thread JF Bastien via cfe-commits
jfb updated this revision to Diff 66342. jfb added a comment. - Move atomics.align to libcxx-specific - Give names to anonymous structs - Rename test, use REQUIRES / RUN commands https://reviews.llvm.org/D22073 Files: test/libcxx/atomics/atomics.align/align.pass.sh.cpp Index:

Re: [PATCH] D22557: [libcxx] Diagnose invalid memory order arguments in . Fixes PR21179.

2016-07-22 Thread JF Bastien via cfe-commits
On Jul 22, 2016 4:45 PM, "Eric Fiselier" wrote: > > EricWF added inline comments. > > > Comment at: test/libcxx/atomics/diagnose_invalid_memory_order.fail.cpp:87 > @@ +86,3 @@ > +x.compare_exchange_weak(val1, val2, std::memory_order_release); > +} > +

Re: [PATCH] D22557: [libcxx] Diagnose invalid memory order arguments in . Fixes PR21179.

2016-07-22 Thread JF Bastien via cfe-commits
jfb added inline comments. Comment at: test/libcxx/atomics/diagnose_invalid_memory_order.fail.cpp:87 @@ +86,3 @@ +x.compare_exchange_weak(val1, val2, std::memory_order_release); +} +{ That's not quite true: the failure ordering is auto-deduced

[libcxx] r276309 - Remove FIXME for feature test macro

2016-07-21 Thread JF Bastien via cfe-commits
Author: jfb Date: Thu Jul 21 12:34:28 2016 New Revision: 276309 URL: http://llvm.org/viewvc/llvm-project?rev=276309=rev Log: Remove FIXME for feature test macro The value I'd picked was correct, as per the recently published SG10 paper http://wg21.link/p0096r3 Modified:

Re: [PATCH] D22557: [libcxx] Diagnose invalid memory order arguments in . Fixes PR21179.

2016-07-21 Thread JF Bastien via cfe-commits
jfb added a comment. Two comments, then lgtm. Comment at: include/atomic:581 @@ +580,3 @@ + || __f == memory_order_acq_rel, ""))) \ +__attribute__ ((__unavailable__("memory order argument to atomic operation is invalid"))) +#endif

Re: [PATCH] D22557: [libcxx] Diagnose invalid memory order arguments in . Fixes PR21179.

2016-07-20 Thread JF Bastien via cfe-commits
jfb added inline comments. Comment at: include/atomic:569 @@ +568,3 @@ +__attribute__ ((__enable_if__(__m == memory_order_release \ + || __m == memory_order_acq_rel, ""))) \ +__attribute__ ((__unavailable__("memory

Re: [PATCH] D22557: [libcxx] Diagnose invalid memory order arguments in . Fixes PR21179.

2016-07-20 Thread JF Bastien via cfe-commits
jfb added a subscriber: jfb. jfb added a comment. Awesome, thanks for doing this! Should this be a warning or an error? Comment at: include/atomic:581 @@ +580,3 @@ + || __f == memory_order_acq_rel, ""))) \ +__attribute__

[libcxx] r275210 - libc++: name anonymous structs

2016-07-12 Thread JF Bastien via cfe-commits
Author: jfb Date: Tue Jul 12 15:14:52 2016 New Revision: 275210 URL: http://llvm.org/viewvc/llvm-project?rev=275210=rev Log: libc++: name anonymous structs As discussed in http://reviews.llvm.org/D22073 Modified: libcxx/trunk/test/std/atomics/atomics.lockfree/isalwayslockfree.pass.cpp

Re: [PATCH] D22073: libc++: test lock-free atomic alignment

2016-07-12 Thread JF Bastien via cfe-commits
jfb added a comment. In http://reviews.llvm.org/D22073#481402, @EricWF wrote: > - The test should be moved to `test/libcxx/atomics/atomics.align` since it's > libc++ specific. Done. > - Please give the anonymous struct declarations unique names. `T1`, `T2`, > ..., `TN` is fine. Currently

Re: [PATCH] D22073: libc++: test lock-free atomic alignment

2016-07-12 Thread JF Bastien via cfe-commits
jfb updated this revision to Diff 63723. jfb added a comment. - Move atomics.align to libcxx-specific - Give names to anonymous structs http://reviews.llvm.org/D22073 Files: test/libcxx/atomics/atomics.align/align.pass.cpp Index: test/libcxx/atomics/atomics.align/align.pass.cpp

[PATCH] D22073: libc++: test lock-free atomic alignment

2016-07-06 Thread JF Bastien via cfe-commits
jfb created this revision. jfb added a reviewer: cfe-commits. libc++ implements std::atomic<_Tp> using __atomic_base<_Tp> with `mutable _Atomic(_Tp) __a_`. That member must be suitably aligned on relevant ISAs for instructions such as cmpxchg to work properly, but this alignment isn't checked

Re: [PATCH] D19275: Do not register incompatible C++ destructors with __cxa_atexit

2016-05-10 Thread JF Bastien via cfe-commits
jfb accepted this revision. jfb added a reviewer: jfb. jfb added a comment. This revision is now accepted and ready to land. lgtm http://reviews.llvm.org/D19275 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

Re: [PATCH] D19105: Changes in clang after running http://reviews.llvm.org/D18821

2016-05-05 Thread JF Bastien via cfe-commits
jfb added inline comments. Comment at: lib/Transforms/IPO/MergeFunctions.cpp:147 @@ -146,3 +146,3 @@ struct Config : ValueMapConfig { -enum { FollowRAUW = false }; +enum { FollowRAUW = 0 }; }; This change should go to ValueMap, I think

Re: [PATCH] D19275: Do not register incompatible C++ destructors with __cxa_atexit

2016-04-27 Thread JF Bastien via cfe-commits
jfb added a subscriber: pcc. jfb added a comment. > I guess there's a more general issue here which is that LLVM appears to be > more permissive about prototype mismatch than wasm. Specifically, I'm > thinking about how swifterror relies on being able to pass extra parameters > to a function

Re: [PATCH] D19275: Do not register incompatible C++ destructors with __cxa_atexit

2016-04-27 Thread JF Bastien via cfe-commits
jfb added a comment. @t.p.northover: would an acceptable solution be to add a new trait such as `CGM.getCXXABI().CanCallMismatchedFunctionType()` or something of the sort? ARM would set it to true, wasm to false. http://reviews.llvm.org/D19275

Re: [PATCH] D19275: Do not register incompatible C++ destructors with __cxa_atexit

2016-04-19 Thread JF Bastien via cfe-commits
jfb added a comment. lgtm besides two nits. Would be good to get a review from @t.p.northover or someone from ARM. Comment at: lib/CodeGen/CGDeclCXX.cpp:95 @@ +94,3 @@ + Record->getDestructor(), Dtor_Complete)); + // If __cxa_atexit is

  1   2   >