Commit Graph

737 Commits

Author SHA1 Message Date
Ehsan Akhgari
ace3558298 Bug 738302 - Avoid building the libunwind docs so that b2g can be built again; r=BenWa 2012-03-22 17:39:00 -04:00
Matt Brubeck
8fb1f2f223 Back out c61855cb4558 (bug 734302) because of build failure on Android
--HG--
rename : mobile/android/base/resources/menu-v11/gecko_menu.xml.in => mobile/android/base/resources/menu-v11/gecko_menu.xml
rename : mobile/android/base/resources/menu/gecko_menu.xml.in => mobile/android/base/resources/menu/gecko_menu.xml
2012-03-21 16:26:38 -07:00
Serge Gautherie
29bbc8c329 Bug 712552. (Av1) Remove MSVC6 support from trace-malloc. r=dbaron.
DONTBUILD (comment-only).
2012-03-23 02:58:24 +01:00
Ehsan Akhgari
12cffcd90e Bug 734302 - Part 3: Add a menu item for toggling the profiler on mobile; r=BenWa,dougt
--HG--
rename : mobile/android/base/resources/menu-v11/gecko_menu.xml => mobile/android/base/resources/menu-v11/gecko_menu.xml.in
rename : mobile/android/base/resources/menu/gecko_menu.xml => mobile/android/base/resources/menu/gecko_menu.xml.in
extra : rebase_source : 9a4499ff99d661924e1eb09280925ad123ecd948
2012-03-16 14:08:03 -04:00
Ehsan Akhgari
05b9929ddd Bug 734302 - Part 2: Import the source code of libunwind
--HG--
extra : rebase_source : 2c2343ed6300b8265285179d24f9a4b0c16fc977
2012-03-09 12:42:25 -05:00
Ehsan Akhgari
5fc5ba4b3e Bug 734302 - Part 1: Enable the Gecko Profiler on native Fennec; r=BenWa,khuey
--HG--
extra : rebase_source : 050443e4850aac78551ed985aa81522d808bcb6b
2012-03-02 14:11:47 -05:00
Jacek Caban
e357951839 Bug 737667 - GCC build warning: sps_sampler.h: In member function ?void ProfileStack::push(const char*)?: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] (also in addMarker) r=ehsan
--HG--
extra : rebase_source : bdd6093ee36e25fb33b59873be6c1c0068574869
2012-03-21 17:06:01 +01:00
Vladan Djeric
9343cd86e7 Bug 735829. Report PDB filename in chrome hang reports. r=ehsan 2012-03-19 19:05:25 -04:00
Jacek Caban
7489f3e972 Bug 735191 - shared-libraries-win32.cc fails to crosscompile on case-sensitive OSes r=ehsan 2012-03-15 13:44:02 +01:00
Ehsan Akhgari
63c588b612 Bug 735861 - Make shared-libraries.h not build on platforms where Gecko Profiler is not supported; r=BenWa 2012-03-14 22:58:18 -04:00
Mike Hommey
5ce73a5df8 Bug 734335 - Only build SPS on supported platforms. r=bgirard,r=khuey 2012-03-13 09:48:00 +01:00
Benoit Girard
43fd935584 Bug 734691 - Change profiler output format to support threads. r=mstange 2012-03-12 10:58:40 -04:00
Benoit Girard
083016c39d Bug 734691 - Move Stack to ThreadProfile since it's thread specific. r=mstange 2012-03-12 10:58:37 -04:00
Benoit Girard
187dd54d32 Bug 734691 - Rename Stack/Profile to imply their thread specific. r=mstange 2012-03-12 10:58:33 -04:00
Benoit Girard
31a7bb0e5d Bug 732806 - Fix profiling stack end detection. r=jmuizelaar 2012-03-12 10:57:36 -04:00
Benoit Girard
21ea909e1a Bug 734707 - Fix Jank profiling feature side effects. r=jmuizelaar 2012-03-12 10:56:33 -04:00
Vladan Djeric
31d77b0c5e Bug 712109 - Implement chrome hang reporting on profiling branch. r=ehsan 2012-03-12 07:07:05 -04:00
Benoit Girard
d2d06bae65 Backout changeset a76566398d36 2012-03-11 12:03:45 -04:00
Benoit Girard
28264c98df Backed out changeset 5f5fc6a1133e 2012-03-11 12:03:05 -04:00
Benoit Girard
7e45a83a39 Bug 734691 - Part 2: Move Stack to ThreadProfile since it's thread specific. r=mstange 2012-03-10 23:09:10 -05:00
Benoit Girard
4bdad762cf Bug 734691 - Part 1: Rename Stack/Profile to imply their thread specific. r=mstange 2012-03-10 23:08:11 -05:00
Jeff Muizelaar
38361289f8 Bug 726369 - Profiler: Make the circular buffer reader code safer. r=BenWa 2012-02-11 18:56:18 -05:00
Jeff Muizelaar
71f2b82d61 Bug 723711. Return the profile data as JS objects. r=bgirard 2012-02-02 16:57:20 -05:00
Jeff Muizelaar
790c1d148c Backout c433e993506b 2012-03-09 11:21:43 -05:00
Jeff Muizelaar
52ab95122e Bug 723711. Return the profile data as JS objects. r=bgirard 2012-02-02 16:57:20 -05:00
Jeff Muizelaar
06af852226 Bug 732806. Make stackwalking respect the stack end on OS X. r=ehsan
This will help us avoid some crashes.
2012-02-15 00:17:34 -05:00
Markus Stange
5faf7e80be Bug 733792 - Leave original symbol addresses in the profile report. r=bgirard 2012-03-09 16:20:03 +01:00
Markus Stange
be4a8eaafd Bug 733792 - Add nsIProfiler::getSharedLibraryInformation. r=bgirard 2012-03-09 16:20:00 +01:00
Justin Lebar
62dbeeb1ab Bug 731789 - Rename mfbt/StdInt.h to mfbt/StandardInteger.h, so stdint types work from cpp files inside mfbt. r=waldo 2012-02-29 22:56:43 -05:00
Benoit Girard
9af1e3b547 Bug 708733 - Profiler: Only use leaf data on android ARM. r=ehsan 2012-02-11 10:49:16 -05:00
Benoit Girard
a535cc0329 Bug 730302 - Fix GetMarker code in Table::Tick. r=mstange 2012-02-24 11:51:13 -05:00
Jeff Muizelaar
a782835cb2 Bug 724079. Add back the mac backend. r=ehsan
This should improve latency and perhaps fix the crashes
we're seeing in bug 721025.
2012-02-03 15:19:18 -05:00
Benoit Girard
be2a314e45 Bug 722124 - Profiler cleanup. r=ehsan
--HG--
rename : tools/profiler/sps/TableTicker.cpp => tools/profiler/TableTicker.cpp
rename : tools/profiler/public/nsIProfiler.idl => tools/profiler/nsIProfiler.idl
rename : tools/profiler/sps/platform-linux.cc => tools/profiler/platform-linux.cc
rename : tools/profiler/sps/platform-win32.cc => tools/profiler/platform-win32.cc
rename : tools/profiler/sps/platform.h => tools/profiler/platform.h
rename : tools/profiler/sps/shared-libraries-linux.cc => tools/profiler/shared-libraries-linux.cc
rename : tools/profiler/sps/shared-libraries-macos.cc => tools/profiler/shared-libraries-macos.cc
rename : tools/profiler/sps/shared-libraries-win32.cc => tools/profiler/shared-libraries-win32.cc
rename : tools/profiler/sps/shared-libraries.h => tools/profiler/shared-libraries.h
rename : tools/profiler/sps/sps_sampler.h => tools/profiler/sps_sampler.h
rename : tools/profiler/sps/thread_helper.h => tools/profiler/thread_helper.h
rename : tools/profiler/sps/v8-support.h => tools/profiler/v8-support.h
2012-01-29 01:56:41 -05:00
Ehsan Akhgari
513b889520 Bug 721780 - Rename XRE_Main to something more useful; r=BenWa 2012-01-31 10:10:05 -05:00
Ehsan Akhgari
0222be76c4 Bug 721564 - Get module information for the profiler on Windows; r=BenWa 2012-01-26 19:03:42 -05:00
Jeff Muizelaar
223038ca63 Bug 719917. Add some more network and plugin related SAMPLE_LABELs. r=bgirard
--HG--
extra : rebase_source : d21f4ffb244ae661e1ca222c02a8fa8b40a071bd
2012-01-18 19:53:35 -05:00
Daniel Holbert
24d33794fd Bug 719698: Mark functions in thread_helper.h as 'inline' instead of 'static' to fix build warning when they go unused. r=ehsan 2012-01-20 14:43:12 -08:00
Jeff Muizelaar
56d89518ed Bug 719176. Add the ability to maintain a temporary buffer of samples. r=ehsan
This lets us make the decision about whether to discard samples later
than when we record them which is important for about:jank.
2012-01-18 18:07:46 -05:00
Matt Brubeck
897e5d3f77 Merge last green changeset from inbound to mozilla-central 2012-01-19 10:37:48 -08:00
Tim Taubert
d2339616cf merge m-c to fx-team 2012-01-19 12:10:03 +01:00
Robert Strong
9e2977f169 RelEng patch - Bug 660038 - Remove channel switching support. r=nthomas 2012-01-18 14:10:25 -08:00
Randell Jesup
460f47911e Bug 712224: Make jprof generate output for 'cleopatra' backend. rs=dbaron DONTBUILD 2012-01-18 00:11:00 -05:00
Jeff Muizelaar
a47ca866d2 Bug 718440. Add more sampler labels to various places. r=bgirard
This shows the problems described in bug 710068.
2012-01-17 15:33:04 -05:00
Jeff Muizelaar
0ede9f8a33 Bug 719273. Avoid including windows header files into sampler.h. r=ehsan
The windows headers do inconvenient things like:
#define CreateEvent CreateEventW

