Commit Graph

14291 Commits

Author SHA1 Message Date
palfia@homejinni.com
1b79ef17a0 MIPS: Enable optimization of functions with generic switches.
Port r18347 (64ac25c)

Fix of r18351

BUG=
R=hpayer@chromium.org

Review URL: https://codereview.chromium.org/94103007

Patch from Balazs Kilvady <kilvadyb@homejinni.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18361 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-18 17:56:30 +00:00
ishell@chromium.org
8c159ed4ec HStoreNamedField for Smis optimized for x64
R=verwaest@chromium.org

Review URL: https://codereview.chromium.org/108413003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18360 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-18 17:53:50 +00:00
ishell@chromium.org
c8583b59dc HLoadKeyed for Smis optimized for x64
R=verwaest@chromium.org

Review URL: https://codereview.chromium.org/108933002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18359 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-18 17:40:53 +00:00
ishell@chromium.org
99ded7d2e1 --predictable mode added
R=hpayer@chromium.org

Review URL: https://codereview.chromium.org/93633008

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18358 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-18 17:31:12 +00:00
danno@chromium.org
8683920e3f Improve ==/=== comparison in Hydrogen for monomorphic maps
R=titzer@chromium.org

Review URL: https://codereview.chromium.org/108083004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18357 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-18 17:18:23 +00:00
hpayer@chromium.org
b0f8644699 Use constant 0 instead of constant null when clearing map words during allocation folding.
BUG=
R=bmeurer@chromium.org

Review URL: https://codereview.chromium.org/112673002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18356 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-18 17:16:25 +00:00
hpayer@chromium.org
baae15b644 Prepare push to trunk. Now working on version 3.24.5.
R=jkummerow@chromium.org
BUG=

Review URL: https://codereview.chromium.org/105213006

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18353 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-18 16:20:59 +00:00
verwaest@chromium.org
e2bccd99c4 Bump codesize limit for OSR.
R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/111603008

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18352 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-18 16:17:42 +00:00
hpayer@chromium.org
53057bd52e Fix MIPS switch statement breakage.
BUG=

Review URL: https://codereview.chromium.org/116073004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18351 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-18 15:31:41 +00:00
svenpanne@chromium.org
b6c3701aea Handle Math.log(NaN) correctly in Crankshaft on Intel platforms.
This never worked...

TBR=yangguo@chromium.org

Review URL: https://codereview.chromium.org/118233002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18350 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-18 13:31:16 +00:00
svenpanne@chromium.org
6d94e94585 Improve the fix for r18344.
Our toolchains differ in mysterious ways, especially regarding
overloading resolution, templates, etc. :-P This fix avoids a
call/return just for resolution and uses a static_cast instead.

R=dcarney@chromium.org

Review URL: https://codereview.chromium.org/118183002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18349 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-18 12:09:14 +00:00
jkummerow@chromium.org
59c334ebf4 Hydrogen: Re-use regular comparisons infrastructure for switch statements
R=rossberg@chromium.org

Review URL: https://codereview.chromium.org/111573003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18348 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-18 11:58:58 +00:00
verwaest@chromium.org
fb7218dc3d Enable optimization of functions with generic switches.
R=jkummerow@chromium.org, titzer@chromium.org

Review URL: https://chromiumcodereview.appspot.com/110123002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18347 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-18 11:44:38 +00:00
svenpanne@chromium.org
b01b6dc2cf Fixed Windows build (hopefully).
TBR=dcarney@chromium.org

Review URL: https://codereview.chromium.org/102123008

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18346 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-18 11:27:18 +00:00
jkummerow@chromium.org
4418884cac Fix build after r18344
"log" is an overloaded function, it cannot be resolved without explicit parameter type information

TBR=svenpanne@chromium.org

Review URL: https://codereview.chromium.org/117723004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18345 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-18 11:08:10 +00:00
svenpanne@chromium.org
84aa5263f3 Remove the last remnants of the TranscendentalCache.
It was only used for Math.log, and even then only in full code and in %_MathLog. For crankshafted code, Intel already used the FP operations directly, while the ARM/MIPS ports were a bit lazy and simply called the stub. The latter directly call the C library now without any cache. It would be possible to directly generate machine code if somebody has the time, from what I've seen out in the wild it should be only about a dozen instructions.

LOG=y
R=yangguo@chromium.org

Review URL: https://codereview.chromium.org/113343003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18344 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-18 10:40:26 +00:00
yangguo@chromium.org
37d5abc939 Collect type information based on stack allocated values for OSR.
R=jkummerow@chromium.org, rossberg@chromium.org

