[PATCH] D17619: [MSVC Compat] Don't evaluate member base expressions w/o side effects

2016-02-25 Thread David Majnemer via cfe-commits
majnemer created this revision. majnemer added reviewers: rsmith, andreybokhanko. majnemer added a subscriber: cfe-commits. A member expression's base doesn't always have an impact on what the member decl would evaluate to. In such a case, the base is used as a poor man's scope qualifier. This f

r261784 - Revert "Don't convert a char to a const char *"

2016-02-24 Thread David Majnemer via cfe-commits
Author: majnemer Date: Wed Feb 24 16:07:26 2016 New Revision: 261784 URL: http://llvm.org/viewvc/llvm-project?rev=261784&view=rev Log: Revert "Don't convert a char to a const char *" This reverts commit r261780. It turns out the original code was just fine. An overload for ltrim which takes cha

Re: r261780 - Don't convert a char to a const char *

2016-02-24 Thread David Majnemer via cfe-commits
build failure? ltrim has overloads for > "char" and "StringRef", the former being very new. From the error > message I suspect out of sync LLVM and Clang checkouts. > > On Wed, Feb 24, 2016 at 10:55 PM, David Majnemer via cfe-commits > wrote: > > Author: majnem

r261780 - Don't convert a char to a const char *

2016-02-24 Thread David Majnemer via cfe-commits
Author: majnemer Date: Wed Feb 24 15:55:58 2016 New Revision: 261780 URL: http://llvm.org/viewvc/llvm-project?rev=261780&view=rev Log: Don't convert a char to a const char * This fixes PR26728. Modified: cfe/trunk/lib/Lex/PPDirectives.cpp Modified: cfe/trunk/lib/Lex/PPDirectives.cpp URL: h

Re: [PATCH] D17056: Mark all CUDA device-side function defs and decls as convergent.

2016-02-24 Thread David Majnemer via cfe-commits
majnemer accepted this revision. majnemer added a comment. This revision is now accepted and ready to land. LGTM http://reviews.llvm.org/D17056 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cf

r261751 - [WinEH] Make sure terminate handlers have funclet operands

2016-02-24 Thread David Majnemer via cfe-commits
Author: majnemer Date: Wed Feb 24 11:02:45 2016 New Revision: 261751 URL: http://llvm.org/viewvc/llvm-project?rev=261751&view=rev Log: [WinEH] Make sure terminate handlers have funclet operands Calls to the terminate handler must be annotated within the exception region they are within. Modified

Re: [PATCH] D17248: [Sema] PR26444 fix crash when alignment value is >= 2**16

2016-02-22 Thread David Majnemer via cfe-commits
majnemer accepted this revision. majnemer added a comment. This revision is now accepted and ready to land. LGTM http://reviews.llvm.org/D17248 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cf

r261537 - Don't enable /GX by default

2016-02-22 Thread David Majnemer via cfe-commits
Author: majnemer Date: Mon Feb 22 11:44:51 2016 New Revision: 261537 URL: http://llvm.org/viewvc/llvm-project?rev=261537&view=rev Log: Don't enable /GX by default The /GX flag is disabled unless explicitly specified on the command line. This partially addresses PR26698. Modified: cfe/trunk/

r261535 - [MS ABI] Correctly handle dllimport'd explicit instantiation declaration w/ vbases

2016-02-22 Thread David Majnemer via cfe-commits
Author: majnemer Date: Mon Feb 22 11:22:08 2016 New Revision: 261535 URL: http://llvm.org/viewvc/llvm-project?rev=261535&view=rev Log: [MS ABI] Correctly handle dllimport'd explicit instantiation declaration w/ vbases We gave a VBTable dllimport storage class and external linkage while also prov

r261534 - Add a test for r261425.

2016-02-22 Thread David Majnemer via cfe-commits
Author: majnemer Date: Mon Feb 22 11:22:01 2016 New Revision: 261534 URL: http://llvm.org/viewvc/llvm-project?rev=261534&view=rev Log: Add a test for r261425. Added: cfe/trunk/test/CodeGenCXX/exceptions-cxx-ehsc.cpp Added: cfe/trunk/test/CodeGenCXX/exceptions-cxx-ehsc.cpp URL: http://llvm.o

r261424 - [MSVC Compat] Add support for /GX, /GX-

2016-02-20 Thread David Majnemer via cfe-commits
Author: majnemer Date: Sat Feb 20 03:23:44 2016 New Revision: 261424 URL: http://llvm.org/viewvc/llvm-project?rev=261424&view=rev Log: [MSVC Compat] Add support for /GX, /GX- These are legacy flags which map to /EHsc and /EHs-c- respectively. Modified: cfe/trunk/include/clang/Driver/CLCompat

r261425 - [MSVC Compat] Implement -EHc semantics

2016-02-20 Thread David Majnemer via cfe-commits
Author: majnemer Date: Sat Feb 20 03:23:47 2016 New Revision: 261425 URL: http://llvm.org/viewvc/llvm-project?rev=261425&view=rev Log: [MSVC Compat] Implement -EHc semantics The -EHc flag implicitly adds a nothrow attribute to any extern "C" function when exceptions are enabled. Modified: cf

r261423 - Remove -fnew-ms-eh

2016-02-20 Thread David Majnemer via cfe-commits
Author: majnemer Date: Sat Feb 20 03:23:41 2016 New Revision: 261423 URL: http://llvm.org/viewvc/llvm-project?rev=261423&view=rev Log: Remove -fnew-ms-eh This flag no longer controls any behavior inside of clang. Modified: cfe/trunk/include/clang/Driver/CC1Options.td cfe/trunk/test/CodeG

r261388 - Remove a duplicate declaration specifier from _ReadBarrier