We'd like to avoid this.
2012-01-19 00:43:03 -05:00
Matt Brubeck
b79b1e58d3 Back out 88733ce1bef3 (bug 718440) because of Windows build failure 2012-01-17 15:15:47 -08:00
Jeff Muizelaar
315982723f Bug 718440. Add more sampler labels to various places. r=bgirard
This shows the problems described in bug 710068.
2012-01-17 15:33:04 -05:00
Benoit Girard
fea80077db Bug 719239 - Gecko Profiler: Stackwalk feature isn't reported properly. r=ehsan 2012-01-18 17:50:30 -05:00
Ehsan Akhgari
363f143957 Bug 718681 - Correct the preprocessor condition in mozilla_sampler_get_features; r=BenWa 2012-01-17 11:49:40 -05:00
Ehsan Akhgari
44d37bd2b2 Bug 718026 - Only walk the stack on profiling builds; r=jrmuizel 2012-01-17 11:49:05 -05:00
Ehsan Akhgari
9e5672bb2c Bug 718025 - Add support for stacktraces on Windows to the built-in profiler; r=jrmuizel 2012-01-16 19:59:15 -05:00
Phil Ringnalda
77c78dd19f Back out 2273e0264d4a (bug 718025) for Windows build failure 2012-01-16 18:24:18 -08:00
Ehsan Akhgari
c625f6071d Bug 718025 - Add support for stacktraces on Windows to the built-in profiler; r=jrmuizel 2012-01-16 19:59:15 -05:00
Benoit Girard
fe67fd21f8 Bug 717059 - Fix nsProfiler::GetFeatures() to handle zero length and remove warning. r=jmuizelaar 2012-01-14 10:59:09 -05:00
Jeff Muizelaar
53360cb95c Bug 717698. Add about:jank infrastructure. r=ehsan
Adds a profiling mode that only records samples when we
haven't spun the event loop
2011-12-20 15:13:52 -05:00
Landry Breuil
06a1a6d49a Bug 717769 - Include sps_sampler.h if __linux__, not XP_UNIX. r=bgirard 2012-01-14 15:32:53 -05:00
Benoit Girard
e1d3ab2e58 Bug 717059 - Bustage fix for android. r=bustage 2012-01-12 20:36:55 -05:00
Benoit Girard
e18aae56bf Bug 717059 - Profiler: add 'stackwalk' optional feature for Mac/Linux on profiling builds. r=ehsan 2012-01-10 18:02:00 -05:00
Benoit Girard
9808c149e8 Bug 717769 - Fix Built-in Profiler on Linux r=ehsan 2012-01-12 17:41:58 -05:00
Benoit Girard
a9cd912141 Bug 717059. Add suppport for optional features. r=ehsan
This will let us detect situations where we have different features in the profiler
and choose to use them.
2012-01-12 13:33:32 -05:00
Benoit Girard
d00291eca5 Bug 717059. Use double ms instead of float so that the types match. r=ehsan 2012-01-12 11:50:43 -05:00
Benoit Girard
b7ece3727e Bug 715618 - SharedLibrary operator= doesn't handle self assignment properly. r=matspal 2012-01-05 18:11:29 -05:00
Jeff Muizelaar
6761075807 Bug 711491. Add in conditional backtrace support. r=bgirard
This still needs work to be togglable at runtime and
is at best a work in progress.

