- 23 Sep, 2016 28 commits
-
-
ishell authored
Namely: Runtime_LoadIC_MissFromStubFailure Runtime_StoreIC_MissFromStubFailure Runtime_KeyedStoreIC_MissFromStubFailure BUG=chromium:608675 Review-Url: https://codereview.chromium.org/2346743003 Cr-Commit-Position: refs/heads/master@{#39675}
-
danno authored
Review-Url: https://codereview.chromium.org/2362113003 Cr-Commit-Position: refs/heads/master@{#39674}
-
marja authored
It looks like it tried to trigger lazy inner function parsing by inserting a comment into an inner function. 1) We don't have lazy inner functions yet. 2) Even if we had, there's no way this heuristic could trigger laziness: we need to do the laziness decision upfront, without looking at the contents / size of the function. 3) Some of the combinations were weird: lazy_outer but non-lazy inner? In the current heuristics, only the total script size affects laziness; in particular, it doesn't matter where the long comment is. R=mstarzinger@chromium.org BUG= Review-Url: https://codereview.chromium.org/2364003002 Cr-Commit-Position: refs/heads/master@{#39673}
-
ishell authored
According to new store IC calling convention the value, slot and vector are passed on the stack and there's no need in trying to preserve values or respective registers in store handlers. Nice bonus: we also don't need virtual registers anymore. BUG=v8:5407 Review-Url: https://codereview.chromium.org/2357323003 Cr-Commit-Position: refs/heads/master@{#39672}
-
jgruber authored
Moving ToInteger to CodeStubAssembler allows us to inline it in several builtins. In a follow-up commit, we'll add a TruncationMode argument to specify how -0.0 should be handled. BUG= Review-Url: https://codereview.chromium.org/2364473006 Cr-Commit-Position: refs/heads/master@{#39671}
-
verwaest authored
Remove ARGUMENTS_VARIABLE and fix crankshaft to properly detect the arguments object and keep it alive when inlining .apply BUG= Review-Url: https://codereview.chromium.org/2367483003 Cr-Commit-Position: refs/heads/master@{#39670}
-
ishell authored
Review-Url: https://codereview.chromium.org/2362203002 Cr-Commit-Position: refs/heads/master@{#39669}
-
cbruni authored
Group-Total-V8 contains all but Group-Callback times which should lead to more stable data. R=hablich@chromium.org NOTRY=true BUG= Review-Url: https://codereview.chromium.org/2366523002 Cr-Commit-Position: refs/heads/master@{#39668}
-
balazs.kilvady authored
The running time of optdebug.quickcheck is improved by 8% while a more strict DCHECKing is kept in simulator. Review-Url: https://codereview.chromium.org/1349403003 Cr-Commit-Position: refs/heads/master@{#39667}
-
mvstanton authored
BUG= Review-Url: https://codereview.chromium.org/2366433003 Cr-Commit-Position: refs/heads/master@{#39666}
-
machenbach authored
BUG=chromium:644096 TBR=thakis@chromium.org NOTRY=true Review-Url: https://codereview.chromium.org/2369493002 Cr-Commit-Position: refs/heads/master@{#39665}
-
ivica.bogosavljevic authored
BUG= Review-Url: https://codereview.chromium.org/2359923003 Cr-Commit-Position: refs/heads/master@{#39664}
-
sashab authored
Revert of Fix bitfield enums to not trigger upcoming Clang warning (patchset #3 id:40001 of https://codereview.chromium.org/2349153002/ ) Reason for revert: Causes warning in GCC. Original issue's description: > Fix bitfield enums to not trigger upcoming Clang warning > > Fix bitfield enums to not trigger upcoming Clang warning regarding > non-unsigned enum bitfields producing non-portable code. > > For more details, see the patch here: https://reviews.llvm.org/D24289 > > BUG=648462 > > Committed: https://crrev.com/a81e00d533454a7179f8f954505a8f033e941a8a > Cr-Commit-Position: refs/heads/master@{#39649} TBR=jochen@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=648462 Review-Url: https://codereview.chromium.org/2361013003 Cr-Commit-Position: refs/heads/master@{#39663}
-
vogelheim authored
R=marja@chromium.org BUG=v8:4947 Review-Url: https://codereview.chromium.org/2366573002 Cr-Commit-Position: refs/heads/master@{#39662}
-
machenbach authored
Revert of [turbofan] Don't take into account source size for inlining heuristics. (patchset #4 id:60001 of https://codereview.chromium.org/2361813002/ ) Reason for revert: timeouts on windows: https://build.chromium.org/p/client.v8/builders/V8%20Win64%20-%20debug/builds/12504 Original issue's description: > [turbofan] Don't take into account source size for inlining heuristics. > > The source size is not a real indicator for whether or not to inline a > certain function. > > R=ishell@chromium.org, jarin@chromium.org > BUG=v8:3354,v8:5267 > > Committed: https://chromium.googlesource.com/v8/v8/+/1b33028607637ba8cb2d60433811f825b00a0cc1 TBR=ishell@chromium.org,jarin@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:3354,v8:5267 Review-Url: https://codereview.chromium.org/2362853003 Cr-Commit-Position: refs/heads/master@{#39661}
-
Michael Starzinger authored
This adds handling of {IrOpcode::kStringCharCodeAt} nodes to the escape status analysis. Such uses are treated as escaping for now until we add dedicated handling to the escape analysis reducer. R=bmeurer@chromium.org BUG=chromium:649492 Review URL: https://codereview.chromium.org/2363063002 . Cr-Commit-Position: refs/heads/master@{#39660}
-
Benedikt Meurer authored
The source size is not a real indicator for whether or not to inline a certain function. R=ishell@chromium.org, jarin@chromium.org BUG=v8:3354,v8:5267 Review URL: https://codereview.chromium.org/2361813002 . Cr-Commit-Position: refs/heads/master@{#39659}
-
Benedikt Meurer authored
R=epertoso@chromium.org Review URL: https://codereview.chromium.org/2360233004 . Cr-Commit-Position: refs/heads/master@{#39658}
-
bmeurer authored
Revert of [turbofan] ChangeFloat64ToTagged shouldn't canonicalize. (patchset #3 id:40001 of https://codereview.chromium.org/2367593003/ ) Reason for revert: Causes tree breakage: https://build.chromium.org/p/client.v8/builders/V8%20Win64/builds/12916/steps/Check/logs/typedarray Original issue's description: > [turbofan] ChangeFloat64ToTagged shouldn't canonicalize. > > This matches current Crankshaft/fullcodegen behavior more closely and > thus reduces the chances that we run into unnecessary polymorphism due > to the field representation tracking in our object model. > > R=jarin@chromium.org > BUG=v8:5267 > > Committed: https://chromium.googlesource.com/v8/v8/+/6a939714e991ebf10d56ddbd2869325cca99c0ef TBR=jarin@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:5267 Review-Url: https://codereview.chromium.org/2358123007 Cr-Commit-Position: refs/heads/master@{#39657}
-
Michael Starzinger authored
This makes sure the {EscapeAnalysisReducer} inserts proper {TypeGuard} nodes if the replacement node is not a subtype of the original node. This happens predominantly for code that has been made unreachable by type checks. R=jarin@chromium.org TEST=mjsunit/regress/regress-crbug-640497 BUG=chromium:640497 Review URL: https://codereview.chromium.org/2363573003 . Cr-Commit-Position: refs/heads/master@{#39656}
-
Benedikt Meurer authored
This matches current Crankshaft/fullcodegen behavior more closely and thus reduces the chances that we run into unnecessary polymorphism due to the field representation tracking in our object model. R=jarin@chromium.org BUG=v8:5267 Review URL: https://codereview.chromium.org/2367593003 . Cr-Commit-Position: refs/heads/master@{#39655}
-
Benedikt Meurer authored
Rename the high-level operators CheckTaggedSigned to CheckSmi and CheckTaggedPointer to CheckHeapObject, to better match the naming convention (i.e. ObjectIsSmi and CheckSmi, ObjectIsString and CheckString, etc.). For lowering CheckSmi, always report TaggedSigned representation and let the RepresentationChanger come up with a reasonable conversion from whatever input representation to TaggedSigned. This way we no longer insert the useless ChangeSomethingToTagged and then Smi check the result sequences, i.e. mostly reduces the amount of useless code being generated. But we also observe a few performance improvements on some crypto benchmarks. This would enable us to avoid the Smi canonicalization when going from Float64 to Tagged completely and thus match the representation selection of Crankshaft in many areas (which might reduce the amount of polymorphism until we fix our object model). A follow-up CL will do the same for CheckHeapObject. BUG=v8:5267 R=jarin@chromium.org Review URL: https://codereview.chromium.org/2362173003 . Cr-Commit-Position: refs/heads/master@{#39654}
-
jgruber authored
This ports the platform-specific SubStringStub to TurboFan. It also contains a minor bug-fix for the case when the requested substring length equals the subject string length, but the start index is not equal to 0. The old stub implementation returned the subject string, while the new implementation calls into runtime, which finally results in a thrown exception. BUG=v8:5415 Review-Url: https://codereview.chromium.org/2355793003 Cr-Commit-Position: refs/heads/master@{#39653}
-
hablich authored
Revert of Pool implementation for zone segments (patchset #9 id:420001 of https://codereview.chromium.org/2335343007/ ) Reason for revert: Blocks Roll https://codereview.chromium.org/2366733002/ Original issue's description: > Pool implementation for zone segments > > BUG=v8:5409 > > Committed: https://crrev.com/37c688a24578e787d3d8941093563ed049c3497e > Cr-Commit-Position: refs/heads/master@{#39631} TBR=jkummerow@chromium.org,jochen@chromium.org,verwaest@chromium.org,heimbuef@google.com # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:5409 Review-Url: https://codereview.chromium.org/2365843002 Cr-Commit-Position: refs/heads/master@{#39652}
-
hablich authored
Revert of Replaced different means of zone pooling/reusing by one zone segment pool (patchset #3 id:120001 of https://codereview.chromium.org/2348303002/ ) Reason for revert: Blocks Roll https://codereview.chromium.org/2366733002/ Original issue's description: > Replaced different means of zone pooling/reusing by one zone segment pool > > BUG=v8:5409 > > Committed: https://crrev.com/a124feb0760896c8be61de08004a08c3bc9b4b3f > Cr-Commit-Position: refs/heads/master@{#39633} TBR=mstarzinger@chromium.org,verwaest@chromium.org,heimbuef@google.com # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:5409 Review-Url: https://codereview.chromium.org/2360403003 Cr-Commit-Position: refs/heads/master@{#39651}
-
v8-autoroll authored
Rolling v8/build to 87bb8bc8acec1eebdd3ef34057508739897a12cc TBR=machenbach@chromium.org,vogelheim@chromium.org,hablich@chromium.org Review-Url: https://codereview.chromium.org/2362753004 Cr-Commit-Position: refs/heads/master@{#39650}
-
sashab authored
Fix bitfield enums to not trigger upcoming Clang warning regarding non-unsigned enum bitfields producing non-portable code. For more details, see the patch here: https://reviews.llvm.org/D24289 BUG=648462 Review-Url: https://codereview.chromium.org/2349153002 Cr-Commit-Position: refs/heads/master@{#39649}
-
adamk authored
Also canonicalize all path separators to '/' for simplicity. Review-Url: https://codereview.chromium.org/2363773003 Cr-Commit-Position: refs/heads/master@{#39648}
-
- 22 Sep, 2016 12 commits
-
-
adamk authored
Also prepare d8 for that eventuality, and fixup the runtime call stat counter used for Module::Evaluate. R=neis@chromium.org BUG=v8:1569 Review-Url: https://codereview.chromium.org/2366773002 Cr-Commit-Position: refs/heads/master@{#39647}
-
adamk authored
BUG=v8:1569 Review-Url: https://codereview.chromium.org/2361593002 Cr-Commit-Position: refs/heads/master@{#39646}
-
cbruni authored
callstats.html now directly tries to load a results.json file in the same directory when hosted over http. Additionally, avoiding innerHTML speeds up initial data creation. BUG=chromium:611010 NOTRY=true Review-Url: https://codereview.chromium.org/2361953002 Cr-Commit-Position: refs/heads/master@{#39645}
-
jyan authored
R=rmcilroy@chromium.org, mythria@chromium.org, leszeks@chromium.org BUG= Review-Url: https://codereview.chromium.org/2362453003 Cr-Commit-Position: refs/heads/master@{#39644}
-
lpy authored
BUG=648740 Review-Url: https://codereview.chromium.org/2362563002 Cr-Commit-Position: refs/heads/master@{#39643}
-
verwaest authored
BUG=chromium:649067 Review-Url: https://codereview.chromium.org/2362463003 Cr-Commit-Position: refs/heads/master@{#39642}
-
mvstanton authored
BUG= Review-Url: https://codereview.chromium.org/2359153002 Cr-Commit-Position: refs/heads/master@{#39641}
-
v8-autoroll authored
Rolling v8/tools/clang to 204eee93d4ffbc01d6182e4c199960db763c7dbc TBR=machenbach@chromium.org,vogelheim@chromium.org,hablich@chromium.org BUG=chromium:645953 Review-Url: https://codereview.chromium.org/2357163005 Cr-Commit-Position: refs/heads/master@{#39640}
-
neis authored
BUG=v8:1569 Review-Url: https://codereview.chromium.org/2360063002 Cr-Commit-Position: refs/heads/master@{#39639}
-
ahaas authored
BUG=chromium:646753 R=titzer@chromium.org Review-Url: https://codereview.chromium.org/2365633002 Cr-Commit-Position: refs/heads/master@{#39638}
-
rmcilroy authored
This CL optimizes the code in BytecodeArrayBuilder and BytecodeArrayWriter by making the following main changes: - Move operand scale calculation out of BytecodeArrayWriter to the BytecodeNode constructor, where the decision on which operands are scalable can generally be statically decided by the compiler. - Move the maximum register calculation out of BytecodeArrayWriter and into BytecodeRegisterOptimizer (which is the only place outside BytecodeGenerator which updates which registers are used). This avoids the BytecodeArrayWriter needing to know the operand types of a node as it writes it. - Modify EmitBytecodes to use individual push_backs rather than building a buffer and calling insert, since this turns out to be faster. - Initialize BytecodeArrayWriter's bytecode vector by reserving 512 bytes, - Make common functions in Bytecodes constexpr so that they can be statically calculated by the compiler. - Move common functions and constructors in Bytecodes and BytecodeNode to the header so that they can be inlined. - Change large static switch statements in Bytecodes to const array lookups, and move to the header to allow inlining. I also took the opportunity to remove a number of unused helper functions, and rework some others for consistency. This reduces the percentage of time spent in making BytecodeArrays in CodeLoad from ~15% to ~11% according to perf. The CoadLoad score increase by around 2%. BUG=v8:4280 Committed: https://crrev.com/b11a8b4d41bf09d6b3d6cf214fe3fb61faf01a64 Review-Url: https://codereview.chromium.org/2351763002 Cr-Original-Commit-Position: refs/heads/master@{#39599} Cr-Commit-Position: refs/heads/master@{#39637}
-
chiniforooshan authored
https://codereview.chromium.org/2253973003 is landed. The V8 macro can be changed accordingly now and the test can be enabled again. BUG=647986 Review-Url: https://codereview.chromium.org/2360083005 Cr-Commit-Position: refs/heads/master@{#39636}
-