Граф коммитов

139 Коммитов

Автор SHA1 Сообщение Дата
Nick Fitzgerald 3bc1833993 Bug 1187399 - Add a js::DefaultHasher specialization for mozilla::UniquePtr<T> that proxies the UniquePtr's raw pointer to PointerHasher. r=terrence
--HG--
extra : rebase_source : 86db93fe0874c21792554ad000d94939148ea4c6
2015-07-24 10:42:00 -04:00
Birunthan Mohanathas a8939590de Bug 1182996 - Fix and add missing namespace comments. rs=ehsan
The bulk of this commit was generated by running:

  run-clang-tidy.py \
    -checks='-*,llvm-namespace-comment' \
    -header-filter=^/.../mozilla-central/.* \
    -fix
2015-07-13 08:25:42 -07:00
Jan de Mooij 11274288e1 Bug 1144366 followup - Stop declaring multiple pointers on a single line. r=jorendorff 2015-04-02 11:22:21 +02:00
Jon Coppeard c1a7380238 Bug 1149135 - Don't create HashMapEntry on stack when adding to a HashMap r=luke 2015-04-01 10:11:06 +01:00
Jan de Mooij b8b1677f0f Bug 1144366 - Switch SpiderMonkey and XPConnect style from |T *t| to |T* t|. r=jorendorff 2015-03-28 23:22:11 +01:00
Phil Ringnalda c8a25251c1 Backed out changeset 0c030f97a04f (bug 1144366) for being on top of patches being backed out
CLOSED TREE
2015-03-28 10:39:56 -07:00
Jan de Mooij 8d6d44ecb8 Bug 1144366 - Switch SpiderMonkey and XPConnect style from |T *t| to |T* t|. r=jorendorff 2015-03-28 12:08:37 +01:00
Brian Hackett a054a9a07e Bug 1143521 - Remove IsPoisonedPtr stuff, r=sfink. 2015-03-18 18:01:35 -07:00
Nick Fitzgerald 57951abfec Bug 1139217 - Make js::HashSet<T> work with move-only T types; r=luke 2015-03-03 17:54:00 +01:00
Jon Coppeard 8db99543e5 Bug 1136046 - Increase maximum capacity of js::HashMap and HashSet r=luke 2015-02-26 09:02:13 +00:00
Nicholas Nethercote 5454a067f6 Bug 979293 - Don't write collision bits in HashTable unnecessarily. r=luke.
This avoids no-op writes to the keyHash of entries when doing a no-add-lookup.
This removes a genuine data race in JSRuntime::permanentAtoms, which receives
frequent no-add-lookups from multiple threads after JSRuntime initialization
without any kind of locking.

--HG--
extra : rebase_source : bb0ccf75e674f28e21f0a7209699f68dd7977f04
2015-02-25 10:39:46 -08:00
Dan Gohman 0a60c87158 Bug 1131783 - Mark various unlikely conditions as MOZ_UNLIKELY r=waldo 2015-02-12 08:37:01 -08:00
Birunthan Mohanathas 1b10c9d731 Bug 1120796 - Part 2: Replace ConvertibleToBool hackarounds with explicit bool operators. r=Waldo 2015-02-03 18:52:36 +02:00
Jon Coppeard c6f9d9bd30 Bug 1127246 - Add a post barrier to the baseShapes table r=terrence a=abillings 2015-02-02 10:11:23 +00:00
Masatoshi Kimura bf312ad056 Bug 1120062 - Part 1: Remove most Nullptr.h includes. r=waldo 2015-01-11 11:34:52 +09:00
Ehsan Akhgari 4354953b4f Bug 1118486 - Part 1: Use `= delete` instead of MOZ_DELETE directly; r=Waldo
Most of this patch (with the exception of dom/bindings/Codegen.py) was
generated by the following bash script:

#!/bin/bash

function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
       ! -wholename "*security/nss*" \
       ! -wholename "*/.hg*" \
       ! -wholename "*/.git*" \
       ! -wholename "obj-*" \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -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 MOZ_DELETE '= delete'