--HG--
extra : rebase_source : 59f17aae034799065f5227d68693f4a5c5de3e1a
2011-12-19 20:33:00 -05:00
Jeff Muizelaar
050c43af5f Bug 711491. Remove WriteTag. r=bgirard
Just use .TagToString() and fwrite that instead
of having a separate function.

--HG--
extra : rebase_source : 410d052883778de3db85d4573707b040760376ca
2011-12-16 09:12:46 -05:00
Jeff Muizelaar
111ea9e6d3 Bug 711491. Switch profile export to StringBuilder.
This should help performance some.

--HG--
extra : rebase_source : 53aa5b61e95745475283940dd8cd053c84d2bd74
2011-12-16 09:03:54 -05:00
Jeff Muizelaar
3e2715c052 Bug 711491. Decide whether to get shared library info at runtime r=bgirard
Now that we have implementations of SharedLibraryInfo for
all platforms we don't need to build support for it conditionally.

--HG--
extra : rebase_source : d40cf1b0b28fab3ef31ab4511fc1ddda98a37a38
2011-12-16 11:54:22 -05:00
Jeff Muizelaar
75786a4eea Bug 711491. Rough out SharedLibraryInfo for win32. r=bgirard
--HG--
extra : rebase_source : 17e182c652d3eab2d083b98a9d0f5f04fc344a87
2011-12-16 10:56:06 -05:00
Jeff Muizelaar
6971c66ca3 Bug 711491. Implement SharedLibraryInfo on OS X. r=bgirard
This is based on a patch from bug 698002.

