Closed Bug 1113837 Opened 10 years ago Closed 10 years ago

Build display-list dumping without MOZ_DUMP_PAINTING

Categories

(Core :: Layout, defect)

x86
macOS
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla37

People

(Reporter: BenWa, Assigned: BenWa)

References

Details

Attachments

(2 files, 5 obsolete files)

Attached patch patch (obsolete) (deleted) — Splinter Review
The display-list dump is now a central feature for graphics debugging and will now be used by the profiler to visualize painting. We should make this available by default.
Attachment #8539515 - Flags: review?(mstange)
Comment on attachment 8539515 [details] [diff] [review] patch Review of attachment 8539515 [details] [diff] [review]: ----------------------------------------------------------------- What's the reason for the gfxUtils.cpp change? I think checking an env variable just once on startup should be fine, performance-wise.
Attachment #8539515 - Flags: review?(mstange) → review+
I didn’t want to check an env variable for something that would never get used
Attached patch patch v2 (obsolete) (deleted) — Splinter Review
Forgot to remove the #ifdef for nsDisplayGeneric::mName.
Assignee: nobody → bgirard
Attachment #8539515 - Attachment is obsolete: true
Status: NEW → ASSIGNED
Attachment #8539520 - Flags: review+
Attached patch patch v3 (obsolete) (deleted) — Splinter Review
does what I said in v2 but properly this time.
Attachment #8539520 - Attachment is obsolete: true
Attachment #8539543 - Flags: review+
Attached patch patch v4 (obsolete) (deleted) — Splinter Review
minor tweaks
Attachment #8539543 - Attachment is obsolete: true
Attachment #8539584 - Flags: review+
Attached patch patch v5 (obsolete) (deleted) — Splinter Review
Attachment #8539584 - Attachment is obsolete: true
Attachment #8539586 - Flags: review+
Attached file Valgrind malloc / delete mismatch (deleted) —
UniqueSelector calls operator new whichs gets translated to valgrind's memcheck malloc, but the UniquePtr reset() calls memchecks operator delete. Could this be a bug in either memcheck or our memory shim? Outwardly we're calling both opeator new / operator delete.
Flags: needinfo?(jseward)
(In reply to Benoit Girard (:BenWa) from comment #8) > Could this be a bug in either memcheck or our memory shim? Outwardly we're > calling both opeator new / operator delete. The Gecko code is fine; you can safely ignore this. FWIW it happens because |operator new| is inlined into its caller |detail::UniqueSelector| ==47856== by 0x7625757: moz_xmalloc (mozalloc.cpp:52) ==47856== by 0x9807C96: operator new (mozalloc.h:210) ==47856== by 0x9807C96: mozilla::detail::UniqueSelector<std::basic_st[..] whereas |operator delete| isn't ==47856== at 0x4C2827E: operator delete(void*) (in /usr/lib64/valgrin[..] ==47856== by 0x54F5D6C: std::basic_stringstream<char, std::char_trait[..] so Memcheck can intercept calls to |delete| but there's no call to |new| to intercept; instead it intercepts only the |malloc| called by |new|. For now you can run with --show-mismatched-frees=no. Alternatively try building Fx with -O2, since I suspect that increases the inlining aggressiveness and causes both |new| and |delete| to get inlined, removing the asymmetry.
Flags: needinfo?(jseward)
Attached patch patch v6 (deleted) — Splinter Review
Attachment #8539586 - Attachment is obsolete: true
Attachment #8543043 - Flags: review+
Status: ASSIGNED → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla37
Depends on: 1117817
No longer depends on: 1117817
Blocks: 1462177
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: