Vladimir Vukicevic
479e7c4efb
Bug 888658 - Assertions.h fixup for windows. r=jwalden
...
--HG--
extra : rebase_source : 7e7fb741860c2603aa1b838eff7761ddcd50e867
2013-10-15 09:07:00 +02:00
Reuben Morais
e98ada57a9
Bug 921871 - Fix -Wunitialized warning in Vector.h. r=Waldo
...
--HG--
extra : rebase_source : 117d37c7a44c79c6a3b446f3828e5464fc9e391f
2013-10-17 18:29:46 -03:00
Christian Holler
29ea66c471
Bug 847350 - Add/Update MOZ_ASAN/TSAN_BLACKLIST macros. r=waldo
...
--HG--
extra : rebase_source : c4c58d30ff0b46ca57093cc0b3bbc37af56f2095
2013-10-17 16:29:11 +02:00
Ehsan Akhgari
eb82766684
Bug 895047 - Make char16_t available everywhere and use that to define PRUnichar and jschar; r=jcranmer,jorendorff,glandium
2013-10-17 00:36:13 -04:00
Phil Ringnalda
b6be4e4a2d
Back out ee100983f921 (bug 895047) for build bustage
...
CLOSED TREE
2013-10-16 21:51:55 -07:00
Ehsan Akhgari
2d5e8722de
Bug 895047 - Make char16_t available everywhere and use that to define PRUnichar and jschar; r=jcranmer,jorendorff,glandium
2013-10-17 00:36:13 -04:00
Ehsan Akhgari
76272a36ed
Bug 923554 - Backout the atomic weak pointer implementation because it's neither atomic nor thread-safe; r=froydnj
2013-10-16 13:48:34 -04:00
Ehsan Akhgari
12d0a13b3c
Bug 926083 - Only #include Compiler.h in NullPtr.h if needed; r=froydnj
2013-10-15 17:13:39 -04:00
Ehsan Akhgari
738f5fd13e
Bug 924014 - Do not rely on std::numeric_limits<char16_t> being available; r=Waldo
2013-10-15 11:55:37 -04:00
Ehsan Akhgari
aa977286d4
Bug 924012 - Provide a HashString version for char16_t if needed; r=Waldo
2013-10-15 11:54:08 -04:00
Ehsan Akhgari
5867b7e895
Bug 923886 - Remove the Assertions.h #include from Char16.h; r=Waldo
2013-10-05 21:23:07 -04:00
Dan Gohman
5d9cc1f359
Bug 924637 - Document a somewhat counterintuitive case in ExponentComponent, and add test coverage for it. r=waldo
2013-10-09 06:41:42 -07:00
Gian-Carlo Pascutto
4338131444
Bug 923170 - Require GCC 4.6.x before enabling strong enum support. r=Waldo
2013-10-08 15:25:13 -04:00
Birunthan Mohanathas
a3a95ea5c8
Bug 918436 - Make the type argument of MOZ_BEGIN(_NESTED)_ENUM_CLASS optional and add tests. r=Waldo
2013-10-04 13:17:13 -04:00
Jim Blandy
0a4f6d7144
Bug 919337: Use static_assert in double_conversion::BitCast. r=waldo
2013-09-29 21:18:26 -07:00
Bobby Holley
4a41eab060
Bug 917593 - Don't assert for zero-length strings. r=Waldo
2013-09-27 18:34:24 +02:00
Mike Hommey
0f42ae96d7
Bug 919832 - Remove EXPORTS related rules from rules.mk. r=gps
2013-09-26 16:43:52 +09:00
Ryan VanderMeulen
6977513694
Backed out changeset 74459407359a (bug 917593) for Windows debug checktest asserts.
2013-09-24 16:20:15 -04:00
Bobby Holley
43d3b4a447
Bug 917593 - Don't assert for zero-length strings. r=Waldo
2013-09-24 08:03:22 -07:00
Benjamin Bouvier
bcf0b47126
Bug 913282: Add mfbt Float32 asserts and constants; r=Waldo
2013-09-20 12:08:49 -07:00
Dan Gohman
e79a8b021c
Bug 918350 - Change UnspecifiedNaN's bit pattern to be the all-ones NaN. r=waldo
2013-09-19 18:47:55 -07:00
Dan Gohman
463a7c338e
Bug 918350 - SpiderMonkey: Remove js_NaN in favor of a new mozilla::GenericNaN() function. r=waldo
2013-09-19 18:42:56 -07:00
Joshua Cranmer
4a4a5f9a8d
Bug 904985, part 1: Add better support for char16_t in type traits, r=Waldo.
...
--HG--
extra : rebase_source : 45cb9155312ead0b8164e1e460c9fd2e39f0d6fc
2013-09-17 22:43:04 -05:00
Jonathan Watt
e7681d121b
Bug 909467 - HTMLInputElement crash loading 8bit.js test (consistantly link against the correct StringBuilder). r=Waldo
2013-09-17 13:24:35 +01:00
Seth Fowler
11f1b0d393
Bug 912299 - Make RefCounted's refcount field mutable. r=waldo
2013-09-06 13:32:55 -07:00
Mike Hommey
f1cf3b4238
Bug 912293 - Remove now redundant boilerplate from Makefile.in. r=gps
2013-09-05 09:01:46 +09:00
Jeff Walden
04c2468283
Bug 730805 - Provide mozilla/IntegerPrintfMacros.h to implement the PRI* macros portion of the <inttypes.h> interface. r=espindola
...
--HG--
extra : rebase_source : be80333003c6fec659e736a77463568c836d8348
2011-12-15 00:27:42 -05:00
Jeff Walden
31b0fc3754
Bug 730805 - Import, unmodified, the Microsoft-compatible <inttypes.h> implementation from the 'msinttypes' Google Code project, r26, into mfbt. r=gerv
...
--HG--
extra : rebase_source : 3fa8943627740fc4a4a39b173f8dd77d93f8f8e2
2011-12-07 21:52:38 -05:00
Dan Gohman
2b1946d99c
Bug 910814 - IonMonkey: Add testcases for several FloatingPoint.h predicates. r=waldo
2013-09-02 13:53:35 -07:00
Jan Beich
6009b14cc0
Bug 911140 - Fix a typo that prevents libc++ from using C++11 atomics. r=jcranmer
2013-08-30 16:14:52 -04:00
Joshua Cranmer
642e66f518
Bug 906783 - Attempt to detect the standard C++ library version, r=Waldo
2013-08-29 22:44:23 -05:00
Justin Lebar
a1c5c698e5
Bug 906912 - Add move constructors to mozilla::LinkedList and mozilla::LinkedListElement. r=waldo
...
--HG--
extra : rebase_source : 864a78505421e129a4553634e08a7f9fc343d7d1
2013-08-29 11:54:14 -07:00
Justin Lebar
2e2403726d
Bug 909977 - Rename mozilla::Move to mozilla::OldMove, and make mozilla::Move a synonym for std::move(). r=waldo
...
--HG--
extra : rebase_source : 7b3bb02cc8cbc0ad6721c6c3895564d9567b8ddb
2013-08-29 11:54:14 -07:00
Justin Lebar
a12ca3e4e8
Bug 909514 - Include <new> before mozilla::Maybe (and move Maybe into mfbt/Maybe.h). r=waldo
...
--HG--
rename : mfbt/Util.h => mfbt/Maybe.h
2013-08-27 15:10:28 -07:00
Justin Lebar
8cad37657e
No bug: Fix whitespace in mozilla/LinkedList.h. DONTBUILD
2013-08-22 14:39:34 -07:00
Justin Lebar
400f5b35a9
Bug 907227 - Properly delete LinkedListElement's implicit copy-constructor and operator=. r=waldo
...
--HG--
extra : rebase_source : b5f09c990f38537266c3e42a211a483e1dd291d6
2013-08-21 12:04:29 -07:00
Justin Lebar
6051a9c725
Bug 906909 - Make LinkedList::debugAssertIsSane() compile. r=waldo
...
--HG--
extra : rebase_source : 60027f53b4a8fa91dd7e42863c271c36395d6851
2013-08-21 12:04:29 -07:00
Dan Gohman
d928b6d48d
Bug 906368 - IonMonkey: Define a proper CountPopulation32 function, and use it in place of manual code in RegisterSets.h. r=nbp
2013-08-19 12:32:22 -07:00
Luke Wagner
014cc1075f
Bug 905850 - Vector should not be copyable (r=terrence)
...
--HG--
extra : rebase_source : 49c2175af92b79a08982d7dfbc7b7af266b27f7a
2013-08-16 10:21:28 -05:00
Trevor Saunders
f420929d6e
bug 905243 - make the constructors for mozilla::Atomic constexpr r=froydnj
2013-08-14 16:28:17 -04:00
Ms2ger
6d567ab3cc
Bug 904110 - Move alignment features out of Util.h into a new header; r=Waldo
2013-08-14 09:00:52 +02:00
Ms2ger
7b4bb6c26b
Bug 903797 - Update mfbt/STYLE to the current policy about include guards; r=Waldo
2013-08-14 09:00:42 +02:00
Till Schneidereit
0fc93a0111
Bug 898653 - Quell 'not enough parameters for macro' warnings in MSVC. r=djvj
...
--HG--
extra : rebase_source : 7e467027c24b795d6764894c12290a630663830e
2013-07-27 13:05:36 +02:00
Nathan Froyd
73a2108665
Bug 900965 - compile failures with gcc 4.6.3 on std::atomic enum support from bug 888548 r=waldo
2013-08-02 18:18:41 -07:00
Guillaume Abadie
18a326928d
bug 899859 - Add typed enums support in strutures / classes - r=Waldo
2013-08-02 20:51:00 -04:00
Birunthan Mohanathas
63e7a796e9
Bug 888548 - Part 3: Add enum support to mozilla::Atomic<T>. r=froydnj
...
Due to a bug in GCC, the compareExchange function is not available with enum types.
2013-08-01 21:21:32 -04:00
Birunthan Mohanathas
c171bc3e7e
Bug 888548 - Part 2: Refactor and cleanup mozilla::Atomic<T> implementation. r=froydnj
...
This moves the increment and decrement operators from detail::AtomicBase to
detail::AtomicBaseIncDec and moves the implementation of the assignment
operator into detail::AtomicBase. Additionally, this changes the integral
implementation to use mozilla::EnableIf for its specialization.
2013-08-01 21:21:32 -04:00
Birunthan Mohanathas
ae2d8513a4
Bug 888548 - Part 1: Add mozilla::IsEnum to TypeTraits.h. r=froydnj
2013-08-01 21:21:31 -04:00
Daniel Holbert
005b01383d
backout 1e31542e117c (Bug 888548 part 1) for B2G build bustage on a CLOSED TREE
2013-07-31 19:05:34 -07:00
Daniel Holbert
b9c2886259
backout f607ac59de19 (Bug 888548 part 2) for B2G build bustage
2013-07-31 19:05:05 -07:00
Daniel Holbert
ec8488ab01
backout fc98067f0aa4 (Bug 888548 part 3) for B2G build bustage
2013-07-31 19:04:25 -07:00
Birunthan Mohanathas
46877a9f5e
Bug 888548 - Part 3: Add enum support to mozilla::Atomic<T>. r=froydnj
...
Due to a bug in GCC, the compareExchange function is not available with enum types.
2013-07-31 21:15:25 -04:00
Birunthan Mohanathas
23665e54d3
Bug 888548 - Part 2: Refactor and cleanup mozilla::Atomic<T> implementation. r=froydnj
...
This moves the increment and decrement operators from detail::AtomicBase to
detail::AtomicBaseIncDec and moves the implementation of the assignment
operator into detail::AtomicBase. Additionally, this changes the integral
implementation to use mozilla::EnableIf for its specialization.
2013-07-31 21:15:25 -04:00
Birunthan Mohanathas
48e7905d3e
Bug 888548 - Part 1: Add mozilla::IsEnum to TypeTraits.h. r=froydnj
2013-07-31 21:15:25 -04:00
Ehsan Akhgari
e95830ec39
Bug 895322 - Part 5: Stop #defining MOZ_STATIC_ASSERT in C++ code; r=Waldo
...
--HG--
extra : rebase_source : 463c9918228e3f46c909cc7cad45c9d2913b0152
2013-07-18 14:39:20 -04:00
Ehsan Akhgari
5ee21d6d3f
Bug 895322 - Part 1: Replace the usages of MOZ_STATIC_ASSERT with C++11 static_assert; r=Waldo
...
This patch was mostly generated by running the following scripts on the codebase, with some
manual changes made afterwards:
# static_assert.sh
#!/bin/bash
# Command to convert an NSPR integer type to the equivalent standard integer type
function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
! -wholename "*security/nss*" \
! -wholename "*/.hg*" \
! -wholename "obj-ff-dbg*" \
! -name nsXPCOMCID.h \
! -name prtypes.h \
-type f \
\( -iname "*.cpp" \
-o -iname "*.h" \
-o -iname "*.cc" \
-o -iname "*.mm" \) | \
xargs -n 1 `dirname $0`/assert_replacer.py #sed -i -e "s/\b$1\b/$2/g"
}
convert MOZ_STATIC_ASSERT static_assert
hg rev --no-backup mfbt/Assertions.h \
media/webrtc/signaling/src/sipcc/core/includes/ccapi.h \
modules/libmar/src/mar_private.h \
modules/libmar/src/mar.h
# assert_replacer.py
#!/usr/bin/python
import sys
import re
pattern = re.compile(r"\bMOZ_STATIC_ASSERT\b")
def replaceInPlace(fname):
print fname
f = open(fname, "rw+")
lines = f.readlines()
for i in range(0, len(lines)):
while True:
index = re.search(pattern, lines[i])
if index != None:
index = index.start()
lines[i] = lines[i][0:index] + "static_assert" + lines[i][index+len("MOZ_STATIC_ASSERT"):]
for j in range(i + 1, len(lines)):
if lines[j].find(" ", index) == index:
lines[j] = lines[j][0:index] + lines[j][index+4:]
else:
break
else:
break
f.seek(0, 0)
f.truncate()
f.write("".join(lines))
f.close()
argc = len(sys.argv)
for i in range(1, argc):
replaceInPlace(sys.argv[i])
--HG--
extra : rebase_source : 4b4a4047d82f2c205b9fad8d56dfc3f1afc0b045
2013-07-18 13:59:53 -04:00
Nathan Froyd
8d86b320b1
Bug 898491 - use the four argument form of compare_exchange_strong in Atomics.h; r=Waldo
...
The C++ standard (29.6p20-22 in N3337) specifies limitations on the failure ordering
for atomic compare-and-exchange. Specifically, you can't pass memory_order_acq_rel or
memory_order_release. For the (T&, T, std::memory_order) version, which we use, the
standard specifies that the provided argument should be "lowered" to comply with the
above restrictions on the failure ordering (29.6p21).
However, it seems that some versions of GCC's <atomic> header don't follow the spec
for the generic versions of std::atomic<>, though they do follow the spec with the
appropriate specializations (bool, integer, and pointer) of std::atomic<>. This
results in mysterious failures when using atomic enums, as bug 888548 purports to
do, and ReleaseAcquire ordering.
Happily, we can work around this by using the more explicit version of
compare-and-exchange. I've chosen to add another member to AtomicOrderConstraints,
even though it'd be the same as LoadOrder. I feel explicitness is to be preferred
here.
2013-07-26 12:31:19 -04:00
Ehsan Akhgari
9c4af96caa
Bug 872127 - Part 3: Remove MSStdInt.h; r=Waldo
2013-07-30 10:25:42 -04:00
Ehsan Akhgari
9854ac6166
Bug 872127 - Part 2: Replace mozilla/StandardInteger.h with stdint.h; r=Waldo,ted
2013-07-30 10:25:31 -04:00
Jeff Walden
ffe50619f2
Bug 895792 - Fix RoundUpPow2's required precondition to not be wrong. r=terrence
...
--HG--
extra : rebase_source : e42420628dad8b8e9fe37287fa8e08eb262fe615
2013-07-25 20:01:45 -07:00
Jeff Walden
30f3a1c0a2
Add #include <new> to mfbt/Vector.h so that placement-new actually works when that header hasn't been bootlegged. No bug, r=too-long-spent-debugging-this
...
--HG--
extra : rebase_source : b4b3a5a10757d01d1c5957736210ed09e3c2b157
2013-07-25 20:01:42 -07:00
Birunthan Mohanathas
6593d6bb16
Bug 784739 - Switch from NULL to nullptr in mfbt/. r=jwalden
...
--HG--
extra : rebase_source : 090706fa9d97854fe3071adf037a09d914a0854f
2013-07-25 16:31:48 -07:00
Ryan VanderMeulen
4b5a38346d
Backed out 3 changesets (bug 896124, bug 784739, bug 894026) for Windows checktest orange on a CLOSED TREE.
...
Backed out changeset 631b3d5d54f4 (bug 896124)
Backed out changeset 5e1dd28ede5d (bug 894026)
Backed out changeset c10c0a6270ec (bug 784739)
2013-07-26 00:08:51 -04:00
Birunthan Mohanathas
2d66acc4f8
Bug 784739 - Switch from NULL to nullptr in mfbt/. r=jwalden
2013-07-25 16:31:48 -07:00
Nicholas Nethercote
2874baae06
Bug 892806 - Clean up InflateUTF8String() and related functions. r=terrence.
...
--HG--
extra : rebase_source : df901e9900fbd01f1adbe430b9ac52428499681f
2013-07-09 23:17:32 -07:00
Ms2ger
28a9e7aa20
Bug 896341 - Update include guards and modelines in MFBT; r=Waldo
2013-07-24 09:41:39 +02:00
Ms2ger
fb6790e6d8
Bug 888643 - Part b: Move CPP_UNIT_TESTS definitions into moz.build files; r=gps
2013-07-24 09:23:06 +02:00
Jeff Walden
dc1be62488
Bug 896842 - Implement mozilla::DoublesAreIdentical. r=luke
2013-06-18 15:35:03 -07:00
Jeff Walden
ece688c64a
Bug 895727 - Fix obvious typo breaking Win64 builds. r=lumpy
2013-07-18 19:30:06 -07:00
Jeff Walden
e127f08ae6
Bug 891177 - Implement mozilla/Vector.h, and make js/Vector.h implement js::Vector using mozilla::Vector's implementation of the functionality. r=terrence
...
--HG--
rename : js/public/Vector.h => mfbt/Vector.h
extra : rebase_source : d5f87a48485e3f2241228a4b003e80974c86fd5f
2013-07-09 16:33:29 -07:00
Jeff Walden
6c81653318
Bug 891177 - Remove Vector.h's js/TemplateLib.h dependency by introducing mfbt/TemplateLib.h with the necessary bits. r=terrence
...
--HG--
extra : rebase_source : e84231171d6bd6c1e2de8201b8c9563375723d01
2013-07-08 12:42:13 -07:00
Jeff Walden
5805e8a35e
Bug 891177 - Move leading/trailing-zero-bit counting functions, ceiling/floor log2 functions, and round-up-pow2 functions into MathAlgorithms.h. r=terrence
...
--HG--
extra : rebase_source : 8cfbd68b8cd4a0e21185dd864c7e827ccfa6b751
2013-07-03 15:46:51 -07:00
Jeff Walden
0217e30c68
Bug 891437 - Implement mozilla/Array.h, a class suitable for use where a C array would be used, with additional debug bounds-checking. r=Ms2ger
...
--HG--
extra : rebase_source : 314232d817e67d9a26dfa215b5c897e0dd0be353
2013-02-07 15:32:20 -08:00
Jeff Walden
05bafaa42a
Bug 891177 - Add an explanatory comment by the const_cast<> in the Move(const T&) overload. r=luke
...
--HG--
extra : rebase_source : 37a91bf2bdfe2b2f96ddebf276ad532d4419c42b
2013-07-13 12:54:18 -07:00
Justin Lebar
316af76b2a
Bug 892839 - Fix buggy example code in Move.h. r=luke DONTBUILD
2013-07-15 10:40:30 -07:00
Xavier Fung
0fc040b27c
Bug 888159 - Fix Decimap.cpp building on VS2013. r=Waldo
2013-07-11 10:13:29 +09:00
Jeff Walden
8a8be12d99
Bug 891177 - Move js::Swap to mozilla::Swap. r=terrence
...
--HG--
extra : rebase_source : 925bccd4fa3f95e1aa4e17d94ad5a443fc7a63aa
2013-07-03 15:57:33 -07:00
Jeff Walden
919f4b04c8
Bug 891177 - Add ReentrancyGuard.h as a helper class for asserting that use of a class is non-reentrant. r=terrence
...
--HG--
extra : rebase_source : 3751e523c0b0315697cb6e005dfd8ee625f6dd58
2013-07-02 17:47:08 -07:00
Jeff Walden
fe51d6bb86
Bug 891177 - Implement Move.h to define a move-construction interface. r=terrence
...
--HG--
extra : rebase_source : 45f9bb87fc0ee96ea35005ca0dcb263aa11745b8
2013-07-02 17:25:13 -07:00
Jeff Walden
05d8d96993
Bug 891177 - Add AllocPolicy.h to define an implementation policy concept for use in mfbt. r=terrence
...
--HG--
extra : rebase_source : f6336b5ba3298bbf9c5418b4e9d993b9173f7926
2013-07-02 17:16:07 -07:00
Trevor Saunders
13b2239058
bug 888493 - add MOZ_CONSTEXPR_VAR r=waldo
2013-06-28 17:34:51 -04:00
Phil Ringnalda
45bbda8d1a
Backed out changeset 454706720bbc (bug 888493) for build bustage
...
CLOSED TREE
2013-07-04 13:06:07 -07:00
Trevor Saunders
b30b226300
bug 888493 - add MOZ_CONSTEXPR_VAR r=waldo
2013-06-28 17:34:51 -04:00
Justin Lebar
904130e9c2
Bug 820686 - Follow-up: s/MOZ_ASSUME_NOT_REACHED/MOZ_ASSUME_UNREACHABLE/. rs=waldo
...
I'd meant to do this, but I only got as far as the comment in mfbt. Oops!
--HG--
extra : rebase_source : 3cfe3ef1bf401eb7d9a10fcabcfb39008e9553a4
2013-06-28 19:20:12 -07:00
Justin Lebar
de08e1432c
Bug 820686 - Rename MOZ_NOT_REACHED() and JS_NOT_REACHED() to MOZ_ASSUME_NOT_REACHED(). r=waldo
...
This includes a mechanical renaming of MOZ_NOT_REACHED to MOZ_ASSUME_NOT_REACHED in JS. Later patches in this queue clean up whitespace errors and so on.
2013-06-28 18:38:31 -07:00
Justin Lebar
75c400493b
Bug 802686 - s/MOZ_NOT_REACHED/MOZ_CRASH/ in Gecko. r=(see below)
...
r=tbsaunde for accessible
r=jmuizelaar for gfx
r=roc for layout
r=glandium for mozglue
r=jduell for netwerk
r=khuey for everything else
This is a mechanical change made with sed. Later patches in this queue
clean up the whitespace errors and so on.
2013-06-28 18:38:30 -07:00
Justin Lebar
e3cf7e4acc
Bug 763070 - Give MOZ_CRASH() an optional string argument. r=waldo
2013-06-28 18:38:30 -07:00
Jeff Walden
0e3369e148
Style fixes and proper-numeric-type usage in mfbt/tests/TestEndian.cpp. No bug, r=trivial
...
--HG--
extra : rebase_source : 54a658a6baf78852a3f8839b2cbb98700a7c91e7
2013-06-13 19:27:11 -07:00
Emanuel Hoogeveen
63aac72328
Bug 887465 - Rewrite double-conversion's assertions in terms of the MOZ_* assertions, and keep wtf (Yarr) from redefining them. r=jwalden
...
--HG--
extra : rebase_source : 3cdadf85f6bc471f065d570cb03d2441886d3738
2013-06-27 16:25:42 -07:00
Emanuel Hoogeveen
d622fa5cdc
Bug 878925 - Update double-conversion to latest git revision. r=jwalden
...
--HG--
extra : rebase_source : 01275cc88cfb119f231ba83cfec0579bc11edfe1
2013-06-27 16:25:32 -07:00
Masatoshi Kimura
56448b2e60
Bug 839998 - Replace thisDuringConstruction() with MOZ_THIS_IN_INITIALIZER_LIST(). r=waldo
2013-06-27 00:15:53 +09:00
Masatoshi Kimura
6c7718aa8b
Bug 839998 - Introduce MOZ_THIS_IN_INITIALIZER_LIST macro. r=waldo
2013-06-27 00:15:52 +09:00
Emanuel Hoogeveen
ea1eb05d97
Bug 886128 - Fix various clang warnings and some potential bugs in nonstandard configurations. r=nnethercote,terrence.
...
--HG--
extra : rebase_source : 0d833ecc9879f5d9fd0a28f9b4eca7793d01aa40
2013-06-24 21:32:05 -07:00
Catalin Iacob
5eeaecc8b9
Bug 798914 (part 1) - Introduce mozilla::MallocSizeOf in mfbt. r=Waldo.
...
--HG--
extra : rebase_source : 45cb28264b1aa3fe9adc9bdc9ed73bead4332af6
2013-06-23 12:57:47 +02:00
Brian O'Keefe
5f8b5163e8
Bug 875934 - Move LIBRARY_NAME to moz.build (batch #1 ); r=mshal
...
--HG--
extra : rebase_source : 385d3fd65475ffc18ee44ae088753649470e214b
2013-06-17 15:21:01 -04:00
Jeff Gilbert
cdca71e188
Bug 881980 - Allow casting CheckedInts to other CheckedInt types. - r=bjacob,waldo
2013-06-14 15:19:40 -07:00
Jeff Gilbert
bd9cabff89
Bug 874764 - Add CheckedInt support for operator%. - r=bjacob,waldo
2013-06-14 15:19:30 -07:00
Justin Lebar
91916a7c2e
No bug - Fix typo in comment in mfbt/HashFunctions.h. DONTBUILD
2013-06-14 11:17:01 -07:00
Jeff Walden
9ba8998af3
Bug 798179 - Rewrite ToIntWidth to more simply act upon the actual bits of the IEEE-754 representation. r=froydnj
...
--HG--
extra : rebase_source : fb2da4e55b258b6b62c1c9449447fccff8c2012d
2013-06-07 13:22:45 -07:00
Jeff Walden
e9da9414f3
Rename a method from 'check' to 'checkBounds' to avoid colliding with a 'check' macro in an OS X system header. (No, really.) Noticed while tryservering patches for bug 798179, r=rage
...
--HG--
extra : rebase_source : 3f9323afa6e80962ede30d1b953b95f3d363ccd0
2013-06-10 15:31:37 -07:00
Jeff Walden
641be4a773
Bug 798179 - Implement mozilla::MakeUnsigned. r=froydnj
...
--HG--
extra : rebase_source : fdd1fe8841d1bc42c1758cd4d477969b3f382b30
2013-03-05 15:44:02 -08:00
Jeff Walden
00e22e2821
Bug 798179 - Implement mozilla::MakeSigned. r=froydnj
...
--HG--
extra : rebase_source : 357bf046219e37959d66fde6b2ad2b7f5746960f
2013-03-05 15:44:02 -08:00
Jeff Walden
a77db60555
Bug 798179 - Implement To BitwiseCast<To>(From), abstracting the treatment of a value's bits as being of another type. r=froydnj
...
--HG--
extra : rebase_source : e6c57c10f7035b2654eafdd5fa2b3c5d8882f282
2013-06-06 18:47:51 -07:00
Timothy B. Terriberry
36244b03a6
Bug 881163 - Require gcc 4.5.2 for C++11 atomics, r=froydnj
2013-06-10 09:17:00 -07:00
Karl Tomlinson
fbdfa4f273
b=880492 use GCC's typeof when decltype is not available r=Waldo
...
--HG--
extra : transplant_source : %F89%13%B2%E9%C7%99C%82%0D%E2C%2C%5E%A8%06Uo%B6%9A
2013-06-10 12:37:16 +12:00
Landry Breuil
55a063c0aa
Bug 876156: Don't try using <atomic> on OpenBSD which uses an old libstdc++ r=nfroyd
2013-06-01 00:23:01 +02:00
Nathan Froyd
c36091d5a4
Bug 873649 - don't assume <atomic> is usable with clang on a Linux system; r=Waldo
2013-05-17 17:04:30 -04:00
Brian Hackett
ddbb9d9519
Bug 678037 - Add (disabled) ability to parse script bytecode lazily, r=luke.
2013-05-30 06:29:56 -06:00
Joshua Cranmer
690a2de322
Bug 876701 - Static analysis failure in nsMathMLsemanticsFrame.h, r=karlt
2013-05-28 22:20:44 -05:00
Justin Lebar
7d53f5862c
Bug 876691 - Unbreak mfbt/Atomics.h for Windows x64. r=me
2013-05-28 15:26:25 -04:00
Joshua Cranmer
c6a8662716
Bug 868285 - Fix static checking builds, part 2: Add MOZ_NONHEAP_CLASS. r=ehsan
...
--HG--
rename : build/clang-plugin/tests/TestStackClass.cpp => build/clang-plugin/tests/TestNonHeapClass.cpp
2013-05-27 16:05:02 -05:00
Joshua Cranmer
2cf82af930
Bug 868285 - Fix static checking builds, part 1: infer MOZ_STACK_CLASS. r=bsmedberg
2013-05-27 16:04:18 -05:00
Justin Lebar
c52e5d4a3e
Bug 873800 - Add compare-and-exchange to mfbt/Atomics.h. r=froydnj
...
--HG--
extra : rebase_source : c9e455ed249e6b3cd0f532d240abfb602e2e88a8
2013-05-24 13:10:47 -04:00
Justin Lebar
499d8e2007
Bug 873799 - Add an explicit barrier before __sync_lock_test_and_set in mfbt/Atomics.h r=froydnj
...
--HG--
extra : rebase_source : 64d23f1df2fef8719413800ebb0afe6f51d1e3af
2013-05-24 13:10:47 -04:00
Jeff Walden
d8bfd62d2e
Bug 873585 - Silence a vacuous-comparison-against-0 warning when compiling with gcc 4.5, at least. Also make IsSigned/IsUnsigned actually work on floating-point types. r=froydnj
...
--HG--
extra : rebase_source : 149695699ddb5cde3058a066785c2dc4c7c221e7
2013-05-17 11:07:02 -07:00
Mike Hommey
6334a79a0e
Bug 864035 - Add an atomic RefCounted and WeakPtr implementation. r=Waldo
2013-05-18 09:52:53 +02:00
Nathan Froyd
803ce3d328
Bug 732043 - part 2 - add tests for mfbt/Atomics.h; r=Waldo; original-author=jcranmer
2013-04-25 15:10:38 -04:00
Nathan Froyd
a8d9cc8795
Bug 732043 - part 1 - add mfbt/Atomics.h; r=Waldo; original-author=jcranmer
2013-04-22 14:12:03 -04:00
Mats Palmgren
46d63936fa
Bug 871032 - Move the MOZ_ASSERTs after the declarations to work around MSVC Opt build failure when this file is compiled as C. r=roc
2013-05-13 16:28:29 +02:00
Nathan Froyd
eba34f22d7
Bug 858131 - rewrite FloatingPoint.h to be C++-only instead of C-compatible C++; r+original-author=Waldo
2013-05-01 16:55:13 -04:00
Benoit Jacob
2123c47135
Bug 869194 - CheckedInt should consistently reject unsupported types - r=Waldo
2013-05-08 17:25:15 -04:00
Benoit Jacob
dd563aab02
Bug 869685 - Reintroduce long long support in CheckedInt - r=Waldo
2013-05-08 17:25:03 -04:00
Jeff Walden
9836ebf69c
Bug 869238 - Silence various -Wtype-limits warnings in Casting.h when instantiated with types with various size relationships. r=froydnj
2013-05-06 16:38:42 -07:00
Jeff Walden
1781e6fbf9
Back out cff7378485bc (bug 869238), Windows bustage (at least). r=redness
2013-05-07 13:45:43 -07:00
Jeff Walden
7ac2f661b9
Bug 869238 - Silence various -Wtype-limit warnings in Casting.h when instantiated with types with various size relationships. r=froydnj
2013-05-06 16:38:42 -07:00
Mats Palmgren
401785134b
Bug 867530 - Move PresArena poisoning code to MFBT. r=roc
...
--HG--
rename : layout/base/tests/cpp-tests/TestPoisonArea.cpp => mfbt/tests/TestPoisonArea.cpp
2013-05-07 20:48:59 +02:00
Jeff Walden
3dab75b670
Bug 862657 - Make PodCopy work even when copying to a volatile address, and add PodArrayCopy for copying one fixed-size array into another array of the same size. r=froydnj
...
--HG--
extra : rebase_source : 7bb59639b95ec7a05272ab0215bbc04a210c11d5
2013-05-06 11:05:52 -07:00
Jeff Walden
9ae592d022
Bug 862657 - Implement mozilla::IsConst and mozilla::IsVolatile. r=froydnj
...
--HG--
extra : rebase_source : acc955d825069fa1db7b4f86117d50dbbfc05826
2013-03-05 15:44:02 -08:00
Jonathan Watt
2e0e04481e
Bug 853525, part 9 - Changes to Decimal code as a series of patches for update.sh. r=Waldo
2013-05-06 00:23:18 +01:00
Jonathan Watt
2321448ca0
Bug 853525, part 8 - Enable building of mfbt/decimal. r=Waldo
2013-05-06 00:23:17 +01:00
Jonathan Watt
1e5cfc09a2
Bug 853525, part 7 - Make mfbt/decimal/Decimal{.h/.cpp} use Mozilla/std dependencies instead of Blink core dependencies. r=Waldo
2013-05-06 00:23:17 +01:00
Jonathan Watt
3ea5a5f4ea
Bug 854531, part 6 - Add MFBT_API markers to Decimal methods. r=Waldo
2013-05-06 00:23:17 +01:00
Jonathan Watt
3b06a88e9b
Bug 854531, part 5 - Fix the handling of NaN in Decimal::operator== and Decimal::operator!=. r=Waldo
2013-05-06 00:23:17 +01:00
Jonathan Watt
cccfd99acd
Bug 854531, part 4 - Fix bug in Decimal serialization so that it won't display zero as 0.00 etc. r=Waldo
2013-05-06 00:23:16 +01:00
Jonathan Watt
1875156601
Bug 854531, part 3 - Fix bugs in Decimal::floor() and Decimal::ceiling(). r=Waldo
2013-05-06 00:23:16 +01:00
Jonathan Watt
1ea84d3685
Bug 854531, part 2 - Add update.sh script to mfbt/decimal/. r=Waldo
2013-05-06 00:23:15 +01:00
Jonathan Watt
93c57b8860
Bug 854531, part 1 - Import a vanilla copy of r148833 of Blink core's Decimal class from http://src.chromium.org/viewvc/blink/trunk/Source/core/platform/ . r=Waldo
2013-05-06 00:23:15 +01:00
Stephen Kraemer
7b93b707c5
Bug 836078 - Replace all gcc __GNUC__ version checks with MOZ_GCC_VERSION_AT_LEAST macro. r=dvander
2013-05-01 15:45:05 -04:00
Jeff Walden
f685a81f44
Bug 865036 - Add a Casting.h header to hold various casting methods, right now including a SafeCast method that asserts in-rangeness. r=froydnj
...
--HG--
extra : rebase_source : ef175e4c89d07cddbe866a40fc2ca521fa32c441
2013-04-23 14:36:51 -07:00
Jeff Walden
7c75754cf9
Bug 865036 - Implement mozilla::Is{S,Uns}igned. r=froydnj
...
--HG--
extra : rebase_source : 6df6f2810a71bc6331be54708516bbafb24ea5c0
2013-04-23 14:35:18 -07:00
Jeff Walden
0b73ef54e8
Bug 865036 - Implement mozilla::IsFloatingPoint and mozilla::IsArithmetic. r=froydnj
...
--HG--
extra : rebase_source : 6813cd2a4c0b3ef460d43a5dcc21c8220702cd08
2013-04-23 14:24:26 -07:00
Jeff Gilbert
5f91aeadc3
Bug 822431 - Use MOZ_UNLIKELY in MOZ_ASSERT. r=waldo
2013-04-19 16:20:35 -07:00
Ehsan Akhgari
8b9a514d5f
Bug 863884 - Prepare WeakPtr to support a thread-safe variant; r=Waldo
2013-04-19 17:59:01 -04:00
Bill McCloskey
1c9af5c86d
Bug 863116 - MOZ_ALWAYS_INLINE should not inline in debug builds (r=Waldo)
2013-04-19 10:55:34 -07:00
Joshua Cranmer
b721b5a37b
Bug 856108 - Port static analyses to clang, part 1: stack-class. r=ehsan
2013-04-11 22:20:02 -05:00
Chris Peterson
992d78fc81
Bug 798172 - Apple's default clang 4.2 does not have __builtin_bswap16(). r=Waldo
2013-04-03 23:40:39 -07:00
Nathan Froyd
920087ef25
Bug 798172 - part 3 - convert SHA1.cpp to use Endian.h; r=Waldo
2013-01-30 16:47:00 -05:00
Nathan Froyd
7182225404
Bug 798172 - part 2 - add tests for mfbt/Endian.h; r=Waldo
2013-01-30 16:46:45 -05:00
Nathan Froyd
e168c4f292
Bug 798172 - part 1 - add mfbt/Endian.h; r=Waldo
2013-01-30 16:45:39 -05:00
Nathan Froyd
2b1852c15c
Bug 853646 - part 1 - add mozilla::IsIntegral to TypeTraits.h; r=Waldo
2013-04-02 11:49:58 -04:00