Commit Graph

77 Commits

Author SHA1 Message Date
Markus Stange
6950b48956 Bug 1462784 - Remove EVENTS category. r=njn
Categories are useful to indicate: This much % of time was spent in this category.

The EVENTS category isn't a very good match for this. This category is currently
only set on labels of functions that handle the processing of an event. But
those functions are usually closer to the base of the stack, and the actual CPU
work during the processing of an event is usually in another category closer to
the top of the stack, e.g. in JS if we're running an event handler, or in LAYOUT
if we're hit testing the position of the event.

This changeset removes the EVENTS category and replaces all uses of it with the
OTHER category.

MozReview-Commit-ID: JPm5hQiBkvp
2018-05-18 17:36:30 -04:00
Csoregi Natalia
27ccec9c4c Backed out 18 changesets (bug 1462784) for ESlint failure on FlameGraph.js:1297. CLOSED TREE
Backed out changeset 79556798ff9f (bug 1462784)
Backed out changeset 88321efb673b (bug 1462784)
Backed out changeset 7880f9dc7023 (bug 1462784)
Backed out changeset 71fe35fd1f7e (bug 1462784)
Backed out changeset a543b94b049a (bug 1462784)
Backed out changeset d1ca8b0f2221 (bug 1462784)
Backed out changeset 68eabfbf3c16 (bug 1462784)
Backed out changeset 34e71c789903 (bug 1462784)
Backed out changeset 6fe79d1ca1bd (bug 1462784)
Backed out changeset e5ad2e525ea9 (bug 1462784)
Backed out changeset 329645ff1e23 (bug 1462784)
Backed out changeset e09c38853172 (bug 1462784)
Backed out changeset 0663d1a6d2da (bug 1462784)
Backed out changeset 106967fc29d2 (bug 1462784)
Backed out changeset 99b4a433a8e5 (bug 1462784)
Backed out changeset 1d38a4cf5a4a (bug 1462784)
Backed out changeset 692017229de6 (bug 1462784)
Backed out changeset c2911a626671 (bug 1462784)
2018-06-01 23:42:00 +03:00
Markus Stange
2c2d4093f6 Bug 1462784 - Remove EVENTS category. r=njn
Categories are useful to indicate: This much % of time was spent in this category.

The EVENTS category isn't a very good match for this. This category is currently
only set on labels of functions that handle the processing of an event. But
those functions are usually closer to the base of the stack, and the actual CPU
work during the processing of an event is usually in another category closer to
the top of the stack, e.g. in JS if we're running an event handler, or in LAYOUT
if we're hit testing the position of the event.

This changeset removes the EVENTS category and replaces all uses of it with the
OTHER category.

MozReview-Commit-ID: JPm5hQiBkvp
2018-05-18 17:36:30 -04:00
Noemi Erli
3946d17555 Backed out 18 changesets (bug 1462784) for failures in devtools/client/performance/test/unit/test_tree-model-08.js on a CLOSED TREE
Backed out changeset a74d36598442 (bug 1462784)
Backed out changeset c8192175f360 (bug 1462784)
Backed out changeset cde492240e99 (bug 1462784)
Backed out changeset 8c8d30fa406c (bug 1462784)
Backed out changeset ad3802ffb780 (bug 1462784)
Backed out changeset 2fe10732076c (bug 1462784)
Backed out changeset 268a72b7c3c4 (bug 1462784)
Backed out changeset 4055eb6c3bc6 (bug 1462784)
Backed out changeset 3901070e2e60 (bug 1462784)
Backed out changeset 2faf787fbbdf (bug 1462784)
Backed out changeset 8f06963c7c6f (bug 1462784)
Backed out changeset 036e6f64e224 (bug 1462784)
Backed out changeset e670f156a603 (bug 1462784)
Backed out changeset cd39588aece4 (bug 1462784)
Backed out changeset 2ac65d100fa2 (bug 1462784)
Backed out changeset ea05ff70a51d (bug 1462784)
Backed out changeset 8a06c0ba42f7 (bug 1462784)
Backed out changeset 52ed9a039ad2 (bug 1462784)
2018-06-01 01:06:29 +03:00
Markus Stange
c2d09e6c16 Bug 1462784 - Remove EVENTS category. r=njn
Categories are useful to indicate: This much % of time was spent in this category.

