Justin Lebar
35539c04ed
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
4af497f8c9
Bug 906909 - Make LinkedList::debugAssertIsSane() compile. r=waldo
...
--HG--
extra : rebase_source : 60027f53b4a8fa91dd7e42863c271c36395d6851
2013-08-21 12:04:29 -07:00
Dan Gohman
6fbf2016aa
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
57383c0c79
Bug 905850 - Vector should not be copyable (r=terrence)
...
--HG--
extra : rebase_source : 49c2175af92b79a08982d7dfbc7b7af266b27f7a
2013-08-16 10:21:28 -05:00
Trevor Saunders
ff80a9c55c
bug 905243 - make the constructors for mozilla::Atomic constexpr r=froydnj
2013-08-14 16:28:17 -04:00
Ms2ger
c2315a28ab
Bug 904110 - Move alignment features out of Util.h into a new header; r=Waldo
2013-08-14 09:00:52 +02:00
Ms2ger
63c343bbec
Bug 903797 - Update mfbt/STYLE to the current policy about include guards; r=Waldo
2013-08-14 09:00:42 +02:00
Till Schneidereit
fca086ec62
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
a53f776d48
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
09ae0a3adc
bug 899859 - Add typed enums support in strutures / classes - r=Waldo
2013-08-02 20:51:00 -04:00
Birunthan Mohanathas
74d86ab8ae
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
99ea7ddf76
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
184a191b8d
Bug 888548 - Part 1: Add mozilla::IsEnum to TypeTraits.h. r=froydnj
2013-08-01 21:21:31 -04:00
Daniel Holbert
fbd9609857
backout 1e31542e117c (Bug 888548 part 1) for B2G build bustage on a CLOSED TREE
2013-07-31 19:05:34 -07:00
Daniel Holbert
f072f8adf2
backout f607ac59de19 (Bug 888548 part 2) for B2G build bustage
2013-07-31 19:05:05 -07:00
Daniel Holbert
3d1a17c2ef
backout fc98067f0aa4 (Bug 888548 part 3) for B2G build bustage
2013-07-31 19:04:25 -07:00
Birunthan Mohanathas
99ffeabe6b
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
70a5f02910
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
d95e4e6a53
Bug 888548 - Part 1: Add mozilla::IsEnum to TypeTraits.h. r=froydnj
2013-07-31 21:15:25 -04:00
Ehsan Akhgari
a58a6ce8fc
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
085494b95d
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
2508cb7970
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
99eaa83527
Bug 872127 - Part 3: Remove MSStdInt.h; r=Waldo
2013-07-30 10:25:42 -04:00
Ehsan Akhgari
3717325909
Bug 872127 - Part 2: Replace mozilla/StandardInteger.h with stdint.h; r=Waldo,ted
2013-07-30 10:25:31 -04:00
Jeff Walden
c184cc6855
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
98971b1513
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
afc4f3df3f
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
d6be8d390f
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
746bdecb9c
Bug 784739 - Switch from NULL to nullptr in mfbt/. r=jwalden
2013-07-25 16:31:48 -07:00
Nicholas Nethercote
b3d76cccc1
Bug 892806 - Clean up InflateUTF8String() and related functions. r=terrence.
...
--HG--
extra : rebase_source : df901e9900fbd01f1adbe430b9ac52428499681f
2013-07-09 23:17:32 -07:00
Ms2ger
f4ac238f7a
Bug 896341 - Update include guards and modelines in MFBT; r=Waldo
2013-07-24 09:41:39 +02:00
Ms2ger
7d7359c752
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
ce23667c3b
Bug 896842 - Implement mozilla::DoublesAreIdentical. r=luke
2013-06-18 15:35:03 -07:00
Jeff Walden
68d9e42907
Bug 895727 - Fix obvious typo breaking Win64 builds. r=lumpy
2013-07-18 19:30:06 -07:00
Jeff Walden
10bde77bda
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
5e2dbd029b
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
f52f37cddc
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
f424972f65
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
22dc4f4806
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
546adc5f62
Bug 892839 - Fix buggy example code in Move.h. r=luke DONTBUILD
2013-07-15 10:40:30 -07:00
Xavier Fung
c10fec5a62
Bug 888159 - Fix Decimap.cpp building on VS2013. r=Waldo
2013-07-11 10:13:29 +09:00
Jeff Walden
a2ead3b20d
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
6fc6164554
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
d13ea6b69f
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
616c67fb9d
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
adfd71c863
bug 888493 - add MOZ_CONSTEXPR_VAR r=waldo
2013-06-28 17:34:51 -04:00
Phil Ringnalda
af1c32b2a0
Backed out changeset 454706720bbc (bug 888493) for build bustage
...
CLOSED TREE
2013-07-04 13:06:07 -07:00
Trevor Saunders
922e268c2b
bug 888493 - add MOZ_CONSTEXPR_VAR r=waldo
2013-06-28 17:34:51 -04:00
Justin Lebar
c889f21d8f
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
d9ea536e65
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
cab87a0cce
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
db90a60eb4
Bug 763070 - Give MOZ_CRASH() an optional string argument. r=waldo
2013-06-28 18:38:30 -07:00
Jeff Walden
feb2f8ac64
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
e65c7cb8bd
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
80348e936e
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
1abee81c5b
Bug 839998 - Replace thisDuringConstruction() with MOZ_THIS_IN_INITIALIZER_LIST(). r=waldo
2013-06-27 00:15:53 +09:00
Masatoshi Kimura
dea03f2fff
Bug 839998 - Introduce MOZ_THIS_IN_INITIALIZER_LIST macro. r=waldo
2013-06-27 00:15:52 +09:00
Emanuel Hoogeveen
6dc713326b
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
48082e04f1
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
ed17339221
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
9ec81d1921
Bug 881980 - Allow casting CheckedInts to other CheckedInt types. - r=bjacob,waldo
2013-06-14 15:19:40 -07:00
Jeff Gilbert
ec449b8b0b
Bug 874764 - Add CheckedInt support for operator%. - r=bjacob,waldo
2013-06-14 15:19:30 -07:00
Justin Lebar
e7d3c60007
No bug - Fix typo in comment in mfbt/HashFunctions.h. DONTBUILD
2013-06-14 11:17:01 -07:00
Jeff Walden
99f84749f1
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
4ee21886e5
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
0249601aea
Bug 798179 - Implement mozilla::MakeUnsigned. r=froydnj
...
--HG--
extra : rebase_source : fdd1fe8841d1bc42c1758cd4d477969b3f382b30
2013-03-05 15:44:02 -08:00
Jeff Walden
18109e4f0c
Bug 798179 - Implement mozilla::MakeSigned. r=froydnj
...
--HG--
extra : rebase_source : 357bf046219e37959d66fde6b2ad2b7f5746960f
2013-03-05 15:44:02 -08:00
Jeff Walden
3c64eedd05
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
2440908070
Bug 881163 - Require gcc 4.5.2 for C++11 atomics, r=froydnj
2013-06-10 09:17:00 -07:00
Karl Tomlinson
70a0e722bb
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
7907fc92ff
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
d3a89ae699
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
c14649e5d8
Bug 678037 - Add (disabled) ability to parse script bytecode lazily, r=luke.
2013-05-30 06:29:56 -06:00
Joshua Cranmer
30e98999ec
Bug 876701 - Static analysis failure in nsMathMLsemanticsFrame.h, r=karlt
2013-05-28 22:20:44 -05:00
Justin Lebar
69c80eae47
Bug 876691 - Unbreak mfbt/Atomics.h for Windows x64. r=me
2013-05-28 15:26:25 -04:00
Joshua Cranmer
68fd63a1cb
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
7c881418dd
Bug 868285 - Fix static checking builds, part 1: infer MOZ_STACK_CLASS. r=bsmedberg
2013-05-27 16:04:18 -05:00
Justin Lebar
20471613d3
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
7f0fcf5b49
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
d680c05974
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
d292a5f228
Bug 864035 - Add an atomic RefCounted and WeakPtr implementation. r=Waldo
2013-05-18 09:52:53 +02:00
Nathan Froyd
b755ff9e53
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
87fe45e687
Bug 732043 - part 1 - add mfbt/Atomics.h; r=Waldo; original-author=jcranmer
2013-04-22 14:12:03 -04:00
Mats Palmgren
d1b2cd2819
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
dbba9baf39
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
9a704bce1c
Bug 869194 - CheckedInt should consistently reject unsupported types - r=Waldo
2013-05-08 17:25:15 -04:00
Benoit Jacob
b489efa372
Bug 869685 - Reintroduce long long support in CheckedInt - r=Waldo
2013-05-08 17:25:03 -04:00
Jeff Walden
f1bad6f7fb
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
1d5b10e696
Back out cff7378485bc (bug 869238), Windows bustage (at least). r=redness
2013-05-07 13:45:43 -07:00
Jeff Walden
56d0d2cd0f
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
c05c58a0a5
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
71843eae7c
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
14652f99f2
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
88ade8bf7e
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
c41534089e
Bug 853525, part 8 - Enable building of mfbt/decimal. r=Waldo
2013-05-06 00:23:17 +01:00
Jonathan Watt
8b73e177e5
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
465636e7aa
Bug 854531, part 6 - Add MFBT_API markers to Decimal methods. r=Waldo
2013-05-06 00:23:17 +01:00
Jonathan Watt
21454e465a
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
a9d28bd0e0
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
56c4511c45
Bug 854531, part 3 - Fix bugs in Decimal::floor() and Decimal::ceiling(). r=Waldo
2013-05-06 00:23:16 +01:00
Jonathan Watt
d855495c25
Bug 854531, part 2 - Add update.sh script to mfbt/decimal/. r=Waldo
2013-05-06 00:23:15 +01:00
Jonathan Watt
d9dcdb7222
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
8b4660cd59
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
9957296012
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
23c70229ef
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
d07abb6200
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
f7ed63bfd1
Bug 822431 - Use MOZ_UNLIKELY in MOZ_ASSERT. r=waldo
2013-04-19 16:20:35 -07:00
Ehsan Akhgari
a2b88fa559
Bug 863884 - Prepare WeakPtr to support a thread-safe variant; r=Waldo
2013-04-19 17:59:01 -04:00
Bill McCloskey
6b96448f68
Bug 863116 - MOZ_ALWAYS_INLINE should not inline in debug builds (r=Waldo)
2013-04-19 10:55:34 -07:00
Joshua Cranmer
22bf0bbc1c
Bug 856108 - Port static analyses to clang, part 1: stack-class. r=ehsan
2013-04-11 22:20:02 -05:00
Chris Peterson
cb83cc8852
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
07fe997bb2
Bug 798172 - part 3 - convert SHA1.cpp to use Endian.h; r=Waldo
2013-01-30 16:47:00 -05:00
Nathan Froyd
98c812d0b9
Bug 798172 - part 2 - add tests for mfbt/Endian.h; r=Waldo
2013-01-30 16:46:45 -05:00
Nathan Froyd
ee1a936caa
Bug 798172 - part 1 - add mfbt/Endian.h; r=Waldo
2013-01-30 16:45:39 -05:00
Nathan Froyd
501b6cbf00
Bug 853646 - part 1 - add mozilla::IsIntegral to TypeTraits.h; r=Waldo
2013-04-02 11:49:58 -04:00
Nathan Froyd
20efe21d30
Bug 853646 - part 0 - add mozilla::Remove{Const,Volatile,CV} to TypeTraits.h; r=Waldo
2013-04-02 11:49:26 -04:00
Ehsan Akhgari
c16f6c58f4
Follow-up to bug 857790 - Undo the unintentional change to PodOperations.h
2013-04-03 18:59:24 -04:00
Ehsan Akhgari
d7e9372fcb
Bug 857790 - Convert AudioParam time values to ticks relative to the source stream, not the destination stream; r=roc
2013-04-03 17:28:49 -04:00
Jeff Walden
b5bf552de0
Bug 856850 - Implement a PodOperations.h header that includes all the Pod* functions currently in jsutil.h. r=Ms2ger
2013-04-01 22:43:19 -07:00
Kyle Machulis
f5e3aadf0b
Bug 855465 - Add emacs python mode comments to moz.build files; r=gps
2013-04-01 11:36:59 -07:00
Kyle Machulis
d2b6e6e01a
Backout for changeset 03452b187c14 (Bug 855465) due to bustage on a CLOSED TREE; r=qdot
2013-03-29 15:12:58 -07:00
Kyle Machulis
5663b98bc5
Bug 855465 - Add emacs python mode comments to moz.build files; r=gps
...
--HG--
extra : rebase_source : 004a756492323e1a049586e85b3be5037159df20
2013-03-29 13:56:18 -07:00
Jeff Walden
ae6f2fa9c6
Add [specref] references to all the section-comments in TypeTraits.h, to further ease reading/searching. Followup to bug 853988, suggested by froydnj
...
--HG--
extra : rebase_source : 896b6abb3430b890a8de699fc044d0cd0624936a
2013-03-25 12:05:19 -07:00
Jeff Walden
200b63bd51
Bug 853988 - Replace uses of Conditional<..., TrueType, FalseType>::Type with IntegralConstant<bool, ...>. r=froydnj
...
--HG--
extra : rebase_source : 1c2deaac32b2ddefa67bb935f961a182aad31ad2
2013-03-25 11:11:55 -07:00
Jeff Walden
49dffb2b21
Bug 853988 - Move IsPod to the right place. r=froydnj
...
--HG--
extra : rebase_source : 6ea8970965e953b5f372385f933bbc796bfc2015
2013-03-22 00:22:05 -07:00
Jeff Walden
07a28a637e
Bug 853988 - Move Conditional to the right place. r=froydnj
...
--HG--
extra : rebase_source : e0d78a6fe6a07f07dfa054dda2fc74edffe0374b
2013-03-22 00:20:41 -07:00
Jeff Walden
4659d854d4
Bug 853988 - Move IsConvertible to the right place. r=froydnj
...
--HG--
extra : rebase_source : dc7d5a6e21e098a7826230a28f70d6305fa2103f
2013-03-22 00:18:58 -07:00
Jeff Walden
f60a5b25f7
Bug 853988 - Move IsPointer and IsSame to the right locations. r=froydnj
...
--HG--
extra : rebase_source : d945be1ef45f3f6d6a1bed67d4e2c240c882d1ef
2013-03-22 00:17:59 -07:00
Jeff Walden
09a4b26027
Bug 853988 - Add C++11 section references to TypeTraits.h. r=froydnj
...
--HG--
extra : rebase_source : bd98561dd154b19460efaca16debcfc8082804ec
2013-03-22 00:14:38 -07:00
Joshua Cranmer
c992967d69
Bug 767563 - Add a clang static checker, part 3: Move the MOZ_MUST_OVERRIDE macro to MFBT. r=Waldo
2013-03-23 21:14:43 -05:00
Jeff Walden
eb12f04c77
Bug 851237 - Mark the static-assert typedef with an unused attribute so it doesn't trigger compiler warnings. r=dholbert
...
--HG--
extra : rebase_source : 20ad6cd988f2cf5ddedfbb7dd99e368b96c2242a
2013-03-21 18:26:06 -07:00
Mike Shal
ea1d9b8ba7
Bug 844654 - Part 2: Move MODULE to moz.build; rs=gps
2013-03-19 11:47:00 -07:00
Jeff Walden
b9465d4bbf
Bug 847480 - Remove unused (verified by manual inspection and try) DeprecatedAbs overloads so it's harder for new uses to pop up. r=Ms2ger
...
--HG--
extra : rebase_source : dff4d6d2c7006fbc296c9ae0b08d3e66219f7846
2013-03-09 14:20:14 -08:00
Oleg Romashin
b8bf3a3c99
Bug 848611 - MathAlgorithms.h:116: error: 'fabsl' was not declared in this scope. r=Waldo
2013-03-14 00:16:55 -07:00
Jeff Walden
45c6642e41
Bug 847480 - Convert DeprecatedAbs overloads taking floating point (except for nscoord uses, when nscoord is optionally a floating point type) to Abs. r=Ms2ger
2013-03-05 15:43:44 -08:00
Jeff Walden
da348aa3b8
Bug 847480 - Make mozilla::Abs return the unsigned type, for the integral types. r=bjacob
2013-03-05 15:43:38 -08:00
Jeff Walden
77565ad0f3
Bug 847480 - Copy the existing mozilla::Abs as mozilla::DeprecatedAbs, to allow mozilla::Abs to return an unsigned type when possible. r=Ms2ger
2013-03-05 15:43:23 -08:00
Benoit Jacob
aa302576ad
Bug 849667 - Fix/simplify CheckedInt's use-outside-of-MFBT setup - r=Waldo
2013-03-12 15:40:29 -04:00
Jeff Walden
b7bf374ed3
Bug 849666 - Make CheckedInt<T>::operator-() not depend on undefined behavior when negating minimum signed values, and add a test for this. Patch is something of a tag-team effort by bjacob and me. r=bjacob
2013-03-11 18:45:22 -07:00
Jeff Walden
115fda56e6
Bug 847521 - Allow CheckedInt<signed char> in addition to char/unsigned char. char != signed char (but is guaranteed to have the same representation as either signed char or unsigned char, for backwards-compatibility reasons), so we have to handle signed char as a third character type. r=bjacob
...
--HG--
rename : content/html/content/src/HTMLObjectElement.h => content/html/content/src/HTMLObjectElement.cpp
extra : rebase_source : d07d72b78fcbae31483d726703b3605561295684
2013-03-01 21:49:25 -08:00
Jeff Walden
72eca3f9c1
Bug 835542 - Implement mozilla::Abs. r=Ms2ger
...
--HG--
extra : rebase_source : a3e62ff76365d27cc4cb10e4fee942ddb8b10b79
2013-02-15 19:55:36 -08:00
Jeff Walden
56bb38cf34
Bug 835542 - Add an IntegralConstant helper to TypeTraits.h, and use it where the spec says we should be using it. r=bjacob
...
--HG--
extra : rebase_source : a1272a85489771ce1cbe5c3aaa678b5b04b49226
2012-12-16 18:20:17 -05:00
Gregory Szorc
bab4f2e930
Bug 784841 - Part 18c: Convert /memory, /mfbt, /mozglue; r=ted f=Ms2ger
2013-02-25 12:47:17 -08:00
Nicholas Nethercote
27367461bb
Bug 563195: Avoid triggering -Wshadow warnings in mfbt/. r=Waldo
2013-02-17 22:56:32 -08:00
Christian Holler
a933aec5ad
Bug 838557 - Create a common interface for ASan/Valgrind functions. r=mats,bhackett
2013-02-15 00:50:11 +01:00
Rafael Ávila de Espíndola
3f94cbb547
Bug 839338 - ASan alloc/dealloc mismatch in _M_create_nodes/_M_destroy_nodes. r=waldo.
2013-02-12 08:30:16 -05:00
Christian Holler
4caeb334cd
No bug - Include missing header in mfbt/ASan.h. r=me
2013-02-10 13:11:04 +01:00
Jeff Walden
579f351e28
Rename the |static const bool result| member of IsSame, IsPod, and IsPointer to |value| to be consistent with every other type trait. I have no idea how I managed to consistently not notice this during review. Followup to bug 723228, r=typo
2013-02-08 22:59:54 -08:00
Razvan Cojocaru
83699243fe
Bug 723228 - nsTArray::AssignRange should use memcpy when possible. r=jlebar for the XPCOM changes, r=jwalden for js/mfbt changes
...
--HG--
extra : rebase_source : 2442a0d29ae0fa7edd0312d980cbc270a4f33134
2013-02-08 13:18:49 -08:00
Christian Holler
6fd655dead
Bug 838150 - Add ASan and Valgrind annotations to JS LifoAlloc. r=bhackett
2013-02-06 14:30:01 +01:00
Nicholas Cameron
e439c7ac9d
Bug 837297; change RefCounted::dead to a define; r=waldo
2013-02-05 16:53:57 +13:00
Chris Peterson
ab09fb1d90
Bug 833254 - Fix MFBT's gcc version checks. r=waldo
2013-01-21 19:42:15 -08:00
Jeff Walden
947e80c984
Bug 836438 - Always implement nsresult using an unsigned 32-bit integer type. r=ehsan
...
--HG--
extra : rebase_source : f9d9d7772decee36a27ef09eb018b9912bf7bf6b
2013-01-30 15:32:44 -08:00
Mike Hommey
16330c6c9b
Bug 834769 - Change the "destroyed" state value for RefCounted. r=Waldo
2013-01-29 09:35:16 +01:00
Jeff Walden
37fe466d6f
Bug 835648 - Move typed enum support to a new header. r=Ms2ger
2013-01-28 16:33:17 -08:00
Ryan VanderMeulen
7e8ed87ae1
Backed out changeset 3eb633a97c1f (bug 835648) for suspected Windows orange on a CLOSED TREE.
2013-01-29 19:01:45 -05:00
Jeff Walden
dd0f69c43a
Bug 835648 - Move typed enum support to a new header. r=Ms2ger
...
--HG--
extra : rebase_source : 8c912fba889c1c5435e3619714071502fbfb30a3
2013-01-28 16:33:17 -08:00
Mike Hommey
7946ac6e85
Backout changeset bc2bbe9836c7 (bug 834769) for bustage.
2013-01-29 09:49:16 +01:00
Mike Hommey
702ee3351c
Bug 834769 - Change the "destroyed" state value for RefCounted. r=Waldo
2013-01-29 09:35:16 +01:00
Chris Peterson
68e6ff062e
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
7915116031
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
ea05b35161
Bug 822906 - Add SplayTree to mfbt. r=waldo
2013-01-16 12:12:05 +13:00
Chris Peterson
5ed6d6a2a5
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
e55ecf1802
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
778065cc9c
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
7845a8d5e0
Bug 811060 - Implement mozilla::Range; r=Waldo
...
--HG--
extra : rebase_source : a303294de705fca72eb31f7b5c7db787d0bc7260
2012-11-12 16:37:33 -08:00
Chris Peterson
d2b4e410e5
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
f79ae9115b
Bug 799252 - Remove SkipRoots in jsstr.cpp; r=Waldo
2012-10-16 16:30:02 -07:00
Chris Peterson
118bd35c02
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
96acfb4d7f
Bug 823917 - Use C++11 final on MSVC11. r=waldo
2013-01-03 04:47:26 +09:00
Chris Peterson
01106299bb
Bug 796948 - Create Char16.h header file for char16_t type. r=waldo
2012-12-12 00:34:20 -08:00
Trevor Saunders
6380733341
bug 822717 - remove checks for old gcc r=glandium
2012-12-18 13:22:28 -05:00
Jeff Walden
f5381179ab
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
e3574efbe9
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
e0523203c9
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
3b3e24d4fd
Bug 818941 - Fix misspelling of __GXX_EXPERIMENTAL_CXX0X__ macro. r=ehsan
2012-12-06 00:05:26 -08:00
Brian Smith
a3848f342f
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
2776d5fcb3
Bug 812824: Use a clean struct for inheritance on root nodes. r=dbaron,Waldo
2012-11-28 13:21:36 -08:00
Anthony Jones
c9c9d486fa
Bug 793013 - Add EnumSet to replace 1 << n bit type bitfields. r=Waldo
2012-11-06 18:23:13 -05:00
Ehsan Akhgari
68ab5dae8f
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
de87897350
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
1677629f44
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
70bb650cf8
Bug 784309 - CheckedInt.h Intel C++ compilation issue - r=Ms2ger
2012-11-02 11:30:40 -04:00
Rafael Ávila de Espíndola
7a1ec44b6c
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
9d564a00be
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
b32b2a9017
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
9a009da19f
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
83cd16dcd5
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
300fbd1e99
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
25b9cf9ef0
Bug 805773 - TestSHA1.exe fails to link on mingw r=espindola
2012-10-29 10:21:33 +01:00
Jeff Muizelaar
aab771fd1a
Bug 805951. Fix __GNU_MINOR__ typo in NullPtr.h
...
Pointed out by Chris Peterson.
2012-10-26 16:29:55 -04:00
Ehsan Akhgari
766618160a
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
18ee50c014
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
7df8973d95
Bug 777122 - Add telemetry reporting of late writes. r=jlebar.
2012-10-24 15:42:54 -04:00
Rafael Ávila de Espíndola
151dedf22c
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
90a15960ba
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
e801a412d2
Bug 802806 followup - fix the comment
2012-10-22 17:05:07 -04:00
Justin Lebar
bff74aa53a
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
114ec3ffa1
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
0f4db0eb2e
Bug 802806 - Make mfbt's IsBaseOf work with multiple inheritance; r=Waldo
2012-10-17 17:37:53 -04:00
Joe Drew
c080785c79
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
5bd91d02a4
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
bb0c709053
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
8d5bc7cf4b
Bug 798634 - Style patrol on mfbt/SHA1.*. r=espindola
...
--HG--
extra : rebase_source : 7282b80ebe5f23b669a5f3142f3a6e50b6776789
2012-08-28 17:27:05 -07:00
Terrence Cole
063f398bc1
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
b0aff8fadb
Backout 754a1efb5b37 for bustage on a CLOSED TREE
2012-10-08 15:42:39 -07:00
Terrence Cole
2eb31b77bd
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
1e809c4aa8
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
4d35e2a589
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
8b00ef4f80
Bug 792689 - Add some double negations to the macros in Likely.h; r=Waldo
2012-09-20 13:17:05 +02:00
Kyle Huey
f4a7f15ceb
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
280ff59cf2
Bug 792689 - Add some double negations to the macros in Likely.h; r=Waldo
2012-09-20 13:17:05 +02:00
Jeff Muizelaar
00587c07b1
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
e0f22a3469
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
8c296bbcd4
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
9eace88081
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
62a0f3d446
Bug 781627 - Copy security/nss/lib/freebl/sha_fast.c to mfbt. r=jlebar.
2012-08-20 15:01:55 -04:00
Aryeh Gregor
75a8b11012
Bug 782919 - Add zero-arg constructor to enum class workaround; r=ehsan
2012-08-16 14:58:12 +03:00
Ed Morley
7858e8e170
Backout 19ec214f806c (bug 782916), 88b802832f52 (bug 782919), f16429aa2210 (bug 780474) for Android build failures
2012-08-17 12:25:12 +01:00
Aryeh Gregor
5b014008d1
Bug 782919 - Add zero-arg constructor to enum class workaround; r=ehsan
2012-08-16 14:58:12 +03:00
Aryeh Gregor
51bc760936
Bug 751554 part 2 - Support strongly-typed enums in MFBT; r=ehsan
2012-08-01 15:19:00 +03:00
Aryeh Gregor
83129c8f26
Bug 751554 part 1 - Support explicit underlying enum types in MFBT; r=cjones
2012-08-05 12:11:24 +03:00
Nicholas Nethercote
015b5205c6
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
cc3eef8d15
Bug 776429: Unify scattered M_PI definitions into mfbt/Constants.h r=dRdR
2012-08-06 13:32:11 -07:00
Mike Hommey
c1b35e7b2a
Bug 774032 bonus - Use @DEPTH@ and @relativesrcdir@ in Makefile.in. r=ted
2012-08-04 20:26:44 +02:00
Benoit Jacob
15b31c23df
Bug 768538 - CheckedInt: HasSignBit should return bool - r=Ms2ger
2012-07-08 11:44:22 -04:00
Benoit Jacob
8c74d60e26
Bug 768538 - CheckedInt: code simplification; remove the separate operator/ implementation - r=Ms2ger
2012-07-08 11:25:24 -04:00
Benoit Jacob
48592034dc
Bug 768570 - Fix all the warnings in CheckedInt - r=jwalden
2012-07-05 10:13:31 -04:00
Benoit Jacob
184c216c48
Bug 768538 - 2/2 - Fix undefined behavior in the CheckedInt unit test - r=jwalden
2012-07-05 10:13:23 -04:00
Benoit Jacob
457f2bf3b9
Bug 768538 - 1/2 - Fix undefined behavior in CheckedInt - r=jwalden
2012-07-05 10:13:13 -04:00
Jeff Walden
1128bafac5
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
d29b566ac3
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
f6138fbe65
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
0e736a941f
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
602c48c764
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
976e703db3
Backout 1c5a8d617bff (bug 765990), 617cb36ead59, b3067d05a76a (bug 760995), 79f9a61a1e43 (bug 426163) for bustage
2012-06-21 10:00:36 +01:00
Jeff Walden
c37e657ef7
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
f1408aaee2
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
9383c3b0c7
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
452db7706c
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
fb7e6c0e93
Bug 763000 - Remove MOZ_Assert. r=Ms2ger, r=terrence, r=ted
2012-06-07 14:41:11 -07:00
Jeff Walden
56d89732b5
Fix a couple style nits missed during review. Followup to bug 616262, r=sparky
2012-06-14 17:55:11 -07:00
Mike Hommey
7d23ff076d
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
4a95d2f73e
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
43b2c7abdd
Style patrol to make everything conform to mfbt/STYLE. No bug, r=sparky
2012-06-03 20:36:43 -07:00
Jeff Walden
2997d7619b
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
9a14f9092a
Bug 758337 - Fix mistake in comment in mfbt/LinkedList.h. DONTBUILD
2012-06-01 10:32:14 -04:00
Ginn Chen
7fda715d03
Bug 758494 Make double conversion built with Solaris Studio compiler r=jwalden
2012-06-01 17:49:33 +08:00
Benoit Jacob
f88c920c2c
Bug 758396 - Let MFBT LinkedList allow const - r=jlebar
2012-05-29 14:44:31 -04:00
Rafael Ávila de Espíndola
cf3f87b0ac
Bug 759208 - CheckedInt.h depends on undefined value of signed arithmetic. r=bjacob.
2012-05-29 12:48:26 -04:00