palfia@homejinni.com [Thu, 25 Jul 2013 19:57:10 +0000 (19:57 +0000)]
MIPS: Adding Smi support to Add, Sub, Mul, and Bitwise
Port r15879 (
ec1e278b)
BUG=
Review URL: https://codereview.chromium.org/
20407002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15891
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Thu, 25 Jul 2013 19:55:55 +0000 (19:55 +0000)]
MIPS: New array bounds check elimination pass (focused on induction variables and bitwise operations).
Port r15866 (
52e8581c)
BUG=
Review URL: https://codereview.chromium.org/
20393002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15890
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Thu, 25 Jul 2013 19:54:24 +0000 (19:54 +0000)]
Migrate more tests from blink repository.
The stand-alone test driver is changed a bit:
- Don't use the errorMessage list. It is used differently in the embedded driver. There it collects parser errors - instead of failure messages.
- Remove html links in description texts. Some test descriptions print a web reference.
The migrated tests fall into 3 categories:
1. Tests outside fast/js
2. Tests that print FAIL messages (and also expect those) - these tests should be examined later if they make sense at all
3. Tests with html links in the test description
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
20280003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15889
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Thu, 25 Jul 2013 16:01:02 +0000 (16:01 +0000)]
Put object templates of the i18n extension on the heap object.
Using function local statics doesn't work, as we need the templates per
isolate.
I'm not #ifdef'ing the definitions out, because kEmptyStringRootIndex
changes depending on whether the two additional slots are present or
not.
BUG=v8:2745
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
20299002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15888
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
m.m.capewell@googlemail.com [Thu, 25 Jul 2013 15:04:38 +0000 (15:04 +0000)]
ARM: Make double registers low/high safe
This patch prevents taking the low/high part of a double-precision VFP register that has no corresponding single-precision VFP registers.
BUG=none
TEST=Added to test-disasm-arm.cc, test-assembler-arm.cc
Review URL: https://codereview.chromium.org/
19560003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15885
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Thu, 25 Jul 2013 15:04:21 +0000 (15:04 +0000)]
Fix JSArray-specific length lookup in polymorphic array handling
BUG=chromium:263276
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
20295005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15884
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 25 Jul 2013 15:01:23 +0000 (15:01 +0000)]
Reland "Flush parallel recompilation queues on context dispose notification."
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
19500022
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15883
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Thu, 25 Jul 2013 14:11:53 +0000 (14:11 +0000)]
Make standalone D8 trace to single hydrogen.cfg file.
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/
20204005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15882
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Thu, 25 Jul 2013 12:22:23 +0000 (12:22 +0000)]
Remove support for smi-based keyed accesses on 64bit.
R=mvstanton@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
20298002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15881
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Thu, 25 Jul 2013 12:10:45 +0000 (12:10 +0000)]
Ignore external strings in old pointer space migration invariant check.
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
20142008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15880
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Thu, 25 Jul 2013 11:53:38 +0000 (11:53 +0000)]
Adding Smi support to Add, Sub, Mul, and Bitwise
R=svenpanne@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
20070005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15879
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Thu, 25 Jul 2013 09:49:28 +0000 (09:49 +0000)]
Don't duplicate OS::ActivationFrameAlignment() for every POSIX platform.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
20283002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15876
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Thu, 25 Jul 2013 09:37:52 +0000 (09:37 +0000)]
Move representation into HObjectAccess and remove from HLoadNamedField and HStoreNamedField.
BUG=
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
18503006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15875
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Thu, 25 Jul 2013 09:28:21 +0000 (09:28 +0000)]
Drop redundant GetRandomMmapAddr() in platform-openbsd.cc.
TBR=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
20284002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15874
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Thu, 25 Jul 2013 09:16:39 +0000 (09:16 +0000)]
Don't duplicate OS::CpuFeaturesImpliedByPlatform for every POSIX platform.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
20179004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15873
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Thu, 25 Jul 2013 08:49:52 +0000 (08:49 +0000)]
Don't duplicate ceiling() for every POSIX platform.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
20274002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15872
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Thu, 25 Jul 2013 08:44:40 +0000 (08:44 +0000)]
Removed pointer space to pointer space compaction check when migrating objects.
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
20279002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15871
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 25 Jul 2013 08:06:13 +0000 (08:06 +0000)]
move 32 bit heap hint on sunos
Setting the V8 heap at or near 0x20000000 on 32bit sunos only allows
512 MB of heap space, instead on sunos move this to 0x80000000.
To quote the comment
For our Solaris/illumos mmap hint, we pick a random address in the bottom
half of the top half of the address space (that is, the third quarter).
Because we do not MAP_FIXED, this will be treated only as a hint -- the
system will not fail to mmap() because something else happens to already
be mapped at our random address. We deliberately set the hint high enough
to get well above the system's break (that is, the heap); Solaris and
illumos will try the hint and if that fails allocate as if there were
no hint at all. The high hint prevents the break from getting hemmed in
at low values, ceding half of the address space to the system heap.
BUG=
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
19859008
Patch from Timothy J. Fontaine <tjfontaine@joyent.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15870
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Thu, 25 Jul 2013 08:04:45 +0000 (08:04 +0000)]
Drop leftover unused kNoThread in platform-openbsd.cc.
TBR=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
20256003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15869
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Thu, 25 Jul 2013 08:00:32 +0000 (08:00 +0000)]
Setting the thread name may fail, so don't assert that the result is 0.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
20216003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15868
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mmassi@chromium.org [Thu, 25 Jul 2013 06:49:53 +0000 (06:49 +0000)]
Added missing header.
BUG=
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
20264002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15867
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mmassi@chromium.org [Thu, 25 Jul 2013 06:37:25 +0000 (06:37 +0000)]
New array bounds check elimination pass (focused on induction variables and bitwise operations).
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/
17568015
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15866
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Wed, 24 Jul 2013 17:35:15 +0000 (17:35 +0000)]
Make DataView setters throw when only offset is provided.
Also fix typo in error message id.
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
20030004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15865
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Wed, 24 Jul 2013 15:41:00 +0000 (15:41 +0000)]
MIPS: Convert CONSTANT_FUNCTION to CONSTANT
Port r15858 (
e3a6d2a)
BUG=
Review URL: https://codereview.chromium.org/
19847003
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15864
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Wed, 24 Jul 2013 15:09:41 +0000 (15:09 +0000)]
Update ICU to r213354
At this revision, all chromium targets work with the V8 internal i18n
support
BUG=v8:2745
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
20090002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15863
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 24 Jul 2013 14:28:56 +0000 (14:28 +0000)]
Allow handle dereference for --print-code.
R=jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
20040004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15862
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
haitao.feng@intel.com [Wed, 24 Jul 2013 13:50:45 +0000 (13:50 +0000)]
Add the emitp function for X64 assembler
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
19752004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15861
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Wed, 24 Jul 2013 12:50:53 +0000 (12:50 +0000)]
wrap gc callbacks in handlescopes
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
19845007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15860
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Wed, 24 Jul 2013 12:38:52 +0000 (12:38 +0000)]
Add --trace-hydrogen-stubs flag (default = false).
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
20084003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15859
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Wed, 24 Jul 2013 12:34:50 +0000 (12:34 +0000)]
Convert CONSTANT_FUNCTION to CONSTANT
R=yangguo@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
19485008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15858
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Wed, 24 Jul 2013 12:17:45 +0000 (12:17 +0000)]
More Math.abs tweaks for Intel platforms.
Made ia32/x64 code more uniform. Minor jump tweaks.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
20067003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15857
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 24 Jul 2013 12:16:02 +0000 (12:16 +0000)]
Restore test and behavior prior to deferred stack trace formatting.
R=mstarzinger@chromium.org
TEST=stack-traces-overflow.js
Review URL: https://codereview.chromium.org/
19805003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15856
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Wed, 24 Jul 2013 12:04:29 +0000 (12:04 +0000)]
Add deopt fuzzer tool.
Can be run as a stand-alone script like run-tests.
Executes first all tests of a given test suite to collect the maximum number of possible deopt points. Runs then a fuzzing phase with artificial deoptimizations triggered during testing.
Works for now with mjsunit and ia32 only.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
19931005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15855
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Wed, 24 Jul 2013 11:12:17 +0000 (11:12 +0000)]
Factor out common code from platform-specific deoptimization. Fix Deoptimizer not to need to partition functions, but revoke their code before patching, allowing deoptimizing_code_list to be removed from Code; Add DeoptimizeCodeList API to deoptimizer, which works on a ZoneList<Code*>.
BUG=
R=mstarzinger@chromium.org, ulan@chromium.org
Review URL: https://codereview.chromium.org/
19638014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15854
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Wed, 24 Jul 2013 10:48:16 +0000 (10:48 +0000)]
Remove HCompareConstantEqAndBranch (never used), and its corresponding Lithium instructions.
BUG=
R=bmeurer@chromium.org, mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
19691005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15853
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Wed, 24 Jul 2013 09:46:49 +0000 (09:46 +0000)]
Extend existing blink test expectations for slow tests.
The test plugins/js-from-destroy.html has crash and timeout expectations for some configurations but not on windows release. Add 'slow', since there is a timeout only on the v8 waterfall and only for windows release.
BUG=webkit.org/b/48655
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
20082002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15852
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Wed, 24 Jul 2013 09:19:55 +0000 (09:19 +0000)]
Added check to debug object migration crashes.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
20055002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15849
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Wed, 24 Jul 2013 08:50:03 +0000 (08:50 +0000)]
Objects can no longer be migrated or evacuated into large object space.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
19959007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15848
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Wed, 24 Jul 2013 08:32:21 +0000 (08:32 +0000)]
Removed usesless test instruction.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
19647019
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15847
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 24 Jul 2013 08:17:32 +0000 (08:17 +0000)]
Prepare push to trunk. Now working on version 3.20.9.
R=jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
20066007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15844
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Wed, 24 Jul 2013 08:05:49 +0000 (08:05 +0000)]
Avoid adding HWrapReceiver during graph building.
This adds an early check to the graph builder which prevents adding an
HWrapReceiver instruction if the receiver type is already known at graph
building time. Also HAllocate no longer unnecessarily postpones setting
it's type until type inference but sets it right away. These changes are
in preparation for escape analysis.
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/
19493005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15843
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Wed, 24 Jul 2013 08:00:52 +0000 (08:00 +0000)]
Fix assert/crash in HandlePolymorphicCallNamed
R=jkummerow@chromium.org
TEST=Ryan Sturgell's test runs through without crashing
Review URL: https://codereview.chromium.org/
20051008
Patch from Daniel Clifford <danno@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15842
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 24 Jul 2013 07:45:54 +0000 (07:45 +0000)]
Revert "Flush parallel recompilation queues on context dispose notification."
This reverts r15833.
R=jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
19647018
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15841
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Tue, 23 Jul 2013 20:01:38 +0000 (20:01 +0000)]
Simplified large object allocation strategy.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
19934006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15840
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Tue, 23 Jul 2013 19:27:00 +0000 (19:27 +0000)]
Support double allocations when folding allocation.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
19956002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15839
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Tue, 23 Jul 2013 19:05:00 +0000 (19:05 +0000)]
Fix TargetSpace() method for box type.
BUG=
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
19978003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15838
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 23 Jul 2013 15:15:00 +0000 (15:15 +0000)]
Flush parallel recompilation queues on context dispose notification.
R=jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
19956004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15833
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Tue, 23 Jul 2013 15:01:38 +0000 (15:01 +0000)]
Fix call stack sampling for the case when native callback invokes JS function
The SafeStackFrameIterator used by CPU profiler checked if Isolate::c_entry_fp is null and if it is not it would think that the control flow currently is in some native code. This assumption is wrong because the native code could have called a JS function but JSEntryStub would not reset c_entry_fp to NULL in that case. This CL adds a check in SafeStackFrameIterator::IsValidTop for the case when there is a JAVA_SCRIPT frame on top of EXIT frame.
Also this CL changes ExternalCallbackScope behavior to provide access to the whole stack of the scope objects instead of only top one. This allowed to provide exact callback names for those EXIT frames where external callbacks are called. Without this change it was possible only for the top most native call.
BUG=None
R=loislo@chromium.org, yangguo@chromium.org
Review URL: https://codereview.chromium.org/
19775017
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15832
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Tue, 23 Jul 2013 14:29:04 +0000 (14:29 +0000)]
MIPS: Eliminate map checks of constant values.
Port r15819 (
a453a0e)
BUG=
Review URL: https://codereview.chromium.org/
19876006
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15831
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 23 Jul 2013 13:47:50 +0000 (13:47 +0000)]
Avoid duplication of OS::Thread methods for every POSIX platform.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
19490010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15830
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
haitao.feng@intel.com [Tue, 23 Jul 2013 13:46:10 +0000 (13:46 +0000)]
Introduce kRegisterSize, kPCOnStackSize and kFPOnStackSize constants
BUG=None
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
19802002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15829
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Tue, 23 Jul 2013 13:44:15 +0000 (13:44 +0000)]
Deprecate v8::V8::Pause/ResumeProfiler
The methods were added to the public API in r1185 when Chrome DevTools were using the same output as produced for tick processor when --prof option is specified.
I don't see any existing clients of these methods and since they add a noticeable complexity to the profiler code I'd like to remove them.
BUG=None
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
19591006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15828
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Tue, 23 Jul 2013 13:35:10 +0000 (13:35 +0000)]
Unify SoftDeoptimize and Deoptimize hydrogen instructions
BUG=chromium:258519
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
19528003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15827
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
haitao.feng@intel.com [Tue, 23 Jul 2013 13:30:44 +0000 (13:30 +0000)]
Revert "Addressed danno's comments" and "Introduce kRegisterSize, kPCOnStackSize and kFPOnStackSize constants"
BUG=None
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
19483007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15824
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
haitao.feng@intel.com [Tue, 23 Jul 2013 13:01:59 +0000 (13:01 +0000)]
Addressed danno's comments
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15823
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
haitao.feng@intel.com [Tue, 23 Jul 2013 13:01:42 +0000 (13:01 +0000)]
Introduce kRegisterSize, kPCOnStackSize and kFPOnStackSize constants
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15822
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 23 Jul 2013 10:01:06 +0000 (10:01 +0000)]
Also eliminate map checks with transitions.
R=ulan@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
19888006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15821
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 23 Jul 2013 09:59:14 +0000 (09:59 +0000)]
Fix duplicated methods for POSIX platforms.
No need to duplicate OS::NumberOfCores() for every POSIX platform.
No need to duplicate OS::Sleep() for every POSIX platform.
No need to duplicate OS::Abort() and OS::DebugBreak() for every POSIX platform.
No need to duplicate OS::Free() for every POSIX platform.
Move #ifdef'd OS::ProtectCode() and OS::Guard() to platform-posix.cc.
No need to duplicate OS::AllocateAlignment() for every POSIX platform.
No need to duplicate OS::PostSetUp() for every POSIX platform.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
20014005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15820
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 23 Jul 2013 09:18:42 +0000 (09:18 +0000)]
Eliminate map checks of constant values.
R=ulan@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
19954005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15819
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
olivf@chromium.org [Tue, 23 Jul 2013 09:13:59 +0000 (09:13 +0000)]
Avoid tagged values for Instructions that truncate the operands with ToNumber.
I case the ToNumber is applied to a non numeric value but its not observable (some constants and oddballs) we should already do it in hydrogen...
BUG=
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
19798002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15818
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
loislo@chromium.org [Tue, 23 Jul 2013 08:12:15 +0000 (08:12 +0000)]
Move CpuProfiler code create events behind Logger code api.
CpuProfiler has almost the same api for CodeCreate* events
but it was calling separately.
BUG=260203
R=svenpanne@chromium.org, yurys@chromium.org
Review URL: https://codereview.chromium.org/
19916002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15817
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 23 Jul 2013 07:41:46 +0000 (07:41 +0000)]
Rip out infrastructure for deferred stack trace formatting.
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
19971002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15816
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 23 Jul 2013 07:31:46 +0000 (07:31 +0000)]
Cosmetic changes.
R=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
19962005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15815
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 23 Jul 2013 06:02:54 +0000 (06:02 +0000)]
Turn ToNumberStub into a hydrogen code stub.
R=danno@chromium.org, hpayer@chromium.org
Review URL: https://codereview.chromium.org/
19793005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15814
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Mon, 22 Jul 2013 22:00:41 +0000 (22:00 +0000)]
MIPS: Ensure space for lazy deoptimization before calling IC.
Port r15808 (
cc16b500)
Original commit message:
If IC triggers deoptimization, then subsequent patching might get invalid
target address that was overwritten.
BUG=
Review URL: https://codereview.chromium.org/
19647007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15811
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Mon, 22 Jul 2013 18:18:55 +0000 (18:18 +0000)]
Add test case for issue 2793 about experimental natives.
R=yangguo@chromium.org
BUG=v8:2793
Review URL: https://codereview.chromium.org/
19948002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15810
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Mon, 22 Jul 2013 18:16:44 +0000 (18:16 +0000)]
MIPS: Prefill pre-allocated memory of folded allocation with one pointer fillers when heap verifier is on.
Port r15798 (
3b92806)
BUG=
Review URL: https://codereview.chromium.org/
19485006
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15809
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Mon, 22 Jul 2013 17:21:41 +0000 (17:21 +0000)]
ARM: Ensure space for lazy deoptimization before calling IC.
If IC triggers deoptimization, then subsequent patching might get invalid
target address that was overwritten.
R=verwaest@chromium.org
BUG=247688
TEST=mjsunit/regress/regress-247688.js
Review URL: https://chromiumcodereview.appspot.com/
19972002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15808
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 22 Jul 2013 15:27:38 +0000 (15:27 +0000)]
Add fixed array to Type::LubBitset
R=mvstanton@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
19960002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15807
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 22 Jul 2013 14:15:58 +0000 (14:15 +0000)]
Avoid repeated rewrites of global store to constant IC due to store of same value.
R=mvstanton@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
19663007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15806
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 22 Jul 2013 12:43:01 +0000 (12:43 +0000)]
Exclude const-strings from global constant tracking.
R=mvstanton@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
19576008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15805
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Mon, 22 Jul 2013 12:34:23 +0000 (12:34 +0000)]
Limit the amount of memory that can be folded together.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
19804002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15804
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Mon, 22 Jul 2013 12:15:13 +0000 (12:15 +0000)]
Track all non-hole global constants.
R=mvstanton@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
19784004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15803
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Mon, 22 Jul 2013 11:07:43 +0000 (11:07 +0000)]
Prefill pre-allocated memory of folded allocation with one pointer fillers when heap verifier is on.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
19723004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15798
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Mon, 22 Jul 2013 09:55:14 +0000 (09:55 +0000)]
In MacroAssembler::JumpIfNotBothSequentialAsciiStrings a custom mask
helps us decide if we have two ascii strings. We don't care if they
are internalized or not. A few days ago we flipped the meaning of the
internalized bit in INSTANCE_TYPE, and that broke this custom mask.
This CL effects a repair.
BUG=
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
19514004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15797
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Mon, 22 Jul 2013 09:19:43 +0000 (09:19 +0000)]
Prepare push to trunk. Now working on version 3.20.8.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
19933002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15794
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 22 Jul 2013 09:16:33 +0000 (09:16 +0000)]
Turn on parallel recompilation for tests that assert optimization status.
R=mvstanton@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
19807002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15793
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Mon, 22 Jul 2013 08:32:24 +0000 (08:32 +0000)]
ES6: Implement WeakSet
WeakSets work similar to ordinary Sets but the value (which must be an
object) is held weakly.
This is available under --harmony-collections
BUG=v8:2785
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
19678023
Patch from Erik Arvidsson <arv@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15792
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 22 Jul 2013 08:20:47 +0000 (08:20 +0000)]
Replace BuildExternalArrayElementAccess() with AddExternalArrayElementAccess().
This is trivial cleanup. All calls to BuildExternalArrayElementAccess()
pass the result to AddInstruction().
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
19658004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15791
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 22 Jul 2013 07:09:13 +0000 (07:09 +0000)]
Add AssertSmi() in x64 MacroAssembler::SmiTest().
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
19647006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15790
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 22 Jul 2013 07:00:46 +0000 (07:00 +0000)]
Replace BuildFastElementAccess() with AddFastElementAccess().
This is trivial cleanup. All calls to BuildFastElementAccess() pass
the result to AddInstruction().
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
19759003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15789
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 22 Jul 2013 06:13:45 +0000 (06:13 +0000)]
Fix invalid SMI test in x64 ToNumberStub::Generate().
TBR=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
19927002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15788
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 22 Jul 2013 05:50:10 +0000 (05:50 +0000)]
Unify SMI case inlining for ToNumberStub.
Use ShouldInlineSmiCase() on arm, mips and x64 similar to the ia32 port.
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/
19489003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15787
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Fri, 19 Jul 2013 19:55:09 +0000 (19:55 +0000)]
Revert "Implement simple effect typing for variables" and "Handle switch effects".
This reverts r15776 and r15777 due to compile failures on Chromium Mac bots.
TBR=rossberg@chromium.org
Review URL: https://codereview.chromium.org/
19482016
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15786
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
loislo@chromium.org [Fri, 19 Jul 2013 15:57:18 +0000 (15:57 +0000)]
Logger: reorder methods in log.cc
No logic changes.
BUG=none
TEST=current test set
TBR=yurys@chromium.org
Review URL: https://codereview.chromium.org/
19724004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15785
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
loislo@chromium.org [Fri, 19 Jul 2013 14:58:53 +0000 (14:58 +0000)]
Logger: extract CodeEventLogger classes.
The idea is to extract all the CodeEvent loggers into separate classes
make an interface for code events and put them into a listeners array.
I extracted code that works with name_buffer into a separate base class CodeEventLogger.
And made JitLogger, LowLevelLogger and new CodeMap its descendants.
As a side effect I converted NameBuffer into nested class of CodeEventLogger
and converted NameMap into nested class of CodeMap.
BUG=260203
R=yangguo@chromium.org, yurys@chromium.org
Review URL: https://codereview.chromium.org/
19795002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15784
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Fri, 19 Jul 2013 14:56:43 +0000 (14:56 +0000)]
MIPS: With >= 64 non-string instance types, I removed an optimization that allowed us to detect internalized strings with a single bit test.
Port r15773 (
60aa9f0)
Original commit message:
With >= 64 non-string instance types, I removed an optimization that allowed us to detect internalized strings with a single bit test. (https://code.google.com/p/v8/source/detail?r=15358) But that change caused a regression, so here is an improvement:
Put the internalized string types in the lower 64 entries of
INSTANCE_TYPE, and non-internalized string types in the next 64 entries.
This way we can restore the single bit check.
BUG=
Review URL: https://codereview.chromium.org/
19723008
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15783
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Fri, 19 Jul 2013 14:46:23 +0000 (14:46 +0000)]
Fix unaligned accesses in back_edge tables.
This patch fixes the step size of masm->pc_ in back_edge tables to words (4 bytes) to ensure 4 bytes alignment for read/write operations. Read and write of words (4 bytes) data from aligned space (address % 4 == 0) is more efficient on all platforms and especially on MIPS where without this alignment fix a kernel exception handler is used for every unaligned access.
This patch increases the size of back_edge tables by 3 bytes in every row. By the test it seem the back_edge table quite small in every/most cases (maximal length is 18 so in that case there are only 54 additional bytes with this patch).
BUG=
Patch from Douglas Leung <Douglas.Leung@imgtec.com>
Review URL: https://codereview.chromium.org/
19248002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15782
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Fri, 19 Jul 2013 14:07:23 +0000 (14:07 +0000)]
Proxies: Make 'with' work, plus minor other fixes
Also fixes internal exception handling in several places of the runtime.
R=yangguo@chromium.org
BUG=v8:1543
Review URL: https://codereview.chromium.org/
19384004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15781
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Fri, 19 Jul 2013 13:45:26 +0000 (13:45 +0000)]
Fix deopt in store with effect context.
R=verwaest@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
19693004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15780
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Fri, 19 Jul 2013 13:39:21 +0000 (13:39 +0000)]
Add gitignore entries for MSVS files
BUG=none
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
19500011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15779
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Fri, 19 Jul 2013 13:30:49 +0000 (13:30 +0000)]
Rename AllocationSiteInfo to AllocationMemento
This is just a rename change with the exception of a bug found along the way in
CodeStubGraphBuilder<FastCloneShallowArrayStub>::BuildCodeStub(). There, the
intent is to get the boilerplate object from an AllocationSite. But the wrong
HObjectAccess was used. It only succeeds because it happened to be the same
offset :).
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
19595004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15778
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Fri, 19 Jul 2013 13:04:41 +0000 (13:04 +0000)]
Handle switch effects
R=titzer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
18926004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15777
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Fri, 19 Jul 2013 12:54:27 +0000 (12:54 +0000)]
Implement simple effect typing for variables
For that, we maintain an abstract store typing of all variables with LOCAL location (i.e., those that do not escape the function's own scope). We treat assignments as sequential effects that modify this store.
When control flow branches, we have to compute the disjunction of possible effects. To that end, we represent the store as a stack of effect sets, such that we can cheaply push and pop "local" effects when control flow has to branch.
In cases of non-local control transfer from an unknown source, we currently erase all knowledge about the store.
The 'switch' statement is still to come.
For a formulation of the typing rules, see:
https://docs.google.com/a/google.com/file/d/0B3wuXSv9YKuKeUNkVXZDemZ0Z1E
;)
R=jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
19054006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15776
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Fri, 19 Jul 2013 11:52:42 +0000 (11:52 +0000)]
Cleanup StringAddFlags.
Avoid duplication of StringAddFlags in the platform specific code stubs header files.
Fix the inverted flag logic, replacing it with a scheme that is easier to understand.
Depends on: https://codereview.chromium.org/
19541003
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
19492006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15775
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Fri, 19 Jul 2013 11:42:57 +0000 (11:42 +0000)]
Cleanup useless parameter object_is_smi for NumberToStringStub::GenerateLookupNumberStringCache().
object_is_smi was always false so there's no need to actually have it.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
19541007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15774
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Fri, 19 Jul 2013 11:29:11 +0000 (11:29 +0000)]
With >= 64 non-string instance types, I removed an optimization that allowed us to detect internalized strings with a single bit test. (https://code.google.com/p/v8/source/detail?r=15358) But that change caused a regression, so here is an improvement:
Put the internalized string types in the lower 64 entries of
INSTANCE_TYPE, and non-internalized string types in the next 64 entries.
This way we can restore the single bit check.
BUG=
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
19749004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15773
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Fri, 19 Jul 2013 09:57:35 +0000 (09:57 +0000)]
Add support for explicit octal and binary integer literals
http://people.mozilla.org/~jorendorff/es6-draft.html#sec-7.8.3
ES6 extends the numeric literals to support explicit support
for binary and octal literals using the following syntax:
0b10101
0o777
This is currently behind the flag, --harmony-numeric-literals
BUG=2783
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/
19300002
Patch from Erik Arvidsson <arv@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15772
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Fri, 19 Jul 2013 09:42:15 +0000 (09:42 +0000)]
Consistently use HStringAdd instead of HCallStub with CodeStub::StringAdd.
Previously there were two ways to actually use the StringAddStub
from Hydrogen:
- Either using HStringAdd (which implied NO_STRING_CHECK_IN_STUB
and and does the argument handling internally),
- or using HCallStub with CodeStub::StringAdd (which implied
NO_STRING_ADD_FLAGS and expected the arguments to be on the
stack already).
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
19541003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15771
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Fri, 19 Jul 2013 09:39:01 +0000 (09:39 +0000)]
Move FindCodeObject from Heap to Isolate.
This removes the isolate=>heap=>isolate nonsense and has the additional bonus
that it re-enables printing of code objects in GDB. NOT: To make the latter
work, one has to adapt GDB any macros using FindCodeObject! Keeping things as it
is and outlining Isolate::heap() was not really an option...
Side note: Currently we are lucky that we still have Isolate::Current()
available in GDB, although it is marked as INLINE. :-}
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
19785004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15770
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00