The EVENTS category isn't a very good match for this. This category is currently
only set on labels of functions that handle the processing of an event. But
those functions are usually closer to the base of the stack, and the actual CPU
work during the processing of an event is usually in another category closer to
the top of the stack, e.g. in JS if we're running an event handler, or in LAYOUT
if we're hit testing the position of the event.

This changeset removes the EVENTS category and replaces all uses of it with the
OTHER category.

MozReview-Commit-ID: JPm5hQiBkvp
2018-05-18 17:36:30 -04:00
Peter Van der Beken
317400d75b Bug 1448850 - Remove nsIMessageListener and nsIMessageListenerManager. r=bz. 2018-02-16 15:28:31 +01:00
Peter Van der Beken
a01d8c7c3b Bug 888600 - Move ContentFrameMessageManager to WebIDL. Part 3: Add message manager concrete classes for WebIDL. r=bz. 2017-06-14 16:44:17 +02:00
Sebastian Hengst
500c4f7ad2 Backed out 6 changesets (bug 888600) for beta simulation failures: build bustage on Linux and Windows opt (bug 1442036) and devtools failure browser_net_view-source-debugger.js (bug 1441961). a=backout
Backed out changeset 83c87140dc3d (bug 888600)
Backed out changeset 2efb9b1753f6 (bug 888600)
Backed out changeset af5303781961 (bug 888600)
Backed out changeset 79ef59047e63 (bug 888600)
Backed out changeset 30d568d628dd (bug 888600)
Backed out changeset c7bd4c6c9741 (bug 888600)
2018-03-01 11:51:09 +02:00
Peter Van der Beken
2d21a2c039 Bug 888600 - Move ContentFrameMessageManager to WebIDL. Part 3: Add message manager concrete classes for WebIDL. r=bz. 2017-06-14 16:44:17 +02:00
Nicholas Nethercote
e7cd5cec20 Bug 1405541 (attempt 2) - Split AUTO_PROFILER_LABEL_DYNAMIC into three macros. r=mstange.
It's easy to mess up the scoping so that (a) the label is pushed and then
immediately popped, and/or (b) the string doesn't live long enough. It's also
easy to do a utf16-to-utf8 conversion unnecessarily when the profiler is
inactive. This patch splits that macro into three new ones that are harder to
mess up.

- AUTO_PROFILER_LABEL_DYNAMIC_CSTR: same as current.
- AUTO_PROFILER_LABEL_DYNAMIC_NSCSTRING: for nsCStrings.
- AUTO_PROFILER_LABEL_DYNAMIC_LOSSY_NSSTRING: for nsStrings.
2017-10-13 16:12:57 +11:00
Stone Shih
419a19e980 Bug 1351148 Part2: Add a priority queue for input events. r=smaug.
MozReview-Commit-ID: 5ud1Ex9UNVo
2017-03-21 15:44:12 +08:00
Stone Shih
cb61054c6c Backed out changeset 46d8f42863af (bug 1351148) 2017-08-11 15:19:44 +08:00
Stone Shih
9477e7b2db Bug 1351148 Part2: Add a priority queue for input events. r=smaug.
MozReview-Commit-ID: 5ud1Ex9UNVo
2017-03-21 15:44:12 +08:00
Carsten "Tomcat" Book
26135cd76d Backed out changeset 284af26c1b53 (bug 1351148) 2017-07-28 09:20:27 +02:00
Stone Shih
e0dd0293e8 Bug 1351148 Part2: Add a priority queue for input events. r=smaug.
MozReview-Commit-ID: 5ud1Ex9UNVo
2017-03-21 15:44:12 +08:00
Nicholas Nethercote
a58025002f Bug 1375392 - Tweak the PROFILER_LABEL* macros. r=mstange.
This patch makes the following changes to the macros.

- Removes PROFILER_LABEL_FUNC. It's only suitable for use in functions outside
  classes, due to PROFILER_FUNCTION_NAME not getting class names, and it was
  mostly misused.

- Removes PROFILER_FUNCTION_NAME. It's no longer used, and __func__ is
  universally available now anyway.

- Combines the first two string literal arguments of PROFILER_LABEL and
  PROFILER_LABEL_DYNAMIC into a single argument. There was no good reason for
  them to be separate, and it forced a '::' in the label, which isn't always
  appropriate. Also, the meaning of the "name_space" argument was interpreted
  in an interesting variety of ways.

- Adds an "AUTO_" prefix to PROFILER_LABEL and PROFILER_LABEL_DYNAMIC, to make
  it clearer they construct RAII objects rather than just being function calls.
  (I myself have screwed up the scoping because of this in the past.)