2016-02-19 Thread David Majnemer via cfe-commits
Author: majnemer Date: Fri Feb 19 18:57:00 2016 New Revision: 261388 URL: http://llvm.org/viewvc/llvm-project?rev=261388&view=rev Log: Remove a duplicate declaration specifier from _ReadBarrier This fixes PR26675. Modified: cfe/trunk/lib/Headers/Intrin.h Modified: cfe/trunk/lib/Headers/Intr

r261312 - Correct typos after acting on invalid subscript expressions

2016-02-18 Thread David Majnemer via cfe-commits
Author: majnemer Date: Fri Feb 19 01:15:33 2016 New Revision: 261312 URL: http://llvm.org/viewvc/llvm-project?rev=261312&view=rev Log: Correct typos after acting on invalid subscript expressions Modified: cfe/trunk/lib/Parse/ParseExpr.cpp cfe/trunk/test/SemaCXX/typo-correction.cpp Modifi

r261195 - [MSVC] Turn C++ EH on my default

2016-02-18 Thread David Majnemer via cfe-commits
Author: majnemer Date: Thu Feb 18 02:15:05 2016 New Revision: 261195 URL: http://llvm.org/viewvc/llvm-project?rev=261195&view=rev Log: [MSVC] Turn C++ EH on my default Our support for C++ EH is sufficiently good that it makes sense to enable support for it out of the box. While we are here, upda

r261191 - [Parse] Make sure we don't forget to diagnose typos in exprs

2016-02-17 Thread David Majnemer via cfe-commits
Author: majnemer Date: Thu Feb 18 00:37:44 2016 New Revision: 261191 URL: http://llvm.org/viewvc/llvm-project?rev=261191&view=rev Log: [Parse] Make sure we don't forget to diagnose typos in exprs If ActOn*Op fails, we will forget to diagnose typos in the LHS of expressions. Modified: cfe/tru

Re: [PATCH] D17056: Mark all CUDA device-side function defs and decls as convergent.

