yangguo
bb6a53573c
[regexp] restrict pattern syntax for unicode mode.
...
ES2015 Annex B.1.4 specifies a restricted pattern language for unicode
mode. This change reflects that, based on some test262 test cases.
R=littledan@chromium.org
BUG=v8:2952
LOG=N
Committed: https://crrev.com/e918c4ec464456a374098049ca22eac2107f6223
Cr-Commit-Position: refs/heads/master@{#33584}
Review URL: https://codereview.chromium.org/1645573002
Cr-Commit-Position: refs/heads/master@{#33603}
2016-01-29 09:21:16 +00:00
Ilija.Pavlovic
dd64a6d8a1
MIPS64: Eliminate ABI-dependent definitions.
...
Compilation dependencies for O32 ABI are removed from the code and now
compilation will be done according n64 ABI only.
TEST=
BUG=
Review URL: https://codereview.chromium.org/1638303005
Cr-Commit-Position: refs/heads/master@{#33589}
2016-01-28 16:04:19 +00:00
machenbach
8b5a7eb6bf
Revert of [regexp] restrict pattern syntax for unicode mode. (patchset #6 id:120001 of https://codereview.chromium.org/1645573002/ )
...
Reason for revert:
[Sheriff] Breaks layout tests:
https://build.chromium.org/p/client.v8.fyi/builders/V8-Blink%20Linux%2064/builds/4222
Original issue's description:
> [regexp] restrict pattern syntax for unicode mode.
>
> ES2015 Annex B.1.4 specifies a restricted pattern language for unicode
> mode. This change reflects that, based on some test262 test cases.
>
> R=littledan@chromium.org
> BUG=v8:2952
> LOG=N
>
> Committed: https://crrev.com/e918c4ec464456a374098049ca22eac2107f6223
> Cr-Commit-Position: refs/heads/master@{#33584}
TBR=vogelheim@chromium.org ,yangguo@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=v8:2952
Review URL: https://codereview.chromium.org/1648673002
Cr-Commit-Position: refs/heads/master@{#33588}
2016-01-28 15:27:12 +00:00
yangguo
e918c4ec46
[regexp] restrict pattern syntax for unicode mode.
...
ES2015 Annex B.1.4 specifies a restricted pattern language for unicode
mode. This change reflects that, based on some test262 test cases.
R=littledan@chromium.org
BUG=v8:2952
LOG=N
Review URL: https://codereview.chromium.org/1645573002
Cr-Commit-Position: refs/heads/master@{#33584}
2016-01-28 14:24:37 +00:00
zhengxing.li
6cdf6a77ec
X87: [regexp] correctly advance zero length matches for global/unicode.
...
port 57d202d879
(r33550)
original commit message:
BUG=
Review URL: https://codereview.chromium.org/1640823003
Cr-Commit-Position: refs/heads/master@{#33570}
2016-01-28 04:37:31 +00:00
zhengxing.li
2d89015a4c
X87: [regexp] implement case-insensitive unicode regexps.
...
port a2baaaac93
(r33538)
original commit message:
BUG=
Review URL: https://codereview.chromium.org/1644863002
Cr-Commit-Position: refs/heads/master@{#33568}
2016-01-28 04:20:48 +00:00
mbrandy
510f4a9b8f
PPC: [regexp] correctly advance zero length matches for global/unicode.
...
Port 57d202d879
R=yangguo@chromium.org , joransiu@ca.ibm.com , jyan@ca.ibm.com , michael_dawson@ca.ibm.com
BUG=v8:2952
LOG=N
Review URL: https://codereview.chromium.org/1646613002
Cr-Commit-Position: refs/heads/master@{#33566}
2016-01-27 21:07:32 +00:00
mbrandy
73aea9c13f
PPC: [regexp] implement case-insensitive unicode regexps.
...
Port a2baaaac93
R=yangguo@chromium.org , joransiu@ca.ibm.com , jyan@ca.ibm.com , michael_dawson@ca.ibm.com
BUG=v8:2952
LOG=N
Review URL: https://codereview.chromium.org/1643683002
Cr-Commit-Position: refs/heads/master@{#33565}
2016-01-27 21:06:19 +00:00
akos.palfi
cf71b0685a
MIPS: Fix '[regexp] implement case-insensitive unicode regexps.'
...
TEST=mjsunit/harmony/unicode-regexp-ignore-case
BUG=
Review URL: https://codereview.chromium.org/1639263002
Cr-Commit-Position: refs/heads/master@{#33553}
2016-01-27 13:41:20 +00:00
yangguo
57d202d879
[regexp] correctly advance zero length matches for global/unicode.
...
R=erik.corry@gmail.com
BUG=v8:2952
LOG=N
Review URL: https://codereview.chromium.org/1630633002
Cr-Commit-Position: refs/heads/master@{#33550}
2016-01-27 13:09:04 +00:00
yangguo
f22a5663a6
[regexp] character class for desugaring cannot be part of RegExpText.
...
We only do the desugaring in RegExpCharacterClass::ToNode, which is not
called if it is part of a RegExpText.
R=erik.corry@gmail.com , erikcorry@chromium.org
Review URL: https://codereview.chromium.org/1641593002
Cr-Commit-Position: refs/heads/master@{#33543}
2016-01-27 11:07:07 +00:00
yangguo
49fda47c5f
[regexp] back refs must not start/end in the middle of a surrogate pair
...
R=littledan@chromium.org
BUG=v8:2952
LOG=N
Review URL: https://codereview.chromium.org/1601653006
Cr-Commit-Position: refs/heads/master@{#33540}
2016-01-27 10:51:30 +00:00
yangguo
a2baaaac93
[regexp] implement case-insensitive unicode regexps.
...
BUG=v8:2952
LOG=N
Review URL: https://codereview.chromium.org/1599303002
Cr-Commit-Position: refs/heads/master@{#33538}
2016-01-27 08:25:38 +00:00
yangguo
3246d26b71
[regexp] step back if starting unicode regexp within surrogate pair.
...
See https://github.com/tc39/ecma262/issues/128
R=erik.corry@gmail.com , littledan@chromium.org
BUG=v8:2952
LOG=N
Review URL: https://codereview.chromium.org/1608693003
Cr-Commit-Position: refs/heads/master@{#33488}
2016-01-25 10:46:11 +00:00
yangguo
e709aa24c0
[regexp] implement character classes for unicode regexps.
...
We divide character ranges into
- BMP, matched normally.
- non-BMP, matched as alternatives of surrogate pair ranges.
- lone surrogates, matched with lookaround assertion that its indeed lone.
R=erik.corry@gmail.com
BUG=v8:2952
LOG=N
Committed: https://crrev.com/ea820ad5fa282a323a86fe20e64f83ee67ba5f04
Cr-Commit-Position: refs/heads/master@{#33432}
Review URL: https://codereview.chromium.org/1578253005
Cr-Commit-Position: refs/heads/master@{#33437}
2016-01-21 13:33:26 +00:00
yangguo
4de91c5367
Revert of [regexp] implement character classes for unicode regexps. (patchset #11 id:220001 of https://codereview.chromium.org/1578253005/ )
...
Reason for revert:
Compile failure on arm.
https://build.chromium.org/p/client.v8/builders/V8%20Arm%20-%20debug%20builder/builds/7341/steps/compile/logs/stdio
Original issue's description:
> [regexp] implement character classes for unicode regexps.
>
> We divide character ranges into
> - BMP, matched normally.
> - non-BMP, matched as alternatives of surrogate pair ranges.
> - lone surrogates, matched with lookaround assertion that its indeed lone.
>
> R=erik.corry@gmail.com
> BUG=v8:2952
> LOG=N
>
> Committed: https://crrev.com/ea820ad5fa282a323a86fe20e64f83ee67ba5f04
> Cr-Commit-Position: refs/heads/master@{#33432}
TBR=littledan@chromium.org ,erik.corry@gmail.com,erikcorry@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=v8:2952
Review URL: https://codereview.chromium.org/1618753002
Cr-Commit-Position: refs/heads/master@{#33434}
2016-01-21 12:38:31 +00:00
yangguo
ea820ad5fa
[regexp] implement character classes for unicode regexps.
...
We divide character ranges into
- BMP, matched normally.
- non-BMP, matched as alternatives of surrogate pair ranges.
- lone surrogates, matched with lookaround assertion that its indeed lone.
R=erik.corry@gmail.com
BUG=v8:2952
LOG=N
Review URL: https://codereview.chromium.org/1578253005
Cr-Commit-Position: refs/heads/master@{#33432}
2016-01-21 12:11:14 +00:00
yangguo
4836180143
[regexp] do not include irregexp interpreter by default.
...
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/1601743002
Cr-Commit-Position: refs/heads/master@{#33368}
2016-01-18 16:12:29 +00:00
yangguo
085487dd03
[regexp] fix interpreted irregexp build.
...
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/1595403003
Cr-Commit-Position: refs/heads/master@{#33354}
2016-01-18 10:42:13 +00:00
yangguo
8645a5ccd0
[regexp] quantifier refers to the surrogate pair in unicode regexp.
...
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/1571563003
Cr-Commit-Position: refs/heads/master@{#33209}
2016-01-11 15:07:55 +00:00
yangguo
fbbb9cab45
[regexp] correctly parse non-BMP unicode escapes in atoms.
...
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/1568623004
Cr-Commit-Position: refs/heads/master@{#33207}
2016-01-11 14:19:21 +00:00
yangguo
45850f4012
[regexp] simplify unicode flag check.
...
It's sufficient to check for --harmony-unicode-regexps when parsing the
regexp flags from string.
R=neis@chromium.org
Review URL: https://codereview.chromium.org/1567413002
Cr-Commit-Position: refs/heads/master@{#33178}
2016-01-08 13:27:09 +00:00
yangguo
0a808704c9
[regexp] move regexp parser into own files.
...
R=rossberg@chromium.org , ulan@chromium.org
Review URL: https://codereview.chromium.org/1565183002
Cr-Commit-Position: refs/heads/master@{#33169}
2016-01-08 09:56:04 +00:00
paul.lind
a0c7e25f99
Update MIPS owners.
...
Add Ivica B.
NOTRY=true
Review URL: https://codereview.chromium.org/1525413003
Cr-Commit-Position: refs/heads/master@{#32933}
2015-12-17 09:07:00 +00:00
yangguo
65d3009e03
[regexp] clear QuickCheckDetails for backward reads.
...
R=erik.corry@gmail.com
BUG=chromium:570241
LOG=N
Review URL: https://codereview.chromium.org/1528333002
Cr-Commit-Position: refs/heads/master@{#32898}
2015-12-16 13:43:23 +00:00
yangguo
a515800670
[regexp] remove some dead code.
...
credits to gcov.
Review URL: https://codereview.chromium.org/1528843002
Cr-Commit-Position: refs/heads/master@{#32868}
2015-12-15 14:48:55 +00:00
rossberg
199bbdb40f
Create ast/ and parsing/ subdirectories and move appropriate files
...
Moves all files related to AST and scopes into ast/,
and all files related to scanner & parser to parsing/.
Also eliminates a couple of spurious dependencies.
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/1481613002
Cr-Commit-Position: refs/heads/master@{#32351}
2015-11-26 16:23:07 +00:00
jochen
aa9cfc8222
Make whether or not a Code object should be created by masm explicit
...
We always want to have an Isolate, so just use an extra ctor arg
BUG=2487
R=yangguo@chromium.org ,mstarzinger@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/1476763002
Cr-Commit-Position: refs/heads/master@{#32277}
2015-11-25 14:23:56 +00:00
bmeurer
2732a6ad44
[es6] Correct parsing of regular expression literal flags.
...
ES6 section 12.2.8.1 states that flags for regular expression literals
must be checked during parsing and invalid flags are early errors. This
change adapts the Scanner and (Pre)Parser to act according to the spec.
This is also a prerequisite to unify the handling of literal creation
(for Objects, Arrays, Regexps, and at some point Classes).
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/1472323002
Cr-Commit-Position: refs/heads/master@{#32273}
2015-11-25 13:46:43 +00:00
jochen
c7aace4d43
Remove a bunch of Isolate::Current() callsites from simulators
...
BUG=2487
R=ulan@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/1457223005
Cr-Commit-Position: refs/heads/master@{#32164}
2015-11-23 08:10:06 +00:00
verwaest
469d9bfa8d
Introduce a BuiltinsConstructStub that sets up new.target and does a [[call]] per ES6 9.3.2
...
BUG=
Review URL: https://codereview.chromium.org/1448933002
Cr-Commit-Position: refs/heads/master@{#32120}
2015-11-19 16:11:09 +00:00
zhengxing.li
9f594402c3
X87: Experimental support for RegExp lookbehind.
...
port 906903acb5
(r32043)
original commit message:
BUG=
Review URL: https://codereview.chromium.org/1453303003
Cr-Commit-Position: refs/heads/master@{#32069}
2015-11-18 04:43:11 +00:00
mbrandy
e852c49eea
PPC: Experimental support for RegExp lookbehind.
...
Port 906903acb5
R=yangguo@chromium.org , joransiu@ca.ibm.com , jyan@ca.ibm.com , michael_dawson@ca.ibm.com
BUG=v8:4545
LOG=N
Review URL: https://codereview.chromium.org/1454783002
Cr-Commit-Position: refs/heads/master@{#32056}
2015-11-17 19:41:13 +00:00
yangguo
906903acb5
Experimental support for RegExp lookbehind.
...
R=erikcorry@chromium.org , littledan@chromium.org
BUG=v8:4545
LOG=N
Committed: https://crrev.com/37632606bbce1418238b13fd90cb6ef6705871cd
Cr-Commit-Position: refs/heads/master@{#32029}
Review URL: https://codereview.chromium.org/1418963009
Cr-Commit-Position: refs/heads/master@{#32043}
2015-11-17 13:33:34 +00:00
yangguo
5b2ae9d908
Revert of Experimental support for RegExp lookbehind. (patchset #18 id:340001 of https://codereview.chromium.org/1418963009/ )
...
Reason for revert:
gc stress breaks due to string_start_minus_one not being set correctly.
Original issue's description:
> Experimental support for RegExp lookbehind.
>
> R=erikcorry@chromium.org , littledan@chromium.org
> BUG=v8:4545
> LOG=N
>
> Committed: https://crrev.com/37632606bbce1418238b13fd90cb6ef6705871cd
> Cr-Commit-Position: refs/heads/master@{#32029}
TBR=littledan@chromium.org ,erikcorry@chromium.org,erikcorry@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=v8:4545
Review URL: https://codereview.chromium.org/1451373003
Cr-Commit-Position: refs/heads/master@{#32032}
2015-11-17 11:55:21 +00:00
yangguo
37632606bb
Experimental support for RegExp lookbehind.
...
R=erikcorry@chromium.org , littledan@chromium.org
BUG=v8:4545
LOG=N
Review URL: https://codereview.chromium.org/1418963009
Cr-Commit-Position: refs/heads/master@{#32029}
2015-11-17 11:15:06 +00:00
yangguo
85e085b770
RegExp: remove last match info override.
...
With ES6 21.2.5.8, step 13, we no longer have to keep up the illusion
that matching and calling replace function is interleaved. This is
observable through unspec'ed static properties such as RegExp.$1.
Last match info not working yet.
R=littledan@chromium.org
Review URL: https://codereview.chromium.org/1418703003
Cr-Commit-Position: refs/heads/master@{#31593}
2015-10-27 08:24:08 +00:00
mstarzinger
6a769ac1df
[presubmit] Enable readability/namespace linter checking.
...
This enables linter checking for "readability/namespace" violations
during presubmit and instead marks the few known exceptions that we
allow explicitly.
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/1371083003
Cr-Commit-Position: refs/heads/master@{#31019}
2015-09-30 13:47:11 +00:00
dusan.m.milosavljevic
8bd431de92
MIPS64: Add big-endian support for mips64.
...
TEST=
BUG=
Review URL: https://codereview.chromium.org/1334793004
Cr-Commit-Position: refs/heads/master@{#31011}
2015-09-29 17:23:55 +00:00
alph
e0606c9f00
Move heap and CPU profilers into a dedicated directory.
...
Drive-by: remove unnecessary includes.
Review URL: https://codereview.chromium.org/1356223004
Cr-Commit-Position: refs/heads/master@{#30987}
2015-09-28 19:34:18 +00:00
mstarzinger
5f57ebe222
Make isolate.h usable without objects-inl.h header.
...
This CL us a pure refactoring that makes an empty compilation unit
including just "isolate.h" or "contexts.h" but not "objects-inl.h"
compile without warnings or errors. This is needed to further reduce
the header dependency tangle.
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/1322883002
Cr-Commit-Position: refs/heads/master@{#30500}
2015-09-01 09:25:27 +00:00
mbrandy
7aecd51209
PPC: Fix "Move regexp implementation into its own folder."
...
R=yangguo@chromium.org , jyan@ca.ibm.com , dstence@us.ibm.com , joransiu@ca.ibm.com
BUG=
Review URL: https://codereview.chromium.org/1319783002
Cr-Commit-Position: refs/heads/master@{#30391}
2015-08-26 19:46:54 +00:00
mstarzinger
24ef80dc93
[heap] Move RegExpResultCache out of the heap.
...
R=yangguo@chromium.org ,hpayer@chromium.org
Review URL: https://codereview.chromium.org/1306053003
Cr-Commit-Position: refs/heads/master@{#30300}
2015-08-21 12:34:30 +00:00
mstarzinger
2421f9c39b
Remove grab-bag includes of v8.h from regexp engine.
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/1294783002
Cr-Commit-Position: refs/heads/master@{#30180}
2015-08-14 15:09:34 +00:00
yangguo
67e4b3732a
Move regexp implementation into its own folder.
...
Review URL: https://codereview.chromium.org/1285163003
Cr-Commit-Position: refs/heads/master@{#30144}
2015-08-13 06:55:36 +00:00