Commit Graph

356 Commits

Author SHA1 Message Date
Mike Hommey
17103848ed Backout changeset bc2bbe9836c7 (bug 834769) for bustage. 2013-01-29 09:49:16 +01:00
Mike Hommey
19f90e4909 Bug 834769 - Change the "destroyed" state value for RefCounted. r=Waldo 2013-01-29 09:35:16 +01:00
Chris Peterson
434446ef94 Bug 831633 - Back out 1c7bdeefa8ee (bug 830315) for introducing hundreds of non-virtual dtor warnings. r=waldo 2013-01-24 22:59:46 -08:00
Mounir Lamouri
11e3166982 Bug 828472 - Introduce AutoJSContext and SafeAutoJSContext helpers and use them for date handling in nsHTMLInputElement. f=bz r=bholley 2013-01-21 12:38:54 +00:00
Matt Woodrow
c9a3aab989 Bug 822906 - Add SplayTree to mfbt. r=waldo 2013-01-16 12:12:05 +13:00
Chris Peterson
5c5f92058c Bug 785918 - Part 2: Add MOZ_HAVE_CXX11_CONSTEXPR check and constexpr version of ArrayLength(). r=waldo
--HG--
extra : rebase_source : e826347bfdedc949614c9cca294858b7150dfda1
2013-01-07 23:29:00 -08:00
Mike Hommey
9609697ceb Bug 830315 - Don't enable MOZ_FINAL and MOZ_DELETE on clang unless compiling as C++11. r=Waldo 2013-01-15 10:12:49 +01:00
Ehsan Akhgari
c9399f56f0 Rewrite RangedPtr's constructor accepting a C-style array in C++, no bug, rs=Waldo
This will let the compiler correctly deduce N without making the
caller explicitly pass it in.
2013-01-14 19:48:42 -05:00
Terrence Cole
b9cfbdf893 Bug 811060 - Implement mozilla::Range; r=Waldo
--HG--
extra : rebase_source : a303294de705fca72eb31f7b5c7db787d0bc7260
2012-11-12 16:37:33 -08:00
Chris Peterson
9bb826d9ee Bug 785918 - Part 1: Replace PR_ARRAY_SIZE() with mozilla::ArrayLength() and MOZ_ARRAY_LENGTH(). r=ehsan 2013-01-05 23:37:25 -08:00
Terrence Cole
c3325c6297 Bug 799252 - Remove SkipRoots in jsstr.cpp; r=Waldo 2012-10-16 16:30:02 -07:00
Chris Peterson
1e64862110 Bug 826144 - Add MOZ_UTF16_HELPER() intermediary macro to handle UTF-16 stringification and concatenation correctly. r=waldo
--HG--
extra : rebase_source : 4c68df10e6e59af34db1e325232d4671492cc72f
2013-01-02 14:49:09 -08:00
Masatoshi Kimura
1357e36e62 Bug 823917 - Use C++11 final on MSVC11. r=waldo 2013-01-03 04:47:26 +09:00
Chris Peterson
80f6158ae1 Bug 796948 - Create Char16.h header file for char16_t type. r=waldo 2012-12-12 00:34:20 -08:00
Trevor Saunders
801c9b79ba bug 822717 - remove checks for old gcc r=glandium 2012-12-18 13:22:28 -05:00
Jeff Walden
190a1a2986 Bug 756709 - Make ThreadLocal::set crash on failure (which really can only happen if per-thread memory for the TLS entry couldn't be allocated, which should be really rare). r=Ms2ger
--HG--
extra : rebase_source : ecda463195c9b67ef6b7d02ef32ed0aa56bc11bc
2012-12-17 15:40:50 -05:00
Jeff Muizelaar
a4467e34c9 Bug 821804 - Allow unitialized WeakPtrs to work properly. r=Waldo
This ensures that the WeakPtr always points at a valid object and avoids the
need to test for that during operations.
2012-12-18 11:37:14 -05:00
Jeff Walden
120886ca73 Bug 820570 - Move mozilla::DebugOnly into DebugOnly.h to pare down the grab-baggish Util.h. r=Ms2ger 2012-12-14 18:58:45 -05:00
Chris Peterson
18d04422ca Bug 818941 - Fix misspelling of __GXX_EXPERIMENTAL_CXX0X__ macro. r=ehsan 2012-12-06 00:05:26 -08:00
Brian Smith
b4d60d3f56 Bug 812531: Make MOZ_TYPE_SPECIFIC_SCOPED_POINTER_TEMPLATE comply with two-phase template name lookup rules, as clang requires, r=khuey
--HG--
extra : rebase_source : 5c4c8c0ff4f2dfcb4d83e63376036a5bf45ab0ab
2012-11-15 17:02:11 -08:00
Kyle Huey
83feb11ffb Bug 812824: Use a clean struct for inheritance on root nodes. r=dbaron,Waldo 2012-11-28 13:21:36 -08:00
Anthony Jones
6f5946f59f Bug 793013 - Add EnumSet to replace 1 << n bit type bitfields. r=Waldo 2012-11-06 18:23:13 -05:00
Ehsan Akhgari
e485f90bb4 Bug 808876 - Part 0: Only allow the usage of enum classes in gcc 4.5 and newer; r=bzbarsky
Older gccs such as gcc 4.4 cannot handle comparison operators taking
arguments of the enum class type, which would cause valid C++ code
to not compile.  So we should just use our fallback enum class
emulation on those platforms.

--HG--
extra : rebase_source : 3cd2fd2faabc36c767e76442efabf55f8a54c83f
2012-11-06 09:38:32 -05:00
Jeff Walden
ff1998edbf Add more thisDuringConstruction() use in LinkedList to silence warnings. No bug, r=lumpy
--HG--
extra : rebase_source : 7dfb17c38e4efd4ea4bdc48326e792814b990658
2012-11-05 13:36:50 -08:00
Jeff Walden
24e7854e4d Bug 803439 - Add removeFrom() that takes a list and asserts the element is initially present in it. r=jlebar
--HG--
extra : rebase_source : c2aad35774a71167f97f940fb416735862b78950
2012-10-23 17:43:23 -07:00
Benoit Jacob
17335c2b9e Bug 784309 - CheckedInt.h Intel C++ compilation issue - r=Ms2ger 2012-11-02 11:30:40 -04:00
Rafael Ávila de Espíndola
7330a180a0 Bug 807112 - change MOZ_EXPORT_API and MOZ_IMPORT_API to not take the type. r=Waldo. 2012-10-31 18:18:12 -04:00
Justin Lebar
ac1932eb0f Bug 803688 - Re-land backed out part of bug 803688 now that we have bug 805207 fixed.
This changeset reverts the partial-backout cset 5c82f5a5e90d, taking us back to the state we were in at bug 803688's initial landing, rev 592c3465a742.
2012-10-31 13:30:35 -04:00
Rafael Ávila de Espíndola
25843bd8a0 Bug 805416 - refactor macros to avoid the need for empty macro arguments. r=Waldo.
--HG--
extra : rebase_source : 86242ff253d464870cdcc321f9b1f6f08460b839
2012-10-30 16:12:22 -04:00
Rafael Ávila de Espíndola
1fdb43dea5 Bug 806538 - Update double-conversion and document the version we are at. r=Waldo.
--HG--
extra : rebase_source : 5394aab0cb622ad3723ca01a91712ce7cc9ae145
2012-10-30 15:30:08 -04:00
Ed Morley
b0a5453bf1 Backout fdb7c9649a07 (bug 805967), 72003517a631 (bug 806538), 354250ed1e72 (bug 770538), ea6edd3749ce (bug 770538) for bustage on a CLOSED TREE 2012-10-30 17:56:20 +00:00
Rafael Ávila de Espíndola
6df39e5636 Bug 806538 - Update double-conversion and document the version we are at. r=Waldo.
--HG--
extra : rebase_source : 7e7ec80943329342c2305370dd0fe6bde46433a4
2012-10-30 11:48:56 -04:00
Jacek Caban
660bdf5a95 Bug 805773 - TestSHA1.exe fails to link on mingw r=espindola 2012-10-29 10:21:33 +01:00
Jeff Muizelaar
ad8c94f6fc Bug 805951. Fix __GNU_MINOR__ typo in NullPtr.h
Pointed out by Chris Peterson.
2012-10-26 16:29:55 -04:00
Ehsan Akhgari
fc2126e5b2 Add a comment about MOZ_BEGIN_ENUM_CLASS/MOZ_END_ENUM_CLASS to say that they should not be used for nested enums, no bug
DONTBUILD
2012-10-26 13:56:54 -04:00
Ryan VanderMeulen
cff9297675 Partial backout of bug 803688 to fix Win7 debug xpcshell perma-purple. r=jlebar 2012-10-24 22:46:14 -04:00
Rafael Ávila de Espíndola
855e1fdf1f Bug 777122 - Add telemetry reporting of late writes. r=jlebar. 2012-10-24 15:42:54 -04:00
Rafael Ávila de Espíndola
aee1036fed Bug 805096 - Better explain why we use __attribute__((weak)). r=glandium.
--HG--
extra : rebase_source : 8db4439601c47c3f969d11694e5859dc44ca68d0
2012-10-24 14:33:45 -04:00
Justin Lebar
02e90b3240 Bug 803688 - Remove LinkedListElements from their list when they're destructed, and assert that a LinkedList is empty when it's destructed. r=waldo 2012-10-24 12:40:35 -04:00
Ehsan Akhgari
b81b92b6f5 Bug 802806 followup - fix the comment 2012-10-22 17:05:07 -04:00
Justin Lebar
a6ab000fcb Bug 803692 - Make SHA1Sum::update() take a void* instead of a uint8_t*. r=waldo 2012-10-22 16:32:34 -04:00
Jeff Walden
d50a1c2f80 Give LinkedListElement a thisDuringConstruction() method, and use it in member initialization to silence an MSVC compiler warning. No bug, r=sparky
--HG--
extra : rebase_source : b0859f6d169255196cb59d40504ed08b1074e9a4
2012-10-18 18:39:54 -07:00
Ehsan Akhgari
7e57f8a9fe Bug 802806 - Make mfbt's IsBaseOf work with multiple inheritance; r=Waldo 2012-10-17 17:37:53 -04:00
Joe Drew
6001445fd1 Bug 801120 - Support T* WeakPtr<T>::get(). r=Ms2ger,ehsan
--HG--
extra : rebase_source : 662ef6f39966956be5588d9bd7508dbe59a2c537
2012-10-12 18:17:58 -04:00
Jeff Walden
098475a5bb Minor style nits in WeakPtr code forgotten by me when reviewing. No bug, r=sparky
--HG--
extra : rebase_source : e8b8071218c9280e970ba4525a3e8ebab729d4eb
2012-10-08 16:03:52 -07:00
Jeff Walden
a9b67c2069 Move TestBloomFilter out of XPCOM and into mfbt/tests, now that it exists. No bug, r=testingonlychange
--HG--
extra : rebase_source : 85a2a56bcc02bf122ee7fd21d16dffd534d1c98d
2012-10-03 17:09:59 -07:00
Jeff Walden
6c828f9bb0 Bug 798634 - Style patrol on mfbt/SHA1.*. r=espindola
--HG--
extra : rebase_source : 7282b80ebe5f23b669a5f3142f3a6e50b6776789
2012-08-28 17:27:05 -07:00
Terrence Cole
9fd0191df4 Bug 798624 - Specialize low-level character access to JSStableString; r=luke, rs=Waldo
Implements JSStableString::chars() and pushes StableCharPtr into the interface
at several key choke-points. This will solidly enforce the requirement that we
have uninlined jschar*s in places that we may GC with a jschar* on the stack.

--HG--
extra : rebase_source : 122785b474af371ed22d43a6bfcb600c05440405
2012-10-08 15:04:36 -07:00
Terrence Cole
f56b69f5b1 Backout 754a1efb5b37 for bustage on a CLOSED TREE 2012-10-08 15:42:39 -07:00
Terrence Cole
8d60e1a402 Bug 798624 - Specialize low-level character access to JSStableString; r=luke, rs=Waldo
Implements JSStableString::chars() and pushes StableCharPtr into the interface
at several key choke-points. This will solidly enforce the requirement that we
have uninlined jschar*s in places that we may GC with a jschar* on the stack.

--HG--
rename : content/html/content/test/test_bug797113.html => content/html/content/test/test_bug780993.html
extra : rebase_source : 19b24e3decfc37c7387ea941233aec8239550927
2012-10-08 15:04:36 -07:00
Jeff Muizelaar
ac8fdf1333 Bug 792954. Add a WeakPtr implementation to use instead of nsISupportsWeakReference. r=joe,ehsan,Waldo
This patch also replaces the usage of nsISupportsWeakReference in RasterImage as an example.

--HG--
extra : rebase_source : ac6a039dcc3227a04ac4c2221f38856bb308c695
2012-10-04 15:45:07 -04:00
Brian Smith
5d5eed3185 Bug 767240 - Make it easier to create type-specific scoped pointers (TYPE_SPECIFIC_SCOPED_POINTER_TEMPLATE), r=jwalden
--HG--
extra : rebase_source : 845b429d56ee1abb296925624928c355451edc3c
2012-07-24 15:36:06 -07:00
Ms2ger
f3e2980b79 Bug 792689 - Add some double negations to the macros in Likely.h; r=Waldo 2012-09-20 13:17:05 +02:00
Kyle Huey
9eafb07639 Try backing out bug 792689 because it's the only non-merge cset in the MaxHeap regression range for both m-i and m-c. 2012-09-20 12:42:13 -07:00
Ms2ger
232ff717cd Bug 792689 - Add some double negations to the macros in Likely.h; r=Waldo 2012-09-20 13:17:05 +02:00
Jeff Muizelaar
9d45f08968 Bug 782647. Move the nullptr workaround macros to MFBT so that it can be shared. r=waldo
This also changes the header to use compiler detection instead of a
configure test. This makes the header more portable because
it doesn't require the configure infrastructure.
2012-09-01 16:16:17 -04:00
Raphael Catolino
5e69aa6e3c Bug 781313 - Move the euclidGcd and lcm algos form nsStyleAnimation.cpp to mfbt/MathAlgorithms.h r=dbaron,luke 2012-08-26 22:58:23 -03:00
Ehsan Akhgari
e368dc9c85 Bug 579517 - Part 1: Automated conversion of NSPR numeric types to stdint types in Gecko; r=bsmedberg
This patch was generated by a script.  Here's the source of the script for
future reference:

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 "*.c" \
         -o -iname "*.cc" \
         -o -iname "*.idl" \
         -o -iname "*.ipdl" \
         -o -iname "*.ipdlh" \
         -o -iname "*.mm" \) | \
    xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}

