- 10 Aug, 2016 1 commit
-
-
jgruber authored
BUG= Review-Url: https://codereview.chromium.org/2224973002 Cr-Commit-Position: refs/heads/master@{#38529}
-
- 09 Aug, 2016 1 commit
-
-
jgruber authored
These were the final remnants of error code written in JavaScript. BUG= Review-Url: https://codereview.chromium.org/2222893002 Cr-Commit-Position: refs/heads/master@{#38475}
-
- 03 Aug, 2016 1 commit
-
-
jgruber authored
BUG= Review-Url: https://codereview.chromium.org/2206573002 Cr-Commit-Position: refs/heads/master@{#38289}
-
- 02 Aug, 2016 2 commits
-
-
adamk authored
They may have once been different, but they're now redundant with each other. This simplifies both Context::Lookup and its callers. Review-Url: https://codereview.chromium.org/2200303002 Cr-Commit-Position: refs/heads/master@{#38261}
-
adamk authored
This was being allowed due to the use of BindingFlags instead of VariableMode to determine whether a looked-up binding was lexical. Because function declarations are hoisted, they never need hole checks, and so were being miscategorized as non-lexical. This patch augments Context::Lookup with a VariableMode out param, which allows this check to determine precisely whether the binding is lexical. BUG=v8:4454, v8:5256 Review-Url: https://codereview.chromium.org/2206483004 Cr-Commit-Position: refs/heads/master@{#38260}
-
- 01 Aug, 2016 3 commits
-
-
jgruber authored
BUG= Review-Url: https://codereview.chromium.org/2194883002 Cr-Commit-Position: refs/heads/master@{#38215}
-
cbruni authored
BUG=chromium:630217 Review-Url: https://codereview.chromium.org/2196533003 Cr-Commit-Position: refs/heads/master@{#38213}
-
jgruber authored
BUG= Review-Url: https://codereview.chromium.org/2191293002 Cr-Commit-Position: refs/heads/master@{#38212}
-
- 29 Jul, 2016 1 commit
-
-
neis authored
R=bmeurer@chromium.org BUG= Review-Url: https://codereview.chromium.org/2197493003 Cr-Commit-Position: refs/heads/master@{#38163}
-
- 28 Jul, 2016 1 commit
-
-
cbruni authored
This CL introduces a new fast flat instantiations cache for the first 1024 object templates. After that we fall back to the existing slower dictionary cache. Drive-by-fix: de-handlify and clean up some code in api-natives.cc BUG=chromium:630217 Review-Url: https://codereview.chromium.org/2170743003 Cr-Commit-Position: refs/heads/master@{#38146}
-
- 21 Jul, 2016 3 commits
-
-
jgruber authored
We no longer need to prepare the stack overflow error in advance now that Errors are constructed in C++. R=yangguo@chromium.org BUG= Committed: https://crrev.com/ba95d10ccbe13e2fca427228483b045576f2dc4c Review-Url: https://codereview.chromium.org/2161953003 Cr-Original-Commit-Position: refs/heads/master@{#37923} Cr-Commit-Position: refs/heads/master@{#37949}
-
jgruber authored
Revert of Remove stack overflow boilerplate (patchset #3 id:40001 of https://codereview.chromium.org/2161953003/ ) Reason for revert: Clusterfuzz failures in parent CL https://codereview.chromium.org/2142933003/ Original issue's description: > Remove stack overflow boilerplate > > We no longer need to prepare the stack overflow error in advance now that > Errors are constructed in C++. > > R=yangguo@chromium.org > BUG= > > Committed: https://crrev.com/ba95d10ccbe13e2fca427228483b045576f2dc4c > Cr-Commit-Position: refs/heads/master@{#37923} TBR=yangguo@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/2169563003 Cr-Commit-Position: refs/heads/master@{#37927}
-
jgruber authored
We no longer need to prepare the stack overflow error in advance now that Errors are constructed in C++. R=yangguo@chromium.org BUG= Review-Url: https://codereview.chromium.org/2161953003 Cr-Commit-Position: refs/heads/master@{#37923}
-
- 20 Jul, 2016 2 commits
-
-
jgruber authored
This ports a large portion of Error methods to C++, including the constructor, stack setter and getter, and Error.prototype.toString. BUG= Committed: https://crrev.com/5742da056a290caa13a0b8717ddb1e43424e0d31 Review-Url: https://codereview.chromium.org/2142933003 Cr-Original-Commit-Position: refs/heads/master@{#37870} Cr-Commit-Position: refs/heads/master@{#37908}
-
jgruber authored
Revert of Move Error methods to C++ (patchset #11 id:200001 of https://codereview.chromium.org/2142933003/ ) Reason for revert: Clusterfuzz failures: https://bugs.chromium.org/p/chromium/issues/detail?id=629749 Original issue's description: > Move Error methods to C++ > > This ports a large portion of Error methods to C++, > including the constructor, stack setter and getter, > and Error.prototype.toString. > > BUG= > > Committed: https://crrev.com/5742da056a290caa13a0b8717ddb1e43424e0d31 > Cr-Commit-Position: refs/heads/master@{#37870} TBR=yangguo@chromium.org,bmeurer@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/2159223004 Cr-Commit-Position: refs/heads/master@{#37881}
-
- 19 Jul, 2016 1 commit
-
-
jgruber authored
This ports a large portion of Error methods to C++, including the constructor, stack setter and getter, and Error.prototype.toString. BUG= Review-Url: https://codereview.chromium.org/2142933003 Cr-Commit-Position: refs/heads/master@{#37870}
-
- 01 Jul, 2016 1 commit
-
-
bmeurer authored
Import fdlibm versions of acos, acosh, asin and asinh, which are more precise and produce the same result across platforms (we were using libm versions for asin and acos so far, where both speed and precision depended on the operating system so far). Introduce appropriate TurboFan operators for these functions and use them both for inlining and for the generic builtin. Also migrate the Math.imul and Math.fround builtins to TurboFan builtins to ensure that their behavior is always exactly the same as the inlined TurboFan version (i.e. C++ truncation semantics for double to float don't necessarily meet the JavaScript semantics). For completeness, also migrate Math.sign, which can even get some nice love in TurboFan. Drive-by-fix: Some alpha-sorting on the Math related functions, and cleanup the list of Math intrinsics that we have to export via the native context currently. BUG=v8:3266,v8:3496,v8:3509,v8:3952,v8:5169,v8:5170,v8:5171,v8:5172 TBR=rossberg@chromium.org R=franzih@chromium.org Review-Url: https://codereview.chromium.org/2116753002 Cr-Commit-Position: refs/heads/master@{#37476}
-
- 30 Jun, 2016 2 commits
-
-
franzih authored
Like the other Math builtins, Math.abs() is now a TurboFan builtin. It uses RawMachineAssembler::Float64Abs(). R=bmeurer@chromium.org BUG=v8:5163, v8:5086 LOG=N Review-Url: https://codereview.chromium.org/2115493002 Cr-Commit-Position: refs/heads/master@{#37433}
-
rmcilroy authored
Converts FastNewClosureStub from a Hydrogen to a TurboFan code stub. The plan is to start using this in the Interpreter CreateClosure bytecode handler (in a follow-up CL). BUG=v8:4280 Review-Url: https://codereview.chromium.org/2100883003 Cr-Commit-Position: refs/heads/master@{#37429}
-
- 28 Jun, 2016 1 commit
-
-
neis authored
R=adamk@chromium.org BUG= Review-Url: https://codereview.chromium.org/2081733004 Cr-Commit-Position: refs/heads/master@{#37311}
-
- 23 Jun, 2016 1 commit
-
-
verwaest authored
BUG=chromium:603144 Review-Url: https://codereview.chromium.org/2083353002 Cr-Commit-Position: refs/heads/master@{#37214}
-
- 21 Jun, 2016 1 commit
-
-
rossberg authored
Implements: - WebAssembly object, - WebAssembly.Module constructor, - WebAssembly.Instance constructor, - WebAssembly.compile async method, - and Module and Instance instance objects. Also, changes ErrorThrower to support capturing errors in a promise reject. Since we cannot yet compile without fixing the Wasm memory, and cannot validate a module without compiling, the Module constructor and compile method don't do anything yet but checking that their argument is a suitable BufferSource. Instead of a compiled module, the hidden state of a Module object currently is just that buffer. BUG= Review-Url: https://codereview.chromium.org/2084573002 Cr-Commit-Position: refs/heads/master@{#37143}
-
- 17 Jun, 2016 1 commit
-
-
bmeurer authored
Import base::ieee754::exp() from FreeBSD msun and introduce a Float64Exp TurboFan operator based on that, similar to what we do for Float64Log. Rewrite Math.exp() as TurboFan builtin and use that operator to also inline Math.exp() into optimized TurboFan functions. CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel BUG=v8:3266,v8:3468,v8:3493,v8:5086,v8:5108,chromium:620786 R=mvstanton@chromium.org Committed: https://crrev.com/93e26314afc9da9b5b8bd998688262444ed73260 Review-Url: https://codereview.chromium.org/2077533002 Cr-Original-Commit-Position: refs/heads/master@{#37037} Cr-Commit-Position: refs/heads/master@{#37047}
-
- 16 Jun, 2016 2 commits
-
-
machenbach authored
Revert of [builtins] Introduce proper Float64Exp operator. (patchset #5 id:80001 of https://codereview.chromium.org/2077533002/ ) Reason for revert: [Sheriff] Leads to some different rounding as it seems in some audio layout tests. Please rebase upstream first if intended: https://build.chromium.org/p/client.v8.fyi/builders/V8-Blink%20Linux%2064/builds/7508 Original issue's description: > [builtins] Introduce proper Float64Exp operator. > > Import base::ieee754::exp() from FreeBSD msun and introduce a Float64Exp > TurboFan operator based on that, similar to what we do for Float64Log. > Rewrite Math.exp() as TurboFan builtin and use that operator to also > inline Math.exp() into optimized TurboFan functions. > > BUG=v8:3266,v8:3468,v8:3493,v8:5086,v8:5108 > R=mvstanton@chromium.org > > Committed: https://crrev.com/93e26314afc9da9b5b8bd998688262444ed73260 > Cr-Commit-Position: refs/heads/master@{#37037} TBR=mvstanton@chromium.org,ahaas@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:3266,v8:3468,v8:3493,v8:5086,v8:5108 Review-Url: https://codereview.chromium.org/2070813002 Cr-Commit-Position: refs/heads/master@{#37039}
-
bmeurer authored
Import base::ieee754::exp() from FreeBSD msun and introduce a Float64Exp TurboFan operator based on that, similar to what we do for Float64Log. Rewrite Math.exp() as TurboFan builtin and use that operator to also inline Math.exp() into optimized TurboFan functions. BUG=v8:3266,v8:3468,v8:3493,v8:5086,v8:5108 R=mvstanton@chromium.org Review-Url: https://codereview.chromium.org/2077533002 Cr-Commit-Position: refs/heads/master@{#37037}
-
- 08 Jun, 2016 1 commit
-
-
gsathya authored
Revert "Revert of [builtins] Properly optimize TypedArray/DataView accessors. (patchset #3 id:40001 of https://codereview.chromium.org/2042013003/ )" This reverts commit d3a43e47. This patch also adds typed_array_fun and typed_array_protoype to the native context. These are used in InstallTypedArray to set up the prototype chain correctly for each typed array sub class. This removes the need to later monkey patch them prototype chain in typedarray.js. This mechanism is also used to get hold of the TypedArray in typedarray.js, removing the need for a global TypedArray. This patch updates CallRuntime.golden to account for the two extra native runtime calls. This patch also fixes some formatting issues (by running git cl format). BUG=chromium:579905, chromium:593634, v8:4085, v8:5073 Review-Url: https://codereview.chromium.org/2046333002 Cr-Commit-Position: refs/heads/master@{#36811}
-
- 03 Jun, 2016 1 commit
-
-
bmeurer authored
Introduce a dedicated Float64Log machine operator, that is either implemented by a direct C call or by platform specific code, i.e. using the FPU on x64 and ia32. This operator is used to implement Math.log as a proper TurboFan builtin on top of the CodeStubAssembler. Also introduce a NumberLog simplified operator on top of Float64Log and use that for the fast inline path of Math.log inside TurboFan optimized code. BUG=v8:5065 Review-Url: https://codereview.chromium.org/2029413005 Cr-Commit-Position: refs/heads/master@{#36703}
-
- 30 May, 2016 2 commits
-
-
machenbach authored
Revert of [builtins] Also migrate String.prototype.toLowerCase/toUpperCase to C++. (patchset #2 id:20001 of https://codereview.chromium.org/2018983002/ ) Reason for revert: Please rebase blink first (if intended): https://build.chromium.org/p/client.v8.fyi/builders/V8-Blink%20Linux%2064/builds/7092 Original issue's description: > [builtins] Also migrate String.prototype.toLowerCase/toUpperCase to C++. > > These builtins always call into C++ anyways and so there's no point in > having the JavaScript wrapper around them, but instead they can be > implemented as C++ builtins directly. > > R=franzih@chromium.org > BUG=v8:5049 > > Committed: https://crrev.com/4e66888869bf04c73b41e5747e4595747a7b20df > Cr-Commit-Position: refs/heads/master@{#36569} TBR=franzih@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:5049 Review-Url: https://codereview.chromium.org/2023753002 Cr-Commit-Position: refs/heads/master@{#36572}
-
bmeurer authored
These builtins always call into C++ anyways and so there's no point in having the JavaScript wrapper around them, but instead they can be implemented as C++ builtins directly. R=franzih@chromium.org BUG=v8:5049 Review-Url: https://codereview.chromium.org/2018983002 Cr-Commit-Position: refs/heads/master@{#36569}
-
- 20 May, 2016 1 commit
-
-
yangguo authored
R=cbruni@chromium.org Review-Url: https://codereview.chromium.org/1996333002 Cr-Commit-Position: refs/heads/master@{#36416}
-
- 18 May, 2016 1 commit
-
-
neis authored
When setting a generator function's "prototype" property to a non-object, the prototype of new generator instances should be %GeneratorPrototype%, not %ObjectPrototype%. R=verwaest@chromium.org BUG=v8:5011 Review-Url: https://codereview.chromium.org/1982203003 Cr-Commit-Position: refs/heads/master@{#36313}
-
- 17 May, 2016 2 commits
-
-
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}
-
caitpotter88 authored
BUG=v8:4483 LOG=N R=littledan@chromium.org, adamk@chromium.org Review-Url: https://codereview.chromium.org/1895603002 Cr-Commit-Position: refs/heads/master@{#36263}
-
- 13 May, 2016 1 commit
-
-
gsathya authored
This reverts commit 41d571df. Reason for revert: This patch breaks the correctness of the typedarray properties such as length, byteOffset, byteLength. The accessor check optimization code is dead code eliminated. A follow up patch will fix this optimization correctly. BUG=chromium:593634 Review-Url: https://codereview.chromium.org/1977983002 Cr-Commit-Position: refs/heads/master@{#36254}
-
- 12 May, 2016 1 commit
-
-
cbruni authored
Currently we do not check for @@isConcatSpreadable properly. If the Symbol is set on the Array.prototype or Object.prototype the current fast paths fail. This CL adds a fix to globally invalidate a isConcatSpreadable_protector. Drive-by-fix: use named accessors for context variables LOG=N BUG=chromium:542504, v8:903 Review-Url: https://codereview.chromium.org/1409123003 Cr-Commit-Position: refs/heads/master@{#36201}
-
- 09 May, 2016 1 commit
-
-
gsathya authored
This patch installs %TypedArray% and its prototype on the native context, and wires them up to each TypedArray subclass. This is later used to check the holder of length, byteLength and byteOffset is %Typedarray% and apply the appropriate optimizations. BUG=chromium:593634 LOG=Y Review-Url: https://codereview.chromium.org/1949863002 Cr-Commit-Position: refs/heads/master@{#36116}
-
- 29 Apr, 2016 2 commits
-
-
jkummerow authored
Reland of Remove more dead code after Object.observe removal (patchset #1 id:1 of https://codereview.chromium.org/1929293002/ ) This moves __{define,lookup}{Getter,Setter}__ to builtins.cc. Compared to the first attempt, this patch now preserves non-spec-compliant legacy behavior and does not throw on failure. Original review: https://codereview.chromium.org/1904313004 Review-Url: https://codereview.chromium.org/1932163002 Cr-Commit-Position: refs/heads/master@{#35899}
-
machenbach authored
Revert of Remove more dead code after Object.observe removal (patchset #5 id:80001 of https://codereview.chromium.org/1904313004/ ) Reason for revert: [Sheriff] Looks like this breaks layout tests: https://build.chromium.org/p/client.v8.fyi/builders/V8-Blink%20Linux%2064/builds/6442 Original issue's description: > Remove more dead code after Object.observe removal > > This moves __{define,lookup}{Getter,Setter}__ to builtins.cc to free up the JavaScript implementation of DefineOwnProperty for deletion. TBR=verwaest@chromium.org,jkummerow@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/1929293002 Cr-Commit-Position: refs/heads/master@{#35886}
-
- 28 Apr, 2016 1 commit
-
-
jkummerow authored
This moves __{define,lookup}{Getter,Setter}__ to builtins.cc to free up the JavaScript implementation of DefineOwnProperty for deletion. Review-Url: https://codereview.chromium.org/1904313004 Cr-Commit-Position: refs/heads/master@{#35876}
-
- 25 Apr, 2016 1 commit
-
-
neis authored
R=bmeurer@chromium.org BUG= Review URL: https://codereview.chromium.org/1919763002 Cr-Commit-Position: refs/heads/master@{#35761}
-