Commit Graph

55 Commits

Author SHA1 Message Date
Marshall Clow
65ccddb341 Mark seed_seq default constructor and size() as noexcept. This is implied, but not required by LWG issue 2180
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@193227 91177308-0d34-0410-b5e6-96231b3b80d8
2013-10-23 05:56:47 +00:00
Marshall Clow
b8dd5caf5a patch by Yaron: Uses rand_s() from stdlib.h (when building for Windows)
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@192325 91177308-0d34-0410-b5e6-96231b3b80d8
2013-10-09 21:49:03 +00:00
Howard Hinnant
7f76450ee9 Xing Xue: port to IBM XLC++/AIX.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@188396 91177308-0d34-0410-b5e6-96231b3b80d8
2013-08-14 18:00:20 +00:00
Howard Hinnant
0f678bd69e Nico Rieck: this patch series fixes visibility issues on Windows as explained in <http://lists.cs.uiuc.edu/pipermail/cfe-dev/2013-August/031214.html>.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@188192 91177308-0d34-0410-b5e6-96231b3b80d8
2013-08-12 18:38:34 +00:00
Marshall Clow
809e93f7f2 move __save_flags from <random> to <ios> in preparation for reuse; no functionality change
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@185968 91177308-0d34-0410-b5e6-96231b3b80d8
2013-07-09 20:34:14 +00:00
Howard Hinnant
ddb4e4cbb1 Neglected to remove a debugging comment from last commit.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@182422 91177308-0d34-0410-b5e6-96231b3b80d8
2013-05-21 21:19:35 +00:00
Howard Hinnant
8f72d5ce16 Fix a couple of bugs in linear_congruential_engine::seed. Regression test added.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@182421 91177308-0d34-0410-b5e6-96231b3b80d8
2013-05-21 21:05:12 +00:00
Howard Hinnant
83eade6abb No functionality change at this time. I've split _LIBCPP_VISIBLE up into two flags: _LIBCPP_TYPE_VIS and _LIBCPP_FUNC_VIS. This is in preparation for taking advantage of clang's new __type_visibility__ attribute.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@176593 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-06 23:30:19 +00:00
Howard Hinnant
0a69fa14d2 Zhang Xiongpang: Add definitions for const data members. Fixes http://llvm.org/bugs/show_bug.cgi?id=14585.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@170026 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-12 21:14:28 +00:00
Howard Hinnant
9c0df1416f Rename uses of _ and __ because these are getting stepped on by macros from other system code.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@167038 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-30 19:06:59 +00:00
Howard Hinnant
33be35effe Dimitry Andric: many visibility fixes. Howard: Much appreciated. Can you send me a patch to CREDITS.TXT?
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@163862 91177308-0d34-0410-b5e6-96231b3b80d8
2012-09-14 00:39:16 +00:00
Howard Hinnant
c83960a9e4 noexcept applied to <random>.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@160579 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-20 21:44:27 +00:00
Howard Hinnant
8efd3dac5d Update <random> with constexpr support. Patch contributed by Jonathan Sauer.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@153896 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-02 21:00:45 +00:00
Howard Hinnant
27b4fd30ef This is an initial commit of constexpr support as proposed by Richard Smith. This by no means completes constexpr support. Indeed, it hardly scratches the surface. All it does is lay the foundation in <__config> and changes those few places in the library that are already using that foundation.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@153856 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-02 00:40:41 +00:00
Howard Hinnant
ec3773c2da Quash a whole bunch of warnings
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@145624 91177308-0d34-0410-b5e6-96231b3b80d8
2011-12-01 20:21:04 +00:00
Howard Hinnant
9996844df0 Further macro protection by replacing _[A-Z] with _[A-Z]p
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@145410 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-29 18:15:50 +00:00
Howard Hinnant
66c6f9733b Add protection from min/max macros
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@145407 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-29 16:45:27 +00:00
Howard Hinnant
08e17472e4 Windows support by Ruben Van Boxem.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@142235 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-17 20:05:10 +00:00
Howard Hinnant
43edf2d1e1 Fix needle-in-haystack bug found by Walter Brown
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@137617 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-15 17:22:22 +00:00
Howard Hinnant
e3e3291f3a Fixed PR10574: http://llvm.org/bugs/show_bug.cgi?id=10574
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@137522 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-12 21:56:02 +00:00
Howard Hinnant
0949eedbd6 _STD -> _VSTD to avoid macro clash on windows
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@134190 91177308-0d34-0410-b5e6-96231b3b80d8
2011-06-30 21:18:19 +00:00
Howard Hinnant
75f7695c62 Think-o in poisson_distribution at mean == 10
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@129520 91177308-0d34-0410-b5e6-96231b3b80d8
2011-04-14 15:59:22 +00:00
Howard Hinnant
ef3b2e2e34 Fix bug in Sseq constraints found by Seth Cantrell
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@129285 91177308-0d34-0410-b5e6-96231b3b80d8
2011-04-11 18:22:12 +00:00
Howard Hinnant
995676a98e LWG 1522
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@119710 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-18 17:34:48 +00:00
Howard Hinnant
9650b6cce3 LWG 1439
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@119703 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-18 17:01:36 +00:00
Howard Hinnant
b64f8b07c1 license change
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@119395 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16 22:09:02 +00:00
Howard Hinnant
3c143ad882 Patch by Marshall Clow to make the assignment operators of piecewise_constant_distribution and piecewise_linear_distribution exception safe.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@116404 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-13 14:37:09 +00:00
Howard Hinnant
b9af2eae4a visibility-decoration.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@114559 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-22 18:02:38 +00:00
Howard Hinnant
73d21a4f07 Changed __config to react to all of clang's currently documented has_feature flags, and renamed _LIBCPP_MOVE to _LIBCPP_HAS_NO_RVALUE_REFERENCES to be more consistent with the rest of the libc++'s flags, and with clang's nomenclature.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@113086 91177308-0d34-0410-b5e6-96231b3b80d8
2010-09-04 23:28:19 +00:00
Howard Hinnant
324bb03bb9 Fixing whitespace problems
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@111750 91177308-0d34-0410-b5e6-96231b3b80d8
2010-08-22 00:02:43 +00:00
Howard Hinnant
3ec31849df Implemented some adaptor constructors which I had missed.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@104946 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-28 15:49:54 +00:00
Howard Hinnant
c326721e65 Completed [alg.random.shuffle].
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@104708 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-26 17:49:34 +00:00
Howard Hinnant
5430540d57 [rand.dist.samp.plinear]. This means we've got a fully tested and functional <random>! 489 tests over 48 sections are passing. :-) The only thing still on my plate in this area is to back-port some of this technology to random_shuffle/shuffle in <algorithm>. That will involve shuffling header bits around (<random> depepends on <algorithm>), but it won't entail that much development (compared to what has been required for <random>).
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@104575 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-25 00:27:34 +00:00
Howard Hinnant
2a59254a44 Optimized [rand.dist.samp.pconst] and several bug fixes in other distributions
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@104478 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-24 00:35:40 +00:00
Howard Hinnant
d6d1171f2c [rand.dist.samp.pconst] plus some bug fixes in the tests of the other distributions
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@104224 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-20 15:11:46 +00:00
Howard Hinnant
551d8e4ddb [rand.dist.samp.discrete]
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@104103 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-19 01:53:57 +00:00
Howard Hinnant
321b4bb7ae [rand.dist.norm.t]
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@104052 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-18 20:08:04 +00:00
Howard Hinnant
d8bc09b616 [rand.dist.norm.f]
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@104035 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-18 17:32:30 +00:00
Howard Hinnant
d7d0113295 [rand.dist.norm.cauchy]. I'm having trouble testing the output as all statistical properties are undefined. They do not converge upon any one value as the number of samples increases. Suggestions for tests welcome.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@103983 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-17 21:55:46 +00:00
Howard Hinnant
2bc36fcff3 [rand.dist.norm.lognormal]
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@103957 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-17 18:31:53 +00:00
Howard Hinnant
c2b0dc7e33 [rand.dist.pois.extreme]
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@103942 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-17 16:21:56 +00:00
Howard Hinnant
34e8a57b76 [rand.dist.bern.geo]
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@103937 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-17 13:44:27 +00:00
Howard Hinnant
f2fe5d5a61 [rand.dist.bern.negbin]
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@103916 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-17 00:09:38 +00:00
Howard Hinnant
df40dc6c1a Beefed up the tests for all of the distributions to include checks against the expected skewness and kurtosis
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@103910 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-16 17:56:20 +00:00
Howard Hinnant
9de6e30761 [rand.dist.pois.weibull]
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@103891 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-16 01:09:02 +00:00
Howard Hinnant
97dc2f35c3 [rand.dist.norm.chisq]
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@103888 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-15 23:36:00 +00:00
Howard Hinnant
6add8ddfef Revisited [rand.dist.bern.bin] and [rand.dist.pois.poisson] with better algorithms
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@103886 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-15 21:36:23 +00:00
Howard Hinnant
4ff556cf62 [rand.dist.pois.poisson]
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@103814 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-14 21:38:54 +00:00
Howard Hinnant
f417abe683 [rand.dist.pois.gamma]
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@103788 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-14 18:43:10 +00:00
Howard Hinnant
c7c4913b46 partial [rand.dist.pois.gamma]
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@103722 91177308-0d34-0410-b5e6-96231b3b80d8
2010-05-13 17:58:28 +00:00