- 12 Dec, 2016 1 commit
-
-
clemensh authored
The current logic in Isolate::GetLocationFromStackTrace just ignores wasm frames, making the computed location point to the first javascript frame, like this: test.js:17: RuntimeError: divide by zero module.exports.main(); ^ RuntimeError: divide by zero at main (<WASM>[1]+5) at test.js:17:16 This CL not only fixes the location to point to the top-most wasm frame, but also exposes to the embedder that the script of that location is a wasm script, allowing for custom printing of wasm locations. The Shell::ReportException method now checks for this flag, and prints wasm locations like this: <WASM>[0]+5: RuntimeError: divide by zero RuntimeError: divide by zero at main (<WASM>[0]+5) at test/message/wasm-trap.js:15:16 R=titzer@chromium.org, yangguo@chromium.org BUG=chromium:613110 Review-Url: https://codereview.chromium.org/2563673002 Cr-Commit-Position: refs/heads/master@{#41640}
-
- 08 Dec, 2016 1 commit
-
-
rmcilroy authored
BUG=v8:5723 Review-Url: https://codereview.chromium.org/2555263002 Cr-Commit-Position: refs/heads/master@{#41583}
-
- 07 Dec, 2016 1 commit
-
-
jwolfe authored
When an octal escape sequence is in a string in strict mode: - Octal literals are not allowed in strict mode. + Octal escape sequences are not allowed in strict mode. When an octal escape sequence is in a template string: - Octal literals are not allowed in template strings. + Octal escape sequences are not allowed in template strings. BUG=v8:4973 CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel Review-Url: https://codereview.chromium.org/2551633002 Cr-Commit-Position: refs/heads/master@{#41560}
-
- 29 Nov, 2016 1 commit
-
-
vogelheim authored
BUG=chromium:669017 Review-Url: https://codereview.chromium.org/2536783003 Cr-Commit-Position: refs/heads/master@{#41364}
-
- 24 Nov, 2016 1 commit
-
-
mstarzinger authored
This makes sure call-site rendering for certain {TypeError} messages is based on the correct underlying {JSFunction}, even when inlined frames are present. Only the {FrameSummary} knows the exact function. R=verwaest@chromium.org TEST=message/regress/regress-crbug-661579 BUG=chromium:661579 Review-Url: https://codereview.chromium.org/2521103005 Cr-Commit-Position: refs/heads/master@{#41264}
-
- 23 Nov, 2016 2 commits
-
-
mstarzinger authored
This fixes the message reported via the {TypeError} thrown when trying to call a non-constructable function as a constructor. Also adds some more related message tests for similar exceptions. R=bmeurer@chromium.org TEST=message/call-non-constructable BUG=chromium:661579 Review-Url: https://codereview.chromium.org/2523803003 Cr-Commit-Position: refs/heads/master@{#41220}
-
mstarzinger authored
R=neis@chromium.org BUG=v8:1569 Review-Url: https://codereview.chromium.org/2528433005 Cr-Commit-Position: refs/heads/master@{#41211}
-
- 18 Nov, 2016 1 commit
-
-
marja authored
It originates from the era where we used to run a separate preparse step before parsing and store the function data. Now the usage of preparser is something completely different, so this flag doesn't make sense any more. In addition, this way we get more test coverage for preparser (for small scripts). BUG= Review-Url: https://codereview.chromium.org/2513563002 Cr-Commit-Position: refs/heads/master@{#41110}
-
- 27 Oct, 2016 1 commit
-
-
neis authored
We used to point elsewhere, for instance the right-hand-side of an assignment. Small limitation: Since variable proxies only have a start position, not an end position, the best we can do is point at the first character. (We cannot rely on the scanner's last token position because Declare may be called long after the variable has been scanned.) R=adamk@chromium.org BUG=v8:5572 Review-Url: https://codereview.chromium.org/2447143005 Cr-Commit-Position: refs/heads/master@{#40613}
-
- 26 Oct, 2016 1 commit
-
-
neis authored
For instance, when an import cannot be resolved, actually point at the corresponding import statement. BUG=v8:1569 Review-Url: https://codereview.chromium.org/2451153002 Cr-Commit-Position: refs/heads/master@{#40594}
-
- 28 Sep, 2016 1 commit
-
-
ishell authored
BUG=v8:4915 Review-Url: https://codereview.chromium.org/2372513003 Cr-Commit-Position: refs/heads/master@{#39808}
-
- 15 Sep, 2016 1 commit
-
-
neis authored
In case of duplicate exports, always report the error for the very last one. (Fixed a bug.) BUG=v8:5358,v8:1569 Review-Url: https://codereview.chromium.org/2340953002 Cr-Commit-Position: refs/heads/master@{#39434}
-
- 14 Sep, 2016 2 commits
-
-
hablich authored
Revert of [modules] Make duplicate export error deterministic. (patchset #2 id:20001 of https://codereview.chromium.org/2331003002/ ) Reason for revert: Seems to break one of our arm64 bots: https://chromegw.corp.google.com/i/client.v8.ports/builders/V8%20Linux%20-%20arm64%20-%20sim%20-%20nosnap%20-%20debug/builds/2303 Original issue's description: > [modules] Make duplicate export error deterministic. > > In case of duplicate exports, always report the error for the very last > one. > > R=adamk@chromium.org > BUG=v8:5358,v8:1569 > > Committed: https://crrev.com/da1f911c4269048d24a3442791b18523455f3b24 > Cr-Commit-Position: refs/heads/master@{#39424} TBR=adamk@chromium.org,neis@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:5358,v8:1569 Review-Url: https://codereview.chromium.org/2340903002 Cr-Commit-Position: refs/heads/master@{#39430}
-
neis authored
In case of duplicate exports, always report the error for the very last one. R=adamk@chromium.org BUG=v8:5358,v8:1569 Review-Url: https://codereview.chromium.org/2331003002 Cr-Commit-Position: refs/heads/master@{#39424}
-
- 07 Sep, 2016 1 commit
-
-
heimbuef authored
BUG=v8:5358 Review-Url: https://codereview.chromium.org/2316973002 Cr-Commit-Position: refs/heads/master@{#39240}
-
- 31 Aug, 2016 1 commit
-
-
adamk authored
This removes two bits of duplication: - Parsing of each AssignmentExpression, which previously was called first outside the loop and then inside the loop. - Parsing of arrow rest parameters, which previously was handled separately for the one-arg and N-arg cases. The only change in behavior is in a few error messages. Review-Url: https://codereview.chromium.org/2279363002 Cr-Commit-Position: refs/heads/master@{#39030}
-
- 29 Aug, 2016 1 commit
-
-
littledan authored
Tail calls don't make sense from async functions and generators, as each activation of these functions needs to make a new, distnict, non-reused generator object. These tail calls are not required per spec. This patch disables both syntactic and implicit tail calls in async functions and generators. R=neis BUG=v8:5301,chromium:639270 Review-Url: https://codereview.chromium.org/2278413003 Cr-Commit-Position: refs/heads/master@{#38986}
-
- 25 Jul, 2016 1 commit
-
-
neis authored
This flag has been enabled by default for over a month now. R=mstarzinger@chromium.org, rmcilroy@chromium.org BUG= Review-Url: https://codereview.chromium.org/2176143002 Cr-Commit-Position: refs/heads/master@{#38020}
-
- 12 Jul, 2016 1 commit
-
-
mstarzinger authored
R=machenbach@chromium.org Review-Url: https://codereview.chromium.org/2141013002 Cr-Commit-Position: refs/heads/master@{#37678}
-
- 04 Jul, 2016 1 commit
-
-
jgruber authored
Stack trace generation requires access to the receiver; and while the receiver is already on the stack, we cannot determine its position during stack trace generation (it's stored in argv[0], and argc is only stored in a callee-saved register). This patch grants access to the receiver by pushing argc onto builtin exit frames as an extra argument. Compared to simply pushing the receiver, this requires an additional dereference during stack trace generation, but one fewer during builtin calls. BUG=v8:4815 Review-Url: https://codereview.chromium.org/2106883003 Cr-Commit-Position: refs/heads/master@{#37500}
-
- 30 Jun, 2016 1 commit
-
-
jgruber authored
Prior to this commit, calls to C++ builtins created standard exit frames, which are skipped when constructing JS stack traces. In order to show these calls on traces, we introduce a new builtin exit frame type. Builtin exit frames contain target and new.target on the stack and are not skipped during stack trace construction. BUG=v8:4815 R=bmeurer@chromium.org, yangguo@chromium.org CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel;tryserver.v8:v8_linux_nosnap_dbg Committed: https://crrev.com/3c60c6b105f39344f93a8407f41534e5e60cf19a Review-Url: https://codereview.chromium.org/2090723005 Cr-Original-Commit-Position: refs/heads/master@{#37384} Cr-Commit-Position: refs/heads/master@{#37416}
-
- 29 Jun, 2016 2 commits
-
-
bmeurer authored
Revert of [builtins] New frame type for exits to C++ builtins (patchset #5 id:80001 of https://codereview.chromium.org/2090723005/ ) Reason for revert: Looks like this breaks on nosnap: http://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20nosnap%20-%20debug/builds/7626 Original issue's description: > [builtins] New frame type for exits to C++ builtins > > Prior to this commit, calls to C++ builtins created standard exit > frames, which are skipped when constructing JS stack traces. In order to > show these calls on traces, we introduce a new builtin exit frame type. > > Builtin exit frames contain target and new.target on the stack and are > not skipped during stack trace construction. > > BUG=v8:4815 > R=bmeurer@chromium.org, yangguo@chromium.org > CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel > > Committed: https://crrev.com/3c60c6b105f39344f93a8407f41534e5e60cf19a > Cr-Commit-Position: refs/heads/master@{#37384} TBR=yangguo@chromium.org,jgruber@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4815 Review-Url: https://codereview.chromium.org/2106113002 Cr-Commit-Position: refs/heads/master@{#37394}
-
jgruber authored
Prior to this commit, calls to C++ builtins created standard exit frames, which are skipped when constructing JS stack traces. In order to show these calls on traces, we introduce a new builtin exit frame type. Builtin exit frames contain target and new.target on the stack and are not skipped during stack trace construction. BUG=v8:4815 R=bmeurer@chromium.org, yangguo@chromium.org CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel Review-Url: https://codereview.chromium.org/2090723005 Cr-Commit-Position: refs/heads/master@{#37384}
-
- 24 Jun, 2016 1 commit
-
-
adamk authored
Flags removed (all begin with "harmony-"): function-name instanceof iterator-close unicode-regexps regexp-exec regexp-subclass species BUG=v8:3566, v8:3648, v8:3699, v8:4093, v8:4447, v8:4602 Review-Url: https://codereview.chromium.org/2096933002 Cr-Commit-Position: refs/heads/master@{#37235}
-
- 30 May, 2016 1 commit
-
-
neis authored
R=rossberg@chromium.org BUG= Review-Url: https://codereview.chromium.org/2026543002 Cr-Commit-Position: refs/heads/master@{#36588}
-
- 20 May, 2016 1 commit
-
-
neis authored
R=rmcilroy@chromium.org BUG=v8:4907,v8:5027 Review-Url: https://codereview.chromium.org/1995303002 Cr-Commit-Position: refs/heads/master@{#36421}
-
- 10 May, 2016 1 commit
-
-
ishell authored
BUG=v8:4999, v8:4915 LOG=N Review-Url: https://codereview.chromium.org/1964603002 Cr-Commit-Position: refs/heads/master@{#36126}
-
- 09 May, 2016 1 commit
-
-
ishell authored
BUG=v8:4915 LOG=N Review-Url: https://codereview.chromium.org/1955393002 Cr-Commit-Position: refs/heads/master@{#36105}
-
- 04 May, 2016 1 commit
-
-
ishell authored
Unlike previous implementation where the 'continue' keyword was a feature of a return statement the keyword is now recognized as a part of expression. Error reporting was significantly improved. --harmony-explicit-tailcalls option is now orthogonal to --harmony-tailcalls so we can test both modes at the same time. This CL also adds %GetExceptionDetails(exception) that fetches hidden |start_pos| and |end_pos| values from the exception object. BUG=v8:4915 LOG=N Review-Url: https://codereview.chromium.org/1928203002 Cr-Commit-Position: refs/heads/master@{#36024}
-
- 03 May, 2016 1 commit
-
-
adamk authored
Yield expressions are not allowed in formal parameter initializers of generators, but we weren't properly catching the case where the yield expression appeared in the 'extends' clause of a class expression. They also aren't allowed in arrow functions, which we were failing to catch due to not looking at the obscurely-named "FormalParameterInitializerError" bit of ExpressionClassifier. This patch passes along an ExpressionClassifier when parsing class expressions and accumulates the proper error for that case. For the arrow function case, the fix is simply to check for the "formal parameter initializer" error once we know we've parsed an arrow function. The error message used for this has also been made specific to yield expressions. Tests are added both for the error case and the non-error cases (where yield is used in such a position inside the class body). BUG=v8:4966, v8:4968, v8:4974 LOG=n Review-Url: https://codereview.chromium.org/1941823003 Cr-Commit-Position: refs/heads/master@{#35957}
-
- 29 Apr, 2016 1 commit
-
-
machenbach authored
This prepares for pulling chromium's build as dependency for gn. After this, the files in build and gypfiles need to stay in sync until chromium is updated. BUG=chromium:474921 LOG=n Review-Url: https://codereview.chromium.org/1848553003 Cr-Commit-Position: refs/heads/master@{#35898}
-
- 27 Apr, 2016 1 commit
-
-
ishell authored
BUG=v8:4915 LOG=Y Review URL: https://codereview.chromium.org/1914423002 Cr-Commit-Position: refs/heads/master@{#35822}
-
- 26 Apr, 2016 1 commit
-
-
ishell authored
The syntax is "return continue expr;". BUG=v8:4915 LOG=Y Review URL: https://codereview.chromium.org/1917993004 Cr-Commit-Position: refs/heads/master@{#35799}
-
- 08 Apr, 2016 1 commit
-
-
adamk authored
These were all on by default in M49 without complaint. R=littledan@chromium.org Review URL: https://codereview.chromium.org/1858943002 Cr-Commit-Position: refs/heads/master@{#35342}
-
- 04 Apr, 2016 2 commits
-
-
yangguo authored
Statement positions should overwrite expression positions if they have the same bytecode offset. R=mstarzinger@chromium.org, vogelheim@chromium.org BUG=v8:4680,v8:4689 LOG=N Review URL: https://codereview.chromium.org/1855913002 Cr-Commit-Position: refs/heads/master@{#35236}
-
neis authored
The parser uses a try-catch in order to record when the client of an iterator throws. The exception then used to get rethrown via 'throw', which unfortunately resulted in the original exception message object getting overwritten. This CL solves this as follows: - add a clear_pending_message flag to TryCatchStatement (set to true in normal cases), - set clear_pending_message to false for the TryCatchStatement used in iterator finalization - change full-codegen, turbofan, and the interpreter to emit the ClearPendingMessage call only when the flag is set, - replace 'throw' with '%ReThrow' in the iterator finalization code, thus reusing the (not-cleared) pending message R=littledan@chromium.org, mstarzinger@chromium.org, yangguo@chromium.org BUG=v8:4875 LOG=n Review URL: https://codereview.chromium.org/1842953003 Cr-Commit-Position: refs/heads/master@{#35226}
-
- 22 Mar, 2016 1 commit
-
-
adamk authored
Now that ES2015 const has shipped, in Chrome 49, legacy const declarations are no more. This lets us remove a bunch of code from many parts of the codebase. In this patch, I remove parser support for generating legacy const variables from const declarations. This also removes the special "illegal declaration" bit from Scope, which has ripples into all compiler backends. Also gone are any tests which relied on legacy const declarations. Note that we do still generate a Variable in mode CONST_LEGACY in one case: function name bindings in sloppy mode. The likely fix there is to add a new Variable::Kind for this case and handle it appropriately for stores in each backend, but I leave that for a later patch to make this one completely subtractive. Review URL: https://codereview.chromium.org/1819123002 Cr-Commit-Position: refs/heads/master@{#35002}
-
- 21 Mar, 2016 2 commits
-
-
caitpotter88 authored
Enables the Scanner to provide a better error message when errors occur in escape sequences, numbers, strings, etc. BUG=v8:4829, v8:3230 LOG=N R=adamk@chromium.org, littledan@chromium.org Review URL: https://codereview.chromium.org/1793913002 Cr-Commit-Position: refs/heads/master@{#34966}
-
mstarzinger authored
This rebaselines all our internal tests for error messages thrown by the implementation of 'instanceof' to the new ES6 semantics. It also applies a minor rephrasing to the messages in question. R=rossberg@chromium.org BUG=v8:4447 LOG=n Review URL: https://codereview.chromium.org/1822663002 Cr-Commit-Position: refs/heads/master@{#34940}
-
- 18 Mar, 2016 1 commit
-
-
mvstanton authored
We need one message in case the function is not an object, and another if it was an object but not callable. R=mstarzinger@chromium.org, rossberg@chromium.org BUG= Review URL: https://codereview.chromium.org/1814823002 Cr-Commit-Position: refs/heads/master@{#34883}
-