Commit Graph

11609 Commits

Author SHA1 Message Date
verwaest@chromium.org
d4cbf02afc Allow code to be cached in shared maps.
BUG=
R=ulan@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17045 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-01 13:13:39 +00:00
bmeurer@chromium.org
f1c28e77ff Lazily save double registers for HCallRuntime instructions within Hydrogen code stubs.
Right now we eagerly save all allocatable double registers upon
entry to every Hydrogen code stub that uses HCallRuntime, and
restore them when we return. Since the HCallRuntime is on the
fallback path for code stubs, this is both a waste of time and
stack space in almost every case.

This patch adds a flag to the HCallRuntime, which controls whether
the instruction saves the double register itself (using the save
doubles flag for the CEntryStub), or whether its up the surrounding
code to handle the clobbering of double registers.

R=danno@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17044 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-01 11:56:42 +00:00
haitao.feng@intel.com
104cc30655 Refactor translation opcode a little in the deoptimization
R=yangguo@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17043 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-01 11:18:30 +00:00
rodolph.perfetta@gmail.com
c817008da7 ARM: Tweak LoadKeyed.
Avoid corrupting its input.

BUG=none
TEST=none
R=ulan@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17042 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-01 10:44:00 +00:00
dcarney@chromium.org
7fae9959e9 remove Isolate::Current from ScriptData and Script
R=mstarzinger@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17041 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-01 09:56:04 +00:00
verwaest@chromium.org
ff210017b7 Move TryRemoveInvalidPrototypeDependentStub onto the IC class.
R=ulan@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17040 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-01 09:55:15 +00:00
verwaest@chromium.org
122b208173 Encapsulate IC::State into the IC.
BUG=
R=ulan@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17039 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-01 09:52:24 +00:00
mstarzinger@chromium.org
b9b528e030 Defer allocation of native function literals.
R=dcarney@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17038 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-01 09:47:37 +00:00
verwaest@chromium.org
b38b81bbfe Always cache the original target in a handle on the IC.
This requires us to always open a handle-scope in the miss handlers.

BUG=
R=ulan@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17037 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-01 09:47:18 +00:00
verwaest@chromium.org
14422a698f Cleanup in IC patching.
BUG=
R=ulan@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17036 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-01 09:44:35 +00:00
verwaest@chromium.org
1324c94712 Make strict_mode a flag on StoreIC.
BUG=
R=ulan@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17035 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-01 09:36:34 +00:00
verwaest@chromium.org
63b584474f Reduce code duplication in IC updating.
BUG=
R=ulan@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17034 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-01 09:30:07 +00:00
mstarzinger@chromium.org
191bcf20cc Limit entry points into the parser API.
R=ulan@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17033 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-01 09:27:03 +00:00
marja@chromium.org
b267a955d8 Refactor PropertyCallbackInfo & FunctionCallbackInfo, part 3.
This CL starts using positive array indices instead of negative array indices
for the PropertyCallbackInfo and FunctionCallbackInfo fields. Also, the indices
match now, so they can be unified in the next step.

BUG=
R=dcarney@chromium.org, mstarzinger@chromium.org

Committed: https://code.google.com/p/v8/source/detail?r=17015

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17032 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-01 09:24:13 +00:00
yangguo@chromium.org
ad304ecf07 Initialize flag before usage.
This fixes a crash when running with --concurrent-osr.

R=ulan@chromium.org, dslomov@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17031 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-01 08:40:33 +00:00
mvstanton@chromium.org
aa90e62ba0 In crankshafted code, we were creating allocation mementos for shallow
SMI array literals when we shouldn't. The idea is that we should have learned
by this point what type of array we'll end up with.

R=hpayer@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17028 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-01 08:22:01 +00:00
mvstanton@chromium.org
208890d118 Print out how many AllocationMementos were found on a scavenge of new
space. This is useful because the unrooted mementos affect heap
decisions like pretenuring mode, and helps to gauge the effectiveness
of allocation-site feedback.

R=hpayer@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17027 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-01 08:14:38 +00:00
jkummerow@chromium.org
8b8a9bc30c Prepare push to trunk. Now working on version 3.22.6.
R=mvstanton@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17026 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-01 08:09:05 +00:00
yangguo@chromium.org
62e4d0671d Fixed debuggersupport=off build after r16521
BUG=
R=yangguo@chromium.org

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

