Commit Graph

1049 Commits

Author SHA1 Message Date
Andrew McCreight
d97108aa89 Bug 1052793, part 2 - Shrink GC buffers during compartmental GCs. r=terrence
With part 1, many more GCs are compartmental, so it is no longer a
good indication that there is heavy activity. If we don't regularly
try to shrink GC buffers, we don't decommit arenas enough, causing a
large regression in memory usage.
2016-02-18 15:21:48 -08:00
Andrew McCreight
f84e7d971f Bug 1052793, part 1 - Do per-zone GC for CC_WAITING triggers. r=smaug 2016-02-18 15:21:48 -08:00
Kyle Huey
e95edb30a9 Bug 1241764: Replace nsPIDOMWindow with nsPIDOMWindowInner/Outer. r=mrbkap,smaug 2016-01-30 09:05:36 -08:00
David Rajchenbach-Teller
e82056648c Bug 1224374 - Profiler labels for the 25 top chrome hangs;r=BenWa,MarcoZ
Experience shows that we do not have enough profiler labels to make
BHR hang reports meaningful. This patch adds enough labels to let us
exploit hang reports matching the 25 topmost chrome hangs.
2016-01-14 23:03:11 +01:00
Sebastian Hengst
2e241e7e5e Backed out 2 changesets (bug 1224374) for Windows bustage. r=bustage on a CLOSED TREE
Backed out changeset 5f458e6e4997 (bug 1224374)
Backed out changeset 0dc02cb0b604 (bug 1224374)
2016-01-19 21:30:41 +01:00
David Rajchenbach-Teller
b9014bc5d3 Bug 1224374 - Profiler labels for the 25 top chrome hangs;r=BenWa,MarcoZ
Experience shows that we do not have enough profiler labels to make
BHR hang reports meaningful. This patch adds enough labels to let us
exploit hang reports matching the 25 topmost chrome hangs.
2016-01-14 23:03:11 +01:00
Nathan Froyd
4e6d8f6705 Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat
The bulk of this commit was generated with a script, executed at the top
level of a typical source code checkout.  The only non-machine-generated
part was modifying MFBT's moz.build to reflect the new naming.

CLOSED TREE makes big refactorings like this a piece of cake.

 # The main substitution.
find . -name '*.cpp' -o -name '*.cc' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    xargs perl -p -i -e '
 s/nsRefPtr\.h/RefPtr\.h/g; # handle includes
 s/nsRefPtr ?</RefPtr</g;   # handle declarations and variables
'

 # Handle a special friend declaration in gfx/layers/AtomicRefCountedWithFinalize.h.
perl -p -i -e 's/::nsRefPtr;/::RefPtr;/' gfx/layers/AtomicRefCountedWithFinalize.h

 # Handle nsRefPtr.h itself, a couple places that define constructors
 # from nsRefPtr, and code generators specially.  We do this here, rather
 # than indiscriminantly s/nsRefPtr/RefPtr/, because that would rename
 # things like nsRefPtrHashtable.
perl -p -i -e 's/nsRefPtr/RefPtr/g' \
     mfbt/nsRefPtr.h \
     xpcom/glue/nsCOMPtr.h \
     xpcom/base/OwningNonNull.h \
     ipc/ipdl/ipdl/lower.py \
     ipc/ipdl/ipdl/builtin.py \
     dom/bindings/Codegen.py \
     python/lldbutils/lldbutils/utils.py

 # In our indiscriminate substitution above, we renamed
 # nsRefPtrGetterAddRefs, the class behind getter_AddRefs.  Fix that up.
find . -name '*.cpp' -o -name '*.h' -o -name '*.idl' | \
    xargs perl -p -i -e 's/nsRefPtrGetterAddRefs/RefPtrGetterAddRefs/g'

if [ -d .git ]; then
    git mv mfbt/nsRefPtr.h mfbt/RefPtr.h
else
    hg mv mfbt/nsRefPtr.h mfbt/RefPtr.h