2015-01-08 23:19:05 -05:00
Jeff Walden fffb54d187 Bug 712939 - Replace a bunch of JS_STATIC_ASSERTs with static_assert. r=jandem
--HG--
extra : rebase_source : 4205bda533538d866b8facd669b11cb40e2f02e9
2014-10-22 15:17:38 -07:00
Nicolas B. Pierron 206d7d6d49 Bug 1074911 - Replace JS_ASSERT by MOZ_ASSERT. r=jorendorff
Apply the following script

sed -i '
   /JS_ASSERT(/ {
     s/JS_ASSERT(/MOZ_ASSERT(/;
     :b;
     s/ \\$/\\/;
     /;/ { p; d; };
     n;
     s/^/ /;
     b b;
  };
  s/JS_ASSERT (/MOZ_ASSERT(/;
'

Except where the JS_ASSERT macro does not end with a semi-colon, where empty
lines are in the middle of the macro, and where the backslahes are always the
same-length after the expression.
2014-10-01 19:17:51 +02:00
Jon Coppeard 7e5aae13e9 Bug 650161 - Update pointers to relocated objects r=terrence 2012-06-05 11:47:42 -07:00
Ed Morley 1b0adcea11 Backed out changeset 3adf62f886d9 (bug 650161) 2014-08-14 12:52:41 +01:00
Jon Coppeard 5b1c8897ed Bug 650161 - Update pointers to relocated objects r=terrence 2012-06-05 11:47:42 -07:00
Terrence Cole a6741673cf Bug 1033442 - Remove non-pod calloc from MallocProvider and AllocPolicy; r=jonco 2014-08-05 14:06:35 -07:00
Nicholas Nethercote 609079cb43 Bug 1043605 - Fix up DEBUG/JS_DEBUG confusion in HashTable.h. r=jwalden.
--HG--
extra : rebase_source : ae56e815766be675083596e177844e2365e93906
2014-08-10 23:17:44 -07:00
Nicholas Nethercote 256a1f168b Bug 1038601 - Shrink js::HashTable. r=luke.
This patch reduces sizeof(js::HashTable):
- On 64-bit: from 32 bytes to 24 bytes.
- On 32-bit: from 24 bytes to 16 bytes.

The latter is particularly nice because jemalloc rounds up allocation requests
of 24 bytes to 32, but it can allocate 16 bytes without slop, so we're saving
16 bytes per heap-allocated HashTable.

This is done by:
- Shrinking |removedCount| and |hashShift|.
- Reordering the fields.
- Not defining |mutationCount| and |mEntered| in non-DEBUG builds rather than
  using DebugOnly<> -- in non-DEBUG builds, DebugOnly<> fields take up 1 byte
  each.

This change saves over 55 KiB when starting Firefox and loading Gmail.

The patch also uses uint32_t more consistently for the generation.

--HG--
extra : rebase_source : 8bdfbfe40f233711433bd9b7a2b5a19d69beacc7
2014-07-16 16:51:09 -07:00
Nicholas Nethercote 2a0942be41 Bug 1036789 - Convert the third quarter of MFBT to Gecko style. r=Ms2ger.
--HG--
extra : rebase_source : 668cd394806203ddfa34bd4f226335ff26c846b5
2014-07-10 19:10:17 -07:00
Dan Gohman abf3658282 Bug 1004363 - IonMonkey: A new value-numbering implementation based on a dom-tree DFS. r=nbp 2014-06-27 10:38:44 -07:00
Ehsan Akhgari 5b0272c079 Bug 1013663 - Fix some bad implicit conversion constructors in the JS engine; r=jorendorff,jandem 2014-05-25 21:46:24 -04:00
Dan Gohman 0085f65548 Bug 1004363 - SpiderMonkey: Eliminate unused functions. r=mjrosenb 2014-05-14 21:51:55 -07:00
Chris Peterson d2c6598a97 Bug 712873 - Part 2: Replace JS_ASSERT with MOZ_ASSERT outside js/src/ directory. r=luke 2014-02-17 22:24:15 -08:00
Daniel Holbert c516662c22 back out 3a8893b28489 (bug 712939) and 39adab158c17,16add78c43e3,37193db7e15b (bug 712873), for build bustage. 2014-02-19 00:15:51 -08:00
Chris Peterson 58e6c13345 Bug 712873 - Part 2: Replace JS_ASSERT with MOZ_ASSERT outside js/src/ directory. r=luke 2014-02-17 22:24:15 -08:00
Chris Peterson 1b2b307e88 Bug 964016 - Part 2: Replace JS_UNLIKELY with MOZ_UNLIKELY. r=luke 2014-01-24 19:57:58 -08:00
Nicholas Nethercote b60b20f34b Bug 961883 (part 0) - Some tiny HashTable comment tweaks. r=luke.
--HG--
extra : rebase_source : 749b61ec992335aa5e2be63340e88b04ff236967
2014-01-20 19:52:52 -08:00
Terrence Cole 2839167636 Bug 948516 - Assert that js::HashTable pointers and enumerators are used correctly; r=luke 2013-12-03 12:51:02 -08:00
Terrence Cole b303ecda68 Backout changeset 70e76314c8a7 for build bustage on a CLOSED TREE.
--HG--
extra : rebase_source : 83e1e8a5a4802ef0b7b1d6f7dc0df6595bc9f00f
2013-12-10 15:26:05 -08:00
Terrence Cole 8013e4fe9b Bug 948516 - Assert that js::HashTable pointers and enumerators are used correctly; r=luke 2013-12-03 12:51:02 -08:00
Sean Stangl 33cecd91b2 Bug 939505 - Use JS_DEBUG in public headers. r=jorendorff 2013-12-06 15:03:08 -08:00
Jon Coppeard 0b13b21c71 Bug 939993 - Add assert that hash key is still valid in HashTable::relookupOrAdd r=sfink 2013-12-07 12:50:52 +00:00
Jeff Walden a51194c4dc Bug 940033 - js::HashMapEntry::{key,value} fields should be private, with accessors, and the former should expose a const reference. r=jimb
--HG--
extra : rebase_source : 439d194ed15bf87e9643c9c09d4512ff7f616fcc
2013-11-25 17:35:09 -08:00
Carsten "Tomcat" Book 13099086fa Backed out changeset 042ab55b8476 (bug 939993) for Spidermonkey rootanalysis orange on a CLOSED TREE 2013-11-25 15:04:35 +01:00
Jon Coppeard af4f430fcb Bug 939993 - Check that AddPtrs are used only with matching Lookup values r=sfink 2013-11-25 11:26:10 +00:00
Ryan VanderMeulen 0b04f14b61 Backed out changeset 1469f9e856c0 (bug 939993) for SM rootanalysis crashes.
CLOSED TREE
2013-11-21 09:44:27 -05:00
Jon Coppeard 5fe8c751ed Bug 939993 - Check that AddPtrs are used only with matching Lookup values r=sfink 2013-11-19 22:53:32 +00:00
Ed Morley 8291c4ed9e Backed out changeset 1b720320ccf4 (bug 939993) for rootanalysis assertions on a CLOSED TREE 2013-11-20 16:38:41 +00:00
Jon Coppeard ea691b049e Bug 939993 - Check that AddPtrs are used only with matching Lookup values r=sfink 2013-11-19 22:53:32 +00:00
Jim Blandy a448351084 Bug 896100: Convert all uses of OldMove and MoveRef to true rvalue references and the modern Move and Forward. r=luke, r=waldo 2013-11-19 09:05:36 -08:00
Jeff Walden 1ace537923 Bug 934718 - Simplify some of the alpha computations in HashTable.h by converting alpha fractions to numerator/denominator ratios of integers, and convert associated JS_STATIC_ASSERT to static_assert. r=luke
--HG--
extra : rebase_source : a35631c885ad7058739d9e99498714f318ef589c
2013-10-24 17:11:32 +01:00
Nathan Froyd 6be5da9d86 Bug 925879 - use JS_BITS_PER_WORD instead of JS_BYTES_PER_WORD in HashTable.h; r=njn 2013-10-15 10:11:03 -04:00
Shu-yu Guo c67b8a81d2 Bug 903193 - Part 4: Add ability to do read only lookup on the Shape tree. (r=bhackett) 2013-10-08 15:14:03 -07:00
Douglas Crosher c5c8a5b58e Bug 923328 - Ionmonkey: fix float32 hash function. r=terrence 2013-10-03 10:11:18 +10:00