convert PRInt8 int8_t
convert PRUint8 uint8_t
convert PRInt16 int16_t
convert PRUint16 uint16_t
convert PRInt32 int32_t
convert PRUint32 uint32_t
convert PRInt64 int64_t
convert PRUint64 uint64_t

convert PRIntn int
convert PRUintn unsigned

convert PRSize size_t

convert PROffset32 int32_t
convert PROffset64 int64_t

convert PRPtrdiff ptrdiff_t

convert PRFloat64 double
2012-08-22 11:56:38 -04:00
Rafael Ávila de Espíndola
d52e9eb6df Bug 784381 - Build bustage for comm-central - SHA1.h - Cannot open include file: 'stdint.h. r=ms2ger. 2012-08-21 12:43:33 -04:00
Rafael Ávila de Espíndola
b6f8c36445 Bug 781627 - Copy security/nss/lib/freebl/sha_fast.c to mfbt. r=jlebar. 2012-08-20 15:01:55 -04:00
Aryeh Gregor
bceb79b8d5 Bug 782919 - Add zero-arg constructor to enum class workaround; r=ehsan 2012-08-16 14:58:12 +03:00
Ed Morley
26dd8a729c Backout 19ec214f806c (bug 782916), 88b802832f52 (bug 782919), f16429aa2210 (bug 780474) for Android build failures 2012-08-17 12:25:12 +01:00
Aryeh Gregor
757baa9a0a Bug 782919 - Add zero-arg constructor to enum class workaround; r=ehsan 2012-08-16 14:58:12 +03:00
Aryeh Gregor
0ad63bfea8 Bug 751554 part 2 - Support strongly-typed enums in MFBT; r=ehsan 2012-08-01 15:19:00 +03:00
Aryeh Gregor
4ae33db236 Bug 751554 part 1 - Support explicit underlying enum types in MFBT; r=cjones 2012-08-05 12:11:24 +03:00
Nicholas Nethercote
f32ed5397d Bug 647367 - Sequester jshash.{h,cpp} in js/jsd/ (attempt 2). r=luke.
--HG--
rename : js/src/jshash.cpp => js/jsd/jshash.cpp
rename : js/src/jshash.h => js/jsd/jshash.h
2012-07-18 17:38:10 -07:00
Sergey Glushchenko
a2ebf3852f Bug 776429: Unify scattered M_PI definitions into mfbt/Constants.h r=dRdR 2012-08-06 13:32:11 -07:00
Mike Hommey
70d7c821af Bug 774032 bonus - Use @DEPTH@ and @relativesrcdir@ in Makefile.in. r=ted 2012-08-04 20:26:44 +02:00
Benoit Jacob
91e33ba3c6 Bug 768538 - CheckedInt: HasSignBit should return bool - r=Ms2ger 2012-07-08 11:44:22 -04:00
Benoit Jacob
1f740b8204 Bug 768538 - CheckedInt: code simplification; remove the separate operator/ implementation - r=Ms2ger 2012-07-08 11:25:24 -04:00
Benoit Jacob
da5aee1123 Bug 768570 - Fix all the warnings in CheckedInt - r=jwalden 2012-07-05 10:13:31 -04:00
Benoit Jacob
e137681d8c Bug 768538 - 2/2 - Fix undefined behavior in the CheckedInt unit test - r=jwalden 2012-07-05 10:13:23 -04:00
Benoit Jacob
9c508f38f4 Bug 768538 - 1/2 - Fix undefined behavior in CheckedInt - r=jwalden 2012-07-05 10:13:13 -04:00
Jeff Walden
a10a240530 Bug 766347 - Implement mozilla::IsConvertible to detect when a value of one type will convert to a value of another type. r=luke
--HG--
extra : rebase_source : d25c1b84dfc928a0bc4dcfb43e31b6035882849e
2012-06-19 13:55:23 -07:00
Jeff Walden
7eaf2877a0 Bug 766347 - Implement a mozilla::EnableIf template struct for SFINAE capabilities. r=luke
--HG--
extra : rebase_source : 06807195217a967142ab7d81ac8b120f2b0e02c7
2012-06-18 19:06:33 -07:00
Jeff Walden
b2d449c615 Eliminate Assertions.h's dependency on Types.h, for a narrower interface and minimized dependencies. No bug, r=Ms2ger
--HG--
extra : rebase_source : b5c79dc444ef7277f2624ffe2407bca25a1054cd
2012-06-11 16:16:46 -07:00
Jeff Walden
f071f38e8c Bug 760995 - Move Scoped.h into the mozilla namespace. r=sparky
--HG--
extra : rebase_source : 534c787c834fc1d7174b51d8fb8f13ec339c0a58
2012-06-11 16:16:47 -07:00
Jeff Walden
31edbd7b3b Bug 426163 - Make MOZ_CRASH() use TerminateProcess on Windows rather than exit so that destructors and atexit handlers aren't called. r=ted
--HG--
extra : rebase_source : 0e340516158d36931fd00824a6ff9e665a9f9354
2012-06-11 16:16:46 -07:00
Ed Morley
5a59a93dac Backout 1c5a8d617bff (bug 765990), 617cb36ead59, b3067d05a76a (bug 760995), 79f9a61a1e43 (bug 426163) for bustage 2012-06-21 10:00:36 +01:00
Jeff Walden
eb986aa0c7 Eliminate Assertions.h's dependency on Types.h, for a narrower interface and minimized dependencies. No bug, r=Ms2ger
--HG--
extra : rebase_source : 0d68ef6274ad697bf4ff49038ef19368174dad54
2012-06-11 16:16:46 -07:00
Jeff Walden
765347bb6f Bug 760995 - Move Scoped.h into the mozilla namespace. r=sparky
--HG--
extra : rebase_source : ea32c4240ea552c72ed16074c803927e638474dc
2012-06-11 16:16:47 -07:00
Jeff Walden
3a7ab6bdea Bug 426163 - Make MOZ_CRASH() use TerminateProcess on Windows rather than exit so that destructors and atexit handlers aren't called. r=ted
--HG--
extra : rebase_source : 631b1707f06852f4c47acbfb9c7401b22507267b
2012-06-11 16:16:46 -07:00
Jeff Walden
51e0b3e2fb Bug 761859 - Reinstate a __debugbreak() at the start of MOZ_CRASH() on Windows so that deliberate crashes on Windows appear as breakpoints, not invalid writes. r=bsmedberg 2012-06-18 12:01:57 -07:00
Jeff Walden
3b720a666b Bug 763000 - Remove MOZ_Assert. r=Ms2ger, r=terrence, r=ted 2012-06-07 14:41:11 -07:00
Jeff Walden
4cebdf0ba9 Fix a couple style nits missed during review. Followup to bug 616262, r=sparky 2012-06-14 17:55:11 -07:00
Mike Hommey
6505be978b Bug 616262 - Add mozilla/TypeTraits.h with mozilla::Conditional and mozilla::IsBaseOf traits, similar to resp. C++11 std::conditional and std::is_base_of. r=Waldo 2012-06-14 08:20:47 +02:00
Jeff Walden
af9bf2ebd1 Bug 761857 - Make MOZ_CRASH on Linux crash in such a way that an attached debugger will park on the line containing the assertion. r=ted
--HG--
extra : rebase_source : 0628998cb0e2eec047426375c971aac1a84ebed1
2012-06-05 16:49:19 -07:00
Jeff Walden
986ff95100 Style patrol to make everything conform to mfbt/STYLE. No bug, r=sparky 2012-06-03 20:36:43 -07:00
Jeff Walden
40a94b7921 Remove some extraneous includes and a function, all added in bug 714260. They were initially necessary when that patch was written, but they became vestigial during rebasing prior to landing, and this disuse wasn't noticed til now. r=lumpy 2012-04-19 16:36:31 -07:00
Justin Lebar
3137b98af3 Bug 758337 - Fix mistake in comment in mfbt/LinkedList.h. DONTBUILD 2012-06-01 10:32:14 -04:00
Ginn Chen
d2b19f035e Bug 758494 Make double conversion built with Solaris Studio compiler r=jwalden 2012-06-01 17:49:33 +08:00
Benoit Jacob
4c2fe57512 Bug 758396 - Let MFBT LinkedList allow const - r=jlebar 2012-05-29 14:44:31 -04:00
Rafael Ávila de Espíndola
fb938b31ab Bug 759208 - CheckedInt.h depends on undefined value of signed arithmetic. r=bjacob. 2012-05-29 12:48:26 -04:00
Mike Hommey
27e941762a Bug 756965 - Allow mozilla::ThreadLocal to store integer types smaller than, or as large as, a pointer. r=Waldo 2012-05-22 08:43:55 +02:00
Mike Hommey
5602a951ae Bug 750620 - Declare double conversion correctness for more architectures. r=nfroyd 2012-05-22 08:38:44 +02:00
Gervase Markham
82ff7027aa Bug 716478 - update licence to MPL 2. 2012-05-21 12:12:37 +01:00
Ehsan Akhgari
327c5136de Bug 753119 - Add ThreadLocal to mfbt - r=jwalden
... because nobody likes to use the NSPR TLS support.
2012-05-09 16:54:33 -04:00
Benoit Jacob
ce077b3952 Bug 732875 - Further CheckedInt tweaks - r=Ms2ger,jwalden 2012-05-17 10:07:24 -04:00
Dão Gottwald
5e32254efb Backed out changeset 45ef0e7b2426 2012-05-17 16:48:06 +02:00
Benoit Jacob
d88ddfed0d Bug 732875 - Further CheckedInt tweaks - r=Ms2ger,jwalden 2012-05-17 10:07:24 -04:00
Benoit Jacob
6de3cc03da Bug 732875 - 8/8 - move CheckedInt to MFBT, enable unit tests in mfbt/tests - r=jwalden
--HG--
rename : xpcom/ds/CheckedInt.h => mfbt/CheckedInt.h
2012-05-14 15:50:20 -04:00
Ed Morley
0f956d7307 Backout 345ae68f15f4, b3b40121ac8d, 0d18b7a246d7, 9dbb6064ab58, dee9d7fa8eb6, 63eec6bfa948, 323c6be7cfe8 & f4aac7523a48 (bug 732875) for compilation failures 2012-05-14 21:05:24 +01:00
Benoit Jacob
fa8d5e0469 Bug 732875 - 8/8 - move CheckedInt to MFBT, enable unit tests in mfbt/tests - r=jwalden
--HG--
rename : xpcom/ds/CheckedInt.h => mfbt/CheckedInt.h
2012-05-14 15:50:20 -04:00
Christian Holler
2e32f290c8 Bug 751195 - Mark GC function unsafe for AddressSanitizer, r=billm 2012-05-05 02:08:32 -04:00
Chris Peterson
36364dad38 Bug 751766 - Remove unused function MOZ_Crash. r=glandium
--HG--
extra : rebase_source : 8bf953755dab1c5429cd6b7e2ca5452ebab8dd8f
2012-05-03 16:43:51 -07:00
Christian Holler
951d13d85f Bug 751412 - Add missing buffer null-termination in CreateDecimalRepresentation, r=njn 2012-05-04 10:40:54 -04:00
Luke Wagner
328edde002 Bug 650353 - Implement Compartment-Per-Global in XPConnect. r=mrbkap 2012-05-03 09:10:12 +02:00
Jacek Caban
27793b2584 Bug 745762 - double-conversion.h fails to compile on mingw r=jwalden 2012-04-27 11:40:05 +02:00
Jeff Walden
e868abd4e1 Bug 714260 - Implement FloatingPoint.h to consolidate all IEEE-754 floating point operations in a single location. r=dmandelin for the js bits, r=Ms2ger for mfbt and the core bits 2012-01-23 03:43:16 -08:00
Nathan Froyd
324818de90 Bug 614188 - Part 3: build double-conversion as a part of MFBT; r=Waldo 2012-04-09 12:05:11 -04:00
Nathan Froyd
380e5b6b93 Bug 614188 - Part 2: import double-conversion sources; r=Waldo 2012-03-19 12:22:32 -04:00
Nathan Froyd
50af044f63 Bug 614188 - Part 1: setup mfbt/double-conversion; r=Waldo 2012-03-19 12:21:05 -04:00
Bas Schouten
2be70a6cde Bug 719776 - Part 2: Make MOZ_CRASH and MOZ_ASSERT expand inline. r=waldo 2012-04-12 02:03:07 +02:00
Phil Ringnalda
151c28ec53 Back out 4b82f26f8593:2fcf9cbedd48 (bug 743393, bug 719776) for bustage 2012-04-11 09:06:40 -07:00
Bas Schouten
034108c2de Bug 719776 - Part 2: Inline MOZ_Assert and MOZ_Crash. r=waldo 2012-04-11 16:55:31 +02:00
Chris Peterson
34deeb369a Bug 743306 - Part 2: On Android, segfault in MOZ_Crash because SIGABRT is handled asynchronously. r=glandium
--HG--
extra : rebase_source : 46233676f73a5b8040f92ec251fe0ae3ecca9934
2012-04-09 12:45:25 -07:00
Chris Peterson
465a5c3e9b Bug 743306 - Part 1: On Android, log MOZ_Assert messages to logcat because stderr is directed to /dev/null. r=glandium
--HG--
extra : rebase_source : 1dda421f84116784539d6ca65fb1d9092506b0bd
2012-04-09 12:45:17 -07:00
David Rajchenbach-Teller
5996ca7f8c Bug 718938 - Add RAII helper to mfbt. r=waldo,luke,cjones 2012-04-06 11:16:33 +02:00
Jeff Walden
f9aac6fb1e Document ternary expression style and the else-after-return prohibition. No bug, rs=luke over IRC, DONTBUILD because this is modifying docs but touching no code
--HG--
extra : rebase_source : 0c11adc6052878710300eea87520345ca7e9143f
2012-03-29 16:03:32 -07:00
Jeff Walden
a8a3846d0b Document macro naming style and struct naming style in C-compatible code, where C++ namespaces can't be used to avoid name collisions. No bug, r=luke over IRC, DONTBUILD because this is modifying docs but touching no code 2012-03-28 15:42:40 -07:00
Justin Lebar
d7ea97afba Bug 732820 - Part 1: Add clear() to LinkedList. r=waldo
--HG--
rename : js/src/vm/ArgumentsObject.cpp => js/src/jsfun.cpp
extra : rebase_source : 1cf48cb8f9764d4299b6f3320fd65b9bc3407de6
2012-03-15 16:30:41 -04:00
Jacek Caban
d54cd7b4d7 Bug 735704 - RotateLeft32 conflicts with winnt.h macro r=Waldo 2012-03-15 13:43:28 +01:00
Boris Zbarsky
9801e6dd67 Bug 705877 part 1. Rename mayContain on BloomFilter to mightContain. r=dbaron 2012-03-12 22:54:12 -05:00
Phil Ringnalda
ef5d0d917f Back out 83a33626d965:6e9330f5a9bd (bug 732667 and bug 705877) for Windows build bustage 2012-03-12 22:12:41 -07:00
Boris Zbarsky
2b9e15c16a Bug 705877 part 1. Rename mayContain on BloomFilter to mightContain. r=dbaron 2012-03-12 22:54:12 -05:00
Justin Lebar
f584e08122 Bug 729940 - Part 1: Add hash function utilities to mfbt. r=waldo
--HG--
extra : rebase_source : 05f5c9f5c1e99e5bca012c57502a965423aeb10e
2012-03-12 18:53:18 -04:00
Justin Lebar
53959f7e57 Back out bug 731419 and bug 732820 due to orange.
Backs out changesets 55e63a03ccad 45d2f5e2fe31 f78900832562 6184b50776fc 35d8045aeadd 42e887fec034.
2012-03-09 18:32:42 -05:00
Jeff Walden
44af116dcf Line-wrap the mfbt style docs at 80 characters. The docs are more easily edited the other way, but MXR doesn't auto-wrap long lines, and readability trumps writability here. No bug, r=sparky, DONTBUILD
--HG--
extra : rebase_source : 5cae4c24e03546d1cf5f3e43457b44904ccf2b5f
2012-03-09 15:02:51 -08:00
Justin Lebar
f4c6ba9e11 Bug 732820 - Part 1: Add clear() to LinkedList. r=waldo 2012-03-09 17:21:01 -05:00
Jeff Walden
6fc33afefe Bug 732321 - Document mfbt style, rather than relying on reviewers to consistently remember and enforce every little bit of it. r=cjones, DONTBUILD because this is adding docs but touching no code 2012-03-01 20:47:30 -08:00
Ed Morley
3c657080b5 Backout afeafc02c1de, dfae37833c9b & f9f51c726fa7 (bug 729940 parts 1-3) for talos regressions 2012-03-05 15:22:28 +00:00
Justin Lebar
ec47a60b90 Bug 729940 - Part 1: Add hash function utilities to mfbt. r=waldo 2012-03-04 15:58:04 -05:00
Justin Lebar
e2b30b7a56 Back out bug 729940 (a108aee:d75775d) due to 32-bit red. 2012-03-04 14:20:34 -05:00
Justin Lebar
2dcd3b129c Bug 729940 - Part 1: Add hash function utilities to mfbt. r=waldo 2012-03-04 13:49:41 -05:00
Justin Lebar
0e41e0eb6e Bug 729952 - Part 3: Add missing #include. r=me 2012-03-02 17:46:09 -05:00
Justin Lebar
0d2f332e8c Bug 729952 - Part 1: Add a better hash function to mfbt. r=waldo 2012-03-02 17:18:21 -05:00
Jacek Caban
01ae5b4040 Bug 728178 - js.exe fails to link on on mingw (missing MOZ_Crash) r=glandium 2012-03-02 11:27:29 +01:00
Boris Zbarsky
ee5c6221bc Bug 730100 followup. Add missing include guards. Assumed r=ms2ger 2012-03-02 00:20:32 -05:00
Justin Lebar
863d510656 Bug 731789 - Followup, s/StdInt/StandardInteger in BloomFilter.h. r=me 2012-02-29 23:40:16 -05:00
Justin Lebar
69fb6f1047 Bug 731789 - Rename mfbt/StdInt.h to mfbt/StandardInteger.h, so stdint types work from cpp files inside mfbt. r=waldo 2012-02-29 22:56:43 -05:00
Boris Zbarsky
3c48581eda Bug 730100. Add a Bloom filter implementation. r=waldo 2012-02-29 21:40:47 -05:00
Rafael Ávila de Espíndola
dbb5992e2a Bug 723114 - Need a macro that expands to __builtin_unreachable on release builds. r=jwalden. 2012-02-23 14:32:30 -05:00
Jeff Walden
87eee40a7e Bug 728512 - Make MOZ_ASSERT(cond, reason) work correctly on MSVC by hacking around a compiler bug. r=glandium
--HG--
extra : rebase_source : f955359300e02b27f0efda63bbb1983d85a56a5a
2012-02-17 18:47:12 -08:00
David Rajchenbach-Teller
3ddbeef61e Bug 727435 - Implementing MOZ_GUARD_OBJECT_NOTIFIER_ONLY_PARAM_TO_PARENT. r=Waldo
--HG--
extra : rebase_source : 4fcf555106b06b0080d2986102f6d84d3ae8fd4d
2012-02-16 01:17:02 +01:00
Jeff Walden
2d683f049c Bug 727141 - Uglify the include of <stdint.h> to support building on case-insensitive file systems. rs=khuey over IRC
--HG--
extra : rebase_source : 34ea2bea8ecb6bbaf039d50ec728233d524fc015
2012-02-14 12:18:21 -08:00
Robert O'Callahan
b2ec9bd05d Bug 726894. Add a copy constructor to DebugOnly so it can be used in more situations. r=cjones 2012-02-14 17:39:20 +13:00
Mike Hommey
229a4401e7 Bug 717540 - Remove MFBT dependency on JS_Assert, add MOZ_Assert, and use it for WTF assertions. r=waldo,r=khuey 2012-02-13 15:48:23 +01:00
Phil Ringnalda
7b77666e87 Back out 7f81109133b5 (bug 725221), 135721f3720b (bug 726891), aef4ead175b4 (bug 726894) for orange 2012-02-13 22:31:22 -08:00
Robert O'Callahan
9813f15ee3 Bug 726894. Add a copy constructor to DebugOnly so it can be used in more situations. r=cjones 2012-02-14 17:39:20 +13:00
Mike Hommey
78f3656b4b Backout 8eef38643ceb (bug 717540) and 78941a969e20 (bug 725230) because of windows debug bustage 2012-02-13 16:35:13 +01:00
Mike Hommey
b5d2448f11 Bug 717540 - Remove MFBT dependency on JS_Assert, add MOZ_Assert, and use it for WTF assertions. r=waldo,r=khuey 2012-02-13 15:48:23 +01:00
Justin Lebar
14525ec49c Bug 722581 - Update comments in mfbt/LinkedList.h. r=waldo 2012-02-04 21:49:10 -05:00
Justin Lebar
1435835368 Bug 715405 - Add a type-safe linked list class. r=waldo
--HG--
extra : rebase_source : c1a829b9c1264c6b07a10b1ff7a8d0a64e3125f7
2012-01-26 15:54:03 -05:00
Jeff Walden
c908c1c048 Bug 720759 - Export mfbt's guard object classes to avoid warnings using them in exported APIs. r=Ms2ger
--HG--
extra : rebase_source : d1de7a9549e1fe0d047b3882ebca711fc0a47b94
2012-01-24 09:22:47 -08:00
Ed Morley
3303de5d26 Backout 01a5ce645a8b, 6e849614a79f & bd75f26eee25 (bug 720759) for win debug build failures 2012-01-24 21:06:59 +00:00
Jeff Walden
1bdd6cfcbb Bug 720759 - Export mfbt's guard object classes to avoid warnings using them in exported APIs. r=Ms2ger 2012-01-24 09:22:47 -08:00
Ms2ger
4a62e49ffb Bug 716236 - Fix indentation in GuardObjects.h and allow its inclusion into C files; r=Waldo 2012-01-15 09:13:07 +01:00
Jeff Walden
1f1e0e3e33 Bug 716112 - Add an optional second argument to MOZ_ASSERT to allow explanations to accompany assertions, if desired. r=cjones
--HG--
extra : rebase_source : a6be7ef89c91a58df489057ca4ea67791b6881a0
2012-01-06 15:51:27 -06:00
Michael Kohler
8e7d457186 Bug 711818 - MOZILLA_GUARD_OBJECT_NOTIFIER* should use a MOZ_ prefix to follow MFBT style 2012-01-10 00:29:30 -05:00
Jeff Walden
eaa4a32656 Add introductory comments to the files in mfbt/ that aren't copied from elsewhere, to facilitate easier MXR directory skimming. No bug, r=lumpy
--HG--
extra : rebase_source : dd834c64e625a0184b64d13e2a2e6fd8960ca832
2011-12-28 10:48:54 -06:00
Jeff Walden
150afa32c7 Bug 713560 - Make MOZ_STATIC_ASSERT, when it expands to C++11 static_cast(), pass its reason argument along to static_cast in more compilers. r=typo-fix 2011-12-27 12:09:41 -06:00
Jeff Walden
a158abd5b6 Bug 712129 - Implement MOZ_STATIC_ASSERT and MOZ_STATIC_ASSERT_IF. r=luke 2011-12-19 16:58:30 -05:00
Jeff Walden
677b43a2b8 Bug 712129 - Add more assertion macro flavors to mfbt, and make the JS engine use mfbt's implementations where appropriate. r=cjones
--HG--
extra : rebase_source : 6b94db05e74b18a3938a28cbc0f520eb4e01fbb0
2011-12-19 15:54:12 -05:00
Jeff Walden
b00479bc34 Bug 712129 - Move MOZ*INLINE macros from Util.h into Attributes.h, where they make more sense. r=luke
--HG--
extra : rebase_source : f62a21c8833c9d5eb7351b18ba14f14d4286b3c0
2011-12-19 14:45:52 -05:00
Jeff Walden
05dcc6d231 Bug 712129 - Move assertion code into a new mfbt/Assertions.h header. r=luke
--HG--
extra : rebase_source : 6587b6aa4180493c48b0663bc627543020a21deb
2011-12-19 14:28:35 -05:00
Jeff Walden
9098fa4182 Bug 711775 - Implement MOZ_NORETURN to encapsulate this-function-doesn't-return semantics. r=cjones
--HG--
extra : rebase_source : d56f3ef47e11c42b5fe6a442e13fd6202208914f
2011-12-17 16:45:29 -05:00
Jeff Walden
f108ab9e90 Bug 711683 - Use Clang's feature-detection macros, not its version number, for feature testing. r=cjones
--HG--
extra : rebase_source : fdf8e0bff705410a85bd4560f08b226321632bb1
2011-12-17 16:45:29 -05:00
Jeff Walden
bcd5afef4c Bug 711672 - Break mfbt's dependency on jstypes.h by moving various API macros out of JS and into mfbt. r=luke, r=cjones
--HG--
extra : rebase_source : f18993e1eec1a5e5bcdb9cd97fa7d7c6ad261e2c
2011-12-13 14:26:58 -05:00
Jeff Walden
735580ff0e Bug 708735 - Use <stdint.h> types in JSAPI and throughout SpiderMonkey. Continue to provide the {u,}int{8,16,32,64} and JS{Uint,Int}{8,16,32,64} integer types through a single header, however, for a simpler backout strategy -- and also to ease the transition for embedders. r=timeless on switching the jsd API to use the <stdint.h> types, r=luke, r=dmandelin 2011-12-08 22:54:10 -05:00
Jeff Walden
f76f7d6da3 Bug 704313 - Implement mozilla/StdInt.h. r=cjones
--HG--
extra : rebase_source : b221134fdfbde13a37a6ef621bba3ca183a46101
2011-11-22 17:42:57 -08:00
Jeff Walden
1ac593a9d5 Bug 704313 - Import, unmodified, the Microsoft-compatible <stdint.h> implementation from the 'msinttypes' Google Code project, r26, into mfbt. r=gerv for license compatibility and the addition to toolkit/content/license.html, r=cjones for the code
--HG--
extra : rebase_source : 9e1105b916d15023a91ffcca8b26445bc1bd930d
2011-11-22 16:40:45 -08:00
Jeff Walden
793ba14a2e Followup to bug 704127 - s/MOZ_HAVE CXX11_FINAL/MOZ_HAVE_CXX11_FINAL/ in one case (thanks to Stuart Cook in m.d.platform for noticing this, I have *no* *idea* how he managed it, Luke had to have me point it out to even see the change in the diff), and actually define it for -std=c++0x GCC (a mistaken omission originally). rs=luke
--HG--
extra : rebase_source : 2187e3b4a133c898cf6b1fcb3dd92226c70e2082
2011-12-01 18:21:27 -08:00
Jeff Walden
df2b7cbc5c Bug 704127 - Implement MOZ_FINAL as a modifier for classes and virtual member functions. r=cjones
--HG--
extra : rebase_source : d95a3b3e726f810f299314358ba8c5e23557698e
2011-11-20 22:21:16 -08:00
Jeff Walden
d2d9341b8a Bug 704127 - Move C++ attribute support out of mozilla/Types.h and into mozilla/Attributes.h so that it can be used by code that's not yet compatible with the full mfbt experience. r=cjones
--HG--
extra : rebase_source : 7b653358a73f222c055f5139e33ca470475f88c9
2011-11-20 12:22:51 -08:00
Joe Drew
7b8b90225a Bug 702799 - Don't modify a RefPtr when using the implicit conversion to TemporaryRef. r=cjones 2011-11-21 16:42:07 -05:00
Ed Morley
bb0c21a5d1 Merge last green changeset of mozilla-inbound to mozilla-central 2011-11-16 11:02:43 +00:00
Ms2ger
5ba4677d3d Bug 672796 - Move MOZILLA_GUARD_OBJECT_NOTIFIER_* out of AutoRestore.h; r=khuey 2011-11-16 08:50:19 +01:00
Jeff Walden
b39c6a08d9 Change preprocessor-directive indentation to be two-space, not one-space. rs=cjones in bug 702437 2011-11-15 22:26:55 -08:00
Jeff Walden
a48ad2fca3 Bug 702437 - Implement MOZ_OVERRIDE to encapsulate support for the contextual override keyword on virtual member functions. r=cjones 2011-11-14 10:31:46 -08:00
Jeff Walden
d15a17f354 Very slight comment tweak for the compile-to-nothing case for defining MOZ_DELETE. No bug, r=sparky
--HG--
extra : rebase_source : 3a5f731e646e1367403ae7c8ae7715e74faa2b8b
2011-11-10 21:49:51 -08:00
Jeff Walden
0dc3caec01 Bug 701183 - Make MOZ_DELETE use deleted function syntax in gcc when it's possible to do so without causing a warning. r=cjones
--HG--
extra : rebase_source : 6f452c9cc9dcdc772991ee1056975bf7b0b4bb5b
2011-11-10 14:19:28 -08:00
Jeff Walden
b6eb396961 Bug 700910 - Implement MOZ_DELETE to encapsulate C++11 = delete syntax. r=cjones
--HG--
extra : rebase_source : 0fc4bc154923c84fd91e52be99fdac78f7c6dbc4
2011-11-08 19:19:44 -08:00
Jeff Walden
b5e57820bf Bug 693469 - Implement mozilla::ArrayLength and mozilla::ArrayEnd, and replace uses of NS_ARRAY_LENGTH whenever possible. (Exceptions: assigning to static initializers, use in static assertions, as template parameters, etc. These will go away when the relevant compilers have C++11 constexpr support.) r=cjones
--HG--
extra : rebase_source : b4bae9a0f85abf2feb828609b50e756916b99a6f
2011-10-10 22:50:08 -07:00
Chris Leary
d25f266344 Bug 693928: Fix random orange from LifoAlloc debug memset. (r=luke)
--HG--
extra : rebase_source : 314ebeb6364ad0bb45baa6b7d7f09b9603e47b27
2011-10-12 15:32:40 -07:00
Jeff Walden
d0532c3e95 Back out everything since 5435ee09cf7b. Tinderbox compilers hate me. r=epic-fail 2011-10-12 12:21:53 -07:00
Jeff Walden
0f30b277bf Bug 639469 - Implement mozilla::ArrayLength and mozilla::ArrayEnd, and replace uses of NS_ARRAY_LENGTH whenever possible. r=cjones
--HG--
extra : rebase_source : 860a8271bf7e51cde358f2a4185c410de1fc2960
2011-10-10 22:50:08 -07:00
Justin Lebar
653bb9eeaf Bug 689433 - Followup. Remove unused MOZ_STATIC_ASSERT macro. r=roc 2011-10-06 17:51:24 -04:00
Justin Lebar
f89c7adf4f Bug 689433 - Align nsAutoTArray<E> to E's natural alignment. r=roc
--HG--
extra : rebase_source : f7062f251f6905a58145ed6d94680f076dabbef7
2011-10-05 09:11:17 -04:00
Chris Leary
3b3f1cf4c7 Bug 684039: rewrite JS LIFO allocator, avoids thrashing. (r=luke)
--HG--
rename : js/src/jsarena.h => js/src/ds/LifoAlloc.h
extra : rebase_source : 098bf9561114f82363ebd0862213acf952709257
2011-09-22 13:22:30 -07:00
Terrence Cole
ad84665634 Bug: 685041 - convert #ifdef DEBUG vars in jsgc.cpp to DebugOnly; r=luke
This adds operation++ and operator-- to DebugOnly in support of the two uses
cleaned up here.
2011-09-07 11:32:35 -07:00
Terrence Cole
7e5208b4e8 Bug 646597 - Remove unneeded #ifdef DEBUG: use DebugOnly instead; r=bhackett
Assignment to a DebugOnly variable results in a call to either the empty
'operator =' or to an empty implicit 1-arg constructor and empty copy
constructor when in non-debug mode.  Either of these get inlined and
eliminated as dead code above -00, so there is no benefit to skipping
this assignment for non-debug builds.
2011-09-04 13:58:00 +01:00
Chris Leary
b6e46acdbd Merge mozilla-central and tracemonkey. 2011-06-27 11:07:22 -07:00
Chris Leary
f1e0113af3 Bug 649576: Extricate JSHashTable from JSAtomList death grip. (r=luke) 2011-06-24 14:22:30 -07:00
Chris Leary
6ad07be206 Merge mozilla central and tracemonkey. 2011-06-20 16:49:20 -07:00
Ehsan Akhgari
9e6f60ae73 Bug 662971 - Silence the clang warnings issued because of alignment requirements increase when compiling mfbt/Util.h; r=Waldo
--HG--
extra : rebase_source : a2bb6f588674602993c6603abda01487b72b6923
2011-06-17 15:59:47 -04:00
Bas Schouten
4d1fc71a1e Followup to bug 661973: Fix bug with COM outparams and add convenience operators. r=cjones 2011-06-21 21:44:00 -07:00
Jeff Walden
94a29910cd Add a RangedPtr constructor accepting an array as a shorthand for RangedPtr(arr, N). rs=luke 2011-06-07 13:25:36 -07:00
Jeff Walden
661571d30c Bug 662001 - Move js::RangeCheckedPointer<T> to mozilla::RangedPtr<T>, make it no longer implicitly convert to T*, and adjust users accordingly. r=cjones 2011-06-06 11:02:34 -07:00
David Mandelin
0101f388cf Bug 656282: Remove redundant declaration that causes an MSVC warning, r=luke
--HG--
extra : rebase_source : 42c6e9594f36fd7320bdea90fdb01c955bf07f4d
2011-05-16 16:17:19 -07:00
Jeff Walden
1644a3dc71 Bug 656059 - Add operator-> to mozilla::DebugOnly<T> so it can store pointers. r=cjones
--HG--
extra : rebase_source : 3d7aeec93f1ae1e5bbd4b03c30216e70fe15eb6a
2011-05-10 14:56:49 -07:00