Author: smeenai
Date: Wed May 10 16:52:39 2017
New Revision: 302739
URL: http://llvm.org/viewvc/llvm-project?rev=302739=rev
Log:
[libc++abi] Disable libc++ extern templates project-wide
libc++abi can't depend on libc++, so disable extern templates in libc++
headers project-wide. This was
Author: smeenai
Date: Thu Apr 20 18:33:49 2017
New Revision: 300921
URL: http://llvm.org/viewvc/llvm-project?rev=300921=rev
Log:
[libc++] Default to vcruntime when targeting MSVC
Summary:
libc++abi is never the right option for LIBCXX_TARGETING_MSVC, since it
targets the Itanium ABI, whereas
Author: smeenai
Date: Wed Apr 19 20:11:42 2017
New Revision: 300804
URL: http://llvm.org/viewvc/llvm-project?rev=300804=rev
Log:
[Sema] Use MSVC inner class behavior on Itanium
Windows Itanium aims to use MSVC export and import semantics. Inner
class members shouldn't be exported on a dllexport
Author: smeenai
Date: Wed Apr 19 15:11:04 2017
New Revision: 300743
URL: http://llvm.org/viewvc/llvm-project?rev=300743=rev
Log:
[libc++] Use _LIBCPP_ABI_MICROSOFT instead of _MSC_VER
_LIBCPP_ABI_MICROSOFT is more appropriate to use here, since the
conditionals are controlling Microsoft
Author: smeenai
Date: Thu Apr 13 15:13:32 2017
New Revision: 300246
URL: http://llvm.org/viewvc/llvm-project?rev=300246=rev
Log:
[libc++] Add _LIBCPP_DISABLE_EXTERN_TEMPLATE config option
When the libc++ extern template macros were added, the intent was for it
to be possible for consumers of the
Author: smeenai
Date: Thu Apr 13 11:27:38 2017
New Revision: 300206
URL: http://llvm.org/viewvc/llvm-project?rev=300206=rev
Log:
[libc++] Explicitly set output directory for DLL
DLLs on Windows are treated as runtime targets. Explicitly set the
output directory for them, to be consistent with
Author: smeenai
Date: Wed Apr 12 14:56:37 2017
New Revision: 300097
URL: http://llvm.org/viewvc/llvm-project?rev=300097=rev
Log:
[libc++] Use more appropriate conditional for ABI macro definition
The inline function definition ABI macro is gated on COFF dllexport
semantics, so it's more
Author: smeenai
Date: Thu Apr 6 21:20:52 2017
New Revision: 299743
URL: http://llvm.org/viewvc/llvm-project?rev=299743=rev
Log:
[libc++] Drop support for CRTs older than VS 2015
LLVM dropped support for Visual Studio versions older than 2015 quite
some time ago, so I consider it safe to drop
Author: smeenai
Date: Wed Apr 5 23:47:49 2017
New Revision: 299625
URL: http://llvm.org/viewvc/llvm-project?rev=299625=rev
Log:
[libc++] Respect Windows Store app CRT restrictions
Some CRT APIs are unavailable for Windows Store apps [1]. Detect when
we're targeting the Windows Store and don't
Author: smeenai
Date: Sun Apr 2 23:04:24 2017
New Revision: 299348
URL: http://llvm.org/viewvc/llvm-project?rev=299348=rev
Log:
[libc++] Explicitly mark specializations as dllexport
Method specializations don't get exported even if there's an exported
extern template instantiation on Windows.
Author: smeenai
Date: Thu Mar 30 19:29:25 2017
New Revision: 299143
URL: http://llvm.org/viewvc/llvm-project?rev=299143=rev
Log:
[libc++abi] Remove missed use of config.h
Modified:
libcxxabi/trunk/src/cxa_noexception.cpp
Modified: libcxxabi/trunk/src/cxa_noexception.cpp
URL:
Author: smeenai
Date: Thu Mar 30 18:31:33 2017
New Revision: 299129
URL: http://llvm.org/viewvc/llvm-project?rev=299129=rev
Log:
[libc++abi] Delete config.h
Summary: It's now completely empty, so we can remove it entirely.
Reviewers: mclow.lists, EricWF
Subscribers: cfe-commits
Differential
Author: smeenai
Date: Thu Mar 30 11:27:09 2017
New Revision: 299087
URL: http://llvm.org/viewvc/llvm-project?rev=299087=rev
Log:
[libc++abi] Remove unistd.h include
This was originally there for the _POSIX_THREADS define, to detect the
presence of pthreads. That went away with the externalized
Author: smeenai
Date: Tue Mar 28 14:33:31 2017
New Revision: 298937
URL: http://llvm.org/viewvc/llvm-project?rev=298937=rev
Log:
[libc++] Add a key function for bad_function_call
Summary:
bad_function_call is currently an empty class, so any object files using
that class will end up with their
Author: smeenai
Date: Fri Mar 24 22:42:20 2017
New Revision: 298766
URL: http://llvm.org/viewvc/llvm-project?rev=298766=rev
Log:
[libc++] Fix some comment typos
Remove a stray letter, add a missing letter. No functional change.
Modified:
libcxx/trunk/CMakeLists.txt
Modified:
Author: smeenai
Date: Fri Mar 24 22:29:51 2017
New Revision: 298764
URL: http://llvm.org/viewvc/llvm-project?rev=298764=rev
Log:
[libc++] Fix word transposition in comment
"to due" -> "due to". No functional change.
Modified:
libcxx/trunk/CMakeLists.txt
Modified:
Author: smeenai
Date: Fri Mar 24 22:22:35 2017
New Revision: 298763
URL: http://llvm.org/viewvc/llvm-project?rev=298763=rev
Log:
[libc++] Fix capitalization in comment
Fix a stray capital letter in the middle of a sentence. No functional
change.
Modified:
libcxx/trunk/CMakeLists.txt
Author: smeenai
Date: Fri Mar 24 22:12:37 2017
New Revision: 298762
URL: http://llvm.org/viewvc/llvm-project?rev=298762=rev
Log:
[libc++] Update package version
Make it consistent with the rest of LLVM.
Modified:
libcxx/trunk/CMakeLists.txt
Modified: libcxx/trunk/CMakeLists.txt
URL:
Author: smeenai
Date: Wed Mar 8 18:18:00 2017
New Revision: 297330
URL: http://llvm.org/viewvc/llvm-project?rev=297330=rev
Log:
[libc++] Avoid double defining macro on Windows
Put proper guards around _LIBCPP_METHOD_TEMPLATE_IMPLICIT_INSTANTIATION_VIS.
No functional change on non-Windows.
Author: smeenai
Date: Wed Mar 1 21:22:18 2017
New Revision: 296732
URL: http://llvm.org/viewvc/llvm-project?rev=296732=rev
Log:
[libc++] Make _LIBCPP_TYPE_VIS export members
Summary:
Most classes annotated with _LIBCPP_TYPE_VIS need to have at least some
of their members exported, otherwise we
Author: smeenai
Date: Wed Mar 1 21:02:50 2017
New Revision: 296731
URL: http://llvm.org/viewvc/llvm-project?rev=296731=rev
Log:
[libc++] Make _LIBCPP_EXTERN_TEMPLATE_TYPE_VIS export members
When building libc++ with hidden visibility, we want explicit template
instantiations to export members.
Author: smeenai
Date: Wed Mar 1 20:51:27 2017
New Revision: 296729
URL: http://llvm.org/viewvc/llvm-project?rev=296729=rev
Log:
[libc++] Mark some std::num_get method templates inline
D29157 will make explicit template instantiations expand to default
visibility, at which point these method
Author: smeenai
Date: Tue Feb 28 21:55:57 2017
New Revision: 296576
URL: http://llvm.org/viewvc/llvm-project?rev=296576=rev
Log:
[libc++abi] Clean up visibility
Use the libc++abi visibility macros instead of pragmas or using
visibility attributes directly. Clean up redundant attributes on
Ah. lld-link actually only accepts link-style options, so it wouldn't solve
that particular problem. Happily, it seems like we aren't relying on ld-style
options to begin with.
From: Eric Fiselier
Date: Friday, January 13, 2017 at 5:52 PM
To: Shoaib Meenai
Cc:
Requesting a merge to the 4.0 branch. This is a pretty small change, and it
fixes an assertion failure on Windows (see PR31608 for details).
On 1/12/17, 5:28 PM, "cfe-commits on behalf of Shoaib Meenai via cfe-commits"
<cfe-commits-boun...@lists.llvm.org on behalf of cfe-commits@l
Author: smeenai
Date: Thu Jan 12 19:28:34 2017
New Revision: 291877
URL: http://llvm.org/viewvc/llvm-project?rev=291877=rev
Log:
[Sema] Restrict explicit instantation definition dllexport
In the case where the template class itself is already `dllexport`, the
implicit instantiation will have
What was the rationale for forcing the use of lld? Were errors encountered
with link? It's slightly annoying to have the extra dependency; I don't have
lld built on my Windows box, for example, and while I could do so, I've also
found link to work fine in my testing.
On 1/4/17, 7:57 PM,
Author: smeenai
Date: Thu Jan 12 00:22:36 2017
New Revision: 291743
URL: http://llvm.org/viewvc/llvm-project?rev=291743=rev
Log:
[libc++] Pair _aligned_malloc with _aligned_free
Attempting to pair an `_aligned_malloc` with a regular free causes heap
corruption. Pairing with `_aligned_free` is
Do you think it's worth also checking for the presence of cxxabi.h and
assuming the Itanium ABI if it's found, since the MS ABI shouldn't be using
any ABI library?
(_LIBCPP_BUILDING_HAS_NO_ABI_LIBRARY would have been ideal were it available
persistently rather than only during the build of libc++
Author: smeenai
Date: Fri Jan 6 20:45:35 2017
New Revision: 291330
URL: http://llvm.org/viewvc/llvm-project?rev=291330=rev
Log:
[libc++] Correct macro name in documenation
The macro is named `_LIBCPP_TEMPLATE_VIS`, not `_LIBCPP_TEMPLATE_ONLY`.
No functional change.
Modified:
Author: smeenai
Date: Sat Dec 24 12:05:32 2016
New Revision: 290503
URL: http://llvm.org/viewvc/llvm-project?rev=290503=rev
Log:
[libc++] Make __num_get_float hidden
It's an internal function and shouldn't be exported. It's also a source
of discrepancy in the published ABI list; these symbols
Author: smeenai
Date: Mon Dec 12 20:43:04 2016
New Revision: 289513
URL: http://llvm.org/viewvc/llvm-project?rev=289513=rev
Log:
[libc++abi] Mark failing test on Darwin as XFAIL
The macOS thread-local variable finalizer routines do not handle the
case where a termination function registers
Author: smeenai
Date: Mon Dec 5 13:42:11 2016
New Revision: 288692
URL: http://llvm.org/viewvc/llvm-project?rev=288692=rev
Log:
[libc++abi] Add _LIBCXXABI_DISABLE_VISIBILITY_ANNOTATIONS
It's useful to be able to disable visibility annotations entirely; for
example, if we're building libc++abi
Author: smeenai
Date: Mon Dec 5 13:40:12 2016
New Revision: 288690
URL: http://llvm.org/viewvc/llvm-project?rev=288690=rev
Log:
[libc++] Add _LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS
It's useful to be able to disable visibility annotations entirely; for
example, if we're building libc++ static to
Author: smeenai
Date: Mon Dec 5 12:01:35 2016
New Revision: 288682
URL: http://llvm.org/viewvc/llvm-project?rev=288682=rev
Log:
[Sema] Respect DLL attributes more faithfully
On MSVC, if an implicit instantiation already exists and an explicit
instantiation definition with a DLL attribute is
smeenai added a comment.
In https://reviews.llvm.org/D26934#603997, @EricWF wrote:
> There are two usages of `_LIBCPP_DISABLE_DLL_IMPORT_EXPORT` in
> `CMakeLists.txt` and `__config_site.in` that need to be changed as well.
Oops, will fix.
> Also what about users of the existing name
>
This revision was automatically updated to reflect the committed changes.
Closed by commit rL287768: [libc++] Remove unneeded visibility pragmas
(authored by smeenai).
Changed prior to commit:
https://reviews.llvm.org/D26940?vs=78792=79090#toc
Repository:
rL LLVM
smeenai added a comment.
General coding style question. Over here, I'm creating a local helper function.
However, that helper needs to access member functions of Sema, which is why I
made it a private member function right now, which also unfortunately makes the
change somewhat non-local
smeenai created this revision.
smeenai added reviewers: EricWF, mclow.lists.
smeenai added a subscriber: cfe-commits.
It's useful to be able to disable visibility annotations entirely; for
example, if we're building libc++abi static to include in another library,
and we don't want any libc++abi
smeenai created this revision.
smeenai added reviewers: compnerd, EricWF, howard.hinnant, mclow.lists.
smeenai added a subscriber: cfe-commits.
Use the libc++abi visibility macros instead of pragmas or using
visibility attributes directly. Clean up redundant attributes on
definitions (where the
smeenai created this revision.
smeenai added reviewers: EricWF, mclow.lists.
smeenai added a subscriber: cfe-commits.
The function definitions being guarded by the pragma were all static, so
they wouldn't be exported anyway. In any case, we should prefer the
visibility macros. No functional
smeenai updated this revision to Diff 78785.
smeenai added a comment.
Adding documentation per @EricWF's comment
https://reviews.llvm.org/D26934
Files:
docs/UsingLibcxx.rst
include/__config
Index: include/__config
===
---
smeenai created this revision.
smeenai added reviewers: mclow.lists, EricWF.
smeenai added a subscriber: cfe-commits.
It's useful to be able to disable visibility annotations entirely; for
example, if we're building libc++ static to include in another library,
and we don't want any libc++
smeenai updated this revision to Diff 78621.
smeenai added a comment.
Typo in comment
https://reviews.llvm.org/D26657
Files:
include/clang/Sema/Sema.h
lib/Sema/SemaTemplate.cpp
test/CodeGenCXX/dllexport.cpp
test/CodeGenCXX/windows-itanium-dllexport.cpp
Index:
smeenai updated this revision to Diff 78620.
smeenai updated the summary for this revision.
smeenai added a comment.
Addressing comments
https://reviews.llvm.org/D26657
Files:
include/clang/Sema/Sema.h
lib/Sema/SemaTemplate.cpp
test/CodeGenCXX/dllexport.cpp
smeenai added inline comments.
Comment at: lib/Sema/SemaTemplate.cpp:7670-7673
+if ((Old_TSK == TSK_ExplicitInstantiationDeclaration ||
+ Old_TSK == TSK_ImplicitInstantiation) &&
(TSK == TSK_ExplicitInstantiationDefinition ||
This revision was automatically updated to reflect the committed changes.
Closed by commit rL287309: [libc++] Fix preprocessor guard for overload
declaration (authored by smeenai).
Changed prior to commit:
https://reviews.llvm.org/D26825?vs=78447=78461#toc
Repository:
rL LLVM
Author: smeenai
Date: Thu Nov 17 22:31:09 2016
New Revision: 287309
URL: http://llvm.org/viewvc/llvm-project?rev=287309=rev
Log:
[libc++] Fix preprocessor guard for overload declaration
Fix a typo in the conditional. Caught by going through list of removed
symbols when building with hidden
smeenai created this revision.
smeenai added reviewers: mclow.lists, EricWF.
smeenai added a subscriber: cfe-commits.
Fix a typo in the conditional. Caught by going through list of removed
symbols when building with hidden visibility.
https://reviews.llvm.org/D26825
Files:
include/new
smeenai added a comment.
I should clarify that the ABI omissions are for Linux.
https://reviews.llvm.org/D25208
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
smeenai added a comment.
Ping.
I used @EricWF's ABI list verification work to confirm that this diff doesn't
change the ABI of libc++ on both Darwin and Linux, so it should be completely
safe.
Building with hidden visibility on top of this patch gives the following ABI
removals:
smeenai updated this revision to Diff 78324.
smeenai added a comment.
Moving explanation to comment instead of referencing Phabricator
https://reviews.llvm.org/D26657
Files:
lib/Sema/SemaTemplate.cpp
test/CodeGenCXX/dllexport.cpp
test/CodeGenCXX/windows-itanium-dllexport.cpp
Index:
smeenai updated this revision to Diff 78322.
smeenai added a comment.
Limiting to dllexport after discussion with @hans
https://reviews.llvm.org/D26657
Files:
lib/Sema/SemaTemplate.cpp
test/CodeGenCXX/dllexport.cpp
test/CodeGenCXX/windows-itanium-dllexport.cpp
Index:
smeenai added inline comments.
Comment at: lib/Sema/SemaTemplate.cpp:7670-7673
+if ((Old_TSK == TSK_ExplicitInstantiationDeclaration ||
+ Old_TSK == TSK_ImplicitInstantiation) &&
(TSK == TSK_ExplicitInstantiationDefinition ||
Author: smeenai
Date: Wed Nov 16 16:18:10 2016
New Revision: 287164
URL: http://llvm.org/viewvc/llvm-project?rev=287164=rev
Log:
[libc++] Introduce `_LIBCPP_OVERRIDABLE_FUNC_VIS`
This is a generalization of `_LIBCPP_NEW_DELETE_VIS`; the new macro name
captures the semantics better, and also
This revision was automatically updated to reflect the committed changes.
Closed by commit rL287164: [libc++] Introduce `_LIBCPP_OVERRIDABLE_FUNC_VIS`
(authored by smeenai).
Changed prior to commit:
https://reviews.llvm.org/D26702?vs=78079=78264#toc
Repository:
rL LLVM
smeenai added a comment.
In https://reviews.llvm.org/D26657#597523, @hans wrote:
> In https://reviews.llvm.org/D26657#596897, @smeenai wrote:
>
> > In https://reviews.llvm.org/D26657#596759, @hans wrote:
> >
> > > > On MSVC, if an implicit instantiation already exists and an explicit
> > > >
smeenai added a comment.
In https://reviews.llvm.org/D26702#597377, @EricWF wrote:
> What happens on windows when `operator new` isn't overridden and has to be
> imported from the DLL? Does that work?
Yup. If you have a function that isn't marked `dllimport` and it's not found
locally, the
smeenai added a comment.
In https://reviews.llvm.org/D26657#596759, @hans wrote:
> > On MSVC, if an implicit instantiation already exists and an explicit
> > instantiation definition with a DLL attribute is created, the DLL
> > attribute still takes effect. Make clang match this behavior.
>
>
smeenai created this revision.
smeenai added reviewers: compnerd, EricWF, mclow.lists.
smeenai added a subscriber: cfe-commits.
This is a generalization of `_LIBCPP_NEW_DELETE_VIS`; the new macro name
captures the semantics better, and also allows us to get rid of the
`_WIN32` check in
smeenai added inline comments.
Comment at: lib/Sema/SemaTemplate.cpp:7669
+// Fix a TSK_ExplicitInstantiationDeclaration or a
TSK_ImplicitInstantiation
+// followed by a TSK_ExplicitInstantiationDefinition
+if ((Old_TSK == TSK_ExplicitInstantiationDeclaration ||
smeenai created this revision.
smeenai added reviewers: compnerd, hans.
smeenai added a subscriber: cfe-commits.
On MSVC, if an implicit instantiation already exists and an explicit
instantiation definition with a DLL attribute is created, the DLL
attribute still takes effect. Make clang match
This revision was automatically updated to reflect the committed changes.
Closed by commit rL286419: [Sema] Use MS ABI behavior for dllexport in Itanium
(authored by smeenai).
Changed prior to commit:
https://reviews.llvm.org/D26471?vs=77392=77418#toc
Repository:
rL LLVM
Author: smeenai
Date: Wed Nov 9 17:52:20 2016
New Revision: 286419
URL: http://llvm.org/viewvc/llvm-project?rev=286419=rev
Log:
[Sema] Use MS ABI behavior for dllexport in Itanium
Similar to r284288, make the Itanium ABI follow MS ABI dllexport
semantics in the case of an explicit instantiation
smeenai created this revision.
smeenai added a reviewer: compnerd.
smeenai added a subscriber: cfe-commits.
Similar to r284288, make the Itanium ABI follow MS ABI dllexport
semantics in the case of an explicit instantiation declaration followed
by a dllexport explicit instantiation definition.
smeenai abandoned this revision.
smeenai added a comment.
Abandoning this then. In case the new incarnation of the test needs to
overwrite any memory allocation methods, this diff has the most reliable way to
do it on OS X :)
https://reviews.llvm.org/D26150
smeenai added a comment.
In https://reviews.llvm.org/D26375#588949, @beanz wrote:
> This patch doesn't make sense to me.
>
> In an in-tree build `CMAKE_SOURCE_DIR` would be the LLVM source directory
> which shouldn't match your `CMAKE_BINARY_DIR`.
>
> In an out-of-tree build `CMAKE_SOURCE_DIR`
This revision was automatically updated to reflect the committed changes.
Closed by commit rL286202: [libc++] Remove unnecessary MSVCRT exclusions
(authored by smeenai).
Changed prior to commit:
https://reviews.llvm.org/D26377?vs=77119=77136#toc
Repository:
rL LLVM
Author: smeenai
Date: Mon Nov 7 21:31:42 2016
New Revision: 286202
URL: http://llvm.org/viewvc/llvm-project?rev=286202=rev
Log:
[libc++] Remove unnecessary MSVCRT exclusions
Visual Studio 2013 and up have these functions, and we don't need to
support older versions.
There are some remaining
smeenai updated this revision to Diff 77119.
smeenai updated the summary for this revision.
smeenai added a comment.
Fixing some more exclusions
https://reviews.llvm.org/D26377
Files:
include/cmath
include/cstdio
include/cwchar
Index: include/cwchar
smeenai created this revision.
smeenai added reviewers: compnerd, EricWF, mclow.lists.
smeenai added a subscriber: cfe-commits.
Visual Studio 2013 and up have these functions, and we don't need to
support older versions.
https://reviews.llvm.org/D26377
Files:
include/cstdio
Index:
smeenai created this revision.
smeenai added reviewers: beanz, EricWF, mclow.lists.
smeenai added a subscriber: cfe-commits.
Herald added a subscriber: mgorny.
When ensuring an out-of-source build, compare to the libc++ source
directory instead of the top-level cmake source directory (which would
smeenai added a comment.
In https://reviews.llvm.org/D26150#587973, @ikudrin wrote:
> This test is extremely fragile. Maybe, it is better to disable it, or even
> delete it altogether.
I'll take your word for it, as the original author of the test, though I'm
curious about where the
smeenai added a comment.
Ping :)
https://reviews.llvm.org/D25208
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
This revision was automatically updated to reflect the committed changes.
Closed by commit rL285582: [libc++] Add configuration define for off_t
functions (authored by smeenai).
Changed prior to commit:
https://reviews.llvm.org/D25741?vs=75142=76411#toc
Repository:
rL LLVM
Author: smeenai
Date: Mon Oct 31 10:09:10 2016
New Revision: 285582
URL: http://llvm.org/viewvc/llvm-project?rev=285582=rev
Log:
[libc++] Add configuration define for off_t functions
Create this define in __config and use it elsewhere, instead of checking
the operating system/library defines in
smeenai created this revision.
smeenai added reviewers: compnerd, EricWF, howard.hinnant, ikudrin, mclow.lists.
smeenai added a subscriber: cfe-commits.
Mach-O defaults to two-level namespaces, so `calloc` cannot be
interpositoned. Override it via the default malloc zone instead.
Note:
smeenai updated this revision to Diff 75142.
smeenai added a comment.
Addressing @mclow.lists's comment
https://reviews.llvm.org/D25741
Files:
include/__config
include/fstream
Index: include/fstream
===
--- include/fstream
smeenai added a comment.
Ping.
The way I see it, this doesn't change anything for people not building with
hidden visibility (which should be most people, including the buildbots), but
it does make `_LIBCPP_TYPE_VIS` more useful (and consistent with the existing
Windows behavior) for people
smeenai created this revision.
smeenai added reviewers: EricWF, mclow.lists.
smeenai added a subscriber: cfe-commits.
Create this define in __config and use it elsewhere, instead of checking
the operating system/library defines in other files. The aim is to
reduce the usage of _WIN32 outside
smeenai added a comment.
In https://reviews.llvm.org/D25208#564930, @EricWF wrote:
> Why do you want to build `libc++.so` with hidden visibility? What's wrong
> with the existing way we build `libc++.so`?
There's nothing wrong with the existing way, per se. I personally prefer hidden
smeenai closed this revision.
smeenai added a comment.
Not sure why Phabricator isn't closing this out, but this was committed as SVN
r284016
https://reviews.llvm.org/D25145
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
Author: smeenai
Date: Wed Oct 12 08:48:14 2016
New Revision: 284016
URL: http://llvm.org/viewvc/llvm-project?rev=284016=rev
Log:
[libc++] Correct explanation of _LIBCPP_NEW_DELETE_VIS
The behavior of this macro actually needs to apply universally on
Windows and not just when using the Microsoft
smeenai added a comment.
In https://reviews.llvm.org/D25145#565027, @mclow.lists wrote:
> Sigh. Make an expedient choice that you don't really agree with, and you get
> immediately reminded of it. I suggested on an earlier review (not this
> patch) that I really didn't want to see `_WIN32`
smeenai created this revision.
smeenai added reviewers: compnerd, EricWF, mclow.lists.
smeenai added a subscriber: cfe-commits.
Most classes annotated with _LIBCPP_TYPE_VIS need to have at least some
of their members exported, otherwise we have a lot of link errors when
linking against a libc++
smeenai added a comment.
My initial understanding of the problem was incorrect; I did some further
experimentation and I think I properly understand what's going on here now.
Sorry for the churn.
https://reviews.llvm.org/D25145
___
cfe-commits
smeenai created this revision.
smeenai added reviewers: compnerd, EricWF, mclow.lists.
smeenai added a subscriber: cfe-commits.
The behavior of this macro actually needs to apply universally on
Windows and not just when using the Microsoft CRT. Update the macro
definition and documentation
smeenai added a comment.
@mclow.lists Do you have any preference between this and
https://reviews.llvm.org/D14259? I'm fine either way, but I'd want one of them
to be committed sooner rather than later.
https://reviews.llvm.org/D25053
___
smeenai added a comment.
It's not – I just wasn't aware of the existence of the other one :) That one's
been stagnant for a long time though. One of these changes should be abandoned
in favor of the other, and I'm fine doing it either way.
https://reviews.llvm.org/D25053
smeenai created this revision.
smeenai added reviewers: compnerd, EricWF, mclow.lists.
smeenai added a subscriber: cfe-commits.
The max alignment is a PE/COFF restriction, not an MSVC-specific
restriction; it also applies to gcc and clang when compiling for
Windows. Change the conditional to
This revision was automatically updated to reflect the committed changes.
Closed by commit rL282644: [libc++] Clarify _LIBCPP_NEW_DELETE_VIS for Windows
(authored by smeenai).
Changed prior to commit:
https://reviews.llvm.org/D25042?vs=72911=72915#toc
Repository:
rL LLVM
smeenai updated this revision to Diff 72911.
smeenai added a comment.
Moving documentation to documentation file, per @EricWF's comment
https://reviews.llvm.org/D25042
Files:
docs/DesignDocs/VisibilityMacros.rst
include/new
Index: include/new
smeenai updated this revision to Diff 72891.
smeenai added a comment.
Clarifying code comment
https://reviews.llvm.org/D25042
Files:
include/new
Index: include/new
===
--- include/new
+++ include/new
@@ -125,8 +125,18 @@
}
smeenai created this revision.
smeenai added reviewers: compnerd, EricWF, mclow.lists.
smeenai added a subscriber: cfe-commits.
Replace a stale reference to cxx_EXPORTS with _LIBCPP_BUILDING_LIBRARY,
and clarify why the operator new and delete family of functions are
marked dllexport when
This revision was automatically updated to reflect the committed changes.
Closed by commit rL282470: [libc++abi] Default to DLL annotations on Windows
(authored by smeenai).
Changed prior to commit:
https://reviews.llvm.org/D24945?vs=72598=72599#toc
Repository:
rL LLVM
Author: smeenai
Date: Mon Sep 26 22:44:09 2016
New Revision: 282470
URL: http://llvm.org/viewvc/llvm-project?rev=282470=rev
Log:
[libc++abi] Default to DLL annotations on Windows
`__declspec(dllexport)` and `__declspec(dllimport)` should only be used
when building libc++abi as a DLL, but that's
smeenai updated this revision to Diff 72598.
smeenai added a comment.
Addressing @EricWF's comment
https://reviews.llvm.org/D24945
Files:
CMakeLists.txt
include/__cxxabi_config.h
Index: include/__cxxabi_config.h
===
---
smeenai marked an inline comment as done.
smeenai added a comment.
https://reviews.llvm.org/D24945
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
smeenai created this revision.
smeenai added reviewers: compnerd, EricWF, mclow.lists.
smeenai added a subscriber: cfe-commits.
Herald added subscribers: mgorny, beanz.
`__declspec(dllexport)` and `__declspec(dllimport)` should only be used
when building libc++abi as a DLL, but that's the more
smeenai abandoned this revision.
smeenai added a comment.
Your patch looks good to me and is a nicer way of accomplishing this. Thanks
for taking care of it!
https://reviews.llvm.org/D24877
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
201 - 300 of 350 matches
Mail list logo