Patch from Weiliang Lin <weiliang.lin@intel.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17025 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-01 07:53:37 +00:00
jkummerow@chromium.org
85ae341b09 Revert "Defer allocation of native function literals."
This reverts r17017 for breaking LayoutTests.

R=mstarzinger@chromium.org
TBR=mstarzinger@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17024 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-30 17:42:58 +00:00
jkummerow@chromium.org
3f461303bd Disable externalization of sliced/cons strings in old pointer space.
This is a temporary workaround for the fact that a good deal of the code that triggers access checks, which in turn externalize strings, is not yet handlified and therefore not GC safe.

R=yangguo@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17023 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-30 16:42:19 +00:00
verwaest@chromium.org
aa4eaeebee Revert "Allow code to be cached in shared maps." due to GC stress crashes.
TBR=ulan@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17022 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-30 16:34:37 +00:00
marja@chromium.org
9da7781258 Revert "Refactor PropertyCallbackInfo & FunctionCallbackInfo, part 3."
This reverts commit 977bfe3e9353ead1039878597590ffbd7dd5e725.

This might be responsible of the Linux Webkit test failures.

BUG=
TBR=mstarzinger@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17021 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-30 15:33:51 +00:00
verwaest@chromium.org
fa742f84a4 Allow code to be cached in shared maps.
R=ulan@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17020 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-30 15:28:52 +00:00
rodolph.perfetta@gmail.com
e7669d9308 ARM: Allow function inlining with context change.
BUG=none
TEST=none
R=ulan@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17019 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-30 15:08:20 +00:00
mstarzinger@chromium.org
c624141bf3 Defer allocation of native function literals.
R=dcarney@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17017 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-30 14:49:11 +00:00
marja@chromium.org
a81d7b1e7c Refactor PropertyCallbackInfo & FunctionCallbackInfo, part 3.
This CL starts using positive array indices instead of negative array indices
for the PropertyCallbackInfo and FunctionCallbackInfo fields. Also, the indices
match now, so they can be unified in the next step.

BUG=
R=dcarney@chromium.org, mstarzinger@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17015 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-30 14:09:51 +00:00
jochen@chromium.org
02b160f35c Remove parallel marking support.
The framework isn't used, and won't be used in the near future

R=hpayer@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17014 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-30 14:06:43 +00:00
verwaest@chromium.org
f1fe1f95f5 Tag normal as handlers, and make code handler-specific.
BUG=
R=ulan@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17013 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-30 13:58:44 +00:00
verwaest@chromium.org
0f715540a2 Tag handlers as HANDLER rather than STUB.
R=ulan@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17012 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-30 13:53:21 +00:00
jkummerow@chromium.org
de446c636e Prepare push to trunk. Now working on version 3.22.5.
R=mvstanton@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17009 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-30 13:38:28 +00:00
haitao.feng@intel.com
1160383498 Remove unused SmiTryAddConstant from X64 macro assembler
R=yangguo@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17007 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-30 13:36:39 +00:00
dcarney@chromium.org
6dd72b6416 change of V8_DEPRECATED to be enabled behind a gyp flag
also add a deprecation message for newer gcc versions

R=danno@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17006 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-30 13:28:23 +00:00
jochen@chromium.org
3387afd33e Split extra checks into extra checks and handle zapping
That will make it easier to turn on handle zapping alone and experiment
with it.

R=jkummerow@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17004 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-30 11:56:52 +00:00
mstarzinger@chromium.org
f03dbcff94 Function::Call and Object::CallAsFunction APIs should allow v8::Value as a receiver
Since the primitive values can be a receiver of strict mode functions in
ECMA262 5.1th, v8::Function::Call and Object::CallAsFunction should take
v8::Value as a receiver instead of v8::Object.

BUG=v8:2915
TEST=cctest/test-api
R=mstarzinger@chromium.org

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

Patch from Yusuke Suzuki <yusukesuzuki@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17003 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-30 11:47:36 +00:00
yangguo@chromium.org
f5e783de49 Remove unnecessary mutex.
The heap leak has since been solved.

R=mstarzinger@chromium.org
BUG=291236

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17002 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-30 11:41:30 +00:00
mvstanton@chromium.org
81557f21fc Use a walking visitor to traverse JSObject structure. The purpose is to prepare for more complex context-dependent walks of the structure, needed for allocation site and pretenuring work. Different visitors can be created that annotate the object in various ways.
BUG=
R=yangguo@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17001 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-30 11:36:50 +00:00
dslomov@chromium.org
ca2bcdf888 Remove ArrayBufferView::BaseAddress method.
We should not expose a raw pointer to typed array's backing store.

