-
Notifications
You must be signed in to change notification settings - Fork 64
V8 profiling patch rebased on Chromium v34 #9
Conversation
I'm assuming this is the same as #8 -- please note you could have just use |
I closed the previous one. |
// This string is sent to XDK by code_event_handler and then used for | ||
// postprocessing. All these CodeCreateEvent(...) functions and helpers | ||
// will be removed before commit. | ||
void AppendCodeCreateHeader(NameBuffer* msg, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please remove them as you said in the comments.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done.
I verified this patch in my mach machine and found it failed the test:
It passed in my Linux machine. You might need to set up a Windows environment for testing. We set up the current buildbot to only verify Linux build for ia32, x64 and ARM. Maybe we need to extend it to Mac and Windows also as v8 upstream does at http://build.chromium.org/p/client.v8/console. |
It is a good idea to have the same set of build bots as v8 upstream has. |
Yes, I checked every SIMD patch on Linux and Mac locally (there is no fails when make ia32|x64.release.check) before submitting pull requests. The buildbot will do more than "make x64.release.check) by downloading mozilla and test262. I will submit a request to set up buildbot on Mac and Linux, besides Linux. |
Stack bktrace from "gdb --args out/x64.debug/cctest test-lockers/ExtensionsRegistration --nobreak-on-abort --nodead-code-elimination --nofold-constants --enable-slow-asserts --debug-code --verify-heap --testing_serialization_file=/Volumes/Data/Intel/dp7/v8-crosswalk/out/.serdes/serdes_ExtensionsRegistration" on Mac: |
lgtm. There is no fails on my Mac. Please squash all the commits into one and submit pull request again. For the record, here is why the previous patch fails on Mac: http://stackoverflow.com/questions/1661529/is-meyers-implementation-of-singleton-pattern-thread-safe. |
Alexis, Merge branch 'master' of https://github.com/dp7/v8-crosswalk e42fafe |
What kind of problems do you find? Let's solve them once and avoid having them in the future again. |
First of all, you should have a separate branch for your changes instead of doing everything in |
Merged 10a5890 Fix debug-debugger.js wrt strict mode. BUG=v8:3790 LOG=N R=mvstanton@chromium.org Review URL: https://codereview.chromium.org/854423002 Cr-Commit-Position: refs/branch-heads/4.1@{crosswalk-project#9} Cr-Branched-From: 2e08d2a-refs/heads/candidates@{#25353}
Merged 0902b5f Incorrect handling of HTransitionElementsKind in hydrogen check elimination phase fixed. BUG=chromium:460917 LOG=N R=jkummerow@chromium.org Review URL: https://codereview.chromium.org/1019033004 Cr-Commit-Position: refs/branch-heads/4.2@{crosswalk-project#9} Cr-Branched-From: 3dfd929-refs/heads/4.2.77@{crosswalk-project#2} Cr-Branched-From: e011092-refs/heads/master@{#26757}
Merged 3cb9f13 Merged ffe886d Layout descriptor must be trimmed when corresponding descriptors array is trimmed to stay in sync. Support for typed arrays added to Heap::RightTrimFixedArray(). BUG=chromium:470804,chromium:472513 LOG=N R=jkummerow@chromium.org Review URL: https://codereview.chromium.org/1075233002 Cr-Commit-Position: refs/branch-heads/4.3@{#9} Cr-Branched-From: f5c0a23-refs/heads/4.3.61@{#1} Cr-Branched-From: 0a7d4f4-refs/heads/master@{#27508}
Merged 212f453 Fix compile failure for AIX R=jkummerow@chromium.org, mbrandy@us.ibm.com, svenpanne@chromium.org BUG= Review URL: https://codereview.chromium.org/1156023010 Cr-Commit-Position: refs/branch-heads/4.4@{crosswalk-project#9} Cr-Branched-From: 2e4c550-refs/heads/4.4.63@{#1} Cr-Branched-From: 0208b8e-refs/heads/master@{#28333}
Merged 6802c4b Merged d055388 Merged 879550c Merged 3c9c774 [arm] Remove unused jump_elimination_allowed parameter to Assembler::branch_offset(). [arm] Fix missing CheckBuffer for branches. [arm] Don't call branch_offset within CheckConstPool. [arm] CheckConstPool between TurboFan instructions. BUG=v8:4292,chromium:509666 LOG=N R=bmeurer@chromium.org, jacob.bramley@arm.com Review URL: https://codereview.chromium.org/1223213007 . Cr-Commit-Position: refs/branch-heads/4.5@{#9} Cr-Branched-From: 7f21153-refs/heads/4.5.103@{#1} Cr-Branched-From: 4b38c15-refs/heads/master@{#29527}
Merged b06a6a8 Revert "Make sure that memory reducer makes progress in incremental marking" R=hablich@chromium.org BUG=chromium:519319 NOTRY=true NOPRESUBMIT=true Review URL: https://codereview.chromium.org/1310613004 Cr-Commit-Position: refs/branch-heads/4.6@{#9} Cr-Branched-From: 24d34a8-refs/heads/4.6.85@{#1} Cr-Branched-From: 8f44118-refs/heads/master@{#30256}
…rosswalk-project#9 id:160001 of https://codereview.chromium.org/1343333002/ ) Reason for revert: Check failed: https://chromegw.corp.google.com/i/client.v8/builders/V8%20Win64/builds/5535/steps/Check%20%28flakes%29/logs/IndependentWeakHandle Original issue's description: > [heap] Introduce parallel compaction algorithm. > > - The number of parallel tasks is still 1, i.e., we only compact on the main > thread. > - Remove emergency memory (PagedSpace, and CodeRange) > - Introduce partial compaction of pages. > - Logic for multiple tasks is in place. > > BUG=chromium:524425 > LOG=N > > Committed: https://crrev.com/61ea4f55616d3f7bc2ce049a678f16f7475e03e0 > Cr-Commit-Position: refs/heads/master@{#30787} TBR=hpayer@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=chromium:524425 Review URL: https://codereview.chromium.org/1347873003 Cr-Commit-Position: refs/heads/master@{#30788}
…set crosswalk-project#9 id:160001 of https://codereview.chromium.org/1358703003/ ) Reason for revert: [Sheriff] Speculative revert due to crbug.com/539814 Original issue's description: > Changed scavenge GC to collect unmodified references > > Added a scavenge GC pass that collects unmodified references instead of > processing object groups. This mode can be controlled by setting > FLAG_scavenge_remove_unmodified_objects. By default this is turned off. > Also, modified a test case to suit the handle the new GC pass. > > BUG=v8:4421 > LOG=N > > Committed: https://crrev.com/6254019238a853c9f3c09d615ba153043f6957c7 > Cr-Commit-Position: refs/heads/master@{#31102} TBR=jochen@chromium.org,rmcilroy@chromium.org,mythria@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4421,chromium:539814 Review URL: https://codereview.chromium.org/1388133002 Cr-Commit-Position: refs/heads/master@{#31130}
…set crosswalk-project#9 id:340001 of https://codereview.chromium.org/1382003002/ ) Reason for revert: Failing tests: https://chromegw.corp.google.com/i/client.v8/builders/V8%20Linux%20-%20arm64%20-%20sim%20-%20nosnap%20-%20debug%20-%202/builds/3804/steps/Check/logs/DontLeakGlobalObjects Original issue's description: > [heap] Divide available memory upon compaction tasks > > - Fairly (round-robin) divide available memory upon compaction tasks. > - Ensure an upper limit (of memory) since dividing is O(n) for n free-space > nodes. > - Refill from free lists managed by sweeper once a compaction space becomes > empty. > > Assumption for dividing memory: Memory in the free lists is sparse upon starting > compaction (which means that only few nodes are available), except for memory > reducer GCs, which happen in idle time though (so it's less of a problem). > > BUG=chromium:524425 > LOG=N > > Committed: https://crrev.com/30236c052ba9266fc55412a8fd63b17f683ff40b > Cr-Commit-Position: refs/heads/master@{#31234} TBR=ulan@chromium.org,hpayer@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=chromium:524425 Review URL: https://codereview.chromium.org/1406533002 Cr-Commit-Position: refs/heads/master@{#31235}
Merged bb33219 Merged c91bcf7 MIPS: Fix trampoline pool handling in MacroAssembler::BranchShort() MIPS: Fix trampoline pool handling in MacroAssembler::BranchShort() for r6. BUG=chromium:555543,chromium:555543 LOG=N R=hablich@chromium.org Review URL: https://codereview.chromium.org/1474153002 . Cr-Commit-Position: refs/branch-heads/4.8@{#9} Cr-Branched-From: 10449d4-refs/heads/4.8.271@{#1} Cr-Branched-From: 2ebd5fc-refs/heads/master@{#31941}
…patchset crosswalk-project#9 id:280001 of https://codereview.chromium.org/1508933004/ ) Reason for revert: Hits unreachable code (found by fuzzer). Example crasher: "for(();;);" Original issue's description: > [es6] support AssignmentPattern as LHS in for-in/of loops > > BUG=v8:811, v8:4599 > LOG=N > R=adamk@chromium.org, rossberg@chromium.org > > Committed: https://crrev.com/e47bdb775564b2cd8365047425898ab4274190a6 > Cr-Commit-Position: refs/heads/master@{#32773} TBR=rossberg@chromium.org,caitpotter88@gmail.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:811, v8:4599 Review URL: https://codereview.chromium.org/1511773009 Cr-Commit-Position: refs/heads/master@{#32774}
Merged e13f2ff Construct instances of base class from TypedArray.prototype.subarray BUG=v8:4665 LOG=N R=adamk@chromium.org Review URL: https://codereview.chromium.org/1617993002 . Cr-Commit-Position: refs/branch-heads/4.9@{#9} Cr-Branched-From: 2fea296-refs/heads/4.9.385@{#1} Cr-Branched-From: 0c1430a-refs/heads/master@{#33306}
id:180001 of https://codereview.chromium.org/1609233002/ ) Reason for revert: [Sheriff] Breaks gcmole: https://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20gcmole/builds/6260 Original issue's description: > Do not eagerly instantiate accessors' JSFunction. > > BUG= > > Committed: https://crrev.com/4d46b510caf534d770ce19a01a11b8796304471b > Cr-Commit-Position: refs/heads/master@{#33812} TBR=verwaest@chromium.org,epertoso@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG= Review URL: https://codereview.chromium.org/1679683004 Cr-Commit-Position: refs/heads/master@{#33814}
id:160001 of https://codereview.chromium.org/1712003003/ ) Reason for revert: [Sheriff] Seems to break gcmole: https://build.chromium.org/p/client.v8/builders/V8%20Linux/builds/8295 Original issue's description: > Add WasmFrame, backtraces reflect wasm's presence > > For now WasmFrame doesn't summarize the wasm frames. That'll require adding the > metadata in wasm-compiler similar to DeoptimizationInputData. > > Teach the basic backtrace to iterate over stack frames instead of JS frames. > > Update the wasm stack test. > > `git cl format` touches random lines in files I touch. > > R=titzer@chromium.org > TEST=d8 --test --expose-wasm test/mjsunit/mjsunit.js test/mjsunit/wasm/stack.js > > Committed: https://crrev.com/aeca945786dcccad3efecfddbf2c07aefa524a56 > Cr-Commit-Position: refs/heads/master@{#34220} TBR=titzer@chromium.org,mvstanton@chromium.org,mstarzinger@chromium.org,jfb@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1730673002 Cr-Commit-Position: refs/heads/master@{#34221}
…t return. (patchset #9 id:160001 of https://codereview.chromium.org/1818873003/ ) Reason for revert: [Sheriff] Seems to break nosnap debug: https://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20nosnap%20-%20debug/builds/6019 Original issue's description: > [Interpreter] Adds support to fetch return value on break at return. > > Debugger fetches the return value of a function when we break at return. > Interpreter holds the return value in accumulator. This is not stored in a > specified location on stack and hence it is not possible to look it up from > stack similar to full-codegen or optimized frames. This cl adds support to > store the value of accumulator on debug breaks. The value of accumulator is > passed to the runtime function and is then stored in thread local data. > > Also changes full-codegen implementation to match that of ignition. > The return value from full-codegen is also stored in thread local data. > The return value is fetched directly thread local data instead of > finding it by iterating over frames. > > BUG=v8:4280, v8:4690 > LOG=N > > Committed: https://crrev.com/fb65527b75754bcf3b173f16f5d0b04a1c6d9b99 > Cr-Commit-Position: refs/heads/master@{#35060} TBR=rmcilroy@chromium.org,yangguo@chromium.org,weiliang.lin@intel.com,balazs.kilvady@imgtec.com,jyan@ca.ibm.com,mythria@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4280, v8:4690 Review URL: https://codereview.chromium.org/1834733002 Cr-Commit-Position: refs/heads/master@{#35065}
Merged 03975be [turbofan] Remove some clever-but-wrong bits from select lowering. BUG=chromium:600593 LOG=N R=bmeurer@chromium.org Review URL: https://codereview.chromium.org/1877223005 . Cr-Commit-Position: refs/branch-heads/5.1@{#9} Cr-Branched-From: 167dc63-refs/heads/5.1.281@{#1} Cr-Branched-From: 03953f5-refs/heads/master@{#35282}
…id:180001 of https://codereview.chromium.org/1838283003/ ) Reason for revert: The boilerplate is copied based on the boilerplate + memento size, which reads off the end of the boilerplate. Original issue's description: > Migrate FastCloneShallowObjectStub to TurboFan > > BUG= > > Committed: https://crrev.com/4c2b04542f263b2679194f9fb75672ebbe72b924 > Cr-Commit-Position: refs/heads/master@{#35330} > > Committed: https://crrev.com/7fdfdc12d4e4291348112ace4278a827f57f2eb9 > Cr-Commit-Position: refs/heads/master@{#35494} TBR=bmeurer@chromium.org,jkummerow@chromium.org # Not skipping CQ checks because original CL landed more than 1 days ago. BUG= NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1888043006 Cr-Commit-Position: refs/heads/master@{#35544}
…id:160001 of https://codereview.chromium.org/2090333002/ ) Reason for revert: [Sheriff] Breaks layout tests: https://build.chromium.org/p/client.v8.fyi/builders/V8-Blink%20Linux%2064/builds/7700 Please rebase upstream first if intended. Original issue's description: > Use JS_ERROR_TYPE to check for error objects. > > Replace explicit Object::IsErrorObject() with macro generated functions Object::IsJSError() and HeapObject::IsJSError(). > > BUG= > > Committed: https://crrev.com/90e4fd136387ca7271d8ea87f4fc667e4f55063b > Cr-Commit-Position: refs/heads/master@{#37244} TBR=verwaest@chromium.org,jochen@chromium.org,franzih@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG= Review-Url: https://codereview.chromium.org/2092083002 Cr-Commit-Position: refs/heads/master@{#37250}
Merged 61c137c Fix bug with re-scoping arrow function parameter initializers BUG=chromium:622663 LOG=N R=hablich@chromium.org NOTRY=true NOPRESUBMIT=true Review-Url: https://codereview.chromium.org/2121083003 Cr-Commit-Position: refs/branch-heads/5.3@{#9} Cr-Branched-From: 820a23a-refs/heads/5.3.332@{#2} Cr-Branched-From: 37538cb-refs/heads/master@{#37308}
…e access to (patchset #9 id:160001 of https://codereview.chromium.org/2034083002/ ) Reason for revert: Causes crashes on Canary Original issue's description: > Don't compile functions in a context the caller doesn't have access to > > Instead just return undefined > > A side effect of this is that it's no longer possible to compile > functions in a detached context. > > BUG=chromium:541703 > R=verwaest@chromium.org,bmeurer@chromium.org > CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng > > Committed: https://crrev.com/992e34c21635b179a993b82ac1d81753e7a6a57a > Cr-Commit-Position: refs/heads/master@{#37657} TBR=bmeurer@chromium.org,verwaest@chromium.org,jochen@chromium.org # Not skipping CQ checks because original CL landed more than 1 days ago. BUG=chromium:541703, chromium:628053 Review-Url: https://codereview.chromium.org/2148163002 Cr-Commit-Position: refs/heads/master@{#37736}
id:180001 of https://codereview.chromium.org/2240463002/ ) Reason for revert: Revert again... Original issue's description: > [Interpreter] Introduce InterpreterCompilationJob > > Adds InterpreterCompilationJob as a sub-class of > CompilationJob, to enable off-thread bytecode > generation. Currently only used in > Interpreter::MakeBytecode. > > As part of this change, CompilationJob is modified > to make it less specific to optimized compilation, > renaming the phases as follows: > - CreateGraph -> PrepareJob > - OptimizeGraph -> ExecuteJob > - GenerateCode -> FinalizeJob > > RegisterWeakObjectsInOptimizedCode is also moved out > of CompilationJob and instead becomes a static function > on Compiler. > > BUG=v8:5203 > > Committed: https://crrev.com/1fb6a7e697e8bc5b4af51647553741f966e00cdc > Committed: https://crrev.com/785990e9fc0dd9a9d963d25d0bed2909165e4ca9 > Committed: https://crrev.com/d7c6195c4c5cdc080caa74dfe2ae9ecab69bea73 > Cr-Original-Original-Commit-Position: refs/heads/master@{#38662} > Cr-Original-Commit-Position: refs/heads/master@{#38668} > Cr-Commit-Position: refs/heads/master@{#38725} TBR=mstarzinger@chromium.org,jkummerow@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:5203 Review-Url: https://codereview.chromium.org/2260583002 Cr-Commit-Position: refs/heads/master@{#38727}
…oject#9 id:180001 of https://codereview.chromium.org/2785293002/ ) Reason for revert: Seems to block roll: https://codereview.chromium.org/2801013002/ See also: https://build.chromium.org/p/client.v8.fyi/builders/Linux%20Tests%20%28dbg%29%281%29/builds/2731 Original issue's description: > [inspector] move console to builtins > > What will we get: > - console would be included into snapshot and allow us to reduce time that we spent in contextCreated function (~5 times faster), > - it allows us to make further small improvement of console methods, e.g. we can implement super quick return from console.assert if first argument is true, > - console calls are ~ 15% faster. > > BUG=v8:6175 > R=dgozman@chromium.org > > Review-Url: https://codereview.chromium.org/2785293002 > Cr-Original-Original-Commit-Position: refs/heads/master@{#44353} > Committed: https://chromium.googlesource.com/v8/v8/+/55905f85d63d75aaa9313e51eb7bede754a8e41c > Review-Url: https://codereview.chromium.org/2785293002 > Cr-Original-Commit-Position: refs/heads/master@{#44355} > Committed: https://chromium.googlesource.com/v8/v8/+/cc74ea0bc4fe4a71fa53d08b62cc18d15e01fbb3 > Review-Url: https://codereview.chromium.org/2785293002 > Cr-Commit-Position: refs/heads/master@{#44416} > Committed: https://chromium.googlesource.com/v8/v8/+/f5dc738cda0336929dcb8eb73b87fdcd01b7c685 TBR=dgozman@chromium.org,kozyatinskiy@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:6175 Review-Url: https://codereview.chromium.org/2801023003 Cr-Commit-Position: refs/heads/master@{#44429}
…handler and Turbofan stubs. Revision: 53475ef NOTRY=true NOPRESUBMIT=true NOTREECHECKS=true Change-Id: I2244c7e43bee6887b9049fb0046638cfc9e13e82 Reviewed-on: https://chromium-review.googlesource.com/476890 Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/branch-heads/5.9@{crosswalk-project#9} Cr-Branched-From: fe9bb7e-refs/heads/5.9.211@{crosswalk-project#1} Cr-Branched-From: 70ad237-refs/heads/master@{#44591}
Revision: c776223 BUG=chromium:696651 LOG=N NOTRY=true NOPRESUBMIT=true NOTREECHECKS=true R=hablich@chromium.org Review-Url: https://codereview.chromium.org/2727063005 . Cr-Commit-Position: refs/branch-heads/5.8@{crosswalk-project#9} Cr-Branched-From: eda659c-refs/heads/5.8.283@{crosswalk-project#1} Cr-Branched-From: 4310cd0-refs/heads/master@{#43429}
This patch enables XDK CPU profiler.
Both compilation of V8 standalone build (not V8 as a part of crosswalk) and V8 tests passed on my system for Linux release configuration. We checked that XDK CPU profiler works as expected.