bcraig updated this revision to Diff 54110.
bcraig marked an inline comment as done.
bcraig added a comment.
EricWF's feedback. I plan on submitting this tomorrow morning.
http://reviews.llvm.org/D16545
Files:
CMakeLists.txt
test/CMakeLists.txt
test/libcxxabi/test/config.py
test/lit.si
bcraig updated the summary for this revision.
bcraig updated this revision to Diff 54112.
bcraig added a comment.
EricWF's feedback. Removed libcxx_library option. I plan on submitting this
tomorrow morning.
http://reviews.llvm.org/D16544
Files:
docs/TestingLibcxx.rst
test/CMakeLists.txt
bcraig marked 2 inline comments as done.
bcraig added a comment.
http://reviews.llvm.org/D16544
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
Author: bcraig
Date: Tue Apr 19 07:47:38 2016
New Revision: 266729
URL: http://llvm.org/viewvc/llvm-project?rev=266729&view=rev
Log:
Enable testing for static libc++abi
This change leverages framework changes made in libcxx. See those changes for
more details. (http://reviews.llvm.org/D16544)
So
Author: bcraig
Date: Tue Apr 19 07:49:05 2016
New Revision: 266730
URL: http://llvm.org/viewvc/llvm-project?rev=266730&view=rev
Log:
Framework to allow testing of static libc++abi
These changes make linking against static libraries more explicit. Instead
of using -lc++ and -lc++abi in the tests,
bcraig closed this revision.
bcraig added a comment.
r266730
Comment at: test/libcxx/test/config.py:454
@@ -464,1 +453,3 @@
+else:
+self.cxx.link_flags += ['-lc++']
EricWF wrote:
> In this fallback case do we want to explicitly ask
bcraig closed this revision.
bcraig added a comment.
r266729
http://reviews.llvm.org/D16545
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
bcraig created this revision.
bcraig added reviewers: mclow.lists, EricWF, howard.hinnant.
bcraig added a subscriber: cfe-commits.
The C++11 and C++14 standards both say in the header synopsis that
shall include .
http://reviews.llvm.org/D19280
Files:
include/utility
Index: include/utility
Author: bcraig
Date: Tue Apr 19 15:13:55 2016
New Revision: 266808
URL: http://llvm.org/viewvc/llvm-project?rev=266808&view=rev
Log:
Include initializer_list from utility
The C++11 and C++14 standards both say in the header synopsis that
shall include .
Added:
libcxx/trunk/test/std/utiliti
bcraig closed this revision.
bcraig added a comment.
Test added. r266808
http://reviews.llvm.org/D19280
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
Author: bcraig
Date: Tue Apr 19 16:07:30 2016
New Revision: 266820
URL: http://llvm.org/viewvc/llvm-project?rev=266820&view=rev
Log:
XFAILing new test on C++03
initializer_list doesn't exist in C++03.
Modified:
libcxx/trunk/test/std/utilities/utility/synopsis.pass.cpp
Modified: libcxx/trunk
bcraig added a comment.
ping @danalbert, @mclow.lists
http://reviews.llvm.org/D17416
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
bcraig added a subscriber: bcraig.
bcraig added a comment.
Note: My opinion doesn't count for much as far as community acceptance goes.
I'm fine with the idea. I think there is at least one significant conformance
hurdle that you will need to address though. I also have some commentary on
th
bcraig added a subscriber: bcraig.
Comment at: src/mutex.cpp:31
@@ +30,3 @@
+#else
+#error "Not implemented for the selected thread API."
+#endif
Can't we just check for _LIBCPP_THREAD_API_PTHREAD once at the top of the file
and #error as necessary there? I
bcraig created this revision.
bcraig added reviewers: rmaprath, mclow.lists, EricWF.
bcraig added a subscriber: cfe-commits.
The existing pthread detection code in __config is pretty good for common
operating systems. It doesn't allow cmake-time choices to be made for uncommon
operating systems
bcraig created this revision.
bcraig added reviewers: rmaprath, mclow.lists, EricWF.
bcraig added a subscriber: cfe-commits.
Companion to http://reviews.llvm.org/D20573
When building libcxxabi in tree (i.e. in llvm/projects/libcxxabi, along with
llvm/projects/libcxx), libcxx's __config_site.in d
bcraig added a comment.
Note: You'll want to look at http://reviews.llvm.org/D20573, as there will be
confilicts for whoever submits second.
Comment at: include/__threading_support:201
@@ +200,3 @@
+// Mutex
+#define _LIBCPP_MUTEX_INITIALIZER nullptr
+struct __libcpp_platform_m
bcraig added a subscriber: bcraig.
bcraig added a comment.
I don't believe this is a libcxx bug, but it is a bug in the test code.
oss.str(); isn't required to return a null terminated string. std::cout <<
(char *) requires a null terminated string though.
http://reviews.llvm.org/D20334
_
bcraig added inline comments.
Comment at: include/__threading_support:201
@@ +200,3 @@
+// Mutex
+#define _LIBCPP_MUTEX_INITIALIZER nullptr
+struct __libcpp_platform_mutex_t;
rmaprath wrote:
> bcraig wrote:
> > I'm not sure I like taking the freedom to define _LIB
bcraig added inline comments.
Comment at: include/__threading_support:201
@@ +200,3 @@
+// Mutex
+#define _LIBCPP_MUTEX_INITIALIZER nullptr
+struct __libcpp_platform_mutex_t;
rmaprath wrote:
> bcraig wrote:
> > rmaprath wrote:
> > > bcraig wrote:
> > > > I'm not s
bcraig created this revision.
bcraig added reviewers: mclow.lists, EricWF, joerg, jroelofs.
bcraig added a subscriber: cfe-commits.
Herald added a subscriber: jfb.
This patch cleans up libcxx's usage of newlocale, freelocale, uselocale, and
locale_t.
First, libcxx no longer defines the posix new
bcraig updated this revision to Diff 58317.
http://reviews.llvm.org/D20574
Files:
CMakeLists.txt
Index: CMakeLists.txt
===
--- CMakeLists.txt
+++ CMakeLists.txt
@@ -113,6 +113,7 @@
option(LIBCXXABI_ENABLE_WERROR "Fail and stop if
bcraig marked an inline comment as done.
bcraig added a comment.
http://reviews.llvm.org/D20574
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
bcraig updated this revision to Diff 58320.
http://reviews.llvm.org/D20573
Files:
CMakeLists.txt
include/__config
include/__config_site.in
include/__threading_support
Index: include/__threading_support
===
--- include/__thre
bcraig marked 2 inline comments as done.
bcraig added a comment.
http://reviews.llvm.org/D20573
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
bcraig added inline comments.
Comment at: include/__threading_support:201
@@ +200,3 @@
+// Mutex
+#define _LIBCPP_MUTEX_INITIALIZER nullptr
+struct __libcpp_platform_mutex_t;
rmaprath wrote:
> rmaprath wrote:
> > bcraig wrote:
> > > rmaprath wrote:
> > > > bcraig
bcraig added a comment.
In http://reviews.llvm.org/D20334#438052, @ahatanak wrote:
> My understanding is that typically std::ends is explicitly appended to
> null-terminate the stream buffer. The test case in the example does that.
>
> http://en.cppreference.com/w/cpp/io/ostrstream/str
Doh! Y
bcraig added a comment.
LGTM. You probably need to get an approval from someone else though, as I
haven't really established myself in the libunwind code base.
As a side note... one of these days clang / llvm stack compaction may actually
work reasonably well, and tricks like this won't be nec
Author: bcraig
Date: Wed May 25 12:37:38 2016
New Revision: 270732
URL: http://llvm.org/viewvc/llvm-project?rev=270732&view=rev
Log:
Allow explicit pthread opt-in
When building libcxxabi in tree (i.e. in llvm/projects/libcxxabi,
along with llvm/projects/libcxx), libcxx's config_site.in doesn't
ge
Author: bcraig
Date: Wed May 25 12:40:09 2016
New Revision: 270735
URL: http://llvm.org/viewvc/llvm-project?rev=270735&view=rev
Log:
[libcxx] Allow explicit pthread opt-in
The existing pthread detection code in __config is pretty good for
common operating systems. It doesn't allow cmake-time choi
bcraig closed this revision.
bcraig added a comment.
r270732
http://reviews.llvm.org/D20574
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
bcraig added a comment.
r270735
http://reviews.llvm.org/D20573
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
bcraig added inline comments.
Comment at: CMakeLists.txt:359
@@ -350,2 +358,3 @@
else()
- add_subdirectory(test)
+ # libc++abi tests are mostly exceptions related. The only reason we want to
+ # build libc++abi without exceptions is to support the -fno-exceptions libc++
--
bcraig added a comment.
So I definitely see a problem, and I think your fix is a reasonable solution to
that problem. I'm still unclear on how that caused the ASAN error though.
Here's my understanding of the current problem...
The initial buffer for strstreambuf is often 4096 ( _strstream>
bcraig added inline comments.
Comment at: src/cxa_aux_runtime.cpp:19-24
@@ -18,4 +18,8 @@
extern "C" {
_LIBCXXABI_FUNC_VIS LIBCXXABI_NORETURN void __cxa_bad_cast(void) {
+#ifndef _LIBCXXABI_NO_EXCEPTIONS
throw std::bad_cast();
+#else
+ std::terminate();
+#endif
}
--
bcraig added a comment.
LGTM. Probably want a "LGTM" from at least one other person though.
In http://reviews.llvm.org/D20677#441085, @rmaprath wrote:
> In http://reviews.llvm.org/D20677#441061, @jroelofs wrote:
>
> > This is the canonical reference for the Itanium ABI:
> > https://mentorembed
bcraig added a comment.
LGTM. You may want to wait on Marshall's approval though. Thanks for being
patient with me, and thanks for the patch!
http://reviews.llvm.org/D20334
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm
bcraig added a comment.
In http://reviews.llvm.org/D20320#442246, @rmaprath wrote:
> Do you know if there are clang / llvm passes that attempts to achieve some
> sort of stack compaction? I couldn't find much.
I'm not sure if it belongs to its own pass, or if it is part of another pass,
but t
bcraig added subscribers: mclow.lists, bcraig.
bcraig added a comment.
LGTM. Add @mclow.lists as a reviewer.
http://reviews.llvm.org/D20730
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-c
bcraig added a comment.
In http://reviews.llvm.org/D16545#444854, @rmaprath wrote:
> Hmmm, it looks like part of this patch didn't go in? I cannot see the changes
> in the `libcxxabi/CMakeLists.txt` file in the repo.
>
> I was hoping this would enable me to run the `libc++abi` tests on in-tree
Author: bcraig
Date: Wed Jun 1 07:50:30 2016
New Revision: 271388
URL: http://llvm.org/viewvc/llvm-project?rev=271388&view=rev
Log:
Missed part of D16545 (static lib testing)
http://reviews.llvm.org/D16545
Modified:
libcxxabi/trunk/CMakeLists.txt
Modified: libcxxabi/trunk/CMakeLists.txt
UR
bcraig added a comment.
In http://reviews.llvm.org/D16545#444869, @bcraig wrote:
> In http://reviews.llvm.org/D16545#444854, @rmaprath wrote:
>
> > Perhaps you forgot to commit that file?
>
>
> Hrm, you're right, it didn't go in. I'll get it in tomorrow morning.
Should be in now. r271388.
h
bcraig added inline comments.
Comment at: include/__threading_support:187
@@ +186,3 @@
+{
+std::terminate();
+}
Why does this need to go in threading_support? Seems like this is mostly
orthogonal to threading. libcxxabi seems like the better place to hold c
bcraig added inline comments.
Comment at: include/__threading_support:187
@@ +186,3 @@
+{
+std::terminate();
+}
rmaprath wrote:
> bcraig wrote:
> > Why does this need to go in threading_support? Seems like this is mostly
> > orthogonal to threading. libcxxa
bcraig added inline comments.
Comment at: include/__threading_support:201
@@ +200,3 @@
+# if !defined(__has_include) || __has_include(<__static_threading>)
+#include<__static_threading>
+# else
This #include deserves a comment. Some perplexed developer is g
bcraig created this revision.
bcraig added reviewers: zaks.anna, krememek, jordan_rose.
bcraig added a subscriber: cfe-commits.
This depends on http://reviews.llvm.org/D20930
Rehashing the ExplodedNode table is very expensive. The hashing itself is
expensive, and the general activity of iterati
bcraig added a comment.
In http://reviews.llvm.org/D20933#447608, @zaks.anna wrote:
> Does FoldingSet already have reserve? (I do not see it.)
The reserve call would be new. I'm attempting to add it in this llvm review:
http://reviews.llvm.org/D20930
> My understanding is that you propose to
bcraig added a comment.
I'll try to get those stats. My suspicion is that it is highly language /
projects specific. Specifically, I suspect that C (and maybe ObjC?) won't hit
the analysis limit often, but that C++ will hit the limit frequently because of
the large number of inline functions.
bcraig added a comment.
tldr; I'm going to recommend we stick with the current algorithm, but I only
have partial data to back that up.
For the pile of LLVM projects that I am currently building (llvm, clang,
libcxx, libcxxabi), 18.9% of all analyzed functions hit the maximum step count.
For
bcraig updated this revision to Diff 59950.
bcraig added a comment.
Uploading more context.
http://reviews.llvm.org/D20933
Files:
include/clang/StaticAnalyzer/Core/PathSensitive/ExplodedGraph.h
lib/StaticAnalyzer/Core/CoreEngine.cpp
Index: lib/StaticAnalyzer/Core/CoreEngine.cpp
===
bcraig added a comment.
In http://reviews.llvm.org/D20933#452352, @zaks.anna wrote:
> > For the pile of LLVM projects that I am currently building (llvm, clang,
> > libcxx, libcxxabi), 18.9% of all analyzed
>
> > functions hit the maximum step count. For the previously discussed large
> > .C f
bcraig added a comment.
In http://reviews.llvm.org/D20933#452854, @dcoughlin wrote:
> A 6% speed improvement could be a big win! Do we have a sense of what the
> expected increased memory cost (as a % of average use over the lifetime of
> the process) is? My guess is it would be relatively low.
bcraig updated this revision to Diff 60177.
bcraig added a comment.
Capping the pre-reserve space
http://reviews.llvm.org/D20933
Files:
include/clang/StaticAnalyzer/Core/PathSensitive/ExplodedGraph.h
lib/StaticAnalyzer/Core/CoreEngine.cpp
Index: lib/StaticAnalyzer/Core/CoreEngine.cpp
=
bcraig added a comment.
I got better valgrind numbers (symbols are important).
Before: 106,131,538
After: 106,657,666
Diff: 526,128 larger.
Note that this is sampled peaks for heap usage. They may not be accurate.
Regardless, the peak usage increased by less than .5%.
http://reviews.llvm.org
Author: bcraig
Date: Fri Jun 10 08:22:13 2016
New Revision: 272394
URL: http://llvm.org/viewvc/llvm-project?rev=272394&view=rev
Log:
Preallocate ExplodedNode hash table
Rehashing the ExplodedNode table is very expensive. The hashing
itself is expensive, and the general activity of iterating over
bcraig closed this revision.
bcraig added a comment.
Completed: At revision: 272394
http://reviews.llvm.org/D20933
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
bcraig created this revision.
bcraig added reviewers: zaks.anna, dcoughlin, jordan_rose.
bcraig added a subscriber: cfe-commits.
During the core analysis, ExplodedNodes are added to the ExplodedGraph, and
those nodes are cached for deduplication purposes.
After core analysis, reports are generat
bcraig added a subscriber: bcraig.
bcraig added a comment.
> Even though they have artificial blocks in order to keep variables locally
> scoped, this gives MSVC's /analyze a headache, because it views main() as
> consuming an enormous amount of stack space (it doesn't reuse stack, at least
> f
bcraig added a comment.
LGTM. I don't see anything controversial here. If you want to wait for
@EricWF or @mclow.lists though, that's fine.
http://reviews.llvm.org/D21345
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.o
bcraig added subscribers: joerg, bcraig.
bcraig added a comment.
@joerg. I think this has been fixed in newer versions of NetBSD.
Sure would be nice if someone could fix this on the MUSL side of things.
See https://bugs.musicpd.org/view.php?id=4110 for fun conversations about
mutex, PTHREAD_MU
Author: bcraig
Date: Thu Jun 23 10:47:12 2016
New Revision: 273572
URL: http://llvm.org/viewvc/llvm-project?rev=273572&view=rev
Log:
[Analyzer] Don't cache report generation ExplodedNodes
During the core analysis, ExplodedNodes are added to the
ExplodedGraph, and those nodes are cached for dedupl
bcraig closed this revision.
bcraig added a comment.
Old: 106,657,666
New: 105,346,818
Submitted in r273572
http://reviews.llvm.org/D21229
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-co
bcraig added subscribers: rmaprath, bcraig.
bcraig added a comment.
You should look at __thread_specific_ptr in libcxx's . It does a lot
of these things in order to satisfy the requirements of
notify_all_at_thread_exit, set_value_at_thread_exit, and
make_ready_at_thread_exit.
@rmaprath has be
bcraig added a comment.
In http://reviews.llvm.org/D21803#470060, @tavianator wrote:
> In http://reviews.llvm.org/D21803#469988, @bcraig wrote:
>
> > You should look at __thread_specific_ptr in libcxx's . It does a
> > lot of these things in order to satisfy the requirements of
> > notify_all_
bcraig added a comment.
> Hmm, maybe? If other global destructors run after ~DtorListHolder(), and
> they cause a thread_local to be initialized for the first time,
> __cxa_thread_atexit() might be called again. I was thinking that dtors would
> get re-initialized in that case but it appears
bcraig added a comment.
In http://reviews.llvm.org/D21803#470564, @joerg wrote:
> On the topic of __cxa_thread_atexit, was it ever specified how it interacts
> with things like thread cancellation?
I don't think it's officially specified anywhere. C++ threads don't have a
cancel method. The
bcraig added inline comments.
Comment at: src/cxa_thread_atexit.cpp:47
@@ +46,3 @@
+ void run_dtors(void* ptr) {
+if (pthread_setspecific(dtors, ptr) != 0) {
+ abort_message("pthread_setspecific() failed during thread_local
destruction");
Why are we doi
bcraig added a comment.
Also, can you add test cases for a lot of these things? I don't expect test
cases for the DSO side of things, but a lot of the tricky atexit cases should
be covered.
http://reviews.llvm.org/D21803
___
cfe-commits mailing l
bcraig added inline comments.
Comment at: CMakeLists.txt:108
@@ -107,2 +107,3 @@
option(LIBUNWIND_ENABLE_CROSS_UNWINDING "Enable cross-platform unwinding
support." OFF)
+option(LIBUNWIND_ENABLE_ARM_WMMX "Enable unwinding support for ARM WMMX
registers." ON)
B
bcraig added inline comments.
Comment at: src/cxa_thread_atexit.cpp:47
@@ +46,3 @@
+// called during the loop.
+if (pthread_setspecific(dtors, ptr) != 0) {
+ abort_message("pthread_setspecific() failed during thread_local
destruction");
The loop does
bcraig added inline comments.
Comment at: CMakeLists.txt:131
@@ -130,2 +130,3 @@
option(LIBCXX_HAS_MUSL_LIBC "Build libc++ with support for the Musl C library"
OFF)
-option(LIBCXX_HAS_PTHREAD_API "Ignore auto-detection and force use of pthread
API" OFF)
+option(LIBCXX_HAS_PTHRE
bcraig added inline comments.
Comment at: test/thread_local_destruction_order.pass.cpp:54
@@ +53,3 @@
+ std::thread{thread_fn}.join();
+
+ thread_local OrderChecker fn_thread_local{2};
tavianator wrote:
> bcraig wrote:
> > In the places where you can, validate t
bcraig added a comment.
LGTM. As usual, you'll want to get one of the code owner's sign off first
though.
http://reviews.llvm.org/D21968
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-com
bcraig added a comment.
LGTM (with a comment nit), but you'll need to get approval from @ericwf or
@mclow.lists.
I would like some of the information from your stack overflow post to make it's
way to the comments. In particular, I think I would like to see it documented
that we have made a ch
bcraig added a subscriber: bcraig.
bcraig added a comment.
Note: this doesn't count as an official "LGTM".
The code change seems fine to me. I think this has been implemented in gcc as
well, but I don't recall for certain. If this has been implemented in gcc,
then I would expect the semantics
bcraig added a comment.
LGTM. You should probably wait for someone else to approve it though.
http://reviews.llvm.org/D17741
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
bcraig added a comment.
In http://reviews.llvm.org/D17741#365457, @thakis wrote:
> > I think we can do this separately. A "basename" macro is easier for
> > programmers to use and no build system change needed.
>
>
> Hm, I would think that adding a flag to your CFLAGS is easier than getting
> a
Author: bcraig
Date: Fri Mar 4 08:25:13 2016
New Revision: 262717
URL: http://llvm.org/viewvc/llvm-project?rev=262717&view=rev
Log:
Reducing stack usage of test
This test has a lot of classes with large amounts of manually inserted padding
in them, presumably to prevent various optimizations. T
bcraig added a comment.
What about wprintf? Do we currently warn for wprintf(str)? If so, then the
fixit probably needs to involve L"%ls".
http://reviews.llvm.org/D17941
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.or
bcraig added a comment.
LGTM. I don't have a lot of authority over this code, so you may want to get a
separate LGTM from someone else.
http://reviews.llvm.org/D17941
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cg
bcraig added a comment.
ping
http://reviews.llvm.org/D16544
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
bcraig added a comment.
ping
http://reviews.llvm.org/D16545
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
bcraig added a comment.
ping
http://reviews.llvm.org/D17410
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
bcraig added a comment.
ping
http://reviews.llvm.org/D17419
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
bcraig added a comment.
ping
http://reviews.llvm.org/D17456
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
bcraig added a comment.
ping @danalbert
http://reviews.llvm.org/D17416
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
Author: bcraig
Date: Wed Mar 9 09:39:39 2016
New Revision: 263016
URL: http://llvm.org/viewvc/llvm-project?rev=263016&view=rev
Log:
Reorganize _LIBCPP_LOCALE__L_EXTENSIONS
Instead of checking _LIBCPP_LOCALE_L_EXTENSIONS all over, instead check it
once, and define the various *_l symbols once. Th
bcraig accepted this revision.
bcraig added a reviewer: bcraig.
bcraig added a comment.
This revision is now accepted and ready to land.
Committed
http://reviews.llvm.org/D17456
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.ll
Author: bcraig
Date: Wed Mar 9 09:49:59 2016
New Revision: 263020
URL: http://llvm.org/viewvc/llvm-project?rev=263020&view=rev
Log:
Split locale management out of locale_win32. NFCI
For the locale refactor, the locale management functions (newlocale,
freelocale, uselocale) are needed in a separa
bcraig accepted this revision.
bcraig added a reviewer: bcraig.
bcraig added a comment.
This revision is now accepted and ready to land.
Committed
http://reviews.llvm.org/D17419
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.ll
bcraig added a subscriber: bcraig.
bcraig added a comment.
LGTM. I don't know if that's good enough for a submit though :)
In my opinion, requiring heap allocation during an exception is one of the
worst parts of the Itanium ABI. At least this particular path isn't triggered
for platforms wit
bcraig added a comment.
If I understand it correctly, __GLIBC__ is defined in features.h, so this won't
work.
I suspect that the build isn't broken. You likely just need to define
LIBCXX_HAS_MUSL_LIBC on your cmake line. That will cause __config_site.in to
#define _LIBCPP_HAS_MUSL_LIBC for y
bcraig added a comment.
The trouble is that features.h doesn't exist in musl (as far as I know).
That's the biggest reason why _LIBCPP_HAS_MUSL_LIBC is needed.
http://reviews.llvm.org/D18174
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
bcraig added a comment.
In http://reviews.llvm.org/D18174#375813, @raj.khem wrote:
> I think my problem was that while compiling libcxxabi, it wants to peek into
> libcxx headers but then libcxxabi cmake infra doesnt have the musl support
> like libcxx. So Now I solved it by adding -D_LIBCPP_HA
bcraig added a subscriber: bcraig.
Comment at: include/atomic:859
@@ +858,3 @@
+template <> _LIBCPP_CONSTEXPR bool __libcpp_always_lock_free = 2 ==
ATOMIC_CHAR32_T_LOCK_FREE;
+template <> _LIBCPP_CONSTEXPR bool __libcpp_always_lock_free = 2 ==
ATOMIC_WCHAR_T_LOCK_FREE;
+template
bcraig added inline comments.
Comment at: lib/Frontend/InitPreprocessor.cpp:305
@@ +304,3 @@
+if (TypeWidth == TypeAlign && (TypeWidth & (TypeWidth - 1)) == 0 &&
+TypeWidth <= InlineWidth)
+ return Always;
jyknight wrote:
> jfb wrote:
> > bcraig w
bcraig added inline comments.
Comment at: lib/Frontend/InitPreprocessor.cpp:305
@@ +304,3 @@
+if (TypeWidth == TypeAlign && (TypeWidth & (TypeWidth - 1)) == 0 &&
+TypeWidth <= InlineWidth)
+ return Always;
jfb wrote:
> bcraig wrote:
> > jyknight w
bcraig added a subscriber: bcraig.
Comment at: lib/Frontend/InitPreprocessor.cpp:305
@@ +304,3 @@
+if (TypeWidth == TypeAlign && (TypeWidth & (TypeWidth - 1)) == 0 &&
+TypeWidth <= InlineWidth)
+ return Always;
On some targets (like Hexagon), 4-by
bcraig added a comment.
> C++ atomics are explicitly designed to avoid problems with touching adjacent
> bytes: if `atomic` where `sizeof(T) == 1` requires a 4-byte `cmpxchg` then
> it's up to the frontend to make sure `sizeof> >= 4` (or something
> equivalent such as making it non-lock-free).
bcraig added a comment.
Visual Studio has a flag, /Zc:wchar_t-, that turns wchar_t into a short. This
flag is for people that need to maintain ABI compatibility with ancient Visual
Studios (MSVC6? MSVC5?). It is definitely non-conformant, and many things
support it poorly.
I still have night
101 - 200 of 257 matches
Mail list logo