--HG--
extra : rebase_source : ccaf8849e3b8f88bb86e895cf3a22ea289a5e94d
2011-12-15 06:56:52 -05:00
Jeff Muizelaar
cb136669f0 Bug 711491. Refactor MapInfo. r=bgirard
Moves MapInfo out of platform and renames it to SharedLibrary. There will
eventually be an implementation for all major platforms.

--HG--
extra : rebase_source : c7eae4bc0f0e27f2801c4e639d7dc82b47465f0b
2011-12-15 07:31:41 -05:00
Jeff Muizelaar
7643f1ffb2 Bug 711491. Add a proper = operator to MapEntry. r=bgirard
This fixes us a bug where we weren't copying the data
properly.

--HG--
extra : rebase_source : a0331cf5d5b61c355447832119a6f7876922e190
2011-12-15 06:58:00 -05:00
Jeff Muizelaar
f415c3ad2b Bug 711491. Port the linux backend to OS X. r=bgirard
This will let us use the signal based approach used
on linux on OS X. This is helpful because backtrace()
only works on the current thread.

--HG--
extra : rebase_source : 68e39af6025e5ba12f64708c453d6be3bb9f7a70
2011-12-08 17:35:36 -05:00
Ehsan Akhgari
c62bdde145 Bug 713278 - Teach NS_StackWalk to walk the stack of other threads too on Windows; r=dbaron 2011-12-23 18:14:09 -05:00
Jacek Caban
fefcd2a951 Bug 712254 - Use StdInt.h in platform.h r=BenWa
--HG--
extra : rebase_source : 5f5fcf8fff315097638829d95594e347052955ed
2011-12-23 13:21:35 +01:00
Ehsan Akhgari
d2ff02e5f0 Bug 713232 - Fix the hang in the built-in profiler on Windows; r=BenWa 2011-12-24 12:11:26 -05:00
Jeff Walden
2cc32b18f2 Bug 711799 - Fix a few implicit-declaration warnings in trace-malloc. r=dbaron
--HG--
extra : rebase_source : 16fe9eb68d2db1488d89af4001e7d316cb110330
2011-12-17 22:56:55 -05:00
Matt Brubeck
efc97fe9ac Back out bcf9ce858829 and a3bade82ac92 (bug 711799) for build failures 2011-12-19 10:43:08 -08:00
Jeff Walden
0c04766c32 Bug 711799 - Fix a few implicit-declaration warnings in trace-malloc. r=dbaron
--HG--
extra : rebase_source : 67dc7295b8a2022e02f892f7eac74414e61b1c86
2011-12-17 22:56:55 -05:00
Jacek Caban
2c13f6f68a Bug 711381 - v8-support.h fails to compile on mingw r=felipc 2011-12-19 14:05:54 +01:00
Jeff Walden
279c3635c0 Bug 711799 - Fix a bunch of unused-variable warnings. r=dholbert
--HG--
extra : rebase_source : 91fc77dca316018652d4d99f6d4cc8d0f7195e6e
2011-12-18 01:00:42 -05:00
Benoit Girard
b5208d174f Bug 707185 - Programmatic control for eventtracer. r=ted.mielczarek 2011-12-04 20:53:17 -05:00
Jeff Walden
476c7d19c5 Bug 708735 - Use <stdint.h> types in JSAPI and throughout SpiderMonkey. Continue to provide the {u,}int{8,16,32,64} and JS{Uint,Int}{8,16,32,64} integer types through a single header, however, for a simpler backout strategy -- and also to ease the transition for embedders. r=timeless on switching the jsd API to use the <stdint.h> types, r=luke, r=dmandelin 2011-12-08 22:54:10 -05:00
Gavin Sharp
d140f8977f Bug 696436: consolidate Mac bundle name selection, and allow adding a prefix to it at build time, r=dolske, r=ted relanding with a clobber on a CLOSED TREE 2011-10-27 10:27:56 -07:00
Blair McBride
906ef34310 Backout 9e94c7b5290f (bug 696436) due to Mac opt breakage. CLOSED TREE 2011-12-16 16:08:48 +13:00
Gavin Sharp
87c714eafe Bug 696436: consolidate Mac bundle name selection, and allow adding a prefix to it at build time, r=dolske, r=ted
--HG--
extra : rebase_source : 138e3b0259bb144524b1bdb8a6db9d83fe527c71
2011-10-27 10:27:56 -07:00
Justin Lebar
e90ff7287c Bug 705856 - Enable SPS profiler on desktop Linux. r=BenWa
--HG--
extra : rebase_source : 1b47cb9924451b7a581f440a3df9d9a4fdf4c0ec
2011-12-15 15:44:13 -05:00
Ehsan Akhgari
3c6aabb3df Bug 703444. Port SPS profiler to Windows. r=jmuizelaar
Some changes and fixes by Felipe Gomes. r=benwa,ehsan
2011-12-04 14:09:00 -05:00
Jeff Muizelaar
d812d1d6ce Bug 707800. Add more sampler labels. r=bgirard 2011-12-02 17:05:33 -05:00
Jeff Muizelaar
c334ecc137 Bug 708629. Avoid using uninitialized pkey_stack. r=bgirard
This was causing crashes with make check/xpcshell on OS X.
2011-12-08 10:46:02 -05:00
Jeff Muizelaar
1bf2e7bff1 Bug 707800. Rename SAMPLE_CHECKPOINT to SAMPLE_LABEL. r=bgirard
Checkpoint was never a good name.
2011-12-02 17:18:26 -05:00
Chris AtLee
4744beb094 Bug 481815: makefile hooks required for signing executable files, installer packages, and mars. r=ted
--HG--
extra : rebase_source : 7b696910865fdbc9191cb7511f558879a9b9e05d
2011-12-07 17:06:52 -05:00
Benoit Girard
a4037664fc Bug 699918 - Implement profiler module. r=jmuizelaar 2011-12-07 14:48:15 -05:00
Jeff Muizelaar
73e8e0c41b Bug 698002. Add MacOS port of the v8 profiler. r=bgirard
This uses a separate thread that will pause the main thread
and read the registers out of it.