Review URL: https://codereview.chromium.org/100093004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18343 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-18 10:38:58 +00:00
svenpanne@chromium.org
389ee8d59b Removed internal uses of (almost) deprecated FunctionTemplate::New version.
LOG=y
R=dcarney@chromium.org

Review URL: https://codereview.chromium.org/108063003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18342 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-18 10:31:42 +00:00
hpayer@chromium.org
7be4945c2b Removed unused ShouldTrackAllocationInfo method.
BUG=
R=mvstanton@chromium.org

Review URL: https://codereview.chromium.org/111723004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18341 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-18 10:30:31 +00:00
yurys@chromium.org
bdb77d24a1 Fix Linux shared compilation after r18337
BUG=chromium:327298
LOG=N
TBR=hpayer@chromium.org

Review URL: https://codereview.chromium.org/118113002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18340 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-18 09:52:37 +00:00
yurys@chromium.org
75318a2bb7 Fix debug compilation after r18337
BUG=chromium:327298
LOG=N
TBR=hpayer@chromium.org

Review URL: https://codereview.chromium.org/115113009

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18339 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-18 09:12:31 +00:00
yurys@chromium.org
19b6b7ada8 Delete several deprecated methods on v8::CpuProfiler
All methods for accessing collected profiles by index are deprecated. The indexed storage may well be implemented by the embedder should he need it. CpuProfiler's responsibility is just to create CpuProfile object that contains all collected data and whose lifetime can be managed by the embedder.

BUG=chromium:327298
LOG=Y
R=svenpanne@chromium.org

Review URL: https://codereview.chromium.org/117353002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18337 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-18 08:59:09 +00:00
jochen@chromium.org
815a729878 Roll ICU 214189:239289
Too many updates to summarize them here.

This version of ICU allows for using a .dat file on posix systems that is mmaped
instead of compiling the data in like we currently do.

BUG=72633
LOG=n
R=jshin@chromium.org, machenbach@chromium.org

Review URL: https://codereview.chromium.org/109963003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18336 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-18 08:47:12 +00:00
jochen@chromium.org
a14787f509 Initialize the embedder data array on v8::Context to three elements
Blink uses three slots, so instead of having to reallocate the array
everytime, make it big enough to begin with.

BUG=none
LOG=n
R=svenpanne@chromium.org

Review URL: https://codereview.chromium.org/109953004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18335 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-18 08:45:17 +00:00
yurys@chromium.org
8b542494c3 Add methods for finding object by its snapshot id and id for an object
Object<-->id mapping doesn't depend on a particular snapshot, actually same object may appear in several heap snapshots. The API for converting between id and heap object should be provided by HeapProfiler itself. There is already GetObjectId method which I extended with FindObjectById/ClearObjectIds. As the next step I'm going to deprecate and remove HeapGraphNode::GetHeapValue.

BUG=chromium:324769
LOG=N
R=alph@chromium.org, hpayer@chromium.org, mstarzinger@chromium.org

Review URL: https://codereview.chromium.org/93843004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18334 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-18 08:17:03 +00:00
svenpanne@chromium.org
402139f686 Remove all stuff marked as V8_DEPRECATED.
R=jochen@chromium.org, mstarzinger@chromium.org, yurys@chromium.org

Review URL: https://codereview.chromium.org/99193002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18333 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-18 08:09:37 +00:00
plind44@gmail.com
dc25e0c4a8 Make offsets to inner allocated objects aligned in allocation folding.
Folded allocations marked for double alignment is not aligned if old dominator
size is used for offset to inner object.

TEST=mjsunit/big-array-literal on MIPS
BUG=
R=hpayer@chromium.org

Review URL: https://codereview.chromium.org/103963005

Patch from Dusan Milosavljevic <Dusan.Milosavljevic@rt-rk.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18332 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-18 04:27:48 +00:00
danno@chromium.org
649a2dca75 Prepare push to trunk. Now working on version 3.24.4.
R=hpayer@google.com, hpayer@chromium.org

Review URL: https://codereview.chromium.org/98273003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18329 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-17 22:11:27 +00:00
palfia@homejinni.com
e86cfac879 MIPS: Move the receiver into r0 for PatchGlobalProxy.
Port r18327 (372ee171)

Original commit message:
This fixes the ARM/android bug http://build.chromium.org/p/tryserver.chromium/builders/android_dbg_triggered_tests/builds/112686/steps/androidwebview_instrumentation_tests

BUG=
R=plind44@gmail.com

Review URL: https://codereview.chromium.org/107483005

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18328 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-17 18:41:35 +00:00
verwaest@chromium.org
f5832810d7 Move the receiver into r0 for PatchGlobalProxy.
This fixes the ARM/android bug http://build.chromium.org/p/tryserver.chromium/builders/android_dbg_triggered_tests/builds/112686/steps/androidwebview_instrumentation_tests TBR=dcarney@chromium.org