R=yangguo@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16999 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-30 09:31:10 +00:00
haitao.feng@intel.com
c35559ff27 Refactor register allocator a little bit
R=jkummerow@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16998 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-28 00:48:08 +00:00
plind44@gmail.com
15d56ffe6b MIPS: Improve integer multiplication.
Port r16576 (8ce78a4)

TEST=test/mjsunit/lithium/MulI.js
BUG=
R=plind44@gmail.com

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

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16997 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-27 16:16:40 +00:00
rodolph.perfetta@gmail.com
1726140330 ARM: Let the register allocator handle the context register.
BUG=none
TEST=none
R=ulan@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16993 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-27 13:59:28 +00:00
yangguo@chromium.org
2dec4372d8 Finish control flow after throw if not inlined.
R=jkummerow@chromium.org
BUG=v8:2868

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16992 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-27 13:48:19 +00:00
mvstanton@chromium.org
807cdd492b Refactoring such that loop builders only call into the HOsrBuilder if
compiling for OSR.

BUG=
R=mstarzinger@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16990 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-27 13:38:04 +00:00
mvstanton@chromium.org
dbdcf5b671 Avoid using double temp register explicitly in lithium codegen
BUG=
R=mvstanton@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16989 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-27 12:43:37 +00:00
dcarney@chromium.org
b81c581b38 make v8::Locker not use Isolate::GetCurrent()
R=mstarzinger@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16988 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-27 11:32:13 +00:00
jochen@chromium.org
8d660be217 Only zapped used handles if a handle scope fits entirely within one handle block
This should avoid zapping the same unused handles over and over again
when using many small nested handle scopes.

BUG=none
R=mstarzinger@chromium.org, vegorov@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16987 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-27 11:31:06 +00:00
hpayer@chromium.org
4c01c4040a Re-land "Add methods to enable configuration of ResourceConstraints based on limits derived at runtime."
Adds ConfigureResourceConstraintsForCurrentPlatform and SetDefaultResourceConstraintsForCurrentPlatform which configure the heap based on the available physical memory, rather than hard-coding by platform as previous. This change also adds OS::TotalPhysicalMemory to platform.h.

The re-land fix the performance regression caused by accidental change in default max young space size.

BUG=292928
R=hpayer@chromium.org

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

Patch from Ross McIlroy <rmcilroy@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16983 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-27 10:53:07 +00:00
palfia@homejinni.com
c34af4ae6d MIPS: Fix simulator divide for overflow case.
TEST=mjsunit/div-mul-minus-one.js
BUG=
R=gergely@homejinni.com

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

Patch from Paul Lind <plind44@gmail.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16982 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-27 10:42:51 +00:00
machenbach@chromium.org
936802ae21 Revert "Add methods to enable configuration of ResourceConstraints based on limits derived at runtime." and "Fix Windows build of defaults.cc."
This reverts commit r16964 and r16968 due to performance regressions in octane.

TBR=hpayer@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16979 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-27 09:45:14 +00:00
yangguo@chromium.org
42d7071422 Disposing an OSR job should only restore the back edge state.
R=titzer@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16978 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-27 09:37:18 +00:00
mstarzinger@chromium.org
77c60c9a84 Disable escape analysis for Canary stabilization.
R=jkummerow@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16977 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-27 08:46:29 +00:00
haitao.feng@intel.com
65813ea24e Tweak SmiSub for X64
R=danno@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16976 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-27 07:46:52 +00:00
machenbach@chromium.org
5a5f2d22e1 Prepare push to trunk. Now working on version 3.22.4.
R=hpayer@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16973 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-27 07:26:59 +00:00
dcarney@chromium.org
7fcd0f395e remove Local::New with no isolate parameter
R=mstarzinger@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16972 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-27 07:04:02 +00:00
palfia@homejinni.com
d6a4d7e6dd MIPS: Refactoring PropertyCallbackInfo & FunctionCallbackInfo, step 2.
Port r16961 (ce471468)

Original commit message:
This step reorders the FunctionCallbackInfo fields.

BUG=
R=plind44@gmail.com

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16971 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-26 22:18:02 +00:00
titzer@chromium.org
d441160cab Implement local check elimination on basic blocks.
BUG=
R=mstarzinger@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16970 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-26 16:25:57 +00:00
mstarzinger@chromium.org
9c3ffc4f58 Fix replaying of HCapturedObject for nested objects.
R=titzer@chromium.org
TEST=mjsunit/compiler/property-refs,mjsunit/compiler/escape-analysis

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16969 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-26 15:28:46 +00:00
hpayer@chromium.org
71bcf9a621 Fix Windows build of defaults.cc.
BUG=None
R=hpayer@chromium.org

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