fi
2015-10-18 01:24:48 -04:00
Andrew McCreight
fb08e9f082 Bug 1207752 - Increase how long we let incremental GC run before forcing it to finish. r=smaug
Some users with many tabs have reported extremely long GC pauses
triggered by the CC forcing the GC to finish. Increasing the limit may
cause memory to be somewhat higher for these users, but that is better
than 30 second pauses.
2015-09-23 12:12:00 +02:00
Nicholas Nethercote
3ddf3a726a Bug 1203427 (part 5) - Add logging of timer firings. r=froydnj. 2015-09-10 00:50:51 -07:00
Andrea Marchesini
369572f0d9 Bug 1203916 - Get rid of NS_DOMReadStructuredClone and NS_DOMWriteStructuredClone, r=smaug 2015-09-15 01:05:44 +08:00
Terrence Cole
58827ba017 Bug 1193032 - Part 2: Make unlimited SliceBudget initialization explicit; r=ehoogeveen,r=mccr8 2015-08-11 08:42:24 -07:00
Birunthan Mohanathas
a0f7c73250 Bug 1191100 - Remove XPIDL signature comments in .cpp files. r=ehsan
Comment-only so DONTBUILD.
2015-08-04 16:17:36 -07:00
Jon Coppeard
dd5c08abee Bug 1188834 - Make compacting GC when inactive less frequent except on nightly r=smaug 2015-07-30 11:03:06 +01:00
Andrea Marchesini
39072bdd81 Bug 1186544 - A better test suite for StructuredCloneAlgorithm, r=smaug 2015-07-28 08:37:37 +01:00
Alexandre Poirot
b5fa684874 Bug 814497 - Pass SavedFrame from JS::ErrorObject to nsIScriptError. r=bholley 2015-07-09 07:02:00 -04:00
Martin Thomson
b914406e1f Bug 1181262 - Disabling more code under --disable-webrtc, r=dholbert,bwc 2015-07-08 12:27:45 -07:00
Dragana Damjanovic
f5e3e71a6d Bug 905127 - Part 2 - remove unnecessary nsNetUtil.h includes r=jduell 2015-07-06 07:55:00 +02:00
Martin Thomson
8d33023a51 Bug 1172785 - RTCCertificate implementation, r=rbarnes 2015-07-06 10:40:04 -07:00
Jan de Mooij
c291b790a9 Bug 1177892 part 4 - Remove INT_TO_JSVAL. r=evilpie 2015-06-30 21:10:04 -07:00
Jan de Mooij
f3ccbe5797 Bug 1177892 part 1 - Remove BOOLEAN_TO_JSVAL and STRING_TO_JSVAL. r=evilpie 2015-06-30 11:20:56 -07:00
Ryan VanderMeulen
4bb610cee0 Backed out changesets ad58c270ce87 and 849151330d60 (bug 1177892) for B2G bustage.
CLOSED TREE
2015-06-30 15:48:11 -04:00
Jan de Mooij
c2c23268db Bug 1177892 part 1 - Remove BOOLEAN_TO_JSVAL and STRING_TO_JSVAL. r=evilpie 2015-06-30 11:20:56 -07:00
Jan de Mooij
987140de6f Bug 1177825 - Remove JSVAL_* constants. r=evilpie 2015-06-29 18:36:44 -07:00
Andrew McCreight
53a6125057 Bug 886459, part 3 - Remove simple uses of nsIJSRuntimeService to get the JSRuntime. r=bholley 2015-06-26 18:44:14 -07:00
Ms2ger
eeb15e7cf8 Bug 1171451 - Use the correct type for the argv argument to NS_CreateJSArgv and the nsJSArgArray constructor; r=jst 2015-06-05 11:23:00 +02:00
Terrence Cole
8c02919997 Bug 1166789 - Cleanup javascript.options.mem.log formatting; r=sfink, r=mccr8 2015-05-20 09:14:29 -07:00
Eric Rahm
ddc8ac650b Bug 1165518 - Part 2: Replace prlog.h with Logging.h. rs=froydnj 2015-05-19 11:15:34 -07:00
Terrence Cole
3ffd505617 Bug 1164602 - Replace js::NullPtr and JS::NullPtr with nullptr_t; r=sfink 2015-05-13 14:07:34 -07:00
Boris Zbarsky
0a010b1519 Bug 1155946 part 2. Add mayResolve methods to DOM classes with resolve hooks. r=peterv 2015-04-28 12:25:55 -04:00
Jon Coppeard
5653865251 Bug 1149752 - Cancel GC caused by user inactivity if the user becomes active again r=terrence r=smaug 2015-04-13 16:42:41 +01:00
Mike Hommey
338d086ead Bug 1134920 - Use moz_xmalloc/moz_xrealloc/free instead of nsMemory::Alloc/Realloc/Free. r=nfroyd 2015-04-01 13:51:45 +09:00
Andrew McCreight
753b9ecd10 Bug 1147951, part 2 - Remove unused JAVASCRIPT definition from nsJSEnvironment.cpp. r=baku 2015-03-30 10:45:39 -07:00
Ehsan Akhgari
ea41d8de48 Bug 1145631 - Part 1: Replace MOZ_OVERRIDE and MOZ_FINAL with override and final in the tree; r=froydnj
This patch was automatically generated using the following script:

function convert() {
echo "Converting $1 to $2..."
find . \
       ! -wholename "*/.git*" \
       ! -wholename "obj-ff-dbg*" \
         -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 MOZ_OVERRIDE override
convert MOZ_FINAL final
2015-03-21 12:28:04 -04:00
Boris Zbarsky
3a822d99b4 Bug 1117172 part 3. Change the wrappercached WrapObject methods to allow passing in aGivenProto. r=peterv
The only manual changes here are to BindingUtils.h, BindingUtils.cpp,
Codegen.py, Element.cpp, IDBFileRequest.cpp, IDBObjectStore.cpp,
dom/workers/Navigator.cpp, WorkerPrivate.cpp, DeviceStorageRequestChild.cpp,
Notification.cpp, nsGlobalWindow.cpp, MessagePort.cpp, nsJSEnvironment.cpp,
Sandbox.cpp, XPCConvert.cpp, ExportHelpers.cpp, and DataStoreService.cpp.  The
rest of this diff was generated by running the following commands:

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapObjectInternal\(JSContext *\* *(?:aCx|cx|aContext|aCtx|js))\)/\1, JS::Handle<JSObject*> aGivenProto)/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapObjectInternal\((?:aCx|cx|aContext|aCtx|js))\)/\1, aGivenProto)/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapNode\(JSContext *\* *(?:aCx|cx|aContext|aCtx|js))\)/\1, JS::Handle<JSObject*> aGivenProto)/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapNode\((?:aCx|cx|aContext|aCtx|js))\)/\1, aGivenProto)/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapObject\(JSContext *\* *(?:aCx|cx|aContext|aCtx|js))\)/\1, JS::Handle<JSObject*> aGivenProto)/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(Binding(?:_workers)?::Wrap\((?:aCx|cx|aContext|aCtx|js), [^,)]+)\)/\1, aGivenProto)/g'
2015-03-19 10:13:33 -04:00
Yoshi Huang
d6fc3ebb27 Bug 1138886 - Structured Clone for MozNDEFRecord. r=smaug
From 9b1bdef0b25b41d0448662ec689a961ae4e8fcd2 Mon Sep 17 00:00:00 2001
---
 dom/base/StructuredCloneTags.h     |   2 +
 dom/base/nsJSEnvironment.cpp       |  29 +++++++++
 dom/nfc/MozNDEFRecord.cpp          | 122 ++++++++++++++++++++++++++++++++++---
 dom/nfc/MozNDEFRecord.h            |  20 ++++--
 js/xpconnect/src/ExportHelpers.cpp |  36 ++++++++++-
 5 files changed, 193 insertions(+), 16 deletions(-)
2015-01-30 15:36:42 +08:00
Jon Coppeard
531afdc2a7 Bug 1130439 - Trigger compacting GCs after the user becomes inactive r=smaug r=terrence 2015-02-24 09:40:02 +00:00
Ryan VanderMeulen
4ddf80a635 Backed out changeset cd6461410a7a (bug 1130439) for frequent SM test timeouts/failures.
CLOSED TREE
2015-02-24 15:11:08 -05:00
Jon Coppeard
6b9a6cb5e0 Bug 1130439 - Trigger compacting GCs after the user becomes inactive r=smaug r=terrence 2015-02-24 09:40:02 +00:00
Jon Coppeard
3ec5055266 Bug 1133759 - Always shrink GC buffers at the end of a shrinking GC r=terrence 2015-02-18 12:35:05 +00:00
Jon Coppeard
46adfcf343 Bug 1127792 - Add a pref to globally disable compacting GC r=terrence r=mccr8 r=bent 2015-02-02 14:39:34 +00:00
Mike Hommey
715db83e04 Bug 1126593 - Add a global fallible instance, so that using fallible works directly, everywhere. r=njn 2015-02-02 09:56:13 +09:00
Andrew McCreight
755c13f279 Backout bug 1052793 for exposing bad decommitting behavior for compartmental GCs. 2015-01-08 09:54:13 -08:00
Jon Coppeard
3b4496654e Bug 1099152 - Make external GC APIs take invocation kind as a parameter r=terrence r=mccr8 2015-01-02 17:19:43 +00:00
Jon Coppeard
0a377231d0 Bug 1099152 - Separate out external APIs to start and continute an incremental GC r=terrence r=mccr8 2015-01-02 17:19:43 +00:00
Nicholas Nethercote
dceb4f2bc9 Bug 1014341 (part 1) - Remove trace-malloc. r=dbaron,glandium. 2015-01-07 16:13:03 -08:00
Ehsan Akhgari
2acefe2331 Bug 1117264 - Mark virtual overridden functions as MOZ_OVERRIDE in dom/base code; r=baku 2015-01-06 11:52:45 -05:00
Phil Ringnalda
800a2c9a2a Backed out 4 changesets (bug 1116821, bug 1110928) for Windows OOMs
CLOSED TREE

Backed out changeset 9d593597df5f (bug 1110928)
Backed out changeset d68c75986335 (bug 1110928)
Backed out changeset 21d807074550 (bug 1110928)
Backed out changeset ca77252e50dd (bug 1116821)
2015-01-04 21:12:19 -08:00
Andrew McCreight
34195ceabe Bug 1110928, part 3 - Try to pass a relevant zone to PokeGC. r=smaug
This means the browser will do less full GCs.
2015-01-04 17:46:50 -08:00
Andrew McCreight
ad688ffc8b Bug 1110928, part 1 - Hoist the LOAD_END PokeGC out of nsJSContext::LoadEnd. r=smaug
nsDocumentViewer knows which document is involved which will help us later.

Also, fix a typo in the comment.
2015-01-04 17:46:50 -08:00
Andrew McCreight
3d18172fc8 Bug 1088268 - Use a switch statement in DOMGCSliceCallback. r=smaug 2015-01-04 17:46:49 -08:00