BUG=

Review URL: https://codereview.chromium.org/104823006

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18327 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-17 17:36:39 +00:00
machenbach@chromium.org
30aa2512c2 Add settings for try server.
BUG=324775
R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/117043003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18324 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-17 12:24:25 +00:00
ulan@chromium.org
b764068347 Fix NotifyStubFailureSaveDoubles generation for ia32.
R=jkummerow@chromium.org

Review URL: https://chromiumcodereview.appspot.com/112833002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18319 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-17 09:09:55 +00:00
hpayer@chromium.org
769dc2950b Prepare push to trunk. Now working on version 3.24.3.
R=svenpanne@chromium.org
BUG=

Review URL: https://codereview.chromium.org/99923007

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18316 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-17 07:52:27 +00:00
jkummerow@chromium.org
f0bf75f709 Fix standalone Android and NaCl Makefiles to support arm_version=7 and optdebug
R=ulan@chromium.org

Review URL: https://codereview.chromium.org/116423002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18315 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-16 15:50:34 +00:00
ulan@chromium.org
c88f993ffc Flush instruction cache for deserialized code objects.
This fixes the flaky crashes on ARM when running preparser test suite in
optdebug mode.

R=svenpanne@chromium.org

Review URL: https://chromiumcodereview.appspot.com/107543003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18314 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-16 13:08:24 +00:00
machenbach@chromium.org
508f7d256a Add named options to push-to-trunk script.
Also make sure that on exceptions from the test infrastructure there is no retry.

BUG=
R=ulan@chromium.org

Review URL: https://codereview.chromium.org/114203002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18313 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-16 10:56:52 +00:00
jkummerow@chromium.org
7e75d197b6 Prepare push to trunk. Now working on version 3.24.2.
R=ulan@chromium.org
TBR=ulan@chromium.org

Review URL: https://codereview.chromium.org/106763003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18310 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-13 15:13:13 +00:00
jkummerow@chromium.org
28cab36838 Ensure that Code objects' kind specific flags are initialized properly.
Also, have the stub cache set a valid MajorKey on stubs it creates.
Getting weird random bits frightens and confuses the poor simple type feedback oracle.

R=hpayer@chromium.org

Review URL: https://codereview.chromium.org/108443004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18309 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-13 10:27:19 +00:00
yangguo@chromium.org
213b05b5b9 Fix off-by-one error in AstTyper, part 2.
R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/112933002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18308 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-12 15:19:57 +00:00
jkummerow@chromium.org
48ff79a300 Fix polymorphic inlined calls with migrating prototypes
LOG=Y
R=verwaest@chromium.org

Review URL: https://codereview.chromium.org/104793003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18307 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-12 14:57:00 +00:00
machenbach@chromium.org
3c601ff5b5 Add last-push check to automatic push-to-trunk script.
Make sure the script is not trying a push-to-trunk twice in a row.

This also passes through some command line parameters.

TEST=python -m unittest test_scripts.ScriptTest.testCheckLastPushRecently
R=ulan@chromium.org

Review URL: https://codereview.chromium.org/103533003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18306 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-11 15:27:38 +00:00
machenbach@chromium.org
7a8a098a5e Make squash commits step more pythony in push-to-trunk script.
Get rid of linux-only shell commands. Solve issue with quotation marks in commit messages.

Further behavioral change: Strip white space on line endings. Strip trailing new lines.

Test=python -m unittest test_scripts

R=ulan@chromium.org

Review URL: https://codereview.chromium.org/101763002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18305 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-11 15:05:53 +00:00
yurys@chromium.org
19f29c380e Do not stop profiling if all finished profiles were deleted
Deleting finished profiles shouldn't interrupt profile recording.

BUG=chromium:327298
LOG=N
R=alph@chromium.org, jkummerow@chromium.org

Review URL: https://codereview.chromium.org/103893003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18302 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-11 14:39:18 +00:00
verwaest@chromium.org
d5787278bc 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
2013-12-11 13:51:48 +00:00
ulan@chromium.org
cc401095fb 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
2013-12-11 13:11:44 +00:00
jkummerow@chromium.org
7967a195c7 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
2013-12-11 11:58:07 +00:00
yangguo@chromium.org
5bc64b9fa5 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
2013-12-11 11:34:09 +00:00
palfia@homejinni.com
0d6cdf825b 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
2013-12-10 23:03:56 +00:00
palfia@homejinni.com
925837f0ca 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
2013-12-10 23:01:40 +00:00
palfia@homejinni.com
6b65e909e0 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
2013-12-10 23:00:10 +00:00