Patch from Ross McIlroy <rmcilroy@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16968 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-26 14:49:47 +00:00
dcarney@chromium.org
47e32d0339 Add EscapableHandleScope to api to fix problems with HandleScope::Close
R=mstarzinger@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16965 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-26 13:46:37 +00:00
hpayer@chromium.org
a57300fb9e Add methods to enable configuration of ResourceConstraints based on limits derived at runtime.
Adds ConfigureResourceConstraintsForCurrentPlatform and SetDefaultResourceConstraintsForCurrentPlatform which configure the heap based on the available physical memory, rather than hard-coding by platform as previous.  This change also adds OS::TotalPhysicalMemory to platform.h.

BUG=292928
R=danno@chromium.org, hpayer@chromium.org

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

Patch from Ross McIlroy <rmcilroy@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16964 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-26 13:31:19 +00:00
marja@chromium.org
2dc3eca47d Refactoring PropertyCallbackInfo & FunctionCallbackInfo, step 2.
This step reorders the FunctionCallbackInfo fields.

BUG=
R=dcarney@chromium.org, mstarzinger@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16961 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-26 10:28:00 +00:00
hpayer@chromium.org
4078a89a27 Add -optimize-for-size flag to optimize for memory size (will be used by pre-aging CL), and remove the is_memory_constrained ResourceConstraint.
BUG=292928
R=hpayer@chromium.org

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

Patch from Ross McIlroy <rmcilroy@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16960 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-26 09:40:13 +00:00
mstarzinger@chromium.org
5e7fcdb612 Make Heap::AllocateRawFixedArray methods private.
R=hpayer@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16959 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-26 09:37:25 +00:00
dcarney@chromium.org
7bad4ba648 remove uses of static oddball accessors using GetCurrent in advance of removal from api
R=mstarzinger@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16957 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-26 08:21:48 +00:00
dcarney@chromium.org
2efd6aa179 add isolate parameter to ThrowException
R=mstarzinger@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16955 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-26 07:37:59 +00:00
machenbach@chromium.org
d2e046bec2 Prepare push to trunk. Now working on version 3.22.3.
R=danno@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16952 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-26 07:35:34 +00:00
palfia@homejinni.com
22e619f3f5 MIPS: Tweak Math.exp.
Port r16913 (a1b66fea)

Original commit message:
Avoid corrupting the input and small assembly tuning.

BUG=
R=plind44@gmail.com

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16951 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-25 20:42:26 +00:00
plind44@gmail.com
9c455ab79d MIPS: Less aggressive polling when concurrently compiling for OSR.
Port r16934 (b12e96b)

Original commit message:
Changes include:
- completed concurrent OSR tasks trigger a stack check interrupt.
- polling for completion is now guarded by a stack check.
- circular buffer for completed OSR tasks instead of list.

BUG=
R=plind44@gmail.com

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

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16947 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-25 16:27:52 +00:00
yangguo@chromium.org
64bcae30f9 Allocate optimizing compiler thread only when necessary.
R=ulan@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16946 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-25 15:14:12 +00:00
yangguo@chromium.org
612dedc781 Add trace output when recompilation queues are flushed.
R=mvstanton@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16945 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-25 15:13:10 +00:00
verwaest@chromium.org
344e1d9003 Internalize names before using them in slow-mode objects.
R=yangguo@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16944 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-25 15:11:48 +00:00
verwaest@chromium.org
3ee82ddc3f Special handle for mul/div minus one when kAllUsesTruncatingToInt32
BUG=
R=verwaest@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16943 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-25 15:10:48 +00:00
olivf@chromium.org
9d3c5c5fb6 Macrofication of HInstruction constructors with context argument.
BUG=
R=danno@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16940 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-25 11:57:20 +00:00
yangguo@chromium.org
ed9d981ed6 Rename "OptimizingCompiler" to the more suitable "RecompileJob".
R=mvstanton@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16939 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-25 10:01:18 +00:00
hpayer@chromium.org
f59bcf2f3b Revert OS::TimeCurrentMillis on Windows introduced in r16413.
BUG=chromium:288924
R=danno@chromium.org, jkummerow@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16938 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-25 09:50:48 +00:00
mstarzinger@chromium.org
a409a2d651 Remove obsolete global SubString method.
R=yangguo@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16937 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-25 09:31:10 +00:00
verwaest@chromium.org
d0e12549ed Reset IC to premonomorphic rather than uninitialized.
R=mstarzinger@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16936 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-25 09:25:39 +00:00
yangguo@chromium.org
6eb8691846 Remove unused kFirstMathFunctionId
Review URL: https://codereview.chromium.org/24537002

