Ilija.Pavlovic
aa0c8dcc18
Fix test OneByteArrayJoin.
...
The test OneByteArrayJoin failed on MIPS64 in debug mode after
https://chromium-review.googlesource.com/c/489946/ with error messages
"allocation failure GC in old space requested" and
"Fatal javascript OOM in CALL_AND_RETRY_LAST". Successful test execution
is possible on two ways: with flag --max_old_space_size=7 or with
modification in the test (constraints.set_max_old_space_size(7)).
TEST=cctest/test-strings/OneByteArrayJoin
BUG=
Review-Url: https://codereview.chromium.org/2907803002
Cr-Commit-Position: refs/heads/master@{#45548}
2017-05-29 08:30:50 +00:00
Wiktor Garbacz
9a8efd8a4e
[cleanup] Remove return after UNREACHABLE
...
Change-Id: I20ed35a7fb5104a9cc66bb54fa8966589c43d7f9
Reviewed-on: https://chromium-review.googlesource.com/507287
Reviewed-by: Andreas Haas <ahaas@chromium.org>
Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
Reviewed-by: Daniel Clifford <danno@chromium.org>
Reviewed-by: Jakob Gruber <jgruber@chromium.org>
Reviewed-by: Marja Hölttä <marja@chromium.org>
Reviewed-by: Jochen Eisinger <jochen@chromium.org>
Commit-Queue: Wiktor Garbacz <wiktorg@google.com>
Cr-Commit-Position: refs/heads/master@{#45458}
2017-05-22 13:10:01 +00:00
mlippautz
bf74d43de0
[heap] MinorMC: Evacuation for young generation
...
In the spirit of the full MC, we evacuate and update pointers in parallel for
the young generation.
The collectors are connected during incremental marking when mark bits are
transferred from the young generation bitmap to the old generation bitmap.
The evacuation phase cannot (yet) move pages and relies completely on copying
objects.
BUG=chromium:651354
Review-Url: https://codereview.chromium.org/2796233003
Cr-Commit-Position: refs/heads/master@{#45074}
2017-05-03 21:31:06 +00:00
bbudge
771e86fdf2
Remove Factory::NewStringFromASCII method.
...
BUG=none
Review-Url: https://codereview.chromium.org/2759513002
Cr-Commit-Position: refs/heads/master@{#43913}
2017-03-17 17:52:50 +00:00
jgruber
542b41a7cc
[gn] Enable stricter build flags
...
Default to the chromium-internal build config (instead of the more
permissive no_chromium_code config).
BUG=v8:5878
Review-Url: https://codereview.chromium.org/2758563002
Cr-Commit-Position: refs/heads/master@{#43909}
2017-03-17 15:18:18 +00:00
jkummerow
daad4319c9
Put ThinStrings behind a flag (off by default)
...
Review-Url: https://codereview.chromium.org/2663713002
Cr-Commit-Position: refs/heads/master@{#42804}
2017-01-31 06:41:14 +00:00
jkummerow
3e915e12a1
Internalize strings in-place (reland^3)
...
using newly introduced ThinStrings, which store a pointer to the actual,
internalized string they represent.
BUG=v8:4520
(Previously landed as #42168 / af51befe69
)
(Previously landed as #42193 / 4c699e349a
)
(Previously landed as #42235 / ec45e6ed2e
)
Review-Url: https://codereview.chromium.org/2549773002
Cr-Commit-Position: refs/heads/master@{#42503}
2017-01-19 13:27:59 +00:00
jkummerow
b4654bf30e
Revert of Internalize strings in-place (patchset #20 id:380001 of https://codereview.chromium.org/2549773002/ )
...
Reason for revert:
Blocks roll, ASan detects leaking ExternalStrings.
Original issue's description:
> Internalize strings in-place (reland^2)
>
> using newly introduced ThinStrings, which store a pointer to the actual,
> internalized string they represent.
>
> BUG=v8:4520
>
> (Previously landed as #42168 / af51befe69
)
> (Previously landed as #42193 / 4c699e349a
)
>
> Review-Url: https://codereview.chromium.org/2549773002
> Cr-Commit-Position: refs/heads/master@{#42235}
> Committed: ec45e6ed2e
TBR=ishell@chromium.org ,hpayer@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:4520
Review-Url: https://codereview.chromium.org/2626893005
Cr-Commit-Position: refs/heads/master@{#42271}
2017-01-12 15:00:19 +00:00
jkummerow
ec45e6ed2e
Internalize strings in-place (reland^2)
...
using newly introduced ThinStrings, which store a pointer to the actual,
internalized string they represent.
BUG=v8:4520
(Previously landed as #42168 / af51befe69
)
(Previously landed as #42193 / 4c699e349a
)
Review-Url: https://codereview.chromium.org/2549773002
Cr-Commit-Position: refs/heads/master@{#42235}
2017-01-11 14:59:35 +00:00
jkummerow
7ef86f8091
Revert of Internalize strings in-place (patchset #17 id:320001 of https://codereview.chromium.org/2549773002/ )
...
Reason for revert:
blocks roll, see: https://codereview.chromium.org/2628733002/
Debug mode runs into an Abort("External string expected, but not found").
Original issue's description:
> Internalize strings in-place (reland)
>
> using newly introduced ThinStrings, which store a pointer to the actual,
> internalized string they represent.
>
> BUG=v8:4520
>
> (Previously landed as #42168 / af51befe69
.
>
> Review-Url: https://codereview.chromium.org/2549773002
> Cr-Commit-Position: refs/heads/master@{#42193}
> Committed: 4c699e349a
TBR=ishell@chromium.org ,hpayer@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:4520
Review-Url: https://codereview.chromium.org/2625073002
Cr-Commit-Position: refs/heads/master@{#42212}
2017-01-11 09:59:52 +00:00
jkummerow
4c699e349a
Internalize strings in-place (reland)
...
using newly introduced ThinStrings, which store a pointer to the actual,
internalized string they represent.
BUG=v8:4520
(Previously landed as #42168 / af51befe69
.
Review-Url: https://codereview.chromium.org/2549773002
Cr-Commit-Position: refs/heads/master@{#42193}
2017-01-10 19:08:58 +00:00
machenbach
32c0dff263
Revert of Internalize strings in-place (patchset #16 id:300001 of https://codereview.chromium.org/2549773002/ )
...
Reason for revert:
gc stress failures:
https://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20gc%20stress/builds/8024
Original issue's description:
> Internalize strings in-place
>
> using newly introduced ThinStrings, which store a pointer to the actual,
> internalized string they represent.
>
> BUG=v8:4520
>
> Review-Url: https://codereview.chromium.org/2549773002
> Cr-Commit-Position: refs/heads/master@{#42168}
> Committed: af51befe69
TBR=ishell@chromium.org ,hpayer@chromium.org,bmeurer@chromium.org,jkummerow@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=v8:4520
Review-Url: https://codereview.chromium.org/2621913002
Cr-Commit-Position: refs/heads/master@{#42170}
2017-01-10 11:33:04 +00:00
jkummerow
af51befe69
Internalize strings in-place
...
using newly introduced ThinStrings, which store a pointer to the actual,
internalized string they represent.
BUG=v8:4520
Review-Url: https://codereview.chromium.org/2549773002
Cr-Commit-Position: refs/heads/master@{#42168}
2017-01-10 10:58:03 +00:00
marja
9c7b87269c
include fixing: api.h shouldn't include objects-inl.h
...
Downside: this adds all kinds of weird includes in the .cc files.
(See design doc linked in the bug.)
BUG=v8:5402
Review-Url: https://codereview.chromium.org/2622503002
Cr-Commit-Position: refs/heads/master@{#42140}
2017-01-09 13:43:28 +00:00
cbruni
89f159b042
[runtime] Port simple String.prototype.indexOf cases to TF Builtin
...
Many websites use simple calls to String.prototype.indexOf with either a
one character ASCII needle or needles bigger than the search string. This
CL adds a TFJ builtin for these simple cases, giving up to factor 5 speedup.
Drive-by-fix: Add default Object type to Arguments.at
BUG=
Review-Url: https://codereview.chromium.org/2539093002
Cr-Commit-Position: refs/heads/master@{#41760}
2016-12-16 13:24:07 +00:00
jgruber
806b350482
Fast-path in SlowFlatten for ConsStrings with empty first part
...
TurboFan can create ConsStrings with empty first parts (for history on
this decision, see da27e0c886
). Add a
fast-path for such cases in String::SlowFlatten.
BUG=
Review-Url: https://codereview.chromium.org/2489273002
Cr-Commit-Position: refs/heads/master@{#40885}
2016-11-10 11:24:07 +00:00
jgruber
0ce95e0878
[stubs] Add a test for canary crashes in SubStringStub
...
These crashes were caused by an invalid pointer stored in a tagged
variable in SubStringStub. This can be reproduced by calling the stub on
an external string and ensuring GC kicks in on the subsequent
allocation.
Only the TurboFan implementation of SubStringStub is affected, the current
PlatformStub implementation handles this case just fine.
BUG=chromium:649967
Review-Url: https://codereview.chromium.org/2374603003
Cr-Commit-Position: refs/heads/master@{#39772}
2016-09-27 13:53:15 +00:00
mlippautz
79faa52823
Reland of "[heap] Switch to 500k pages"
...
This reverts commit 332bd5e94c
.
BUG=chromium:636331
R=ulan@chromium.org
Review-Url: https://codereview.chromium.org/2313243002
Cr-Commit-Position: refs/heads/master@{#39237}
2016-09-07 09:43:33 +00:00
cbruni
dc2e3069e7
Reland of place all remaining Oddball checks with new function (patchset #1 id:1 of https://codereview.chromium.org/2060213002/ )
...
Reason for revert:
Cannot reproduce gc-stress failures locally.
Original issue's description:
> Revert of Replace all remaining Oddball checks with new function (patchset #10 id:180001 of https://codereview.chromium.org/2043183003/ )
>
> Reason for revert:
> failing tests
>
> Original issue's description:
> > Replace all remaining Oddball checks with new function
> >
> > This CL removes the IsUndefined() and Co. methods from Object and HeapObject.
> > The new method all take the isolate as parameter.
> >
> > BUG=
> >
> > Committed: https://crrev.com/ccefb3ae5fe967288d568013fb04e8761eafebc5
> > Cr-Commit-Position: refs/heads/master@{#36921}
>
> TBR=mstarzinger@chromium.org ,verwaest@chromium.org,yangguo@chromium.org,ahaas@chromium.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=
>
> Committed: https://crrev.com/33b8bc24a12fb062100c0be84456faeb0b9fa5d1
> Cr-Commit-Position: refs/heads/master@{#36923}
TBR=mstarzinger@chromium.org ,verwaest@chromium.org,yangguo@chromium.org,ahaas@chromium.org
BUG=
Review-Url: https://codereview.chromium.org/2059173002
Cr-Commit-Position: refs/heads/master@{#36957}
2016-06-14 10:09:38 +00:00
cbruni
33b8bc24a1
Revert of Replace all remaining Oddball checks with new function (patchset #10 id:180001 of https://codereview.chromium.org/2043183003/ )
...
Reason for revert:
failing tests
Original issue's description:
> Replace all remaining Oddball checks with new function
>
> This CL removes the IsUndefined() and Co. methods from Object and HeapObject.
> The new method all take the isolate as parameter.
>
> BUG=
>
> Committed: https://crrev.com/ccefb3ae5fe967288d568013fb04e8761eafebc5
> Cr-Commit-Position: refs/heads/master@{#36921}
TBR=mstarzinger@chromium.org ,verwaest@chromium.org,yangguo@chromium.org,ahaas@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/2060213002
Cr-Commit-Position: refs/heads/master@{#36923}
2016-06-13 11:40:35 +00:00
cbruni
ccefb3ae5f
Replace all remaining Oddball checks with new function
...
This CL removes the IsUndefined() and Co. methods from Object and HeapObject.
The new method all take the isolate as parameter.
BUG=
Review-Url: https://codereview.chromium.org/2043183003
Cr-Commit-Position: refs/heads/master@{#36921}
2016-06-13 10:21:02 +00:00
bmeurer
cc71837fda
[builtins] Migrate String.fromCharCode to C++.
...
The previous JavaScript version created way too many ConsStrings for
longer strings, i.e. when using String.fromCharCode together with
Function.prototype.apply and arrays of char codes.
This version now always allocates sequential strings and therefore uses
way less memory when turning longer character sequences into strings,
and therefore fixes the memory regression on Google Maps.
BUG=chromium:609831
R=yangguo@chromium.org
Review-Url: https://codereview.chromium.org/2004733002
Cr-Commit-Position: refs/heads/master@{#36427}
2016-05-21 16:59:59 +00:00
yangguo
d77d657731
Revert of [regexp] implement /ui to mirror the implementation for /i. (patchset #2 id:20001 of https://codereview.chromium.org/1641613002/ )
...
Reason for revert:
This test fails:
assertEquals(["as"], /^a[\u017F]/ui.exec("as"));
The reason is that we end up with a character class that is not stand alone, so we do not perform case folding on it correctly (with unicode flag).
Original issue's description:
> [regexp] implement /ui to mirror the implementation for /i.
>
> R=erik.corry@gmail.com , erikcorry@chromium.org
>
> Committed: https://crrev.com/eea1a4c003c559c99bcc9f08aa7eadf931975aad
> Cr-Commit-Position: refs/heads/master@{#33655}
TBR=erik.corry@gmail.com ,erikcorry@chromium.org,erikcorry@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/1661483002
Cr-Commit-Position: refs/heads/master@{#33676}
2016-02-02 11:44:45 +00:00
yangguo
eea1a4c003
[regexp] implement /ui to mirror the implementation for /i.
...
R=erik.corry@gmail.com , erikcorry@chromium.org
Review URL: https://codereview.chromium.org/1641613002
Cr-Commit-Position: refs/heads/master@{#33655}
2016-02-02 07:09:36 +00:00
jochen
6f472db65a
Disable soon to be deprecated APIs per default for v8
...
Embedders still can use those APIs by default
test-api.cc still has an exception to use the old APIs...
BUG=v8:4143
R=vogelheim@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/1505803004
Cr-Commit-Position: refs/heads/master@{#32701}
2015-12-09 10:35:04 +00:00
jochen
6150662d89
Remove deprecate API usage from more cctests
...
BUG=v8:4134
R=vogelheim@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/1502193002
Cr-Commit-Position: refs/heads/master@{#32659}
2015-12-07 15:28:25 +00:00
bmeurer
fc0a1a709c
[test] Test expectations in cctest should use CHECK and not DCHECK.
...
The test expectations should fail consistently in both release and debug
builds. DCHECK is only meant for debug-only checks in production code.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/1506753002
Cr-Commit-Position: refs/heads/master@{#32639}
2015-12-07 05:37:15 +00:00
cbruni
9cffd0d2ce
[runtime] Adding more detailed error message for Object::GetMethod.
...
BUG=
Review URL: https://codereview.chromium.org/1484393002
Cr-Commit-Position: refs/heads/master@{#32506}
2015-12-02 12:25:51 +00:00
hpayer
ce28d019eb
[heap] Reland Remove retry space from AllocateRaw.
...
BUG=
Review URL: https://codereview.chromium.org/1374163002
Cr-Commit-Position: refs/heads/master@{#30998}
2015-09-29 09:08:22 +00:00
bmeurer
6529971a7f
Revert of [heap] Remove retry space from AllocateRaw. (patchset #3 id:40001 of https://codereview.chromium.org/1370123002/ )
...
Reason for revert:
Breaks arm64 nosnap simulator (bogus cctest?): https://chromegw.corp.google.com/i/client.v8/builders/V8%20Linux%20-%20arm64%20-%20sim%20-%20nosnap%20-%20debug%20-%201/builds/2934/steps/Bisect%202786ceec.Retry/logs/IncrementalWriteBarri ..
Original issue's description:
> [heap] Remove retry space from AllocateRaw.
>
> BUG=
>
> Committed: https://crrev.com/2786ceec1eb491494d24d29a59eefbe3b6704be2
> Cr-Commit-Position: refs/heads/master@{#30984}
TBR=mstarzinger@chromium.org ,hpayer@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=
Review URL: https://codereview.chromium.org/1379493003
Cr-Commit-Position: refs/heads/master@{#30991}
2015-09-29 04:40:02 +00:00
hpayer
2786ceec1e
[heap] Remove retry space from AllocateRaw.
...
BUG=
Review URL: https://codereview.chromium.org/1370123002
Cr-Commit-Position: refs/heads/master@{#30984}
2015-09-28 18:07:30 +00:00
dstence
bb3bb6b773
PPC: perf enhancement: Use larger heap page size on PPC.
...
Revisit of https://codereview.chromium.org/910333004 .
Use 4MB heap page size over the default of 1MB.
This change provides an improvement of 1.86% on the composite octane
benchmark score on PPC. This is 0.56% more than if --min_semi_space_size=4
was used to specify a 4MB heap page size.
Additionally, two more tests required modification to account for
configurable heap page size.
R=svenpanne@chromium.org , hpayer@chromium.org , danno@chromium.org , mbrandy@us.ibm.com , michael_dawson@ca.ibm.com
BUG=
Review URL: https://codereview.chromium.org/1221433022
Cr-Commit-Position: refs/heads/master@{#29775}
2015-07-21 15:52:13 +00:00
verwaest
0fd9a0a3bf
Minor cleanup IC keyed access handling.
...
BUG=
Review URL: https://codereview.chromium.org/1238463002
Cr-Commit-Position: refs/heads/master@{#29614}
2015-07-13 14:41:43 +00:00
jochen
5df3b4ab5c
Update all callsites of the TryCatch ctor to pass an Isolate
...
BUG=4134
R=vogelheim@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/1154423004
Cr-Commit-Position: refs/heads/master@{#28678}
2015-05-28 12:49:41 +00:00
jochen
9ba5fe028f
Pass ArrayBuffer::Allocator via Isolate::CreateParams
...
We shouldn't have shared state between isolates by default. The embedder
is free to pass the same allocator to all isolates it creates.
BUG=none
R=dcarney@chromium.org
LOG=y
Review URL: https://codereview.chromium.org/1116633002
Cr-Commit-Position: refs/heads/master@{#28127}
2015-04-29 09:54:43 +00:00
yangguo
a5ac029058
Start migrating error message templates to the runtime.
...
Currently done with two templates, one used from native js, one from runtime.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/1087633005
Cr-Commit-Position: refs/heads/master@{#27864}
2015-04-16 07:01:16 +00:00
yangguo
057857ef06
PPC: fix allocation issues for PPC64.
...
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/1009433002
Cr-Commit-Position: refs/heads/master@{#27179}
2015-03-13 11:18:31 +00:00
yangguo
afb2706103
Limit size of first page based on serialized data.
...
R=hpayer@chromium.org
BUG=chromium:453111
LOG=Y
Review URL: https://codereview.chromium.org/932823002
Cr-Commit-Position: refs/heads/master@{#26764}
2015-02-20 09:34:11 +00:00
bmeurer
c65ae4f10c
Reland "Initial switch to Chromium-style CHECK_* and DCHECK_* macros.".
...
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/877753007
Cr-Commit-Position: refs/heads/master@{#26346}
2015-01-30 09:29:41 +00:00
Benedikt Meurer
883852293a
Revert "Make GCC happy again." and "Initial switch to Chromium-style CHECK_* and DCHECK_* macros.".
...
This reverts commit 6a4c0a3bae
and commit
0deaa4b629
for breaking GCC bots.
TBR=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/893533003
Cr-Commit-Position: refs/heads/master@{#26342}
2015-01-30 07:19:57 +00:00
bmeurer
0deaa4b629
Initial switch to Chromium-style CHECK_* and DCHECK_* macros.
...
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/888613002
Cr-Commit-Position: refs/heads/master@{#26340}
2015-01-30 06:25:36 +00:00
Sven Panne
e4c5b84652
Contribution of PowerPC port (continuation of 422063005)
...
Contribution of PowerPC port (continuation of 422063005). The inital patch
covers the core changes to the common files. Subsequent patches will cover
changes to common files to support AIX and to update the ppc directories so
they are current with the changes in the rest of the project.
This is based off of the GitHub repository
https://github.com/andrewlow/v8ppc
BUG=
R=svenpanne@chromium.org , danno@chromium.org , sevnpanne@chromium.org
Review URL: https://codereview.chromium.org/817143002
Cr-Commit-Position: refs/heads/master@{#26091}
2015-01-16 07:42:15 +00:00
jkummerow
c060f4e26c
Internalize strings being stored into uninitialized property cells
...
Review URL: https://codereview.chromium.org/804993002
Cr-Commit-Position: refs/heads/master@{#25822}
2014-12-15 15:46:11 +00:00
dcarney
b1667fca63
don't use to-be-deprecated Value::To* without isolate parameter
...
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/725293003
Cr-Commit-Position: refs/heads/master@{#25473}
2014-11-24 10:30:55 +00:00
jkummerow@chromium.org
e525e76f21
Fix a few nits found by PVS Studio
...
BUG=v8:3192
LOG=n
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/185563004
Cr-Commit-Position: refs/heads/master@{#25086}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@25086 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-11-03 19:45:25 +00:00
dcarney@chromium.org
887b3ca079
Cleanup ConsStringIteratorOp.
...
R=yangguo@chromium.org
BUG=
Review URL: https://codereview.chromium.org/663313003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24818 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-10-23 05:57:01 +00:00
yangguo@chromium.org
8659e50723
Update unicode to 7.0.0.
...
And do not use code points with PATTERN_* property for identifier start.
Maintain that \u180E is a white space character.
BUG=v8:2892
LOG=Y
R=dpino@igalia.com , mathias@qiwi.be
Review URL: https://codereview.chromium.org/638643002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24473 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-10-08 14:55:03 +00:00
erikcorry@chromium.org
d0dc7fc4da
Reland: Add a use counter for Intl.v8BreakIterator
...
This relands https://codereview.chromium.org/619913002/
The test has been fixed to do a GC so it does not appear to leak in
ASAN. In addition the test has been fixed to work in the no-i18n
build, by incorporating the change from https://codereview.chromium.org/631743002/
R=ishell@chromium.org
BUG=
Review URL: https://codereview.chromium.org/628223002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24423 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-10-06 15:50:40 +00:00
erikcorry@chromium.org
33da50f2ea
Revert Add a use counter for Intl.v8BreakIterator https://codereview.chromium.org/619913002/
...
This is due to breakage on the ASAN memory leak bot, possibly due to
pre-existing leaks in v8BreakIterator().
R=ishell@chromium.org
BUG=
Review URL: https://codereview.chromium.org/636493004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24409 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-10-06 11:14:50 +00:00
erikcorry@chromium.org
43257b61ae
Add a use counter for Intl.v8BreakIterator
...
R=marja@chromium.org
BUG=
Review URL: https://codereview.chromium.org/619913002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24400 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-10-03 10:29:12 +00:00
jochen@chromium.org
069a9c75ad
Move configuration of ResourceConstraints to Isolate construction
...
We can only set resource constraints before the isolate is initialized.
Since in the future, we want to initialize isolates at construction
time, we need to set constraints there.
It's possible to later modify the stack limit, so introduce an
Isolate::SetStackLimit method for that.
The SetResourceConstraints method will be deprecated. Users should pass
ResourceConstraints to Isolate::New, and use Isolate::SetStackLimit to
later modify the stack limit.
BUG=none
R=svenpanne@chromium.org
LOG=y
Review URL: https://codereview.chromium.org/559993005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23964 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-16 09:15:02 +00:00
yangguo@chromium.org
4e670fd05e
Rename ascii to one-byte where applicable.
...
R=dcarney@chromium.org , marja@chromium.org
Review URL: https://codereview.chromium.org/559913002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23840 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-10 12:38:12 +00:00
bmeurer@chromium.org
d07a2eb806
Rename ASSERT* to DCHECK*.
...
This way we don't clash with the ASSERT* macros
defined by GoogleTest, and we are one step closer
to being able to replace our homegrown base/ with
base/ from Chrome.
R=jochen@chromium.org , svenpanne@chromium.org
Review URL: https://codereview.chromium.org/430503007
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22812 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-04 11:34:54 +00:00
jochen@chromium.org
56a486c322
Use full include paths everywhere
...
- this avoids using relative include paths which are forbidden by the style guide
- makes the code more readable since it's clear which header is meant
- allows for starting to use checkdeps
BUG=none
R=jkummerow@chromium.org , danno@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/304153016
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21625 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-03 08:12:43 +00:00
hpayer@chromium.org
de21c8a245
Simplify ConfigureHeap and change --max_new_space_size to --max_semi_space_size.
...
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/271843005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21204 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-09 08:38:27 +00:00
hpayer@chromium.org
dde49c9dc3
Set max new space size in tests to proper MB value.
...
Revert "Limit old space size in test which require a large new space."
This reverts commit r21103.
Revert "Remove max space limits in tests."
This reverts commit r21104.
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/263103006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@21149 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-05 16:48:33 +00:00
yangguo@chromium.org
99d9712bb0
Return MaybeHandle from Object::ToSmi.
...
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/260083011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@21047 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-29 13:18:27 +00:00
dcarney@chromium.org
7b1e830489
Remove String::Visit
...
R=yangguo@chromium.org
BUG=
Review URL: https://codereview.chromium.org/254763008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@21046 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-29 13:09:31 +00:00
ishell@chromium.org
e493dc9ca9
Tiny cleanup.
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/247953003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20925 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-24 08:35:04 +00:00
ishell@chromium.org
313844d842
Heap::AllocateStringFromOneByte() and major part of its callers handlified.
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/239243018
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20846 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-17 13:27:02 +00:00
hpayer@chromium.org
39b5090f8e
Grow old generation slower on low-memory devices.
...
BUG=
R=mstarzinger@chromium.org , rmcilroy@chromium.org
Review URL: https://codereview.chromium.org/236063015
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20837 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-17 11:27:45 +00:00
yangguo@chromium.org
139be49fcf
Remove some uses of MaybeObject methods.
...
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/236303015
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20786 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-16 07:26:34 +00:00
yangguo@chromium.org
ed9f1af2fc
Implement handlified String::Flatten.
...
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/228093004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20572 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-08 09:49:49 +00:00
yangguo@chromium.org
eedc4c01f5
Return MaybeHandle from NewExternalStringFrom*.
...
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/223653003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20481 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-03 12:41:37 +00:00
yangguo@chromium.org
164e5b580c
Reland "Return MaybeHandle from NewConsString."
...
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/223813002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20480 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-03 12:30:37 +00:00
yangguo@chromium.org
87dd16e3cd
Revert "Return MaybeHandle from NewConsString."
...
This reverts r20473.
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/223593004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20475 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-03 12:09:14 +00:00
yangguo@chromium.org
be0d2f5d15
Return MaybeHandle from NewConsString.
...
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/223383002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20473 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-03 11:38:01 +00:00
yangguo@chromium.org
82f630a9f7
Reland "No longer OOM on invalid string length."
...
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/210683003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20225 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-25 09:09:24 +00:00
yangguo@chromium.org
72932ae417
Revert "No longer OOM on invalid string length."
...
This reverts r20202.
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/210143002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20203 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-24 15:36:15 +00:00
yangguo@chromium.org
531217502c
No longer OOM on invalid string length.
...
R=ishell@chromium.org
BUG=v8:3060
LOG=Y
Review URL: https://codereview.chromium.org/207613005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20202 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-24 15:01:17 +00:00
yangguo@chromium.org
8b8fb30e7f
Reland "Remove Failure::OutOfMemory propagation and V8::IgnoreOutOfMemoryException."
...
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/209903003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20184 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-24 10:07:15 +00:00
yangguo@chromium.org
03866841aa
Revert "Remove Failure::OutOfMemory propagation and V8::IgnoreOutOfMemoryException."
...
This reverts r20179.
TBR=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/201573007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20183 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-24 09:17:18 +00:00
yangguo@chromium.org
62f65d8697
Remove Failure::OutOfMemory propagation and V8::IgnoreOutOfMemoryException.
...
R=dcarney@chromium.org
BUG=v8:3060
LOG=Y
Review URL: https://codereview.chromium.org/208263002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20179 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-24 08:47:45 +00:00
yangguo@chromium.org
000be4d033
Reland "Throw exception on invalid string length instead of OOM."
...
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/199583007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20119 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-20 12:27:36 +00:00
yangguo@chromium.org
a5a82ef123
Revert "Throw exception on invalid string length instead of OOM."
...
This reverts r20112.
TBR=yangguo@chromium.org
Review URL: https://codereview.chromium.org/206383002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20114 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-20 11:11:28 +00:00
yangguo@chromium.org
9ba80269ee
Throw exception on invalid string length instead of OOM.
...
R=bmeurer@chromium.org
BUG=349329
LOG=Y
Review URL: https://codereview.chromium.org/199853004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20112 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-20 10:49:33 +00:00
yangguo@chromium.org
0bc684a794
Introduce per-isolate assert scopes and API to guard JS execution.
...
R=jochen@chromium.org
Review URL: https://codereview.chromium.org/198253004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20062 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-19 11:31:43 +00:00
svenpanne@chromium.org
16bcd43187
More cctest fixes regarding lifetime/ownership.
...
* Avoid double-free in cctest/test-api/RegExpInterruption.
* Avoid incorrect zone fiddling in cctest/test-strings.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/144533005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19020 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-02-03 07:29:23 +00:00
ulan@chromium.org
343813c59e
Revert r18451 "Revert r18449 "Reland r18383: More API cleanup." and r18450 "Unbreak build."" since necessary WebKit changes are rolled in Chromium.
...
TBR=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/119753008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18452 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-03 14:31:17 +00:00
ulan@chromium.org
163386c700
Revert r18449 "Reland r18383: More API cleanup." and r18450 "Unbreak build."
...
because of broken WebKit bots.
TBR=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/119323006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18451 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-03 14:13:21 +00:00
svenpanne@chromium.org
1143ab132e
Reland r18383: More API cleanup.
...
* Removed String::Empty, Number::New, Integer::New, Integer::NewFromUnsigned, FunctionTemplate::New and Object::New without Isolate* parameter.
* Removed Integer::New and Integer::NewUnsigned with weird argument order.
Chrome CLs matching this change have been landed.
TBR=dcarney@chromium.org
LOG=y
BUG=324225
Review URL: https://codereview.chromium.org/108783007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18449 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-03 11:56:33 +00:00
svenpanne@chromium.org
e595dc0368
Revert "More API cleanup."
...
This reverts r18383. The CL in itself is OK, we just have to wait until Chrome's commit queue lands the final corresponding change and re-land this CL. :-/
TBR=hpayer@chromium.org
Review URL: https://codereview.chromium.org/119013004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18384 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-20 11:35:53 +00:00
svenpanne@chromium.org
d54a4e6d40
More API cleanup.
...
* Removed String::Empty, Number::New, Integer::New, Integer::NewFromUnsigned, FunctionTemplate::New and Object::New without Isolate* parameter.
* Removed Integer::New and Integer::NewUnsigned with weird argument order.
Chrome CLs matching this change are prepared, BTW.
LOG=y
BUG=324225
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/118523003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18383 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-20 10:49:27 +00:00
yurys@chromium.org
cd5ea74700
Replace 'operator*' with explicit 'get' method on SmartPointer
...
Made operator* return reference to the raw type, not pointer. New method 'get()' should be used when raw pointer is needed.
Also removed useless inline modifier from the SmaprtPointer methods and added const modifier to the methods that don't change smart pointer.
Made ~SmartPointerBase protected to avoid accidental calls of the non-virtual base class's destructor.
drive-by: fixed use after free in src/factory.cc
BUG=None
LOG=N
R=alph@chromium.org , svenpanne@chromium.org
Review URL: https://codereview.chromium.org/101763003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18275 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-09 07:41:20 +00:00
jochen@chromium.org
c1da40c08d
Mark deprecated APIs with relatively little use as deprecated
...
BUG=none
R=svenpanne@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/91503002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18114 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-28 08:21:26 +00:00
jochen@chromium.org
c0c5efb9e7
Remove usage of deprecated APIs from cctests
...
Also turn on deprecation warnings
BUG=v8:3023
R=svenpanne@chromium.org , dcarney@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/83343002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18011 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-22 12:43:17 +00:00
rmcilroy@chromium.org
782040d275
Remove deprecated v8::SetResourceConstraints without Isolate parameter
...
LOG=Y
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/62193003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17910 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-20 11:21:51 +00:00
dcarney@chromium.org
e0ecb1a14b
cleanup cctest generally and remove ctest::context
...
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/23519010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16831 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-19 13:30:47 +00:00
dcarney@chromium.org
c57236e288
remove HEAP from tests
...
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/24169005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16819 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-19 09:46:15 +00:00
dcarney@chromium.org
baf6add9f0
bulk replace Isolate::Current in tests
...
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/23534067
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16817 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-19 09:17:13 +00:00
dcarney@chromium.org
f758caa34d
bulk replace v8::Isolate::GetCurrent in tests
...
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/24265002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16813 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-19 08:54:58 +00:00
bmeurer@chromium.org
eb381b9444
Introduce a RandonNumberGenerator class. Refactor the random/private_random uses in Isolate/Context.
...
The RandomNumberGenerator is a pseudorandom number generator
with 48-bit state. It is properly seeded using either
(1) the --random-seed if specified, or
(2) the entropy_source function if configured, or
(3) /dev/urandom if available, or
(4) falls back to Time and TimeTicks based seeding.
Each Isolate now contains a RandomNumberGenerator, which replaces
the previous private_random_seed.
Every native context still has its own random_seed. But this random
seed is now properly initialized during bootstrapping,
instead of on-demand initialization. This will allow us to cleanup
and speedup the HRandom implementation quite a lot (this is delayed
for a followup CL)!
Also stop messing with the system rand()/random(), which should
not be done from a library anyway! We probably re-seeded the
libc rand()/random() after the application (i.e. Chrome) already
seeded it (with better entropy than what we used).
Another followup CL will replace the use of the per-isolate
random number generator for the address randomization and
thereby get rid of the Isolate::UncheckedCurrent() usage in
the platform code.
TEST=cctest/test-random-number-generator,cctest/test-random
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/23548024
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16612 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-10 11:13:55 +00:00
yangguo@chromium.org
01e913e874
Correctly stringify mixed encoding indirect strings.
...
R=verwaest@chromium.org
BUG=287476
Review URL: https://codereview.chromium.org/23480051
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16598 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-09 16:15:40 +00:00
jkummerow@chromium.org
1fcccc22ee
Revert "Make GlobalHandle::NodeBlock deletable"
...
This reverts r16040 due to OOM crashes.
R=danno@chromium.org
Review URL: https://codereview.chromium.org/22970004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16186 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-14 12:40:44 +00:00
dcarney@chromium.org
14ed15e7e1
Make GlobalHandle::NodeBlock deletable
...
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/21042004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16040 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-05 07:34:29 +00:00
bmeurer@chromium.org
9e0f0a73dc
Get rid of ZoneScope completely.
...
There's no need to differentiate between an actual Zone and its
scope. Instead we bind the lifetime of the Zone memory to the
lifetime of the Zone itself, which is way easier to understand
than having to dig through the code looking for zone scopes.
Depends on https://codereview.chromium.org/17826004/
R=danno@chromium.org
BUG=
Review URL: https://codereview.chromium.org/17827005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15337 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-26 13:36:16 +00:00
bmeurer@chromium.org
8e9b934e7e
Get rid of the ZoneScopeMode.
...
No one is using the DONT_DELETE_ON_EXIT mode for ZoneScopes anymore, so
we can safely assume that all ZoneScopes are DELETE_ON_EXIT now.
R=danno@chromium.org
BUG=
Review URL: https://codereview.chromium.org/17826004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15336 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-26 12:54:12 +00:00
mstarzinger@chromium.org
f8db2414f2
Deprecate FACTORY helper macro.
...
This removes the FACTORY helper macro to avoid accidental TLS access
when using the factory. Most internal code has access to the Isolate by
now whereas tests which are not performance critical still heavily use
TLS access through explicit Isolate::Current() calls.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/16337005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14931 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-04 10:30:05 +00:00
yangguo@chromium.org
7f8a3d803c
Make assertion scopes thread safe.
...
R=svenpanne@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/15691017
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14919 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-03 15:32:22 +00:00
dcarney@chromium.org
ff2a76b5d5
remove most V8_ALLOW_ACCESS_TO_* defines from test classes
...
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/15964004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14849 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-05-28 11:54:52 +00:00
dcarney@chromium.org
cf5ff5a14c
first step to remove unsafe handles
...
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/12729023
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14530 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-05-02 20:18:42 +00:00
mstarzinger@chromium.org
dd70ce29d1
Unify the way cctest initalizes the VM for each test case.
...
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/13483017
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14199 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-04-10 08:29:39 +00:00
yangguo@chromium.org
9673d7944c
Fix tests that fail on GC stress tests.
...
R=mstarzinger@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/12681006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14000 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-03-20 10:33:26 +00:00
svenpanne@chromium.org
53310ac152
Added a version of the v8::HandleScope constructor with an Isolate and use that consistently.
...
I tried to limit the use of v8::Isolate::GetCurrent() and v8::internal::Isolate::Current() as much as possible, but sometimes this would have involved restructuring tests quite a bit, which is better left for a separate CL.
BUG=v8:2487
Review URL: https://codereview.chromium.org/12716010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13953 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-03-15 12:06:53 +00:00
dcarney@chromium.org
fbe34d4ba5
remove latin-1 flag
...
R=yangguo@chromium.org
BUG=
Review URL: https://codereview.chromium.org/12700008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13939 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-03-13 20:04:50 +00:00
jkummerow@chromium.org
ed6c366f98
Add missing license headers.
...
BUG=chromium:98597
Review URL: https://codereview.chromium.org/12486003
Patch from Paweł Hajdan Jr. <phajdan.jr@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13854 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-03-07 11:12:26 +00:00
svenpanne@chromium.org
fb6776e84a
Made Isolate a mandatory parameter for everything Handle-related.
...
Unified parameter order of CreateHandle with the rest of v8 on the way. A few
Isolate::Current()s had to be introduced, which is not nice, and not every place
will win a beauty contest, but we can clean this up later easily in smaller steps.
Review URL: https://codereview.chromium.org/12300018
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13717 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-02-25 14:46:09 +00:00
svenpanne@chromium.org
71a26c928a
Make the Isolate parameter mandatory for internal HandleScopes.
...
Improved Frames and their iterators on the way, too.
BUG=v8:2487
Review URL: https://codereview.chromium.org/12254007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13674 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-02-15 09:27:10 +00:00
yangguo@chromium.org
0c822b21cb
Fix some latin-1 webkit units tests
...
R=yangguo@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/11962035
Patch from Dan Carney <dcarney@google.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13455 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-21 16:11:31 +00:00
yangguo@chromium.org
a8d59243b9
Cleanup latin-1 conversion check in regexp engine
...
R=yangguo@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/11880045
Patch from Dan Carney <dcarney@google.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13400 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-16 13:04:07 +00:00
yangguo@chromium.org
45f20e366a
Introduce ENABLE_LATIN_1 compile flag
...
Mostly a bunch of renaming when flag is disabled.
R=yangguo@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/11759008
Patch from Dan Carney <dcarney@google.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13340 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-09 10:30:54 +00:00
yangguo@chromium.org
04ccb975f4
Remove InputBuffer
...
R=yangguo@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/11727004
Patch from Dan Carney <dcarney@google.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13298 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-01-03 09:18:01 +00:00
yangguo@chromium.org
bccef0c712
Reland r13275 and 13276 (Remove most uses of StringInputBuffer).
...
R=dcarney@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/11727003
Patch from Dan Carney <dcarney@google.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13291 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-12-31 11:13:50 +00:00
yangguo@chromium.org
121f3f6020
Revert r13275 and 13276 (Remove most uses of StringInputBuffer).
...
This is due to test failures in test-mark-compact/BootUpMemoryUse.
R=ulan@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/11688003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13277 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-12-27 10:03:17 +00:00
yangguo@chromium.org
7f074acd8d
Remove most uses of StringInputBuffer
...
R=yangguo@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/11638037
Patch from Dan Carney <dcarney@google.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13275 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-12-24 08:29:48 +00:00
yangguo@chromium.org
9569b20db2
Replace the use CharacterStreams in Heap::AllocateSymbolInternal and String::ComputeHash
...
R=yangguo@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/11593007
Patch from Dan Carney <dcarney@google.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13242 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-12-19 13:27:20 +00:00
mstarzinger@chromium.org
1aed997ad6
Make string test resilient against GC stress.
...
R=dcarney@chromium.org
TEST=cctest/test-strings/StringCharacterStreamRandom
Review URL: https://codereview.chromium.org/11565031
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13220 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-12-14 12:45:28 +00:00
yangguo@chromium.org
a1265a15cf
Cleanup tests for StringCharacterStream
...
Edge case tests now cover all branches.
R=yangguo@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/11548023
Patch from Dan Carney <dcarney@google.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13217 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-12-13 15:39:01 +00:00
yangguo@chromium.org
32103ca870
Fix windows build.
...
R=dcarney@google.com
BUG=
Review URL: https://chromiumcodereview.appspot.com/11538003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13191 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-12-11 10:42:10 +00:00
yangguo@chromium.org
f02af74575
Cleanup StringCharacterStream and add initial test cases.
...
BUG=
Review URL: https://chromiumcodereview.appspot.com/11438046
Patch from Dan Carney <dcarney@google.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13189 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-12-11 10:22:15 +00:00
yangguo@chromium.org
59b9a32b34
Fix edge case of extension with NULL as source string.
...
BUG=144649
Review URL: https://chromiumcodereview.appspot.com/10914201
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12485 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-09-11 14:16:56 +00:00
yangguo@chromium.org
7cbca775ee
Reland regexp global optimizations.
...
BUG=
Review URL: https://chromiumcodereview.appspot.com/10872010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12396 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-08-28 09:37:41 +00:00
sanjoy@chromium.org
9e4fbb45c1
One Zone per CompilationInfo.
...
The CompilationInfo record now saves a Zone, and the compiler pipeline
allocates memory from the Zone in the CompilationInfo. Before
compiling a function, we create a Zone on the stack and save a pointer
to that Zone to the CompilationInfo; which then gets picked up and
allocated from.
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/10534139
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11877 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-06-20 08:58:41 +00:00
sanjoy@chromium.org
6125718f37
Remove TLS access for current Zone.
...
By passing around a Zone object explicitly we no longer need to do a
TLS access at the sites that allocate memory from the current Zone.
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/10534006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11761 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-06-11 12:42:31 +00:00
yangguo@chromium.org
76f4f9efa8
Correctly check length when allocating string.
...
R=jkummerow@chromium.org
BUG=
TEST=regress-regexp-overflow.js
Review URL: https://chromiumcodereview.appspot.com/10538012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11720 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-06-05 17:41:59 +00:00
yangguo@chromium.org
47c4a5b4ef
Make SubStringStub more robust wrt unsafe arguments.
...
BUG=
TEST=test-strings/RobustSubStringStub
Review URL: https://chromiumcodereview.appspot.com/9969196
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11349 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-04-17 10:49:15 +00:00
mstarzinger@chromium.org
7422c9a3fa
Regression test for large string joins.
...
BUG=none
TEST=cctest/test-strings/AsciiArrayJoin
Review URL: https://chromiumcodereview.appspot.com/9963104
Patch from Martyn Capewell <m.m.capewell@googlemail.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11229 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-04-04 14:37:07 +00:00
yangguo@chromium.org
6d0d6a5695
Recursion limit for one-char string replace and retire String::kMinNonFlatLength.
...
TEST=mjsunit/string-replace-one-char.js
Review URL: https://chromiumcodereview.appspot.com/9231017
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10422 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-01-17 14:29:17 +00:00
yangguo@chromium.org
3439ab60f7
Correcting a bogus assert outdated since r9295.
...
Review URL: http://codereview.chromium.org/7909002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9300 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-15 12:47:06 +00:00
yangguo@chromium.org
327eb48ce6
Enable slices of external strings (in the tentative implementation).
...
TEST=cctest test-strings/SliceFromExternal, mjsunit/string-slices.js
Review URL: http://codereview.chromium.org/7832002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9295 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-15 11:10:01 +00:00
yangguo@chromium.org
1be99a9627
Generated code for substring slices in x64 and arm.
...
Review URL: http://codereview.chromium.org/7795018
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9111 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-09-01 15:24:26 +00:00
yangguo@chromium.org
77141f78ff
Tentative implementation of string slices (hidden under the flag --string-slices).
...
TEST=test/mjsunit/string-slices.js
Review URL: http://codereview.chromium.org/7477045
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9027 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-08-26 13:03:30 +00:00
vitalyr@chromium.org
179702df03
Inline more zone stuff.
...
R=ager@chromium.org
Review URL: http://codereview.chromium.org/7066004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8009 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-05-23 22:23:50 +00:00
vitalyr@chromium.org
7976ca2cbc
Merge isolates to bleeding_edge.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7271 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-18 20:35:07 +00:00
vitalyr@chromium.org
76e226f832
Revert r7268: it borked the history.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7269 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-18 19:41:05 +00:00
vitalyr@chromium.org
6ff7fdebd3
Merge isolates to bleeding_edge.
...
Review URL: http://codereview.chromium.org/6685088
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7268 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2011-03-18 18:49:56 +00:00
erik.corry@gmail.com
0dcaac1939
Make Failure inherit from MaybeObject instead of Object.
...
Review URL: http://codereview.chromium.org/3970005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5698 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-10-25 15:22:03 +00:00
lrn@chromium.org
c3b4097f28
Fix bug in test case that made it fail to compile in non-debug mode.
...
Using ASSERT_EQ instead of CHECK_EQ means that a variable becomes unused.
Review URL: http://codereview.chromium.org/2475003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4785 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-06-02 11:05:06 +00:00
lrn@chromium.org
5b7e77acea
Fix bug that could cause a string to be incorrectly tagged as an array index.
...
We should only mark a string as an array index if we can store the entire value
of the number in the hash field. We sometimes failed to reject larger numbers.
Fixes http://code.google.com/p/v8/issues/detail?id=728
Review URL: http://codereview.chromium.org/2452007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4782 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-06-02 09:31:01 +00:00
antonm@chromium.org
6e8c85dc84
Expose a hint which communicates that string might be written many times.
...
Review URL: http://codereview.chromium.org/1609021
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4400 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-04-13 17:00:33 +00:00
antonm@chromium.org
c898c7ae03
Landing http://codereview.chromium.org/1594017 for Ryan.
...
TBR=ager@chromium.org
Review URL: http://codereview.chromium.org/1512028
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4367 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-04-08 18:23:10 +00:00
antonm@chromium.org
e116cce61b
Landing http://codereview.chromium.org/1539013 for ry@tinyclouds.org.
...
TBR=ager@chromium.org
Review URL: http://codereview.chromium.org/1629001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4352 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-04-06 17:58:43 +00:00
sgjesse@chromium.org
4c26032c92
Fix compilation errors on some compilers
...
TBR=ager@chromium.org
Review URL: http://codereview.chromium.org/462018
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3402 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-12-03 08:32:04 +00:00
sgjesse@chromium.org
53fbd5932a
Perform string add in generated code on IA-32 platforms
...
This adds a code stub which can do most of what Heap::AllocateConsString can do. It bails out if the result cannot fit in new space or if the result is a short (flat) string and one argument is an ascii string and the other a two byte string. It also bails out if adding two one character strings as Heap::AllocateConsString has special handling of this utilizing the symbol table. The stub is used both for the binary add operation and for StringAdd calls from runtime JavaScript files. Extended the string add test to cover all sizes of flat result stings.
Review URL: http://codereview.chromium.org/442024
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3400 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-12-03 07:56:21 +00:00
sgjesse@chromium.org
9487ef7b9b
Fix adding short external ascii strings
...
BUG=http://code.google.com/p/v8/issues/detail?id=536
TEST=cctest/test-strings/ExternalShortStringAdd
Review URL: http://codereview.chromium.org/466001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3397 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-12-02 12:58:10 +00:00
lrn@chromium.org
d53f05e3e2
Fix warnings on Win64.
...
Set warning level to /W3 and change implicit conversions from size_t
to int. Most "fixes" are simply manifesting the implicit casts or using
a special strlen replacement that returns int.
Review URL: http://codereview.chromium.org/390004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3273 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-11-11 09:50:06 +00:00
sgjesse@chromium.org
851b9b2f73
Remove sliced string string type
...
As a first step to reduce the complexity of the string hierachy the sliced string type is removed. Whenever a sub-string is created it is allocated as a fresh flat string.
Review URL: http://codereview.chromium.org/385004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3259 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-11-10 13:23:05 +00:00
christian.plesner.hansen@gmail.com
681e67b775
Make 'hidden' the default visibility for gcc. Add build option,
...
visibility=[hidden|default], that controls visibility and make
'hidden' the default. Export a few variables that had been forgotten.
Review URL: http://codereview.chromium.org/206011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2884 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-09-15 11:11:09 +00:00
mike@belshe.com
f736ed3ff8
Forgot to change API signature for V8 tests.
...
BUG=none
TEST=none
TBR=ager
Review URL: http://codereview.chromium.org/174386
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2749 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-08-25 03:18:40 +00:00
kasperl@chromium.org
055367afeb
Extend the regression test case for crbug.com/9746 to
...
make sure we actually get rid of the external string
eventually.
Review URL: http://codereview.chromium.org/113022
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1872 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-05-06 06:20:35 +00:00