- 04 Mar, 2016 37 commits
-
-
mtrofin authored
It seems we produce both the usual add as well as the add with overflow, when we should only generate the overflow variant. This invalidates SSA assumptions in 2 tests (cctest/test-run-machops/RunInt32AddWithOverflowImm and cctest/test-run-machops/RunInt64AddWithOverflowImm). BUG= Review URL: https://codereview.chromium.org/1757213003 Cr-Commit-Position: refs/heads/master@{#34507}
-
binji authored
Reland of https://codereview.chromium.org/1765673002 R=titzer@chromium.org R=bradnelson@chromium.org LOG=n BUG= Review URL: https://codereview.chromium.org/1761173003 Cr-Commit-Position: refs/heads/master@{#34506}
-
mbrandy authored
For platforms that use function descriptors (currently AIX and PPC64BE), log an external callback's entrypoint address rather than its function descriptor address. R=jkummerow@chromium.org, michael_dawson@ca.ibm.com TEST=cctest/test-cpu-profiler/JsNativeJsSample BUG= Review URL: https://codereview.chromium.org/1752173003 Cr-Commit-Position: refs/heads/master@{#34505}
-
dgozman authored
This scope is used to control microtasks execution when MicrotasksPolicy::kScoped is engaged. Attempt #2. First one was reverted due to chromium breakage: SetAutorunMicrotasks(false) was broken. BUG=chromium:585949 LOG=Y TEST=ScopedMicrotasks Review URL: https://codereview.chromium.org/1741893003 Cr-Commit-Position: refs/heads/master@{#34504}
-
mstarzinger authored
This adds more comments to the V8 compiler API explaining the entry methods within that API. It also establishes a separate method for OSR compilation since {Compiler::GetOptimizedCode} is only used for OSR by now. R=danno@chromium.org Review URL: https://codereview.chromium.org/1769523002 Cr-Commit-Position: refs/heads/master@{#34503}
-
machenbach authored
Revert of Reland "[api] Don't go to javascript to construct API functions" (patchset #1 id:1 of https://codereview.chromium.org/1756973002/ ) Reason for revert: [Sheriff] Breaks blink tests. Please fix upstream first. https://build.chromium.org/p/client.v8.fyi/builders/V8-Blink%20Linux%2064/builds/5125 Original issue's description: > Reland "[api] Don't go to javascript to construct API functions" > > BUG= > R=verwaest@chromium.org > > Committed: https://crrev.com/d5d4f0b80f585878130bffb40ff8e960646823d8 > Cr-Commit-Position: refs/heads/master@{#34496} TBR=verwaest@chromium.org,bmeurer@chromium.org,jochen@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/1767663002 Cr-Commit-Position: refs/heads/master@{#34502}
-
jyan authored
R=danno@chromium.org,jkummerow@chromium.org,jochen@chromium.org,joransiu@ca.ibm.com,michael_dawson@ca.ibm.com,mbrandy@us.ibm.com BUG= Review URL: https://codereview.chromium.org/1762743002 Cr-Commit-Position: refs/heads/master@{#34501}
-
verwaest authored
BUG= Review URL: https://codereview.chromium.org/1765633004 Cr-Commit-Position: refs/heads/master@{#34500}
-
fmeawad authored
The Tracing split CL https://codereview.chromium.org/1707563002 mostly moved the location of the TRACE call, but it added 2 very high frequency calls related to tracking V8.External. In most benchmark and devices the added overhead is negligible except on N6 where it gets amplified. This CL removes those 2 calls until more efficient tracing or a different technique is used. BUG=588137 LOG=N Review URL: https://codereview.chromium.org/1765673003 Cr-Commit-Position: refs/heads/master@{#34499}
-
neis authored
BUG=chromium:591699 LOG=n R=rossberg Review URL: https://codereview.chromium.org/1764953002 Cr-Commit-Position: refs/heads/master@{#34498}
-
verwaest authored
BUG= Review URL: https://codereview.chromium.org/1768553002 Cr-Commit-Position: refs/heads/master@{#34497}
-
jochen authored
BUG= R=verwaest@chromium.org Review URL: https://codereview.chromium.org/1756973002 Cr-Commit-Position: refs/heads/master@{#34496}
-
verwaest authored
BUG=148757 LOG=n Review URL: https://codereview.chromium.org/1768443003 Cr-Commit-Position: refs/heads/master@{#34495}
-
haraken authored
Blink wants to distinguish GCs triggered by CollectAllAvailableGarbage from GCs forced by testing. This CL introduces a new flag to differentiate the two GC types. BUG=591463 LOG=Y Review URL: https://codereview.chromium.org/1757263003 Cr-Commit-Position: refs/heads/master@{#34494}
-
verwaest authored
BUG=588893, 325923 LOG=n Review URL: https://codereview.chromium.org/1762273002 Cr-Commit-Position: refs/heads/master@{#34493}
-
verwaest authored
BUG= Review URL: https://codereview.chromium.org/1765713003 Cr-Commit-Position: refs/heads/master@{#34492}
-
mvstanton authored
Crankshaft can't track operand/environment changes between arbitrary statements. We need that to fully support do-expressions. Instead, a subset is supported by bailing out on break statements, continue statements, and if we've made an OSR entry within a do-expression. This partial support is a good idea because do-expressions are a useful tool for desugaring during parsing. BUG= R=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/1769463002 Cr-Commit-Position: refs/heads/master@{#34491}
-
ivica.bogosavljevic authored
Typo in implementation of FastNewObjectStub::Generate for MIPS32 cause unnecessary calls to slow Runtime::kNewObject TEST=cctest/test-heap-profiler/TrackBumpPointerAllocations BUG= Review URL: https://codereview.chromium.org/1762263002 Cr-Commit-Position: refs/heads/master@{#34490}
-
mstarzinger authored
This removes the entry point to the compiler API which allows requesting lazily compiled full-codegen code. The aim is to eventually allow the decisions of which baseline compiler should be used (e.g. Ignition or full-codegen) be centralized within the compiler pipeline. R=bmeurer@chromium.org Review URL: https://codereview.chromium.org/1764963002 Cr-Commit-Position: refs/heads/master@{#34489}
-
verwaest authored
This is the equivalent of the fast-path in ApplyTransitionToDataProperty. BUG=588893, 325923 LOG=n Review URL: https://codereview.chromium.org/1765633003 Cr-Commit-Position: refs/heads/master@{#34488}
-
ahaas authored
On 32-bit systems FXXXConvertI64 instructions are compiled to calls to C functions. The TF node for the function call is already generated in the wasm compiler, the lowering of the I64 parameter is done in the Int64Lowering. R=titzer@chromium.org, yangguo@chromium.org Review URL: https://codereview.chromium.org/1738623003 Cr-Commit-Position: refs/heads/master@{#34487}
-
mstarzinger authored
R=mvstanton@chromium.org Review URL: https://codereview.chromium.org/1727953004 Cr-Commit-Position: refs/heads/master@{#34486}
-
bmeurer authored
Add StringLessThanStub, StringLessThanOrEqualStub, StringGreaterThanStub and StringGreaterThanOrEqualStub, based on the CodeStubAssembler, and hook them up with TurboFan (and Ignition). The stubs are currently essentially comparable with the StringCompareStub, which is now obsolete. We can later extend these stubs to cover more interesting cases (i.e. two byte sequential string comparisons, etc.). R=epertoso@chromium.org Review URL: https://codereview.chromium.org/1765823002 Cr-Commit-Position: refs/heads/master@{#34485}
-
ishell authored
This CL also disables inlining of calls at tail position. This is a preparational step. Tail call elimination itself is neither enabled nor supported yet. BUG=v8:4698 LOG=N Review URL: https://codereview.chromium.org/1761023003 Cr-Commit-Position: refs/heads/master@{#34484}
-
bmeurer authored
According to https://www.w3.org/TR/html5/obsolete.html#dom-document-all the undetectable bit (for document.all) only affects comparisons with undefined and null. In particular comparisons with other values are not affected, so we can actually simplify the handling of undetectable a lot by only checking it when null or undefined might be involved (this is actually in line with what the CompareIC does). CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel R=verwaest@chromium.org Review URL: https://codereview.chromium.org/1764613004 Cr-Commit-Position: refs/heads/master@{#34483}
-
machenbach authored
Revert of [wasm] Update {i32,i64}.const to use signed leb128 (patchset #3 id:40001 of https://codereview.chromium.org/1765673002/ ) Reason for revert: [Sheriff] Breaks chromium win compile: https://build.chromium.org/p/client.v8.fyi/builders/V8-Blink%20Win/builds/3844/steps/compile/logs/stdio Original issue's description: > [wasm] Update {i32,i64}.const to use signed leb128 > > R=titzer@chromium.org > R=bradnelson@chromium.org > LOG=n > > Committed: https://crrev.com/4b613a67e0aa4e073946f5f0dd95ee9366c8ca86 > Cr-Commit-Position: refs/heads/master@{#34471} TBR=bradnelson@chromium.org,titzer@chromium.org,binji@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/1760363003 Cr-Commit-Position: refs/heads/master@{#34482}
-
Michael Achenbach authored
Cr-Commit-Position: refs/heads/master@{#34481}
-
machenbach authored
Revert of Introduce v8::MicrotasksScope. (patchset #6 id:100001 of https://codereview.chromium.org/1741893003/ ) Reason for revert: [Sheriff] Speculative. Seems to break a bunch of webkit tests and causes timeouts: https://build.chromium.org/p/client.v8.fyi/builders/V8-Blink%20Linux%2064/builds/5103 Please rebase upstream if intended. Original issue's description: > Introduce v8::MicrotasksScope. > > This scope is used to control microtasks execution when MicrotasksPolicy::kScoped is engaged. > > BUG=chromium:585949 > LOG=Y > TEST=ScopedMicrotasks > > Committed: https://crrev.com/db77cec242dbdf8ee26da8232fa930270429f253 > Cr-Commit-Position: refs/heads/master@{#34472} TBR=jochen@chromium.org,adamk@chromium.org,dgozman@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=chromium:585949 Review URL: https://codereview.chromium.org/1762943002 Cr-Commit-Position: refs/heads/master@{#34480}
-
zhengxing.li authored
port 2689548e (r34459) original commit message: These new stubs perform exactly the same job as the string equality case for the CompareIC, but are platform independent and usable outside of fullcodegen and Crankshaft. We use them in the StrictEqualStub and the StrictNotEqualStub instead of falling back to the runtime immediately for String comparisons, and we also use them in TurboFan to perform String equality or inequality comparisons. These stubs currently handle only internalized and one byte strings w/o going to C++, but it should be easy to add support for more string cases later, i.e. utilizing already flattened cons strings or comparing two byte strings as well. BUG= Review URL: https://codereview.chromium.org/1760343002 Cr-Commit-Position: refs/heads/master@{#34479}
-
zhengxing.li authored
port 18b9c1ce (r34461) original commit message: Per ProxyCreate() (https://tc39.github.io/ecma262/#sec-proxycreate), a Proxy is only given a [[Call]] slot if the target has a [[Call]] slot as well. This was previously implemented correctly for [[Construct]], but not for [[Call]]. BUG= Review URL: https://codereview.chromium.org/1754593007 Cr-Commit-Position: refs/heads/master@{#34478}
-
bradnelson authored
BUG= TBR=titzer@chromium.org LOG=N NOTRY=true Review URL: https://codereview.chromium.org/1761273002 Cr-Commit-Position: refs/heads/master@{#34477}
-
bradnelson authored
Frames entering of inside wasm don't have a function or context argument. Adding distinct wasm frame and function types to express this. Fixes a GC issue on several embenchen wasm tests, reenabling them. BUG= https://code.google.com/p/v8/issues/detail?id=4203 TEST=mjsunit/wasm/embenchen R=titzer@chromium.org,aseemgarg@chromium.org,jfb@chromium.org,yangguo@chromium.org LOG=N Review URL: https://codereview.chromium.org/1764603003 Cr-Commit-Position: refs/heads/master@{#34476}
-
v8-autoroll authored
Rolling v8/tools/clang to 3183208ae119c48012bed71645cb2ca537120811 TBR=machenbach@chromium.org,vogelheim@chromium.org,hablich@chromium.org Review URL: https://codereview.chromium.org/1768453002 Cr-Commit-Position: refs/heads/master@{#34475}
-
adamk authored
BUG=v8:3699, chromium:588803 LOG=y CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel Review URL: https://codereview.chromium.org/1749353004 Cr-Commit-Position: refs/heads/master@{#34474}
-
mtrofin authored
Do not emit 2 operations for int64 add with overflow. BUG= Review URL: https://codereview.chromium.org/1764013002 Cr-Commit-Position: refs/heads/master@{#34473}
-
dgozman authored
This scope is used to control microtasks execution when MicrotasksPolicy::kScoped is engaged. BUG=chromium:585949 LOG=Y TEST=ScopedMicrotasks Review URL: https://codereview.chromium.org/1741893003 Cr-Commit-Position: refs/heads/master@{#34472}
-
binji authored
R=titzer@chromium.org R=bradnelson@chromium.org LOG=n Review URL: https://codereview.chromium.org/1765673002 Cr-Commit-Position: refs/heads/master@{#34471}
-
- 03 Mar, 2016 3 commits
-
-
littledan authored
ES2015 generally bans FunctionDeclarations in positions which expect a Statement, as opposed to a StatementListItem, such as a FunctionDeclaration which constitutes the body of a for loop. However, Annex B 3.2 and 3.4 make exceptions for labeled function declarations and function declarations as the body of an if statement in sloppy mode, in the latter case specifying that the semantics are as if the function declaration occurred in a block. Chrome has historically permitted further extensions, for the body of any flow control construct. This patch addresses both the syntactic and semantic mismatches between V8 and the spec. For the semantic mismatch, function declarations as the body of if statements change from unconditionally hoisting in certain cases to acquiring the sloppy mode function in block semantics (based on Annex B 3.3). For the extra syntax permitted, this patch adds a flag, --harmony-restrictive-declarations, which excludes disallowed function declaration cases. A new UseCounter, LegacyFunctionDeclaration, is added to count how often function declarations occur as the body of other constructs in sloppy mode. With this patch, the code generally follows the form of the specification with respect to parsing FunctionDeclarations, rather than allowing them in arbitrary Statement positions, and makes it more clear where our extensions occur. BUG=v8:4647 R=adamk LOG=Y Review URL: https://codereview.chromium.org/1757543003 Cr-Commit-Position: refs/heads/master@{#34470}
-
adamk authored
CallSite depends on using the function name to get ahold of the property name from which an exception was thrown. This fix properly handles the ES2015 names for getters and setters. The new tests pass both with --harmony-function-name off and on. BUG=v8:3699 LOG=n Review URL: https://codereview.chromium.org/1751403004 Cr-Commit-Position: refs/heads/master@{#34469}
-
bradnelson authored
BUG= https://code.google.com/p/v8/issues/detail?id=4203 TEST=mjsunit/wasm/embenchen R=titzer@chromium.org,aseemgarg@chromium.org LOG=N NOTRY=true Review URL: https://codereview.chromium.org/1758373002 Cr-Commit-Position: refs/heads/master@{#34468}
-