verwaest@chromium.org [Wed, 11 Dec 2013 13:51:48 +0000 (13:51 +0000)]
Fixed global object leak caused by overwriting the global receiver (the global proxy) in the global object with the global object itself.
This CL additionally removes the API function to reattach a global proxy to a
global object.
BUG=324812
LOG=y
R=dcarney@chromium.org, titzer@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
101733002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18299
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Wed, 11 Dec 2013 13:11:44 +0000 (13:11 +0000)]
Initialize Date parse cache with SMI instead of double to workaround sharing mutable heap numbers in snapshot.
This is the only field in the snapshot that was tracked as double.
R=verwaest@chromium.org
TEST=mjsunit/regress/regress-280531.js
BUG=280531
LOG=Y
Review URL: https://chromiumcodereview.appspot.com/
112003005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18298
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Wed, 11 Dec 2013 11:58:07 +0000 (11:58 +0000)]
Switch armv7 setting to arm_version==7 in v8 gyp files
BUG=chromium:234135
LOG=Y
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
98543008
Patch from Mostyn Bramley-Moore <mostynb@opera.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18297
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 11 Dec 2013 11:34:09 +0000 (11:34 +0000)]
Fix off-by-one error in AstTyper.
This causes the first parameter to be confused with the first
stack local when we collect type information.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
105943007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18296
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Tue, 10 Dec 2013 23:03:56 +0000 (23:03 +0000)]
MIPS: Fix popping order on ARM.
Port r18291 (
f5a50cf3)
BUG=
R=gergely@homejinni.com
Review URL: https://codereview.chromium.org/
111933004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18295
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Tue, 10 Dec 2013 23:01:40 +0000 (23:01 +0000)]
MIPS: Properly restore the receiver after the interceptor call.
Port r18289 (
6bc886d3)
BUG=
R=gergely@homejinni.com
Review URL: https://codereview.chromium.org/
110943003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18294
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Tue, 10 Dec 2013 23:00:10 +0000 (23:00 +0000)]
MIPS: Fix patching the receiver (global object -> global proxy) after the interceptor.
Port r18286 (
f6277add)
Original commit message:
This is a temporary fix that will be replaced by loading the proxy from the target function.
BUG=
R=gergely@homejinni.com
Review URL: https://codereview.chromium.org/
103453003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18293
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 10 Dec 2013 22:43:15 +0000 (22:43 +0000)]
Push receiver and holder separately, given that they can be the same.
TBR=dcarney@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
110883007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18292
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 10 Dec 2013 16:28:58 +0000 (16:28 +0000)]
Fix popping order on ARM.
R=dcarney@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
99353003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18291
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Tue, 10 Dec 2013 15:54:20 +0000 (15:54 +0000)]
Added regression test for escape analysis.
BUG=
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
99133011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18290
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 10 Dec 2013 14:36:10 +0000 (14:36 +0000)]
Properly restore the receiver after the interceptor call.
R=dcarney@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
108803006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18289
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Tue, 10 Dec 2013 14:28:41 +0000 (14:28 +0000)]
Use FAR jump in GenerateCompareFlatAsciiStrings.
BUG=325487
R=jkummerow@chromium.org
LOG=N
Review URL: https://codereview.chromium.org/
106853002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18288
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Tue, 10 Dec 2013 14:05:25 +0000 (14:05 +0000)]
Add a regression test for boolean concatenation in strings.
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
106743010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18287
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 10 Dec 2013 13:11:08 +0000 (13:11 +0000)]
Fix patching the receiver (global object -> global proxy) after the interceptor.
This is a temporary fix that will be replaced by loading the proxy from the target function.
R=dcarney@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
108913006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18286
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 10 Dec 2013 12:11:45 +0000 (12:11 +0000)]
Track *all* external strings in the external string table.
Up till now, external strings may be tracked in the string table
(for internalized strings) or the external string table, depending
on in which order internalize and externalize happened.
The internalized string table should not have to deal with external
strings, all of which should be tracked by the external string table.
R=svenpanne@chromium.org
BUG=326489
LOG=N
Review URL: https://codereview.chromium.org/
103663006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18285
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 10 Dec 2013 09:44:44 +0000 (09:44 +0000)]
Increase number of available major keys.
This also adds a static assert checking that we do not
exceed the available number of major keys. The safepoint
table offset is now max 2^24 instead of 2^25.
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
110183003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18284
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ishell@chromium.org [Mon, 9 Dec 2013 16:51:57 +0000 (16:51 +0000)]
HLoadNamedField for Smis optimized for x64
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
108633003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18283
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 9 Dec 2013 16:41:42 +0000 (16:41 +0000)]
x64: save a bit code size
It would be better use macro always
BUG=
R=verwaest@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
100843002
Patch from Weiliang Lin <weiliang.lin@intel.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18282
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Mon, 9 Dec 2013 16:11:54 +0000 (16:11 +0000)]
Prepare push to trunk. Now working on version 3.24.1.
R=jkummerow@chromium.org
TBR=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
104663005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18279
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Mon, 9 Dec 2013 16:00:58 +0000 (16:00 +0000)]
Fast-forward version number on bleeding_edge to 3.24.0
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
107473003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18278
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Mon, 9 Dec 2013 10:15:19 +0000 (10:15 +0000)]
Avoid FP exceptions when doing integer division.
BUG=v8:3039
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/
104003004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18277
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Mon, 9 Dec 2013 10:14:20 +0000 (10:14 +0000)]
Fix trivial error when building with clang.
$ ninja -C out/Debug
...
../../src/d8.cc:171:11: error: unused variable 'MB'
[-Werror,-Wunused-const-variable]
const int MB = 1024 * 1024;
^
1 error generated.
R=titzer@chromium.org, svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
105833008
Patch from Thiago Farina <tfarina@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18276
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Mon, 9 Dec 2013 07:41:20 +0000 (07:41 +0000)]
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
plind44@gmail.com [Fri, 6 Dec 2013 16:23:49 +0000 (16:23 +0000)]
MIPS: Faster memcpy.
BUG=
R=jkummerow@chromium.org, plind44@gmail.com
Review URL: https://codereview.chromium.org/
104353002
Patch from yuyin QQ <xwafish@gmail.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18274
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
plind44@gmail.com [Fri, 6 Dec 2013 14:14:32 +0000 (14:14 +0000)]
MIPS: Fix compilation with clang.
Port r18267 (12a613f)
BUG=
R=gergely@homejinni.com
Review URL: https://codereview.chromium.org/
98403003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18268
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Fri, 6 Dec 2013 11:45:26 +0000 (11:45 +0000)]
Fix compilation with clang
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
106863002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18267
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Fri, 6 Dec 2013 09:52:40 +0000 (09:52 +0000)]
Remove outdated profiler flags
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
103293006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18266
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Fri, 6 Dec 2013 09:43:07 +0000 (09:43 +0000)]
Bugfix: HCheckInstanceType::GetCheckMaskAndTag used an incorrect mask.
The mask to check for an internalized string was incorrectly formed. Hat
tip to Weiliang Lin for discovering the bug.
BUG=v8:3038
LOG=N
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
108033002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18265
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Thu, 5 Dec 2013 20:27:43 +0000 (20:27 +0000)]
MIPS: Fix parameter passing in callback store ics on arm
Port r18260 (
d708e244)
BUG=
R=gergely@homejinni.com
Review URL: https://codereview.chromium.org/
100453009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18264
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Thu, 5 Dec 2013 18:31:06 +0000 (18:31 +0000)]
Fix loop side-effects of deoptimizing loops with a nested live OSR loop.
R=titzer@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
106723002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18263
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Thu, 5 Dec 2013 17:26:22 +0000 (17:26 +0000)]
Add tests and extension verifying CHECK and ASSERT.
The new native functions can also be used in blink tests to ensure that V8 asserts are turned on where they should be.
BUG=
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/
105953005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18262
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 5 Dec 2013 16:17:44 +0000 (16:17 +0000)]
Fix incorrect patching for OSR.
If OSR happens before regular recompilation, the unoptimized function code
on the stack may not have deoptimization support. In that case, graph
creation compiles the unoptimized code again to include support. That
code is then installed as shared code. When we patch code for OSR, the
function code on the stack and not the shared code is what we want.
R=titzer@chromium.org
TEST=block-conflicts.js with --always-osr --concurrent-osr
Review URL: https://codereview.chromium.org/
99013003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18261
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Thu, 5 Dec 2013 12:38:50 +0000 (12:38 +0000)]
Fix parameter passing in callback store ics on arm
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
93873007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18260
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Thu, 5 Dec 2013 12:37:24 +0000 (12:37 +0000)]
'make quickcheck': Assorted improvements.
'make ia32' should not build ia32.optdebug.
'make ia32.clean' should delete ia32.optdebug output.
'make quickcheck' should be terminatable by hitting Ctrl+C just once.
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
106443002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18259
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 5 Dec 2013 12:36:42 +0000 (12:36 +0000)]
Reland "Implement hyperbolic math functions for ES6."
BUG=v8:2938
LOG=N
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
104173002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18258
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Thu, 5 Dec 2013 11:19:10 +0000 (11:19 +0000)]
Pass -Goutput_dir=. to the make generator.
This makes it possible to remove the builddir_name hack added in r238632.
BUG=315004
Patch from Nico Weber <thakis@chromium.org>.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
98753003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18257
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 4 Dec 2013 11:39:24 +0000 (11:39 +0000)]
Remove unused trigonometric code.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
104203003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18256
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Wed, 4 Dec 2013 10:46:18 +0000 (10:46 +0000)]
Remove unnecessary overflow check in HGraphBuilder::BuildCreateAllocationMemento().
With this fix codegen looks like:
mov ecx,[eax+0xf] ;;; <@52,#38> load-named-field
add ecx,0x2 ;;; <@54,#40> add-i
mov [eax+0xf],ecx ;;; <@56,#41> store-named-field
without it there is an overflow check and jump to deopt.
x64 code looks similar, except there is an (annoying) smi-untag then int32-to-smi around the add operation.
R=bmeurer@chromium.org, hpayer@chromium.org
Review URL: https://codereview.chromium.org/
104313003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18255
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Wed, 4 Dec 2013 10:09:08 +0000 (10:09 +0000)]
Remove internal uses of HandleScope::Close().
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/
104183002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18254
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Wed, 4 Dec 2013 09:54:23 +0000 (09:54 +0000)]
AllocationSite::memento_found_count() and friends need Smi access.
Some new AllocationSite fields weren't accessed with the correct
representation.
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
101783005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18253
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Wed, 4 Dec 2013 09:42:29 +0000 (09:42 +0000)]
Prepare push to trunk. Now working on version 3.23.19.
R=dslomov@chromium.org
TBR=dslomov@chromium.org
Review URL: https://codereview.chromium.org/
104183003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18250
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Wed, 4 Dec 2013 09:27:48 +0000 (09:27 +0000)]
Revert "Use constant types to represent the fixed right arg of a MOD."
This reverts commit r18246 for tanking all benchmarks.
TBR=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
104243002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18249
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 4 Dec 2013 08:53:17 +0000 (08:53 +0000)]
Revert "Implement hyperbolic math functions for ES6."
BUG=
Review URL: https://codereview.chromium.org/
104003002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18248
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Wed, 4 Dec 2013 08:47:18 +0000 (08:47 +0000)]
Add fully automated mode to push-to-trunk script.
Now there are three modes to run the script:
(1) default: semi-automated
(2) manual (-m option), like in the old script
(3) forced (-f option), no user input required no editor check
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
102253002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18247
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Wed, 4 Dec 2013 08:37:34 +0000 (08:37 +0000)]
Use constant types to represent the fixed right arg of a MOD.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
103933002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18246
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 4 Dec 2013 08:32:18 +0000 (08:32 +0000)]
Implement hyperbolic math functions for ES6.
R=jarin@chromium.org
BUG=v8:2938
LOG=Y
Review URL: https://codereview.chromium.org/
102023003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18245
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Wed, 4 Dec 2013 08:25:58 +0000 (08:25 +0000)]
Fix performance regression in Kraken audio-oscillator.
BUG=325529
LOG=y
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
103903002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18244
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Wed, 4 Dec 2013 06:06:57 +0000 (06:06 +0000)]
Skip write barrier if value and object originate from the same allocation.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
101993002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18243
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Tue, 3 Dec 2013 18:04:45 +0000 (18:04 +0000)]
Add some test cases with dead loops.
BUG=
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
98323004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18242
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 3 Dec 2013 17:59:31 +0000 (17:59 +0000)]
Check whether the receiver to a keyed-call is actually a heapobject.
BUG=325225
LOG=n
R=dslomov@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
101863004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18241
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Tue, 3 Dec 2013 14:30:36 +0000 (14:30 +0000)]
Fix condition in merge-to-branch.sh
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
101973002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18237
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Tue, 3 Dec 2013 14:24:40 +0000 (14:24 +0000)]
'make quickcheck': don't overwrite debug output.
Achieved by turning optdebug into a first-class compilation mode.
R=bmeurer@chromium.org, machenbach@chromium.org
Review URL: https://codereview.chromium.org/
98963002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18236
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Tue, 3 Dec 2013 13:48:40 +0000 (13:48 +0000)]
Disable escape analysis.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
101903002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18234
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Tue, 3 Dec 2013 13:12:52 +0000 (13:12 +0000)]
Tests that make a stack allocated persistent weak and rely on gc need to force gc
Otherwise, if during a fuzzer test incremental marking is running, we'll
crash in the weak callback
BUG=none
TBR=verwaest@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/
101843002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18233
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Tue, 3 Dec 2013 12:38:25 +0000 (12:38 +0000)]
Mock out date call in push-to-trunk script for testability.
TEST=python -m unittest test_scripts.ScriptTest.testPrepareChangeLog
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
98173003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18232
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Tue, 3 Dec 2013 12:32:35 +0000 (12:32 +0000)]
Make LCodeGen::RegisterDependentCodeForEmbeddedMaps platform independent.
BUG=
R=hpayer@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
99053002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18231
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 3 Dec 2013 11:24:56 +0000 (11:24 +0000)]
Revert "Use constant types to represent the fixed right arg of a MOD."
This reverts commit r18228 for crashing on Windows.
TBR=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
101663002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18229
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 3 Dec 2013 10:51:57 +0000 (10:51 +0000)]
Use constant types to represent the fixed right arg of a MOD.
R=mvstanton@chromium.org, svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
99173002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18228
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Tue, 3 Dec 2013 10:40:13 +0000 (10:40 +0000)]
Remove deprecated Persistent::MakeWeak usage from V8
BUG=none
LOG=n
R=dcarney@chromium.org, ulan@chromium.org
Review URL: https://codereview.chromium.org/
101523002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18227
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Tue, 3 Dec 2013 10:39:21 +0000 (10:39 +0000)]
Change clang-format config to allow for two empty lines between functions
BUG=none
R=jkummerow@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/
101543002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18226
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Tue, 3 Dec 2013 10:24:41 +0000 (10:24 +0000)]
Add dcarney to V8 OWNERS
R=danno@chromium.org
LOG=n
BUG=none
Review URL: https://codereview.chromium.org/
101373003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18225
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 3 Dec 2013 09:59:24 +0000 (09:59 +0000)]
Enable new string add.
BUG=v8:2990
LOG=n
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
100223003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18222
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Tue, 3 Dec 2013 09:48:30 +0000 (09:48 +0000)]
Remove HeapSnapshotsCollection class
The class added unecessary level of indirection to the heap profiler implementation. I merged some of its implementation into HeapProfiler and deleted the rest. This refactoring is also a prerequisite for keeping HeapObjectsMap alive even when all snapshots are deleted.
BUG=None
LOG=N
R=alph@chromium.org, mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
101393002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18221
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Tue, 3 Dec 2013 09:13:51 +0000 (09:13 +0000)]
Fix change log generation in push-to-trunk script.
Fixed missing parenthesis in regular expression. The log checker matched on the word "true" and included a wrong change log entry.
TEST=python -m unittest test_scripts.ToplevelTest.testRegressWrongLogEntryOnTrue
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
99573003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18220
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Tue, 3 Dec 2013 08:00:20 +0000 (08:00 +0000)]
Prepare push to trunk. Now working on version 3.23.18.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
101313002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18217
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
haitao.feng@intel.com [Tue, 3 Dec 2013 03:49:41 +0000 (03:49 +0000)]
Refactor X64 movq assembler instruction
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
91333002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18216
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
haitao.feng@intel.com [Tue, 3 Dec 2013 02:49:42 +0000 (02:49 +0000)]
Use ULL and LL suffix for uint64_t and int64_t constants on Mac
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
96623002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18215
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Mon, 2 Dec 2013 21:18:22 +0000 (21:18 +0000)]
MIPS: Tidy up Throw and Mod
Port r18200 (
4110d9df)
Original commit message:
Small fixes to Throw and Mod Lithium instructions.
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/
100003003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18214
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Mon, 2 Dec 2013 21:17:16 +0000 (21:17 +0000)]
MIPS: Refactor BinaryOpIC to be able to use different stubs.
Port r18191 (
c20c6dc1)
Original commit message:
Previously BinaryOpIC and BinaryOpStub were pretty much interdependent.
However, in order to use allocation sites for string adds on-demand,
we need to be able to use different stubs (with a different number of
register parameters, via trampolines) depending on the BinaryOpIC state.
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/
100023002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18213
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Mon, 2 Dec 2013 21:16:21 +0000 (21:16 +0000)]
MIPS: Fix HInnerAllocatedObject to use an HValue for the offset.
Port r18181 (
2b41b833)
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/
99763003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18212
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Mon, 2 Dec 2013 21:15:31 +0000 (21:15 +0000)]
MIPS: Optimize WrapReceiver
Port r18180 (
56666385)
Original commit message:
Optimize register constraints and code generated for WrapReceiver Lithium instruction.
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/
100013002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18211
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Mon, 2 Dec 2013 18:34:33 +0000 (18:34 +0000)]
Check elimination: Learn from if(CompareMap(x)) on true branch.
BUG=
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
99043002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18210
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Mon, 2 Dec 2013 18:12:01 +0000 (18:12 +0000)]
Remove remaining HandleScope::Close usage
For some reason, this is only caught when compiling with chromium on
Mac.
BUG=none
R=verwaest@chromium.org, dslomov@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/
99263002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18209
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Mon, 2 Dec 2013 17:40:06 +0000 (17:40 +0000)]
MIPS: Remove the obsolete Code::IsPregenerated flag.
Port r18172 (
cd823192)
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/
99323003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18208
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Mon, 2 Dec 2013 15:46:41 +0000 (15:46 +0000)]
Print exit code on crash in run-tests.py
R=jkummerow@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
99363002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18204
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
marja@chromium.org [Mon, 2 Dec 2013 15:41:57 +0000 (15:41 +0000)]
Fix: test-debug.cc: don't misuse C++.
The test in question (test-debug/LiveEditEnabled) is expected to fail, and it
failed, but because of the wrong reason (the test asserts that the default
isolate is not initialized, SetLiveEditEnabled initialized the default
isolate because it doesn't get one as param). Now it fails because of the right
reason.
R=ulan@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
99043004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18203
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Mon, 2 Dec 2013 15:38:50 +0000 (15:38 +0000)]
Bug in StoreIC::GenerateMegamorphic: strict_mode/extra_ic_state mismatch.
When computing the code flags for a megamorphic store IC, we mistakenly
passed a strict_mode variable when an ExtraICState was expected.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
98633005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18202
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Mon, 2 Dec 2013 15:29:31 +0000 (15:29 +0000)]
Support 'werror=no' on Mac/Xcode
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
98653003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18201
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
m.m.capewell@googlemail.com [Mon, 2 Dec 2013 15:27:57 +0000 (15:27 +0000)]
ARM: Tidy up Throw and Mod
Small fixes to Throw and Mod Lithium instructions.
TEST=none
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
98603005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18200
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Mon, 2 Dec 2013 14:49:39 +0000 (14:49 +0000)]
Enable global load elimination.
BUG=
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
98943002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18198
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Mon, 2 Dec 2013 14:27:24 +0000 (14:27 +0000)]
Simplify allocation tracker API
Deprecated separate methods for starting/stopping allocation tracking in favor of a bool param to Start/StopTrackingHeapObjects.
BUG=None
LOG=N
R=loislo@chromium.org, mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
96933003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18197
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Mon, 2 Dec 2013 13:49:32 +0000 (13:49 +0000)]
Move more logic from AST to oracle, pt 3
Also eliminates remaining dependencies of type-info on AST.
R=jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
95033003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18194
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 2 Dec 2013 13:40:14 +0000 (13:40 +0000)]
Fix NaCl build.
TBR=dslomov@chromium.org
Review URL: https://codereview.chromium.org/
99093003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18193
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 2 Dec 2013 13:14:07 +0000 (13:14 +0000)]
Refactor BinaryOpIC to be able to use different stubs.
Previously BinaryOpIC and BinaryOpStub were pretty much interdependent.
However, in order to use allocation sites for string adds on-demand,
we need to be able to use different stubs (with a different number of
register parameters, via trampolines) depending on the BinaryOpIC state.
R=hpayer@chromium.org, mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
97543002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18191
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 2 Dec 2013 13:12:07 +0000 (13:12 +0000)]
Fix invalid assertion with OSR in BuildBinaryOperation.
BUG=v8:3032
LOG=n
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
98623004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18190
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 2 Dec 2013 12:56:54 +0000 (12:56 +0000)]
Make sin-cos test case compatible with --always-osr.
R=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
98893002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18188
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Mon, 2 Dec 2013 12:11:02 +0000 (12:11 +0000)]
Handle captured objects in OptimizedFrame::Summarize.
R=yangguo@chromium.org
BUG=v8:3029
TEST=mjsunit/regress/regress-3029
LOG=N
Review URL: https://codereview.chromium.org/
96773002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18187
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Mon, 2 Dec 2013 11:59:44 +0000 (11:59 +0000)]
Removed pieces of extra_ic_state scattered around the stub compiler class hierarchy, and pushed down to a extra_ic_state in the base class.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
98853002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18185
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 2 Dec 2013 11:24:31 +0000 (11:24 +0000)]
Fix HInnerAllocatedObject to use an HValue for the offset.
R=hpayer@chromium.org, mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
98673003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18181
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
m.m.capewell@googlemail.com [Mon, 2 Dec 2013 10:56:23 +0000 (10:56 +0000)]
ARM: Optimize WrapReceiver
Optimize register constraints and code generated for WrapReceiver Lithium
instruction.
TEST=none
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
96993002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18180
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Mon, 2 Dec 2013 10:46:10 +0000 (10:46 +0000)]
Prepare push to trunk. Now working on version 3.23.17.
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/
98453003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18177
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Mon, 2 Dec 2013 09:53:28 +0000 (09:53 +0000)]
Add retry feature for push-to-trunk script.
Make url accesses retry. Git retry requires some more analysis of git output first (follow up CL).
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
91733003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18174
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 2 Dec 2013 09:51:37 +0000 (09:51 +0000)]
Remove special "store global proxy" IC, use as slow_stub().
R=mvstanton@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
95503003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18173
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 2 Dec 2013 09:46:35 +0000 (09:46 +0000)]
Remove the obsolete Code::IsPregenerated flag.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
96753003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18172
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 2 Dec 2013 08:09:17 +0000 (08:09 +0000)]
Fix compilation error with latest Xcode.
The build failed because of unused private fields.
R=titzer@chromium.org
BUG=v8:3030
LOG=n
Review URL: https://codereview.chromium.org/
94793003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18171
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Sun, 1 Dec 2013 11:40:02 +0000 (11:40 +0000)]
Don't run tests if build fails in quickcheck.
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
97803002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18170
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Sat, 30 Nov 2013 01:32:07 +0000 (01:32 +0000)]
MIPS: Drop IsPregenerated() and allow_stub_calls flag.
Port r18167 (
1e4b11e0)
Original commit message:
This also removes the fixed register hack that was required to support RecordWriteStub in the snapshot.
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/
97373002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18169
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Fri, 29 Nov 2013 23:46:10 +0000 (23:46 +0000)]
MIPS: Fix failures on Octane 2.0 zlib benchmark.
The bug was introduced in af9504e.
The zlib benchmark triggers long branch mode on MIPS, in which
at register is clobbered after every branch.
TEST=benchmarks/octane/zlib
BUG=
R=plind44@gmail.com
Review URL: https://codereview.chromium.org/
95203005
Patch from Dusan Milosavljevic <Dusan.Milosavljevic@rt-rk.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18168
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Fri, 29 Nov 2013 20:49:15 +0000 (20:49 +0000)]
Drop IsPregenerated() and allow_stub_calls flag.
This also removes the fixed register hack that was required to support RecordWriteStub in the snapshot.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
96853003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18167
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Fri, 29 Nov 2013 19:51:52 +0000 (19:51 +0000)]
MIPS: Fix --new-string-add feature.
This commit fixes the arguments of NewStringAdd stub in full-codegen.
BUG=
R=gergely@homejinni.com
Review URL: https://codereview.chromium.org/
96593005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18166
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00