Patch from Haitao Feng <haitao.feng@intel.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16935 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-25 09:10:45 +00:00
yangguo@chromium.org
10b45a5bc4 Less aggressive polling when concurrently compiling for OSR.
Changes include:
- completed concurrent OSR tasks trigger a stack check interrupt.
- polling for completion is now guarded by a stack check.
- circular buffer for completed OSR tasks instead of list.

R=titzer@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16934 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-25 08:26:11 +00:00
dslomov@chromium.org
39877060ee Speed up ArrayBuffer/typed array/DataView properties.
Optimizes byteLength, byteOffset, buffer and other properties on
ArrayBuffer, typed arrays and DataView into simple field loads. Some
unification with the way Array.length and String.length are treated.

R=verwaest@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16930 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-25 08:19:35 +00:00
machenbach@chromium.org
7fd3d6ada4 Prepare push to trunk. Now working on version 3.22.2.
R=dslomov@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16929 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-25 08:18:59 +00:00
dslomov@chromium.org
c12d588afd Remove redundant flags for array buffer and typed arrays.
These flags are a no-op for a while, we kept them just because
Blink used to set them. After
https://src.chromium.org/viewvc/blink?revision=158187 they can be safely
removed.

R=mstarzinger@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16928 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-25 07:25:44 +00:00
plind44@gmail.com
d74ed4caf4 MIPS: replace RegExpCEntryStub with DirectCEntryStub.
Port r16618 (0eebc593)

Original commit message:
RegExpCEntryStub is therefore removed.

BUG=none
TEST=none
R=plind44@gmail.com

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

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16927 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-25 00:58:04 +00:00
palfia@homejinni.com
40ad4cc7f1 MIPS: Turn the NumberToStringStub into a hydrogen stub.
Port r16910 (5a0dd952)

Original commit message:
This adds a BuildLookupNumberStringCache() in Hydrogen, which will
be used by the hydrogen version of StringAddStub, in addition to the
hydrogen version of NumberToStringStub.

BUG=
R=plind44@gmail.com

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16926 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-25 00:41:37 +00:00
haitao.feng@intel.com
f1d1dd604d Fix a typo
R=jkummerow@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16925 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-25 00:30:52 +00:00
mstarzinger@chromium.org
45ab50673e Expose SameValue equality comparison algorithm
Since SameValue algorithm is defined formally in ECMA262 and V8 already
exported Equals and StrictEquals algorithms, SameValue should be exposed.
And in this issue, we fix the issue of Object::SameValue implementation,
SameValue(0.0, -0.0) returnes true.

BUG=v8:2909
TEST=cctest/test-api/Equality
R=mstarzinger@chromium.org

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

Patch from Yusuke Suzuki <yusukesuzuki@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16924 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-24 16:51:43 +00:00
titzer@chromium.org
44f733b40d Delete Runtime_NotifyOSR.
BUG=
R=mstarzinger@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16923 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-24 15:27:49 +00:00
yangguo@chromium.org
ad477f3fae Flush recompile jobs on last-resort GC.
R=hpayer@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16922 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-24 13:39:06 +00:00
bmeurer@chromium.org
227bd35489 Avoid fallback to weak entropy for the PRNGs on Windows.
Add fallback to rand_s() to gather entropy on Windows for
seeding the random number generator. This is compatible
with what Blink does.

BUG=v8:2905
R=machenbach@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16920 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-24 13:27:58 +00:00
dcarney@chromium.org
b077828732 HandleScopeImplementer::entered_contexts_ should not store handles
R=mstarzinger@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16917 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-24 11:40:28 +00:00
mstarzinger@chromium.org
1e142f0e00 Correctly check for AllowHeapAllocation::IsAllowed().
R=adamk@chromium.org, hpayer@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16915 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-24 11:19:37 +00:00
dslomov@chromium.org
afdabcfd0b Allocate typed arrays uninitialized when constructing from array-like.
This is a fix for performance regression. For new Uint8Array(arrayLike)
and the likes, we allocate the backing store of typed array
uninitialized and then proceed to feel it in with elements of arrayLike.
If the loop over arrayLike runs to completion, we know that all elements
of typed arrays had been assigned to and there is no uninitialized
memory. If the loop does not run to completion, we propagate the
exception to constructor caller, therefore the typed array is not
exposed to user program.