--HG--
extra : rebase_source : c73c866d513c054326af117ddf31ce05eca61335
2011-12-01 10:06:20 -05:00
Jeff Muizelaar
2cf282fc05 Bug 698002. Change active_ to Atomic32. r=bgirard
This brings us closer to V8

--HG--
extra : rebase_source : 788692e354a6cedbb5d54ed95cd8a5458e90bc60
2011-10-31 13:25:04 -04:00
Jeff Muizelaar
554b0dfc16 Bug 698002. Add more v8 support code. r=bgirard
These are needed for the mac port

--HG--
extra : rebase_source : 6f92738210ef2dbcfbaafb4ff2582c0f45b89d98
2011-10-31 12:01:54 -04:00
Rafael Ávila de Espíndola
c171f20afb Bug 696376 - Change how we find critical ranges so that it works on 10.6 too. r=dbaron.
Currently we use dlsym on pthread_cond_wait$UNIX2003 to find a
function that indicates that new_sem_from_pool is on the stack. This
works on 10.5, but on 10.6 I could not find a single reliable
indicator that would work with dlsym.

The good news is that dladdr works with any symbol, not just exported
ones. To find the address of new_sem_from_pool, we set up a malloc logger
and force a call to new_sem_from_pool. From the logger callback we walk
the stack trying dladdr on every address.

