- 11 Oct, 2016 1 commit
-
-
mythria authored
Also include feedback about Oddballs when collecting the type feedback. For now, Number and NumberOrOddball are collected separately because crankshaft does not handle NumberOrOddballs consistently. This should change once we fix crankshaft. BUG=v8:4280, v8:5400 LOG=N Committed: https://crrev.com/d5d283b27d406486e2f8d7b44c6d2b3db4f98458 Review-Url: https://codereview.chromium.org/2406843002 Cr-Original-Commit-Position: refs/heads/master@{#40124} Cr-Commit-Position: refs/heads/master@{#40170}
-
- 10 Oct, 2016 2 commits
-
-
mythria authored
Revert of [Interpreter] Collect feedback about Oddballs in Subtract Stub. (patchset #2 id:20001 of https://codereview.chromium.org/2406843002/ ) Reason for revert: breaks win32-debug bot. Original issue's description: > [Interpreter] Collect feedback about Oddballs in Subtract Stub. > > BUG=v8:4280, v8:5400 > LOG=N > > Committed: https://crrev.com/d5d283b27d406486e2f8d7b44c6d2b3db4f98458 > Cr-Commit-Position: refs/heads/master@{#40124} TBR=leszeks@chromium.org,bmeurer@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4280, v8:5400 Review-Url: https://codereview.chromium.org/2407923002 Cr-Commit-Position: refs/heads/master@{#40128}
-
mythria authored
BUG=v8:4280, v8:5400 LOG=N Review-Url: https://codereview.chromium.org/2406843002 Cr-Commit-Position: refs/heads/master@{#40124}
-
- 27 Sep, 2016 1 commit
-
-
mythria authored
Ignition collects type feedback for binary and compare operations in type feedback vector and FCG uses Binary/CompareOpICs to collect type feedback. The feedback collected by ignition is not used by crankshaft. This hits the performance, when trying to optimize functions that did not tier upto FCG. This cl merges the feedback collected by ignition and FCG when passing to crankshaft. BUG=v8:4280 Review-Url: https://codereview.chromium.org/2361043002 Cr-Commit-Position: refs/heads/master@{#39753}
-
- 02 Sep, 2016 1 commit
-
-
mvstanton authored
Our Type class has a semantic and representational dimension. Much code in src/ast, Crankshaft and Turbofan is based on it. Going forward in Turbofan we'd like to remove representational information entirely. To that end, new type AstType has been created to preserve existing behavior for the benefit of Crankshaft and the AST. BUG= Review-Url: https://codereview.chromium.org/2302283002 Cr-Commit-Position: refs/heads/master@{#39135}
-
- 31 Aug, 2016 1 commit
-
-
marja authored
This way, many files which only need CompilationInfo but not compiler.h and its dependencies can include just compilation-info.h. BUG= Review-Url: https://codereview.chromium.org/2284313003 Cr-Commit-Position: refs/heads/master@{#39038}
-
- 21 Jul, 2016 1 commit
-
-
ishell authored
BUG=chromium:618701 Review-Url: https://codereview.chromium.org/2167493003 Cr-Commit-Position: refs/heads/master@{#37946}
-
- 15 Jul, 2016 1 commit
-
-
ishell authored
Revert of [ic] [stubs] Don't use Code::flags in megamorphic stub cache hash computations. (patchset #2 id:20001 of https://codereview.chromium.org/2147433002/ ) Reason for revert: Unfortunately, the performance issues are still there on Android. Original issue's description: > [ic] [stubs] Don't use Code::flags in megamorphic stub cache hash computations. > > This should avoid weird performance issues when changing layout of Code::flags field. > > BUG=chromium:618701 > > Committed: https://crrev.com/aa4140b1ccc114b82700471513c715f68b7c5dac > Cr-Commit-Position: refs/heads/master@{#37755} TBR=jkummerow@chromium.org # Not skipping CQ checks because original CL landed more than 1 days ago. BUG=chromium:618701 Review-Url: https://codereview.chromium.org/2147213004 Cr-Commit-Position: refs/heads/master@{#37801}
-
- 14 Jul, 2016 1 commit
-
-
ishell authored
This should avoid weird performance issues when changing layout of Code::flags field. BUG=chromium:618701 Review-Url: https://codereview.chromium.org/2147433002 Cr-Commit-Position: refs/heads/master@{#37755}
-
- 13 Jul, 2016 1 commit
-
-
ishell authored
After this CL we can avoid using Code::flags in hash computations for megamorphic stub caches and therefore the unused ICState field can be finally removed from flags. BUG=chromium:618701 Review-Url: https://codereview.chromium.org/2123983004 Cr-Commit-Position: refs/heads/master@{#37708}
-
- 28 Jun, 2016 1 commit
-
-
ishell authored
The serializer does not support serialization of HashTables in general because after deserialization it might be necessary to rehash the table. However the UnseededNumberDictionary does not require rehashing and this CL allows them to be serialized. This CL also changes the shape of UnseededNumberDictionary: the details field is no longer part of the entry since no one needs it. BUG=chromium:576312, chromium:623516 Review-Url: https://codereview.chromium.org/2102073002 Cr-Commit-Position: refs/heads/master@{#37336}
-
- 06 Jun, 2016 1 commit
-
-
cbruni authored
Passing in the isolate and pointer compare the instnance against the corresponding constant is always faster than decoding the instance types. BUG= Review-Url: https://codereview.chromium.org/2028983002 Cr-Commit-Position: refs/heads/master@{#36744}
-
- 21 Apr, 2016 1 commit
-
-
jkummerow authored
Non-vectorized KeyedLoadICs used to remember whether they had seen Names as keys; Crankshaft uses this information to avoid emitting elements accesses which would always deopt. This CL restores that functionality for vector ICs. BUG=chromium:594183 LOG=y R=mvstanton@chromium.org Review URL: https://codereview.chromium.org/1912593002 Cr-Commit-Position: refs/heads/master@{#35706}
-
- 06 Apr, 2016 1 commit
-
-
verwaest authored
BUG= Review URL: https://codereview.chromium.org/1865863003 Cr-Commit-Position: refs/heads/master@{#35297}
-
- 27 Feb, 2016 1 commit
-
-
bmeurer authored
Since both null and undefined are also marked as undetectable now, we can just test that bit instead of having the CompareNilIC try to collect feedback to speed up the general case (without the undetectable bit being used). Drive-by-fix: Update the type system to match the new handling of undetectable in the runtime. R=danno@chromium.org Committed: https://crrev.com/666aec0348c8793e61c8633dee7ad29a514239ba Cr-Commit-Position: refs/heads/master@{#34237} Review URL: https://codereview.chromium.org/1722193002 Cr-Commit-Position: refs/heads/master@{#34344}
-
- 26 Feb, 2016 1 commit
-
-
adamk authored
Revert of [compiler] Drop the CompareNilIC. (patchset #4 id:60001 of https://codereview.chromium.org/1722193002/ ) Reason for revert: Speculative revert in attempt to fix #2 crasher on canary. Original issue's description: > [compiler] Drop the CompareNilIC. > > Since both null and undefined are also marked as undetectable now, we > can just test that bit instead of having the CompareNilIC try to collect > feedback to speed up the general case (without the undetectable bit > being used). > > Drive-by-fix: Update the type system to match the new handling of > undetectable in the runtime. > > R=danno@chromium.org > > Committed: https://crrev.com/666aec0348c8793e61c8633dee7ad29a514239ba > Cr-Commit-Position: refs/heads/master@{#34237} TBR=danno@chromium.org,verwaest@chromium.org,bmeurer@chromium.org LOG=y BUG=chromium:589897 NOTRY=true Review URL: https://codereview.chromium.org/1743433002 Cr-Commit-Position: refs/heads/master@{#34308}
-
- 24 Feb, 2016 1 commit
-
-
bmeurer authored
Since both null and undefined are also marked as undetectable now, we can just test that bit instead of having the CompareNilIC try to collect feedback to speed up the general case (without the undetectable bit being used). Drive-by-fix: Update the type system to match the new handling of undetectable in the runtime. R=danno@chromium.org Review URL: https://codereview.chromium.org/1722193002 Cr-Commit-Position: refs/heads/master@{#34237}
-
- 02 Feb, 2016 1 commit
-
-
jarin authored
This CL removes the Config templatization from the types. It is not necessary anymore, after the HeapTypes have been removed. The CL also changes the type hierarchy - the specific type kinds are not inner classes of the Type class and they do not inherit from Type. This is partly because it seems impossible to make this work without templates. Instead, a new TypeBase class is introduced and all the structural (i.e., non-bitset) types inherit from it. The bitset type still requires the bit-munging hack and some nasty reinterpret-casts to pretend bitsets are of type Type*. Additionally, there is now the same hack for TypeBase - all pointers to the sub-types of TypeBase are reinterpret-casted to Type*. This is to keep the type constructors in inline method definitions (although it is unclear how much that actually buys us). In future, we would like to move to a model where we encapsulate Type* into a class (or possibly use Type where we used to use Type*). This would loosen the coupling between bitset size and pointer size, and eventually we would be able to have more bits. TBR=bradnelson@chromium.org Review URL: https://codereview.chromium.org/1655833002 Cr-Commit-Position: refs/heads/master@{#33656}
-
- 04 Dec, 2015 1 commit
-
-
bmeurer authored
Revert of Provide call counts for constructor calls, surface them as a vector IC. (patchset #4 id:60001 of https://codereview.chromium.org/1476413003/ ) Reason for revert: Seems to be (mostly) responsible for the most recent Speedometer regression, not 100% sure. Let's see what the bots have to say. Original issue's description: > Provide call counts for constructor calls, surface them as a vector IC. > > CallIC and CallConstructStub look so alike, at least in the feedback they gather even if the implementation differs...and CallIC has such a nice way of surfacing the feedback (CallICNexus), that there is a request to make CallConstructStub look analogous. Enter ConstructICStub. > > BUG= > > Committed: https://crrev.com/66d5a9df62da458a51e8c7ed1811dc9660f4f418 > Cr-Commit-Position: refs/heads/master@{#32452} TBR=mvstanton@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG= Review URL: https://codereview.chromium.org/1489413006 Cr-Commit-Position: refs/heads/master@{#32599}
-
- 01 Dec, 2015 2 commits
-
-
mvstanton authored
CallIC and CallConstructStub look so alike, at least in the feedback they gather even if the implementation differs...and CallIC has such a nice way of surfacing the feedback (CallICNexus), that there is a request to make CallConstructStub look analogous. Enter ConstructICStub. BUG= Review URL: https://codereview.chromium.org/1476413003 Cr-Commit-Position: refs/heads/master@{#32452}
-
bmeurer authored
This is the initial support for binary operation hints on javascript binary operators, i.e. JSAdd, JSSubtract and so on. The hints are extracted from the fullcodegen code object before graph building and the AstGraphBuilder puts those hints on the operators if available. R=jarin@chromium.org BUG=v8:4583 LOG=n Review URL: https://codereview.chromium.org/1487973002 Cr-Commit-Position: refs/heads/master@{#32443}
-
- 26 Nov, 2015 1 commit
-
-
rossberg authored
Moves all files related to AST and scopes into ast/, and all files related to scanner & parser to parsing/. Also eliminates a couple of spurious dependencies. R=mstarzinger@chromium.org BUG= Review URL: https://codereview.chromium.org/1481613002 Cr-Commit-Position: refs/heads/master@{#32351}
-
- 17 Nov, 2015 1 commit
-
-
mvstanton authored
BUG= Review URL: https://codereview.chromium.org/1424153003 Cr-Commit-Position: refs/heads/master@{#32040}
-
- 01 Oct, 2015 1 commit
-
-
ishell authored
This CL also allows to use arbitrary number of feedback vector elements for particular slot kind. Review URL: https://codereview.chromium.org/1370303004 Cr-Commit-Position: refs/heads/master@{#31050}
-
- 28 Sep, 2015 1 commit
-
-
ishell authored
This is a first step towards merging FeedbackVectorSlot and FeedbackVectorICSlot. Review URL: https://codereview.chromium.org/1369973002 Cr-Commit-Position: refs/heads/master@{#30964}
-
- 16 Sep, 2015 1 commit
-
-
mvstanton authored
There isn't a plan to turn it on soon, so we'll take it out in favor of cleaner code. BUG= Review URL: https://codereview.chromium.org/1202173002 Cr-Commit-Position: refs/heads/master@{#30767}
-
- 10 Sep, 2015 1 commit
-
-
mvstanton authored
The refactoring is because it's awkward and error-prone to deterimine which IC slot an ObjectLiteralProperty uses for feedback. The fix is for each one to know it's own slot. In the numbering pass, we allocate slots for the ObjectLiteral, then hand out those slots into the properties. It adds one word to the ObjectLiteralProperty expression - I'm investigating if thats a problem. This changes makes compiling the object literal cleaner across the three compilers. Also, the slot allocation logic in ObjectLiteral::ComputeFeedbackRequirements() was refactoring to mimic the style in full-codegen. This is useful since it must remain in sync with FullCodegen::VisitObjectLiteral(). Review URL: https://codereview.chromium.org/1321993004 Cr-Commit-Position: refs/heads/master@{#30686}
-
- 04 Sep, 2015 1 commit
-
-
mvstanton authored
The last changes for vector store functionality, they are in 3 areas: 1) The new vector [keyed] store code stubs - implementation. 2) IC and handler compiler adjustments 3) Odds and ends. A change in ast.cc, a test update, a small Oracle fix. TBR=bmeurer@chromium.org, jkummerow@chromium.org BUG= Review URL: https://codereview.chromium.org/1319123004 Cr-Commit-Position: refs/heads/master@{#30581}
-
- 03 Sep, 2015 2 commits
-
-
machenbach authored
Revert of Vector ICs: platform support for vector-based stores. (patchset #7 id:120001 of https://codereview.chromium.org/1328603003/ ) Reason for revert: [Sheriff] Breaks compile on arm: http://build.chromium.org/p/client.v8/builders/V8%20Arm%20-%20builder/builds/6590 Original issue's description: > Vector ICs: platform support for vector-based stores. > > The last changes for vector store functionality, they are in 3 areas: > > 1) The new vector [keyed] store code stubs - implementation. > 2) IC and handler compiler adjustments > 3) Odds and ends. A change in ast.cc, a test update, a small Oracle fix. > > BUG= > > Committed: https://crrev.com/63af1b3aec6547e7cdf502666ff79c562de8b679 > Cr-Commit-Position: refs/heads/master@{#30570} TBR=bmeurer@chromium.org,jkummerow@chromium.org,mvstanton@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG= Review URL: https://codereview.chromium.org/1303053004 Cr-Commit-Position: refs/heads/master@{#30571}
-
mvstanton authored
The last changes for vector store functionality, they are in 3 areas: 1) The new vector [keyed] store code stubs - implementation. 2) IC and handler compiler adjustments 3) Odds and ends. A change in ast.cc, a test update, a small Oracle fix. BUG= Review URL: https://codereview.chromium.org/1328603003 Cr-Commit-Position: refs/heads/master@{#30570}
-
- 28 Aug, 2015 1 commit
-
-
mvstanton authored
Also, polymorphic element stores have a slightly different shape for the array attached to a vector slot. It's of the form [map, map, handler], where the 2nd map is either a transition map or undefined (the maps are actually in WeakCells). Review URL: https://codereview.chromium.org/1316953003 Cr-Commit-Position: refs/heads/master@{#30432}
-
- 20 Aug, 2015 1 commit
-
-
mstarzinger authored
R=bmeurer@chromium.org Review URL: https://codereview.chromium.org/1285183010 Cr-Commit-Position: refs/heads/master@{#30263}
-
- 11 Aug, 2015 1 commit
-
-
bmeurer authored
There's no need to have one InstanceType per SIMD primitive type (this will not scale long-term). Also reduce the amount of code duplication and make it more robust wrt adding new SIMD types. R=yangguo@chromium.org Review URL: https://codereview.chromium.org/1273353003 Cr-Commit-Position: refs/heads/master@{#30107}
-
- 30 Jul, 2015 1 commit
-
-
mvstanton authored
When a Property or a VariableProxy is used as the left hand side of an assignment statement, there is no need to allocate a LOAD_IC feedback vector slot for it. Alter the numbering phase to support this. BUG= Review URL: https://codereview.chromium.org/1262803002 Cr-Commit-Position: refs/heads/master@{#29924}
-
- 16 Jul, 2015 2 commits
-
-
bbudge authored
This CL exposes the constructor function, defines type related information, and implements value type semantics. It also refactors test/mjsunit/samevalue.js to test SameValue and SameValueZero. TEST=test/mjsunit/harmony/simd.js, test/cctest/test-simd.cc LOG=Y BUG=v8:4124 Committed: https://crrev.com/e5ed3bee99807c502fa7d7a367ec401e16d3f773 Cr-Commit-Position: refs/heads/master@{#29689} Review URL: https://codereview.chromium.org/1219943002 Cr-Commit-Position: refs/heads/master@{#29712}
-
hablich authored
Revert of Expose SIMD.Float32x4 type to Javascript. (patchset #14 id:450001 of https://codereview.chromium.org/1219943002/) Reason for revert: Seems to brake the latest roll into Chromium: http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_compile_dbg_ng/builds/59796/steps/compile%20%28with%20patch%29/logs/stdio Original issue's description: > Expose SIMD.Float32x4 type to Javascript. > This CL exposes the constructor function, defines type related > information, and implements value type semantics. > It also refactors test/mjsunit/samevalue.js to test SameValue and SameValueZero. > > TEST=test/mjsunit/harmony/simd.js, test/cctest/test-simd.cc > > LOG=Y > BUG=v8:4124 > > Committed: https://crrev.com/e5ed3bee99807c502fa7d7a367ec401e16d3f773 > Cr-Commit-Position: refs/heads/master@{#29689} TBR=rossberg@chromium.org,littledan@chromium.org,martyn.capewell@arm.com,bbudge@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4124 Review URL: https://codereview.chromium.org/1241533004 Cr-Commit-Position: refs/heads/master@{#29701}
-
- 15 Jul, 2015 1 commit
-
-
bbudge authored
This CL exposes the constructor function, defines type related information, and implements value type semantics. It also refactors test/mjsunit/samevalue.js to test SameValue and SameValueZero. TEST=test/mjsunit/harmony/simd.js, test/cctest/test-simd.cc LOG=Y BUG=v8:4124 Review URL: https://codereview.chromium.org/1219943002 Cr-Commit-Position: refs/heads/master@{#29689}
-
- 25 Jun, 2015 1 commit
-
-
bbudge authored
I missed some functions that need to change. LOG=N BUG=v8:4124 Review URL: https://codereview.chromium.org/1199413009 Cr-Commit-Position: refs/heads/master@{#29276}
-
- 01 Jun, 2015 1 commit
-
-
erikcorry authored
When compiling on a laptop I like to concatenate the small test files. This makes a big difference to compile times. These changes make that easier. R=ulan@chromium.org BUG= Review URL: https://codereview.chromium.org/1163803002 Cr-Commit-Position: refs/heads/master@{#28742}
-
- 27 May, 2015 1 commit
-
-
jkummerow authored
And delete remnants of non-vectorized LoadICs from the type feedback oracle Review URL: https://codereview.chromium.org/1147253004 Cr-Commit-Position: refs/heads/master@{#28650}
-