Using the wptrun infrastructure from upstream, it is now posible to
make it easy to run web-platform-tests in other browsers. The syntax
used is
mach wpt --product [chrome|servo|edge] [tests]
This will try to use the selected product; possibly prompting to
install dependencies like the WebDriver implementation. For servo if
the install isn't on the PATH then --binary can be used to point to
the actual location.
Because manifest metadata is kept in the same directory as expectation
data and we don't want to reuse Firefox expectation data for other
browsers, a new products subdirectory is introduced and added to the
ignore files. This will contain a subdirectory for each product into
which a copy of the test manifest is placed. It may also be used to
store any expectation data for the other products, in the same way as
testing/web-platform/meta.
MozReview-Commit-ID: 8fdCnha5t2F
Using the wptrun infrastructure from upstream, it is now posible to
make it easy to run web-platform-tests in other browsers. The syntax
used is
mach wpt --product [chrome|servo|edge] [tests]
This will try to use the selected product; possibly prompting to
install dependencies like the WebDriver implementation. For servo if
the install isn't on the PATH then --binary can be used to point to
the actual location.
Because manifest metadata is kept in the same directory as expectation
data and we don't want to reuse Firefox expectation data for other
browsers, a new products subdirectory is introduced and added to the
ignore files. This will contain a subdirectory for each product into
which a copy of the test manifest is placed. It may also be used to
store any expectation data for the other products, in the same way as
testing/web-platform/meta.
MozReview-Commit-ID: 8fdCnha5t2F
The functions are profiler_is_active(), profiler_feature_active(),
profiler_tracing(), profiler_log(), profiler_add_marker().
This is achieved by adding RacyFeatures, which duplicates the features stored
in ActivePS in a way that can be accessed locklessly. There's a chance of
imprecision, but that doesn't matter for the way these functions are used; the
worst that can happen is we might very occasionally miss adding a marker, or
add one that we shouldn't.
--HG--
extra : rebase_source : 278ebad8d643670e3f2e92c8eeec13b19f94b8ce
It's immutable. This also means that profiler_time() is now lockless, though
that's a very rarely used function so it's not a performance win.
--HG--
extra : rebase_source : ea9da62185a99336f518995d20f4b79201f30c10
The profiler is inconsistent about how it names some things, mostly parameters.
This patch fixes them as follows.
- A marker's identifier is now consistently |aMarkerName| (matching
ProfilerMarker::mMarkerName), not |aMarker| or |aMarkerStr| or |aInfo|.
- Subclasses of ProfilerMarkerPayload are now consistently |payload|, not
|marker|.
- The first string in a PseudoStack entry is now consistently |aLabel|
(matching ProfileEntry::label_), not |aInfo|.
--HG--
extra : rebase_source : 1da61506c98bae44ff759d514d61724a07a51126