Closed Bug 1123754 Opened 5 years ago Closed 2 years ago

Move ProfilerMarker class declaration / definition to easily-findable places

Categories

(Core :: Gecko Profiler, defect)

defect
Not set

Tracking

()

RESOLVED FIXED
mozilla55
Tracking Status
firefox55 --- fixed

People

(Reporter: mstange, Assigned: njn)

References

Details

Attachments

(2 files)

The definitions of the ProfilerMarker methods are located in platform.cpp.
Guess which file contains the class declaration: platform.h, ProfilerMarkers.h or PseudoStack.h?
Because ProfilerMarkerPayload is the main type defined in these files, and
because the next patch is going to introduce ProfilerMarker.{h,cpp}, which
would be confusingly similar to the old names.
Attachment #8861714 - Flags: review?(mstange)
Assignee: nobody → n.nethercote
Status: NEW → ASSIGNED
ProfilerMarker is simple enough that it's best to fully define it in
ProfilerMarker.h, without introducing a ProfilerMarker.cpp.

This requires moving STORE_SEQUENCER() into its own header, StoreSequencer.h.

As a result, the following types are no longer visible outside the profiler:
ProfilerMarker, ProfilerLinkedList, ProfilerMarkerLinkedList,
ProfilerSignalSafeLinkedList. (PseudoStack.h now contains the PseudoStack class
and nothing else.)

The patch also makes the following non-obvious changes.

- It changes ProfilerMarker::{mMarkerName,mPayload} to unique pointers, which
  removes the need for an explicit ~ProfilerMarker().

- It removes ProfilerMarker::GetMarkerName(), because that method is only used
  within ProfilerMarker itself.
Attachment #8861715 - Flags: review?(mstange)
Depends on: 1359000
Attachment #8861714 - Flags: review?(mstange) → review+
Attachment #8861715 - Flags: review?(mstange) → review+
https://hg.mozilla.org/integration/mozilla-inbound/rev/32f4e2a4874cbab57513d349b67b47f18a9bd5bd
Bug 1123754 (part 1) - Rename ProfilerMarkers.{h,cpp} as ProfilerMarkerPayload.{h,cpp}. r=mstange.

https://hg.mozilla.org/integration/mozilla-inbound/rev/aa3cd4933f88b86f893d58b684b2454ef273f140
Bug 1123754 (part 2) - Move ProfilerMarker into ProfilerMarker.h. r=mstange.
https://hg.mozilla.org/mozilla-central/rev/32f4e2a4874c
https://hg.mozilla.org/mozilla-central/rev/aa3cd4933f88
Status: ASSIGNED → RESOLVED
Closed: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla55
You need to log in before you can comment on or make changes to this bug.