To force a call to new_sem_from_pool, the initialization code has to be the
first to use semaphores, so it is now run from NS_LogInit.

This works on 10.6 and 10.5 (but we have to look for
"pthread_cond_wait$UNIX2003"). In 10.7 the call to malloc is gone, so we don't
have to worry about critical addresses on it anymore.

--HG--
extra : rebase_source : bba4ac9e3378c88f7037aa884511e473a57121f6
2011-12-02 19:26:04 -05:00
Chris Lord
3ae56ad4cd Backout bug 696376
This broke building on android due to requiring a newer version of unwind.h.
2011-12-02 18:00:58 +00:00
Rafael Ávila de Espíndola
7a8af51b1f Bug 696376 - Change how we find critical ranges so that it works on 10.6 too. r=dbaron.
Currently we use dlsym on pthread_cond_wait$UNIX2003 to find a
function that indicates that new_sem_from_pool is on the stack. This
works on 10.5, but on 10.6 I could not find a single reliable
indicator that would work with dlsym.

The good news is that dladdr works with any symbol, not just exported
ones. To find the address of new_sem_from_pool, we set up a malloc logger
and force a call to new_sem_from_pool. From the logger callback we walk
the stack trying dladdr on every address.

To for a call to new_sem_from_pool, the initialization code has to be the
first to use semaphores, so it is now run from NS_LogInit.

This works on 10.6 and 10.5 (but we have to look for
"pthread_cond_wait$UNIX2003"). In 10.7 the call to malloc is gone, so we don't
have to worry about critical addresses on it anymore.
2011-12-01 18:22:00 -05:00
Benoit Girard
a76a0e42b5 Bug 698002 - Initialize pthread keys on sps startup. r=jrmuizel
--HG--
extra : rebase_source : 226f0ec8cd0c79ebaa1f00eba643ad0e28f240e5
2011-12-01 17:40:33 -05:00
Justin Lebar
5ed09df753 Back out revs 039231fd497f:5d920a44a901 properly. 2011-12-01 16:37:36 -05:00
Justin Lebar
5905e88333 Back out revs d445f83ecfb1:dc9cc326cad0, because they did not back out what was intended. 2011-12-01 16:35:42 -05:00
Justin Lebar
a9e55b740e Backed out changeset 039231fd497f (bug 705856) 2011-12-01 15:43:18 -05:00