BUG=270507
R=yangguo@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16914 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-24 10:50:14 +00:00
rodolph.perfetta@gmail.com
6d8f4d52bf ARM: Tweak Math.exp.
Avoid corrupting the input and small assembly tuning.

BUG=none
TEST=test/mjsunit/lithium/MathExp.js
R=ulan@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16913 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-24 10:40:03 +00:00
mvstanton@chromium.org
f26bcd9fef Add field nested_sites to AllocationSite. This field is used to maintain
allocation site information for nested array and object literals.
It's not used productively in this CL, merely maintained in a minimal
way. (that comes next :)).

BUG=
R=hpayer@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16912 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-24 10:30:41 +00:00
titzer@chromium.org
cee5773017 Use Unique<Object> in HConstant and remove UniqueValueId.
BUG=
R=verwaest@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16911 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-24 09:48:39 +00:00
bmeurer@chromium.org
70b8e2d013 Turn the NumberToStringStub into a hydrogen stub.
This adds a BuildLookupNumberStringCache() in Hydrogen, which will
be used by the hydrogen version of StringAddStub, in addition to the
hydrogen version of NumberToStringStub.

R=mvstanton@chromium.org

Committed: https://code.google.com/p/v8/source/detail?r=16874

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16910 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-24 09:31:07 +00:00
bmeurer@chromium.org
755fcfec49 Fix invalid X87 stack depth after LCompareNumericAndBranch.
R=verwaest@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16909 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-24 09:29:00 +00:00
dcarney@chromium.org
9c32a5da1f build fix for 16877
TBR=mstarzinger@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16906 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-24 07:49:37 +00:00
mstarzinger@chromium.org
8cbb4dcb49 Handlify JSObject::MigrateInstance and friends.
This relands the original change from r16899 together with a bugfix for
two unhandlified values which became stale.

R=verwaest@chromium.org
TEST=mjsunit/debug-evaluate-locals-optimized (in GC stress mode)

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16905 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-23 19:56:36 +00:00
palfia@homejinni.com
2ad4ad92ea MIPS: Fixed a bug in CopyBytes() and new test cases for MIPS macro assembler.
Port r16873 (c2880bc)

BUG=
TEST=cctest/test-macro-assembler-mips
R=plind44@gmail.com

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

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16904 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-23 19:38:54 +00:00
olivf@chromium.org
42ce84134f Revert "Allow control intructions to have side effects."
Breaks arm build.

BUG=
TBR=titzer@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16903 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-23 18:57:32 +00:00
olivf@chromium.org
3e13af46e4 Allow control intructions to have side effects.
As a first application convert HCompareGeneric to a control Instruction, thus avoid materializing a boolean result value.

BUG=
R=titzer@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16902 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-23 16:56:34 +00:00
jkummerow@chromium.org
39ad675441 refactor test instruction on ia32
BUG=
R=jkummerow@chromium.org

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

Patch from Weiliang Lin <weiliang.lin2@gmail.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16901 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-23 16:55:48 +00:00
mstarzinger@chromium.org
40decafa84 Revert "Handlify JSObject::MigrateInstance and friends."
This is reverted due to mozilla/ecma/Date/15.9.5.9 failing on Windows.

TBR=verwaest@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16900 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-23 16:53:59 +00:00
mstarzinger@chromium.org
1279103806 Handlify JSObject::MigrateInstance and friends.
R=verwaest@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16899 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-23 15:02:25 +00:00
ulan@chromium.org
b99802f50c Out-of-line constant pool on Arm: Stage 1 - Free up r7 for use as constant pool pointer register
First stage of implementing an out-of-line constant pool on Arm.  This CL
frees up register r7 for use as a constant pool pointer in later stages.

BUG=
R=ulan@chromium.org

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

Patch from Ross McIlroy <rmcilroy@chromium.org>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16898 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-23 15:01:33 +00:00
mstarzinger@chromium.org
c47cc38b12 Remove duplicated heap allocation functions.
R=hpayer@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16897 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-23 14:48:49 +00:00
machenbach@chromium.org
d59b8fe5d7 [Sheriff] Revert "Let SetEntropySource() fail if called after V8::Initialize()."
This reverts commit 16889 for breaking the webkit tests.