2016-02-17 Thread David Majnemer via cfe-commits
majnemer added inline comments. Comment at: lib/CodeGen/CodeGenModule.cpp:817-823 @@ -816,1 +816,9 @@ + + if (getLangOpts().CUDA && getLangOpts().CUDAIsDevice) { +// Conservatively, mark all functions in CUDA as convergent (meaning, they +// may call an intrinsically conv

r261171 - Don't crash w/ a diagnostic range containing a null byte

2016-02-17 Thread David Majnemer via cfe-commits
Author: majnemer Date: Wed Feb 17 16:37:45 2016 New Revision: 261171 URL: http://llvm.org/viewvc/llvm-project?rev=261171&view=rev Log: Don't crash w/ a diagnostic range containing a null byte We prematurely ended the line at the null byte which caused us to crash down stream because we tried to r

Re: [PATCH] D17056: Mark all CUDA device-side function defs and decls as convergent.

2016-02-17 Thread David Majnemer via cfe-commits
majnemer added a subscriber: majnemer. majnemer added a comment. SetLLVMFunctionAttributesForDefinition seems like the more obvious place for this logic. http://reviews.llvm.org/D17056 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://l

r261109 - Correct more typos in conditional expressions

2016-02-17 Thread David Majnemer via cfe-commits
Author: majnemer Date: Wed Feb 17 11:19:00 2016 New Revision: 261109 URL: http://llvm.org/viewvc/llvm-project?rev=261109&view=rev Log: Correct more typos in conditional expressions We didn't correctly handle some edge cases, causing us to bail out before correcting all the typos. Modified: c

Re: [PATCH] D17330: PR26648: "inline" shouldn't be recognized as a C keyword in MSVC 2013 compatibility mode

2016-02-17 Thread David Majnemer via cfe-commits
majnemer added a comment. In http://reviews.llvm.org/D17330#354755, @andreybokhanko wrote: > In http://reviews.llvm.org/D17330#354730, @majnemer wrote: > > > Why not just stick clang in C90 mode when targeting C if the > > -fms-compatibility-version is 18? > > > > We have similar code for the C+

Re: [PATCH] D17330: PR26648: "inline" shouldn't be recognized as a C keyword in MSVC 2013 compatibility mode

2016-02-17 Thread David Majnemer via cfe-commits
majnemer added a comment. Why not just stick clang in C90 mode when targeting C if the -fms-compatibility-version is 18? We have similar code for the C++ mode in https://github.com/llvm-mirror/clang/blob/master/lib/Driver/Tools.cpp#l5069 http://reviews.llvm.org/D17330 _

r260709 - [AST] Fix typos in RecordLayoutBuilder

2016-02-12 Thread David Majnemer via cfe-commits
Author: majnemer Date: Fri Feb 12 13:21:02 2016 New Revision: 260709 URL: http://llvm.org/viewvc/llvm-project?rev=260709&view=rev Log: [AST] Fix typos in RecordLayoutBuilder No functional change is intended. Modified: cfe/trunk/lib/AST/RecordLayoutBuilder.cpp Modified: cfe/trunk/lib/AST/Rec

r260552 - Remove unused includes

2016-02-11 Thread David Majnemer via cfe-commits
Author: majnemer Date: Thu Feb 11 11:54:39 2016 New Revision: 260552 URL: http://llvm.org/viewvc/llvm-project?rev=260552&view=rev Log: Remove unused includes Modified: cfe/trunk/lib/Tooling/Core/QualTypeNames.cpp Modified: cfe/trunk/lib/Tooling/Core/QualTypeNames.cpp URL: http://llvm.org/vi

r260548 - Revert "Revert r260388 "[MS ABI] Never reference dllimport'd vtables""

2016-02-11 Thread David Majnemer via cfe-commits
Author: majnemer Date: Thu Feb 11 11:49:28 2016 New Revision: 260548 URL: http://llvm.org/viewvc/llvm-project?rev=260548&view=rev Log: Revert "Revert r260388 "[MS ABI] Never reference dllimport'd vtables"" This reverts commit r260449. We would supress our emission of vftable definitions if we th

Re: [PATCH] D17061: [MS ABI] Never reference dllimport'd vtables

2016-02-10 Thread David Majnemer via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL260388: [MS ABI] Never reference dllimport'd vtables (authored by majnemer). Changed prior to commit: http://reviews.llvm.org/D17061?vs=47407&id=47473#toc Repository: rL LLVM http://reviews.llvm.org

r260388 - [MS ABI] Never reference dllimport'd vtables

2016-02-10 Thread David Majnemer via cfe-commits
Author: majnemer Date: Wed Feb 10 11:40:47 2016 New Revision: 260388 URL: http://llvm.org/viewvc/llvm-project?rev=260388&view=rev Log: [MS ABI] Never reference dllimport'd vtables Referencing a dllimported vtable is impossible in a constexpr constructor. It would be friendlier to C++ programmers

Re: [PATCH] D17072: Return immediatedly if Method is null, otherwise you'll get a crash when dyn_cast is called with a nullptr

2016-02-10 Thread David Majnemer via cfe-commits
This needs a testcase added to the tests directory. On Wednesday, February 10, 2016, don hinton via cfe-commits < cfe-commits@lists.llvm.org> wrote: > hintonda created this revision. > hintonda added reviewers: doug.gregor, rnk. > hintonda added a subscriber: cfe-commits. > > Fixes crash referenc

[PATCH] D17061: [MS ABI] Never reference dllimport'd vtables

2016-02-09 Thread David Majnemer via cfe-commits
majnemer created this revision. majnemer added reviewers: rnk, hans, thakis, rsmith. majnemer added a subscriber: cfe-commits. Referencing a dllimported vtable is impossible in a constexpr constructor. It would be friendlier to C++ programmers if we synthesized a copy of the vftable which referen

r260238 - [MS ABI] Cleanup emitVTableDefinitions

2016-02-09 Thread David Majnemer via cfe-commits
Author: majnemer Date: Tue Feb 9 11:27:52 2016 New Revision: 260238 URL: http://llvm.org/viewvc/llvm-project?rev=260238&view=rev Log: [MS ABI] Cleanup emitVTableDefinitions Use the VFTable components to determine whether or not we should emit RTTI data instead of duplicating the VFTableBuilder's

r260062 - [MS ABI] Don't emit RTTI descriptors for dllimport vtables

2016-02-07 Thread David Majnemer via cfe-commits
Author: majnemer Date: Sun Feb 7 16:42:05 2016 New Revision: 260062 URL: http://llvm.org/viewvc/llvm-project?rev=260062&view=rev Log: [MS ABI] Don't emit RTTI descriptors for dllimport vtables A dllimport'd vtable always points one past the RTTI data, this means that the initializer will never e

Re: [PATCH] D16951: [MS ABI] dllimport'd class cannot have constexpr ctors

2016-02-07 Thread David Majnemer via cfe-commits
majnemer added inline comments. Comment at: test/SemaCXX/dllimport.cpp:1262 @@ -1261,1 +1261,3 @@ +struct __declspec(dllimport) PR26506_test1 { + virtual ~PR26506_test1() {} thakis wrote: > cl.exe seems to accept this – do you know how they do that? Do they jus

[PATCH] D16951: [MS ABI] dllimport'd class cannot have constexpr ctors

2016-02-06 Thread David Majnemer via cfe-commits
majnemer created this revision. majnemer added reviewers: hans, rsmith, thakis, rnk. majnemer added a subscriber: cfe-commits. The installation of a class's vptr cannot be performed without code being executed. This implies that the constructor of a class cannot be constexpr. This fixes PR26506.

Re: [PATCH] D16788: PS4 ABI Round 2. Actual PS4 code.

2016-02-05 Thread David Majnemer via cfe-commits
majnemer added a subscriber: majnemer. Comment at: include/clang/Basic/TargetInfo.h:206 @@ +205,3 @@ + /// \brief Whether explicit bit field alignment attributes are honored. + unsigned int UseExplicitBitFieldAlignment : 1; + I'd use `unsigned` to match the sty

Re: [PATCH] D16630: PR23057: Fix assertion `Val && "isa<> used on a null pointer"' on invalid for-range expression

2016-02-02 Thread David Majnemer via cfe-commits
majnemer accepted this revision. majnemer added a reviewer: majnemer. majnemer added a comment. This revision is now accepted and ready to land. LGTM http://reviews.llvm.org/D16630 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists

Re: [PATCH] D16572: PR23057: fix use-after-free due to local token buffer in ParseCXXAmbiguousParenExpression

2016-02-02 Thread David Majnemer via cfe-commits
majnemer accepted this revision. majnemer added a reviewer: majnemer. majnemer added a comment. This revision is now accepted and ready to land. LGTM http://reviews.llvm.org/D16572 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists

Re: [PATCH] D16630: PR23057: Fix assertion `Val && "isa<> used on a null pointer"' on invalid for-range expression

2016-02-01 Thread David Majnemer via cfe-commits
majnemer added a subscriber: majnemer. Comment at: lib/Parse/ParseStmt.cpp:1719-1724 @@ -1718,6 +1718,8 @@ if (ForRange) { +ExprResult CorrectedRange = +Actions.CorrectDelayedTyposInExpr(ForRangeInit.RangeExpr.get()); ForRangeStmt = Actions.ActOnCXXForRangeStmt

Re: [PATCH] D16572: PR23057: fix use-after-free due to local token buffer in ParseCXXAmbiguousParenExpression

2016-02-01 Thread David Majnemer via cfe-commits
majnemer added a subscriber: majnemer. majnemer added a comment. I believe this change is correct but I believe we can handle this a little more efficiently. I wonder if it would be better if we instead inserted a special EOF token at the end of `Toks`. If any errors occur, consume tokens unti

Re: [PATCH] D16770: [MS] PR26234: Allow typedef redefinition of equally qualified, sized and aligned types in C

2016-02-01 Thread David Majnemer via cfe-commits
majnemer added a comment. MSVC permits: typedef int foo; typedef float foo; This is crazy and most certainly not 'benign'. I think that we should insist that the underlying types not just be the same size and alignment but the same kind of scalar type. If two types are integral or enumerat

Re: r258768 - [Sema] Incomplete types are OK for covariant returns

2016-01-31 Thread David Majnemer via cfe-commits
Done in r258768. On Sun, Jan 31, 2016 at 10:49 AM, Kim Gräsman wrote: > On Sun, Jan 31, 2016 at 5:24 PM, Kim Gräsman > wrote: > > On Sun, Jan 31, 2016 at 2:50 PM, David Majnemer > > wrote: > >> > >> It is the same issue as CWG defect report 1250: > >> http://wg21.cmeerw.net/cwg/issue1250 > >>

r259335 - Mark DR1250 as implemented

2016-01-31 Thread David Majnemer via cfe-commits
Author: majnemer Date: Sun Jan 31 19:33:17 2016 New Revision: 259335 URL: http://llvm.org/viewvc/llvm-project?rev=259335&view=rev Log: Mark DR1250 as implemented We implemented this DR back in r258768 but forgot to mark it as implemented. Added: cfe/trunk/test/CXX/drs/dr12xx.cpp Modified:

Re: r258768 - [Sema] Incomplete types are OK for covariant returns

2016-01-31 Thread David Majnemer via cfe-commits
w far back a DR applies but I'd guess this one goes as far back as C++11. > - Kim > Den 26 jan 2016 2:40 fm skrev "David Majnemer via cfe-commits" < > cfe-commits@lists.llvm.org > >: > >> Author: majnemer >> Date: Mon Jan 25 19:37:01 2016 >> Ne

Re: [PATCH] D16351: [FIX] Bug 25404 - Crash on typedef in OpenCL 2.0

2016-01-30 Thread David Majnemer via cfe-commits
Why isn't this logic buried in GetArgumentVector so that other tools may take advantage of it? On Saturday, January 30, 2016, Igor Chesnokov via cfe-commits < cfe-commits@lists.llvm.org> wrote: > ichesnokov added a comment. > > Please review and commit. > > > Repository: > rL LLVM > > http://re

Re: [PATCH] D13420: Fix deduction of __atomic_load's parameter types.

2016-01-28 Thread David Majnemer via cfe-commits
majnemer accepted this revision. majnemer added a comment. This revision is now accepted and ready to land. LGTM http://reviews.llvm.org/D13420 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cf

Re: [PATCH] D16628: clang-cl: support __cdecl-on-struct anachronism

2016-01-27 Thread David Majnemer via cfe-commits
majnemer added inline comments. Comment at: lib/Parse/ParseDeclCXX.cpp:1107 @@ +1106,3 @@ + // Microsoft compatibility + case tok::kw___cdecl: // struct foo {...} __cdecl x; // C4229 +if (!getLangOpts().MicrosoftExt) sberg wrote: > majnemer wrote:

Re: [PATCH] D16628: clang-cl: support __cdecl-on-struct anachronism

2016-01-27 Thread David Majnemer via cfe-commits
majnemer added a subscriber: majnemer. Comment at: lib/Parse/ParseDeclCXX.cpp:1107 @@ +1106,3 @@ + // Microsoft compatibility + case tok::kw___cdecl: // struct foo {...} __cdecl x; // C4229 +if (!getLangOpts().MicrosoftExt) What about __fastcall, e

r258877 - [WinEH] Annotate calls to __RTtypeid with a funclet bundle

2016-01-26 Thread David Majnemer via cfe-commits
Author: majnemer Date: Tue Jan 26 17:14:47 2016 New Revision: 258877 URL: http://llvm.org/viewvc/llvm-project?rev=258877&view=rev Log: [WinEH] Annotate calls to __RTtypeid with a funclet bundle Clang's CodeGen has several paths which end up invoking or calling a function. The one that we used for

r258839 - [MS ABI] Allow a member pointers' converted type to change

2016-01-26 Thread David Majnemer via cfe-commits
Author: majnemer Date: Tue Jan 26 13:30:26 2016 New Revision: 258839 URL: http://llvm.org/viewvc/llvm-project?rev=258839&view=rev Log: [MS ABI] Allow a member pointers' converted type to change Member pointers in the MS ABI are tricky for a variety of reasons. The size of a member pointer is inde

Re: r258773 - [OpenCL] Pipe builtin functions

2016-01-25 Thread David Majnemer via cfe-commits
Reverted in r258775, it broke the build bots: http://bb.pgr.jp/builders/cmake-clang-x86_64-linux/builds/43853 On Mon, Jan 25, 2016 at 6:06 PM, Xiuli Pan via cfe-commits < cfe-commits@lists.llvm.org> wrote: > Author: pxl > Date: Mon Jan 25 20:06:04 2016 > New Revision: 258773 > > URL: http://llvm.

r258775 - Revert "[OpenCL] Pipe builtin functions"

2016-01-25 Thread David Majnemer via cfe-commits
Author: majnemer Date: Mon Jan 25 20:22:31 2016 New Revision: 258775 URL: http://llvm.org/viewvc/llvm-project?rev=258775&view=rev Log: Revert "[OpenCL] Pipe builtin functions" This reverts commit r258773, it broke the build bots: http://bb.pgr.jp/builders/cmake-clang-x86_64-linux/builds/43853 Re

r258769 - [Sema] Remove stray semicolons.

2016-01-25 Thread David Majnemer via cfe-commits
Author: majnemer Date: Mon Jan 25 19:39:17 2016 New Revision: 258769 URL: http://llvm.org/viewvc/llvm-project?rev=258769&view=rev Log: [Sema] Remove stray semicolons. No functional change is intended. Modified: cfe/trunk/lib/Sema/SemaDeclCXX.cpp Modified: cfe/trunk/lib/Sema/SemaDeclCXX.cpp

r258768 - [Sema] Incomplete types are OK for covariant returns

2016-01-25 Thread David Majnemer via cfe-commits
Author: majnemer Date: Mon Jan 25 19:37:01 2016 New Revision: 258768 URL: http://llvm.org/viewvc/llvm-project?rev=258768&view=rev Log: [Sema] Incomplete types are OK for covariant returns Per C++14 [class.virtual]p8, it is OK for the return type's class type to be incomplete so long as the return

r258762 - [MS Compat] Don't crash if __GetExceptionInfo is in global scope

2016-01-25 Thread David Majnemer via cfe-commits
Author: majnemer Date: Mon Jan 25 19:12:17 2016 New Revision: 258762 URL: http://llvm.org/viewvc/llvm-project?rev=258762&view=rev Log: [MS Compat] Don't crash if __GetExceptionInfo is in global scope __GetExceptionInfo triggered Sema::LazilyCreateBuiltin which tries to create a non-templated func

Re: [PATCH] D16465: [MS ABI] Prevent some expressions from evaluating to a constant

2016-01-22 Thread David Majnemer via cfe-commits
majnemer added a subscriber: majnemer. majnemer added a comment. Adding @rsmith as a reviewer. http://reviews.llvm.org/D16465 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

r258506 - [MSVC Compat] Don't provide /volatile:ms semantics to types > pointer

2016-01-22 Thread David Majnemer via cfe-commits
Author: majnemer Date: Fri Jan 22 10:36:44 2016 New Revision: 258506 URL: http://llvm.org/viewvc/llvm-project?rev=258506&view=rev Log: [MSVC Compat] Don't provide /volatile:ms semantics to types > pointer Volatile loads of type wider than a pointer get split by MSVC because the base x86 ISA doesn

r258447 - [MSVC Compat] Don't omit frame pointers if /Oy- is specified before /O2

2016-01-21 Thread David Majnemer via cfe-commits
Author: majnemer Date: Thu Jan 21 17:01:11 2016 New Revision: 258447 URL: http://llvm.org/viewvc/llvm-project?rev=258447&view=rev Log: [MSVC Compat] Don't omit frame pointers if /Oy- is specified before /O2 Microsoft's documentation states that specifying /Oy- after the /O[12x] options disables f

r258003 - [MS ABI] Don't crash while mangling recursive lambdas

2016-01-16 Thread David Majnemer via cfe-commits
Author: majnemer Date: Sun Jan 17 01:09:24 2016 New Revision: 258003 URL: http://llvm.org/viewvc/llvm-project?rev=258003&view=rev Log: [MS ABI] Don't crash while mangling recursive lambdas We might get into bad situations where we try to embed the signature of an inner lambda into an outer lambda

Re: [PATCH] D15998: Implement __attribute__((gc_leaf_function)).

2016-01-11 Thread David Majnemer via cfe-commits
majnemer added subscribers: aaron.ballman, majnemer. majnemer added a comment. This change looks fine modulo the documentation issue. Comment at: include/clang/Basic/Attr.td:2177 @@ +2176,3 @@ + let Subjects = SubjectList<[Function]>; + let Documentation = [Undocumented]; +} -

r257205 - [MS ABI] Complete and base constructor GlobalDecls must have the same name

2016-01-08 Thread David Majnemer via cfe-commits
Author: majnemer Date: Fri Jan 8 14:48:26 2016 New Revision: 257205 URL: http://llvm.org/viewvc/llvm-project?rev=257205&view=rev Log: [MS ABI] Complete and base constructor GlobalDecls must have the same name Clang got itself into the situation where we mangled the same constructor twice with tw

r256797 - Remove an unused parameter

2016-01-04 Thread David Majnemer via cfe-commits
Author: majnemer Date: Mon Jan 4 18:08:41 2016 New Revision: 256797 URL: http://llvm.org/viewvc/llvm-project?rev=256797&view=rev Log: Remove an unused parameter No functionality change is intended Modified: cfe/trunk/include/clang/Sema/Sema.h cfe/trunk/lib/Parse/ParseStmtAsm.cpp cfe

r256795 - [ms-inline-asm] Handle dependent identifiers in inline asm

2016-01-04 Thread David Majnemer via cfe-commits
Author: majnemer Date: Mon Jan 4 17:51:15 2016 New Revision: 256795 URL: http://llvm.org/viewvc/llvm-project?rev=256795&view=rev Log: [ms-inline-asm] Handle dependent identifiers in inline asm Build up a dependent expression for MS-style inline assembly if the identifier's type is dependent. Th

r256686 - Reimplement __readeflags and __writeeflags on top of intrinsics

2015-12-31 Thread David Majnemer via cfe-commits
Author: majnemer Date: Fri Jan 1 00:50:08 2016 New Revision: 256686 URL: http://llvm.org/viewvc/llvm-project?rev=256686&view=rev Log: Reimplement __readeflags and __writeeflags on top of intrinsics Lean on LLVM to provide this functionality now that it provides the necessary intrinsics. Modifie

r256663 - [MS ABI] Change the ArgBackRefMap to hold const qualified pointers

2015-12-30 Thread David Majnemer via cfe-commits
Author: majnemer Date: Wed Dec 30 23:36:52 2015 New Revision: 256663 URL: http://llvm.org/viewvc/llvm-project?rev=256663&view=rev Log: [MS ABI] Change the ArgBackRefMap to hold const qualified pointers Just a cleanup, no functional change is intended. Modified: cfe/trunk/lib/AST/MicrosoftMan

r256664 - [MS ABI] Remove mangleCXXCatchHandlerType

2015-12-30 Thread David Majnemer via cfe-commits
Author: majnemer Date: Wed Dec 30 23:36:54 2015 New Revision: 256664 URL: http://llvm.org/viewvc/llvm-project?rev=256664&view=rev Log: [MS ABI] Remove mangleCXXCatchHandlerType It's dead code, no functional change is intended. Modified: cfe/trunk/include/clang/AST/Mangle.h cfe/trunk/lib/

r256661 - [MSVC Compat] Diagnose multiple default ctors for dllexport'd classes

2015-12-30 Thread David Majnemer via cfe-commits
Author: majnemer Date: Wed Dec 30 23:36:46 2015 New Revision: 256661 URL: http://llvm.org/viewvc/llvm-project?rev=256661&view=rev Log: [MSVC Compat] Diagnose multiple default ctors for dllexport'd classes The MS ABI emits a special default constructor closure thunk if a default constructor has a

r256662 - [MS ABI] Replace dead code with an assertion

2015-12-30 Thread David Majnemer via cfe-commits
Author: majnemer Date: Wed Dec 30 23:36:50 2015 New Revision: 256662 URL: http://llvm.org/viewvc/llvm-project?rev=256662&view=rev Log: [MS ABI] Replace dead code with an assertion As per C++ [dcl.ref]p1, cv-qualified references are not valid. As such, change the mangler to assert that this event

r256623 - [MS ABI] Add variable templates to the NameBackReferences

2015-12-29 Thread David Majnemer via cfe-commits
Author: majnemer Date: Tue Dec 29 23:40:32 2015 New Revision: 256623 URL: http://llvm.org/viewvc/llvm-project?rev=256623&view=rev Log: [MS ABI] Add variable templates to the NameBackReferences Only function template specializations are exempt from being added to the NameBackReferences. Redundant

r256622 - [MS ABI] Improve our mangling of pass_object_size

2015-12-29 Thread David Majnemer via cfe-commits
Author: majnemer Date: Tue Dec 29 23:13:03 2015 New Revision: 256622 URL: http://llvm.org/viewvc/llvm-project?rev=256622&view=rev Log: [MS ABI] Improve our mangling of pass_object_size We didn't add the artificial pass_object_size arguments to the backreference map which bloated the size of mangl

r256589 - [MS ABI] Invent a mangling for reference temporaries

2015-12-29 Thread David Majnemer via cfe-commits
Author: majnemer Date: Tue Dec 29 16:25:14 2015 New Revision: 256589 URL: http://llvm.org/viewvc/llvm-project?rev=256589&view=rev Log: [MS ABI] Invent a mangling for reference temporaries MSVC is non-conforming and doesn't have a mangling for these. Invent our own to unblock folks using clang.

r256583 - [MS ABI] Add a mangling for _Complex

2015-12-29 Thread David Majnemer via cfe-commits
Author: majnemer Date: Tue Dec 29 16:02:15 2015 New Revision: 256583 URL: http://llvm.org/viewvc/llvm-project?rev=256583&view=rev Log: [MS ABI] Add a mangling for _Complex MSVC doesn't implement a mangling for C99's _Complex so we must invent our own. For now, treating it like a class type calle

r256582 - [MS ABI] Mark an unreachable path appropriately

2015-12-29 Thread David Majnemer via cfe-commits
Author: majnemer Date: Tue Dec 29 16:02:10 2015 New Revision: 256582 URL: http://llvm.org/viewvc/llvm-project?rev=256582&view=rev Log: [MS ABI] Mark an unreachable path appropriately No functional change is intended, just a small cleanup. Modified: cfe/trunk/lib/AST/MicrosoftMangle.cpp Modi

r256556 - [MS ABI] Cleanup our mangling of vector types

2015-12-29 Thread David Majnemer via cfe-commits
Author: majnemer Date: Tue Dec 29 05:45:58 2015 New Revision: 256556 URL: http://llvm.org/viewvc/llvm-project?rev=256556&view=rev Log: [MS ABI] Cleanup our mangling of vector types We used to produce a type which demangled to: union __clang_vec8_F That 'F' is the mangling for 'short' but it is p

r256557 - [MS ABI] Implement a mangling for _Atomic types

2015-12-29 Thread David Majnemer via cfe-commits
Author: majnemer Date: Tue Dec 29 05:46:00 2015 New Revision: 256557 URL: http://llvm.org/viewvc/llvm-project?rev=256557&view=rev Log: [MS ABI] Implement a mangling for _Atomic types MSVC doesn't implement a mangling for C11's _Atomic so we must invent our own. For now, treating it like a class

r256555 - [MS ABI] Cleanup the mangling of artifical types

2015-12-29 Thread David Majnemer via cfe-commits
Author: majnemer Date: Tue Dec 29 05:45:53 2015 New Revision: 256555 URL: http://llvm.org/viewvc/llvm-project?rev=256555&view=rev Log: [MS ABI] Cleanup the mangling of artifical types Hand-rolling the mangling results in us not correctly adding names to the backreference map. Modified: cfe/t

r256463 - ArrayRef-ize TemplateParameterList. NFC

2015-12-26 Thread David Majnemer via cfe-commits
Author: majnemer Date: Sun Dec 27 01:16:27 2015 New Revision: 256463 URL: http://llvm.org/viewvc/llvm-project?rev=256463&view=rev Log: ArrayRef-ize TemplateParameterList. NFC Modified: cfe/trunk/include/clang/AST/DeclTemplate.h cfe/trunk/lib/AST/ASTContext.cpp cfe/trunk/lib/AST/ASTImp

r256204 - [clang-cl] Add support for /Brepro

2015-12-21 Thread David Majnemer via cfe-commits
Author: majnemer Date: Mon Dec 21 16:09:34 2015 New Revision: 256204 URL: http://llvm.org/viewvc/llvm-project?rev=256204&view=rev Log: [clang-cl] Add support for /Brepro The /Brepro flag controls whether or not the compiler should embed timestamps into the object file. Object files which do not

Re: [PATCH] D15518: [WinEH] Update clang to use operand bundles on call sites

2015-12-15 Thread David Majnemer via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL255675: [WinEH] Update clang to use operand bundles on call sites (authored by majnemer). Changed prior to commit: http://reviews.llvm.org/D15518?vs=42886&id=42901#toc Repository: rL LLVM http://rev

r255675 - [WinEH] Update clang to use operand bundles on call sites

2015-12-15 Thread David Majnemer via cfe-commits
Author: majnemer Date: Tue Dec 15 15:27:59 2015 New Revision: 255675 URL: http://llvm.org/viewvc/llvm-project?rev=255675&view=rev Log: [WinEH] Update clang to use operand bundles on call sites This updates clang to use bundle operands to associate an invoke with the funclet which it is contained

Re: [PATCH] D15518: [WinEH] Update clang to use operand bundles on call sites

2015-12-15 Thread David Majnemer via cfe-commits
majnemer updated this revision to Diff 42886. majnemer added a comment. - Address review comments http://reviews.llvm.org/D15518 Files: lib/CodeGen/CGCall.cpp lib/CodeGen/CodeGenModule.cpp Index: lib/CodeGen/CodeGenModule.cpp

[PATCH] D15518: [WinEH] Update clang to use operand bundles on call sites

2015-12-14 Thread David Majnemer via cfe-commits
majnemer created this revision. majnemer added reviewers: rnk, andrew.w.kaylor, JosephTremoulet, sanjoy. majnemer added a subscriber: cfe-commits. majnemer added a dependency: D15517: [WinEH] Use operand bundles to describe call sites. This updates clang to use bundle operands to associate an inv

Re: [PATCH] D15478: [MS ABI] Don't rely on terminatepad

2015-12-14 Thread David Majnemer via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL255521: [MS ABI] Don't rely on terminatepad (authored by majnemer). Changed prior to commit: http://reviews.llvm.org/D15478?vs=42641&id=42736#toc Repository: rL LLVM http://reviews.llvm.org/D15478

r255521 - [MS ABI] Don't rely on terminatepad

2015-12-14 Thread David Majnemer via cfe-commits
Author: majnemer Date: Mon Dec 14 12:34:18 2015 New Revision: 255521 URL: http://llvm.org/viewvc/llvm-project?rev=255521&view=rev Log: [MS ABI] Don't rely on terminatepad We'd like to remove support for terminatepad from LLVM. To do this, we need to move Clang off of it first. The intent behind

[PATCH] D15478: [MS ABI] Don't rely on terminatepad

2015-12-12 Thread David Majnemer via cfe-commits
majnemer created this revision. majnemer added a reviewer: rnk. majnemer added a subscriber: cfe-commits. We'd like to remove support for terminatepad from LLVM. To do this, we need to move Clang off of it first. The intent behind terminatepad was to carefully model exception specifications for

r255424 - Try to appease a buildbot.

2015-12-11 Thread David Majnemer via cfe-commits
Author: majnemer Date: Fri Dec 11 23:50:32 2015 New Revision: 255424 URL: http://llvm.org/viewvc/llvm-project?rev=255424&view=rev Log: Try to appease a buildbot. Modified: cfe/trunk/test/CodeGenCXX/microsoft-abi-try-throw.cpp Modified: cfe/trunk/test/CodeGenCXX/microsoft-abi-try-throw.cpp UR

Re: [PATCH] D15140: Update clang to use the updated LLVM EH instructions

2015-12-11 Thread David Majnemer via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL255423: Update clang to use the updated LLVM EH instructions (authored by majnemer). Changed prior to commit: http://reviews.llvm.org/D15140?vs=42618&id=42632#toc Repository: rL LLVM http://reviews.

r255423 - Update clang to use the updated LLVM EH instructions

2015-12-11 Thread David Majnemer via cfe-commits
Author: majnemer Date: Fri Dec 11 23:39:21 2015 New Revision: 255423 URL: http://llvm.org/viewvc/llvm-project?rev=255423&view=rev Log: Update clang to use the updated LLVM EH instructions Depends on D15139. Reviewers: rnk Differential Revision: http://reviews.llvm.org/D15140 Modified: cfe/

Re: [PATCH] D15140: Update clang to use the updated LLVM EH instructions

2015-12-11 Thread David Majnemer via cfe-commits
majnemer updated this revision to Diff 42618. majnemer added a comment. - Updated for the latest EH changes - Updated for LLVM changes - Address review comments http://reviews.llvm.org/D15140 Files: lib/CodeGen/CGCall.cpp lib/CodeGen/CGCleanup.cpp lib/CodeGen/CGCleanup.h lib/CodeGen/CGE

Re: [PATCH] D14274: Add alloc_size attribute to clang

2015-12-11 Thread David Majnemer via cfe-commits
majnemer added a subscriber: majnemer. Comment at: include/clang/Basic/AttrDocs.td:214 @@ +213,3 @@ + that we can lower to in the near future. This should cover a large number of + nonconst cases. + }]; nonconst -> non-const? http://reviews.llvm.org/D14274