- Fills in the 'js::ProfileEntry::Category::' qualifier within the macro, so
  the caller doesn't need to. This makes a *lot* more of the uses fit onto a
  single line.

The patch also makes the following changes to the macro uses (beyond those
required by the changes described above).

- Fixes a bunch of labels that had gotten out of sync with the name of the
  class and/or function that encloses them.

- Removes a useless PROFILER_LABEL use within a trivial scope in
  EventStateManager::DispatchMouseOrPointerEvent(). It clearly wasn't serving
  any useful purpose. It also serves as extra evidence that the AUTO_ prefix is
  a good idea.

- Tweaks DecodePool::SyncRunIf{Preferred,Possible} so that the labelling is
  done within them, instead of at their callsites, because that's a more
  standard way of doing things.
2017-06-22 17:08:53 +10:00
Peter Van der Beken
1213b125a5 Bug 1363323 - Add TabGroup support to PContentBridge too. r=billm. 2017-05-02 11:57:51 +02:00
Andrea Marchesini
1741913b1f Bug 1359718 - Get rid of PBlob - part 2 - PBlob, r=smaug, r=kanru 2017-05-23 18:05:19 +02:00
Andrea Marchesini
57cf4d9170 Bug 1359718 - Get rid of PBlob - part 0 - remove PMemoryStream, r=smaug 2017-05-23 18:00:30 +02:00
Sebastian Hengst
4ba0849b10 Backed out changeset 3ac94ff745fc (bug 1359718) for bustage in IPCBlobInputStreamChild.cpp. r=backout on a CLOSED TREE 2017-05-23 19:13:14 +02:00
Sebastian Hengst
ca7e47ba22 Backed out changeset c3251f5022dd (bug 1359718) 2017-05-23 19:12:25 +02:00
Andrea Marchesini
1562ff375d Bug 1359718 - Get rid of PBlob - part 2 - PBlob, r=smaug, r=kanru 2017-05-23 18:05:19 +02:00
Andrea Marchesini
25412afb69 Bug 1359718 - Get rid of PBlob - part 0 - remove PMemoryStream, r=smaug 2017-05-23 18:00:30 +02:00
Sebastian Hengst
0fc705eda3 Backed out changeset c92612ac17d3 (bug 1359718) for bustage in IPCBlobInputStreamChild.cpp. r=backout on a CLOSED TREE 2017-05-23 18:35:24 +02:00
Sebastian Hengst
3496844ce8 Backed out changeset 537abc431472 (bug 1359718) 2017-05-23 18:34:40 +02:00
Andrea Marchesini
506bb525b7 Bug 1359718 - Get rid of PBlob - part 2 - PBlob, r=smaug, r=kanru 2017-05-23 18:05:19 +02:00
Andrea Marchesini
4d502282e5 Bug 1359718 - Get rid of PBlob - part 0 - remove PMemoryStream, r=smaug 2017-05-23 18:00:30 +02:00
Andrea Marchesini
b87a2a73d2 Bug 1353629 - PBlob refactoring - part 4 - IPCBlobInputStream, r=smaug
IPCBlobInputStream is a new type of nsIInputStream that is used only in content
process when a Blob is sent from parent to child. This inputStream is for now,
just cloneable.

When the parent process sends a Blob to a content process, it has the Blob and
its inputStream. With its inputStream it creates a IPCBlobInputStreamParent
actor. This actor keeps the inputStream alive for following uses (not part of
this patch).

On the child side we will have, of course, a IPCBlobInputStreamChild actor.
This actor is able to create a IPCBlobInputStream when CreateStream() is
called.  This means that 1 IPCBlobInputStreamChild can manage multiple
IPCBlobInputStreams each time one of them is cloned. When the last one of this
stream is released, the child actor sends a __delete__ request to the parent
side; the parent will be deleted, and the original inputStream, on the parent
side, will be released as well.

IPCBlobInputStream is a special inputStream because each method, except for
Available() fails. Basically, this inputStream cannot be used on the content
process for nothing else than knowing the size of the original stream.