TBR=bmeurer@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16896 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-23 14:43:41 +00:00
mstarzinger@chromium.org
2febbdca9c Introduce Heap::SelectSpace helper for allocations.
R=hpayer@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16894 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-23 14:19:44 +00:00
dcarney@chromium.org
fc21795aca remove IsDeadCheck
R=mstarzinger@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16893 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-23 14:15:21 +00:00
bmeurer@chromium.org
75de923f3c Move DumpBacktrace() to checks.cc and cleanup both the code and the necessary platform checks.
This also removes the platform-posix.h header file.

R=machenbach@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16890 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-23 14:11:59 +00:00
bmeurer@chromium.org
c5751ce72c Let SetEntropySource() fail if called after V8::Initialize().
BUG=v8:2905
R=dslomov@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16889 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-23 14:11:32 +00:00
bmeurer@chromium.org
4af9fa967b Document that its the job of the embedder to provide strong entropy for seeding the PRNG.
BUG=v8:2905
R=dslomov@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16888 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-23 14:10:57 +00:00
machenbach@chromium.org
94dd9ba024 Prepare push to trunk. Now working on version 3.22.1.
R=mstarzinger@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16887 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-23 14:08:32 +00:00
machenbach@chromium.org
c0b514c3b5 Fast-forward version number on bleeding_edge to 3.22.0
BUG=
R=mstarzinger@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16886 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-23 13:27:00 +00:00
mstarzinger@chromium.org
4d64bf9737 Handlify JSObject::AllocateStorageForMap method.
R=yangguo@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16883 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-23 11:57:34 +00:00
dcarney@chromium.org
86a2e4849a remove Isolate::GetCurrent from Context api functions
R=mstarzinger@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16877 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-23 11:25:52 +00:00
machenbach@chromium.org
576515ebf3 Revert "Turn the NumberToStringStub into a hydrogen stub."
This reverts commit 16874 for breaking the tests.

TBR=bmeurer@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16876 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-23 11:22:35 +00:00
mstarzinger@chromium.org
c74587becd Remove obsolete Factory::EnsureCanContainElements method.
R=bmeurer@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16875 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-23 11:11:31 +00:00
bmeurer@chromium.org
9c48fbda75 Turn the NumberToStringStub into a hydrogen stub.
This adds a BuildLookupNumberStringCache() in Hydrogen, which will
be used by the hydrogen version of StringAddStub, in addition to the
hydrogen version of NumberToStringStub.

R=mvstanton@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16874 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-23 10:58:45 +00:00
bmeurer@chromium.org
eac59b81ff Fixed a bug in CopyBytes() and new test cases for ARM macro assembler
TEST=cctest/test-macro-assembler-arm
R=bmeurer@chromium.org

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

Patch from Bangfu Tao <bangfu.tao@samsung.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16873 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-23 08:06:58 +00:00
palfia@homejinni.com
ea1aebce1d MIPS: Save one branch for normal heap number un-tagging.
Port r16856 (edeb2d3)

BUG=
R=gergely@homejinni.com

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

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16871 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-20 19:05:48 +00:00
adamk@chromium.org
6b5e87bd3e Fix d8-readline to use modern Persistent API
R=dcarney@chromium.org, svenpanne@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16870 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-20 18:16:52 +00:00
dcarney@chromium.org
44afd2a5f9 don't use default isolate in mksnapshot
R=svenpanne@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16869 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-20 13:19:40 +00:00
prybin@chromium.org
f536eb164f LiveEdit to mark more closure functions for re-instantiation when scope layout changes
BUG=v8:2872
R=yangguo@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16868 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-20 13:15:31 +00:00
mstarzinger@chromium.org
d87c0679dd Hanldify JSObject::PreventExtensions method.
R=ulan@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16866 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-20 12:54:02 +00:00
titzer@chromium.org
94a0a95b7a Use Unique<Cell> and Unique<PropertyCell> in LoadGlobalCell and StoreGlobalCell.
BUG=
R=verwaest@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16865 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-20 12:32:31 +00:00
titzer@chromium.org
05babb3dca Use Unique<Map> in HTransitionElementsKind.
BUG=
R=verwaest@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16864 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-20 12:25:00 +00:00
mstarzinger@chromium.org
35142b817f Handlify JSObject::NormalizeProperties method.
R=verwaest@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16862 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-20 11:37:02 +00:00
verwaest@chromium.org
3dd88c4067 Pad the environment with 0 rather than the receiver to avoid influencing the representation of the join.
R=titzer@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16861 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-20 11:34:05 +00:00
verwaest@chromium.org
0bff3fa74b Remove duplicate way of encoding the holder in the flags.
R=ulan@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16859 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-20 11:22:23 +00:00
bmeurer@chromium.org
6fce49609b Allow IfBuilder's to join existing (captured) continuations.
R=mvstanton@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16857 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-20 10:47:09 +00:00
bmeurer@chromium.org
ae4234b488 Save one branch for normal heap number un-tagging.
R=bmeurer@chromium.org

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

