- 27 Jun, 2016 1 commit
-
-
ishell authored
This is a building block for GetPropertyStub. It supports querying fast, slow and global objects without native accessors and interceptors. BUG=v8:4911 LOG=Y Review-Url: https://codereview.chromium.org/2079823002 Cr-Commit-Position: refs/heads/master@{#37291}
-
- 15 Jun, 2016 1 commit
-
-
ishell authored
The new approach is that instead of compiling custom handlers for every global object's PropertyCell it uses single dispatcher that caches PropertyCells in respective slot of the feedback vector. Currently the new LoadGlobalIC machinery is disabled. This CL also removes unused LoadGlobalViaContext* stuff. BUG=chromium:576312 LOG=Y Review-Url: https://codereview.chromium.org/2065113002 Cr-Commit-Position: refs/heads/master@{#37002}
-
- 07 Jun, 2016 1 commit
-
-
ishell authored
PrimaryStubCache and SecondaryStubCache: resurrected outdated tests (and enabled stub cache counters in the new LoadIC). TryProbeStubCache: decreased number of code objects created. Review-Url: https://codereview.chromium.org/2040193002 Cr-Commit-Position: refs/heads/master@{#36794}
-
- 06 Jun, 2016 1 commit
-
-
ishell authored
[stubs] Introducing LoadICTFStub and LoadICTrampolineTFStub and a switch to enable them instead of respective platform stubs. The stubs do not increase respective counters as they are in the snapshot and --native-code-counters is off during snapshot creation anyway. Review-Url: https://codereview.chromium.org/2031753003 Cr-Commit-Position: refs/heads/master@{#36754}
-
- 02 Jun, 2016 1 commit
-
-
ishell authored
[stubs] Extend HasProperty stub with dictionary-mode, string wrapper and double-elements objects support. This CL also replaces some Branch() usages with GotoIf/GotoUnless. (This is a reland after fixing issues that prevented this CL from landing in other CLs). BUG=v8:2743 LOG=Y Committed: https://crrev.com/24066b6df4259b302edfa1db884c479008776a7e Cr-Commit-Position: refs/heads/master@{#36657} Review-Url: https://codereview.chromium.org/1995453002 Cr-Commit-Position: refs/heads/master@{#36686}
-
- 01 Jun, 2016 2 commits
-
-
ishell authored
Revert of Extend HasProperty stub with dictionary-mode and double-elements objects support. (patchset #8 id:280001 of https://codereview.chromium.org/1995453002/ ) Reason for revert: There are crashes on Win32 and Win64 bots. Original issue's description: > Extend HasProperty stub with dictionary-mode, string wrapper and double-elements objects support. > > This CL also replaces some Branch() usages with GotoIf/GotoUnless. > > BUG=v8:2743 > LOG=Y > > Committed: https://crrev.com/24066b6df4259b302edfa1db884c479008776a7e > Cr-Commit-Position: refs/heads/master@{#36657} TBR=verwaest@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:2743 Review-Url: https://codereview.chromium.org/2028333002 Cr-Commit-Position: refs/heads/master@{#36659}
-
ishell authored
This CL also replaces some Branch() usages with GotoIf/GotoUnless. BUG=v8:2743 LOG=Y Review-Url: https://codereview.chromium.org/1995453002 Cr-Commit-Position: refs/heads/master@{#36657}
-
- 31 May, 2016 1 commit
-
-
bmeurer authored
When we moved the String.fromCharCode builtin to C++, we slightly regressed the fast single character code argument case. Recovered some of the performance by implementing the builtin using the TurboFan CodeStubAssembler. Drive-by-fix: Make sure the stack trace from the implicit ToNumber conversion in String.fromCharCode includes the builtin by adding a regression test for that. R=yangguo@chromium.org BUG=chromium:609831,chromium:613947,v8:5049 Review-Url: https://codereview.chromium.org/2021143003 Cr-Commit-Position: refs/heads/master@{#36611}
-
- 19 May, 2016 2 commits
-
-
danno authored
Previously, CodeStubAssembler macros performing FixedArray element accesses had to compute offsets to elements explicitly with a fair amount of duplicated code. Furthermore, any peephole optimizations that could produce better code-- like recognizing constant indices or combining array index computation with Smi untagging--were also duplicated. This change factors the code to compute FixedArray index offsets into a common routine in the CodeStubAssembler that applies standard peephole optimizations to all accesses. In order to do this, it also introduces limited introspection into the up-until-now opaque Node* type exported from code-assembler.h, allowing Nodes to be queried whether they are constant and extracting their constant value in that case. Review-Url: https://codereview.chromium.org/1989363004 Cr-Commit-Position: refs/heads/master@{#36370}
-
danno authored
Review-Url: https://codereview.chromium.org/1995543003 Cr-Commit-Position: refs/heads/master@{#36355}
-
- 17 May, 2016 1 commit
-
-
bmeurer authored
This adds back the instanceof operator support in the backends and introduces a @@hasInstance protector cell on the isolate that guards the fast path for the InstanceOfStub. This way we recover the ~10% regression on Octane EarleyBoyer in Crankshaft and greatly improve TurboFan and Ignition performance of instanceof. R=ishell@chromium.org TBR=hpayer@chromium.org,rossberg@chromium.org BUG=chromium:597249, v8:4447 LOG=n Review-Url: https://codereview.chromium.org/1980483003 Cr-Commit-Position: refs/heads/master@{#36275}
-
- 03 May, 2016 3 commits
-
-
danno authored
BUG=chromium:608675 LOG=N Review-Url: https://codereview.chromium.org/1948433002 Cr-Commit-Position: refs/heads/master@{#36000}
-
ishell authored
Code common with ObjectHasOwnProperty builtin was moved to CodeStubAssembler. BUG=v8:2743 LOG=Y Review-Url: https://codereview.chromium.org/1894953004 Cr-Commit-Position: refs/heads/master@{#35972}
-
danno authored
Review-Url: https://codereview.chromium.org/1903723003 Cr-Commit-Position: refs/heads/master@{#35963}
-
- 29 Apr, 2016 1 commit
-
-
rmcilroy authored
Adapts FastCloneShallowObjectStub to enable it to be used by the CreateObjectLiteral bytecode. BUG=v8:4280 LOG=N Review-Url: https://codereview.chromium.org/1922523002 Cr-Commit-Position: refs/heads/master@{#35909}
-
- 28 Apr, 2016 1 commit
-
-
neis authored
Instead of replacing the array with an empty one after resuming, overwrite contents with a new Oddball. This will simplify the work to be done by the bytecode graphbuilder and potentially allow for more optimization. (For full-codegen generators, nothing changes.) BUG=v8:4907 LOG=n Review-Url: https://codereview.chromium.org/1923253002 Cr-Commit-Position: refs/heads/master@{#35872}
-
- 24 Apr, 2016 1 commit
-
-
bmeurer authored
This allows us to get rid of the "push TruncateFloat64ToInt32 into Phi" trick that was used in the MachineOperatorReducer to combine the ChangeTaggedToFloat64 and TruncateFloat64ToInt32 operations. Instead of doing that later, we can just introduce the proper operator during the representation selection directly. Also separate the TruncateFloat64ToInt32 machine operator, which had two different meanings depending on a flag (either JavaScript truncation or C++ style round to zero). Now there's a TruncateFloat64ToWord32 which represents the JavaScript truncation (implemented via TruncateDoubleToI macro + code stub) and the RoundFloat64ToInt32, which implements the C++ round towards zero operation (in the same style as the other WebAssembly driven Round* machine operators). R=jarin@chromium.org Review URL: https://codereview.chromium.org/1919513002 Cr-Commit-Position: refs/heads/master@{#35743}
-
- 22 Apr, 2016 1 commit
-
-
neis authored
The new bytecodes replace two runtime functions. They are still unsupported by the bytecode graphbuilder, though. BUG=v8:4907 LOG=n Review URL: https://codereview.chromium.org/1904933002 Cr-Commit-Position: refs/heads/master@{#35716}
-
- 21 Apr, 2016 1 commit
-
-
danno authored
Move allocation-related and smi un/tagging methods into CodeStubAssembler. Review URL: https://codereview.chromium.org/1893383002 Cr-Commit-Position: refs/heads/master@{#35684}
-
- 18 Apr, 2016 1 commit
-
-
danno authored
This separation is needed to make two goals possible simultaneously: * is should be possible to offer V8 components a simple, clean interface to TurboFan's low-level code generation that doesn't expose details about the TF. * it should be possible to easily create new CodeAssembler "macros" that don't require a review from an OWNER of the compiler directory. Review URL: https://codereview.chromium.org/1875583003 Cr-Commit-Position: refs/heads/master@{#35576}
-