In the following patches, I'll introduce an async way to use it.
2017-04-24 12:09:40 +02:00
Bill McCloskey
a65d2f94ad Bug 1354249 - Use same TabGroup as original tab for print preview (r=mystor)
MozReview-Commit-ID: 5wmjLgq2j5m
2017-04-12 20:17:50 -07:00
Markus Stange
6b5d0cba27 Bug 1348426 - Add profiler labels to RecvSync/Async/RpcMessage that include the message name. r=billm
MozReview-Commit-ID: F7MZhgV12DZ
2017-03-29 17:43:21 -04:00
Andrea Marchesini
4bb8d9c667 Bug 1340921 - Introduce PMemoryStream for having PBlob and Multi-e10s happy - part 2 - PMemoryStream actor, r=mrbkap 2017-03-29 10:40:38 +02:00
Andrea Marchesini
30bbbae2fc Bug 1274343 - Add parent-to-child pipe streaming to IPCStream - part 2 - PParentToChild, r=smuag 2017-03-14 12:29:43 +01:00
Andrea Marchesini
a8870babfb Bug 1274343 - Add parent-to-child pipe streaming to IPCStream - part 1 - renaming PSendStream to PChildToParentStream, r=smaug 2017-03-14 12:28:58 +01:00
Andrew McCreight
f3f21b71cd Bug 1331743 - Create CrossProcessCpowHolder even if there is no message manager. r=smaug
MozReview-Commit-ID: AtRfKQCHofe
2017-01-17 11:00:38 -08:00
Bill McCloskey
7c9badef0f Bug 1318506 - Initialize TabChild in constructor message, not allocation (r=dvander)
MozReview-Commit-ID: Iq1M4EeKHXg
2016-12-23 11:48:13 -08:00
Ehsan Akhgari
917a5e63fc Bug 1310845 - Remove support for mozapp iframes; r=fabrice,jryans,baku,mcmanus
This patch removes support for mozapp iframes, leaving support for
mozbrowser iframes intact.  Some of the code has been rewritten in order
to phrase things in terms of mozbrowser only, as opposed to mozbrowser
or app.  In some places, code that was only useful with apps has been
completely removed, so that the APIs consumed can also be removed.  In
some places where the notion of appId was bleeding out of this API, now
we use NO_APP_ID.  Other notions of appId which were restricted to this
API have been removed.
2016-11-16 09:13:38 -05:00
Kan-Ru Chen
1b9dd22e2d Bug 1314254 - Add mozilla::ipc::IPCResult type and convert IPDL handlers to use new return type. r=billm
We will use the new type for the generated IPDL message handler
prototype to make sure correct error handling method is called.

MozReview-Commit-ID: AzVbApxFGZ0
2016-11-15 04:26:00 +01:00
Andrea Marchesini
2eeaed3a38 Bug 1288997 - memory blob should not be shared across processes - part 1 -PSendStream should use nsIContentChild, r=jld, f=bkelly 2016-09-21 12:27:26 +02:00
Jan de Mooij
519f0d4bf1 Bug 1292892 part 7 - Remove unnecessary JSContext arguments from IPC classes. r=bz 2016-08-11 14:39:23 +02:00
Jan de Mooij
bd0f1c9018 Bug 1292892 part 1 - Stop using JSRuntime outside SpiderMonkey. r=bz,terrence,fitzgen,kanru 2016-08-11 14:39:22 +02:00
Andrew McCreight
ace7c88d0c Bug 1263235, part 2 - Make PContent::AsyncMessage and PContentBridge::AsyncMessage's data argument last. r=smaug 2016-04-09 06:50:59 -07: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
Andrea Marchesini
8cbd09f629 Bug 1203426 - Rename StructuredCloneIPCHelper to StructuredCloneData, r=smaug 2015-09-10 21:50:58 +01:00
Andrea Marchesini
a2c814e845 Bug 1198795 - ipc/StructuredCloneUtils should be merged with StructuredCloneHelper, r=smaug 2015-09-02 17:20:30 +01:00
Birunthan Mohanathas
a29151dc87 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
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
Andrea Marchesini
41c29ad762 Bug 1163387 - Rename FileImpl to BlobImpl, r=ehsan 2015-05-12 13:11:03 +01:00
Andrea Marchesini
a8f15ce969 Bug 1159401 - Split Blob and File classes, r=bz 2015-05-12 13:09:51 +01:00
Wes Kocher
040b8fe0e4 Backed out 2 changesets (bug 1159401) for b2g build bustage
Backed out changeset adfee1efb1e1 (bug 1159401)
Backed out changeset 70c63c8546e3 (bug 1159401)
2015-05-11 14:54:02 -07:00
Wes Kocher
81e9cbedba Backed out changeset 56e4c68dc3da (bug 1163387) for build bustage CLOSED TREE 2015-05-11 13:17:58 -07:00