Patch from Bangfu Tao <bangfu.tao@samsung.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16856 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-20 09:57:58 +00:00
mvstanton@chromium.org
1b576e1e86 Some cleanup fixes
* Consolidated CopyJSObject and CopyJSObjectWithAllocationSite
* Factory.h helper for struct maps.
* BuildFastLiteral shouldn't create allocation sites in pretenuring mode.

BUG=
R=mstarzinger@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16855 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-20 09:27:40 +00:00
olivf@chromium.org
06be8bf0d5 Use New<> constructors in BuildBinaryOperation.
BUG=
R=yangguo@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16853 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-20 09:25:10 +00:00
mstarzinger@chromium.org
b4f120eadd Prevent test-log.cc from creating log files.
R=dcarney@chromium.org
TEST=cctest/test-log/EquivalenceOfLoggingAndTraversal

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16852 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-20 08:49:33 +00:00
olivf@chromium.org
6fc2875d51 Fix Environment size mismatch in r6849.
TBR=svenpanne@chromium.org
BUG=

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16851 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-20 08:34:23 +00:00
olivf@chromium.org
c4a03e4c71 Hydrogen binop improvements
- Truncate oddball if possible.
- Support for StringAdd with only one String argument.
- Use constructor macro for HMul.
- Add ForceNumberType for HydrogenStubs to enforce input representations.

BUG=
R=svenpanne@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16849 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-20 07:21:30 +00:00
bmeurer@chromium.org
8a3fd425da Implement IfNot() in terms of If(), and add missing IfNot(HValue*) method.
R=mvstanton@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16848 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-20 06:26:19 +00:00
bmeurer@chromium.org
f5b92e94ef Make the use of xmm0 as double scratch register explicit in ia32 and x64.
R=svenpanne@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16847 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-20 06:01:25 +00:00
mstarzinger@chromium.org
220c40542b Handlify JSObject::Freeze method.
R=adamk@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16846 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-19 21:26:01 +00:00
verwaest@chromium.org
f74c62e58b Optimize typed-array length loading.
R=dslomov@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16845 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-19 18:19:24 +00:00
mstarzinger@chromium.org
cd4dba243c Handlify JSReceiver::SetPropertyWithDefinedSetter method.
R=yangguo@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16844 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-19 17:03:32 +00:00
titzer@chromium.org
e1ebbcbb02 Use Unique<Map> in CompareMap.
BUG=
R=verwaest@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16843 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-19 17:02:57 +00:00
titzer@chromium.org
873f02db91 Make bounds check elimination iterative instead of recursive.
BUG=289706
R=danno@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16842 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-19 16:26:14 +00:00
plind44@gmail.com
49bfbb069e MIPS: Add HLoadRoot hydrogen instruction.
Port r16807 (257f48f)

BUG=
R=plind44@gmail.com

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

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16840 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-19 15:38:51 +00:00
plind44@gmail.com
1b03642baa MIPS: Move NumberToStringStub::GenerateLookupNumberStringCache to the MacroAssembler.
Port r16806 (9f102a8)

Original commit message:
This renames the method to LookupNumberStringCache() and puts it into
the MacroAssembler in preparation of the NumberToStringStub Hydrogen
conversion.

BUG=
R=plind44@gmail.com

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

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16839 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-19 15:31:51 +00:00
plind44@gmail.com
e2fd02acb6 MIPS: Turn HCompareHoleAndBranch into a HUnaryControlInstruction.
Port r16805 (b106027)

BUG=
R=plind44@gmail.com

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

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16838 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-19 15:20:13 +00:00
verwaest@chromium.org
138eacd5af Reenable polymorphic getter inlining.
R=titzer@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16835 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-19 14:47:15 +00:00
bmeurer@chromium.org
42f4d213ca Fix missing initialization of last_true_block_ in IfBuilder.
R=mvstanton@chromium.org

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

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16834 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-19 14:35:53 +00:00