Re: [PATCH] Add a builtin for indexing into parameter packs

2015-12-09 Thread David Majnemer via cfe-commits
Would you mind uploading the clang-side of this patch to phabricator? It will make it a little easier for me to perform a review. See http://llvm.org/docs/Phabricator.html for more details. On Mon, Nov 30, 2015 at 9:13 AM, Louis Dionne via cfe-commits < cfe-commits@lists.llvm.org> wrote: > Hi, >

Re: [PATCH] D15399: MS inline ASM: mark the function noinline if the asm has labels (PR23715)

2015-12-09 Thread David Majnemer via cfe-commits
majnemer added a subscriber: majnemer. Comment at: lib/CodeGen/CGStmt.cpp:2005 @@ -1998,3 +2004,3 @@ /* IsAlignStack */ false, AsmDialect); llvm::CallInst *Result = Builder.CreateCall(IA, Args); Result->addAttribute(llvm::AttributeSet::FunctionIndex

Re: [PATCH] D14814: [libcxx] Use __make_integer_seq builtin when available

2015-12-09 Thread David Majnemer via cfe-commits
majnemer added a comment. @EricWF Yes, it will. http://reviews.llvm.org/D14814 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Re: r254574 - PR17381: Treat undefined behavior during expression evaluation as an unmodeled

2015-12-07 Thread David Majnemer via cfe-commits
On Mon, Dec 7, 2015 at 9:51 PM, Richard Smith wrote: > On Mon, Dec 7, 2015 at 5:26 PM, Reid Kleckner via cfe-commits < > cfe-commits@lists.llvm.org> wrote: > >> It wasn't Chrome, it was some internal dependency on torch-cephes. I >> submitted a patch for it upstream: >> >> https://github.com/deep

Re: r254574 - PR17381: Treat undefined behavior during expression evaluation as an unmodeled

2015-12-07 Thread David Majnemer via cfe-commits
On Mon, Dec 7, 2015 at 5:25 PM, Hans Wennborg wrote: > On Mon, Dec 7, 2015 at 2:14 PM, David Majnemer > wrote: > > > > > > On Mon, Dec 7, 2015 at 4:32 PM, Richard Smith via cfe-commits > > wrote: > >> > >> On Mon, Dec 7, 2015 at 7:25 AM, Joerg Sonnenberger via cfe-commits > >> wrote: > >>> > >

Re: r254574 - PR17381: Treat undefined behavior during expression evaluation as an unmodeled

2015-12-07 Thread David Majnemer via cfe-commits
On Mon, Dec 7, 2015 at 4:32 PM, Richard Smith via cfe-commits < cfe-commits@lists.llvm.org> wrote: > On Mon, Dec 7, 2015 at 7:25 AM, Joerg Sonnenberger via cfe-commits < > cfe-commits@lists.llvm.org> wrote: > >> On Thu, Dec 03, 2015 at 01:36:22AM -, Richard Smith via cfe-commits >> wrote: >> >

Re: [PATCH] D15005: Fix PR8170: Clang does not check constructor declaration that uses a template-id

2015-12-07 Thread David Majnemer via cfe-commits
majnemer added a subscriber: majnemer. Comment at: lib/Sema/SemaTemplate.cpp:528 @@ +527,3 @@ +[&StringifiedTemplateArgs, this](const TemplateArgument &TA) { +if (const bool IsFirst = !StringifiedTemplateArgs.size()) + StringifiedTemplateArgs = "<"; --

Re: [PATCH] D13330: Implement __attribute__((unique_instantiation))

2015-12-07 Thread David Majnemer via cfe-commits
majnemer added inline comments. Comment at: lib/AST/ASTContext.cpp:8257-8266 @@ -8256,1 +8256,12 @@ +bool ASTContext::containedInUniqueInstantiation(const Decl *D) { + const RecordDecl *RD; + while ((RD = dyn_cast(D->getDeclContext( { +auto *CTSD = dyn_cast(RD); +i

Re: [PATCH] D13330: Implement __attribute__((unique_instantiation))

2015-12-07 Thread David Majnemer via cfe-commits
majnemer added inline comments. Comment at: include/clang/Basic/AttrDocs.td:1736-1755 @@ -1722,2 +1735,22 @@ + +// Explicit template definition (in exactly ONE .cpp file) +template struct __attribute__((unique_instantiation)) my_template; + + +When the unique_instantiation

Re: [PATCH] D14814: [libcxx] Use __make_integer_seq builtin when available

2015-12-06 Thread David Majnemer via cfe-commits
majnemer added a comment. This LGTM but @mclow.lists or @EricWF should give the final say-so. http://reviews.llvm.org/D14814 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Re: [PATCH] D15140: Update clang to use the updated LLVM EH instructions

2015-12-03 Thread David Majnemer via cfe-commits
majnemer updated this revision to Diff 41781. majnemer added a comment. - Updated for LLVM changes http://reviews.llvm.org/D15140 Files: lib/CodeGen/CGCall.cpp lib/CodeGen/CGCleanup.cpp lib/CodeGen/CGCleanup.h lib/CodeGen/CGException.cpp lib/CodeGen/CodeGenFunction.h lib/CodeGen/EHS

<    1   2   3   4   5   6   >