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
yurys@chromium.org [Fri, 19 Jul 2013 09:38:18 +0000 (09:38 +0000)]
Deprecate some debugger methods
These methods have been superceeded by equivalents accepting object arguments exposing more details.
This is exactly the same change as r15708 which was reverted in r15710 due to pending Blink changes. Now that Blink is rolled to 154493 it should be safe to land this (required Blink change is 154386).
BUG=None
TBR=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
19541005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15769
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
haitao.feng@intel.com [Fri, 19 Jul 2013 08:49:47 +0000 (08:49 +0000)]
Use kPointerSize to compute the call instruction offset in the PatchedReturnSequence for X64
BUG=
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
19763010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15764
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Fri, 19 Jul 2013 08:45:47 +0000 (08:45 +0000)]
Fix wrong bailout id in polymorphic stores.
BUG=chromium:259787
R=titzer@chromium.org, ulan@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
19528005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15763
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Fri, 19 Jul 2013 08:25:44 +0000 (08:25 +0000)]
Fix %NeverOptimizeFunction runtime call.
The current usage of this runtime function is broken as it does not
prevent inlining of the affected function but rather bails out from the
whole unit of compilation after trying to inline affected functions.
This simplifies said runtime function to avoid accidental misuse.
R=titzer@chromium.org
TEST=mjsunit/never-optimize
Review URL: https://codereview.chromium.org/
19776006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15762
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Fri, 19 Jul 2013 08:21:41 +0000 (08:21 +0000)]
x64 support for d-to-i (truncated)
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
18333012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15761
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
loislo@chromium.org [Thu, 18 Jul 2013 17:19:31 +0000 (17:19 +0000)]
Logger: remove dependency between Logger and LogMessageBuilder.
LogMessageBuilder is a helper class for Log.
So I made it a nested class and removed the dependency from Logger.
BUG=none
TEST=no changes in the logic
R=yangguo@chromium.org, yurys@chromium.org
Review URL: https://codereview.chromium.org/
19768003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15760
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Thu, 18 Jul 2013 14:40:59 +0000 (14:40 +0000)]
Do not inline printing functions typically used via GDB.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
19722005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15755
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Thu, 18 Jul 2013 14:32:06 +0000 (14:32 +0000)]
One more Windows compilation fix after r15750
BUG=None
TBR=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
19471006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15754
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Thu, 18 Jul 2013 14:28:00 +0000 (14:28 +0000)]
Fix Windows compilation after r15750
BUG=None
TBR=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
19778003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15753
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
alph@chromium.org [Thu, 18 Jul 2013 14:14:56 +0000 (14:14 +0000)]
Add named links to dependent_code in Map objects in heap snapshot.
R=loislo@chromium.org, ulan@chromium.org
Review URL: https://codereview.chromium.org/
19631003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15752
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Thu, 18 Jul 2013 14:00:53 +0000 (14:00 +0000)]
Handlify Accessors::FunctionGetArguments method.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
19638003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15751
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Thu, 18 Jul 2013 13:42:04 +0000 (13:42 +0000)]
Fix data race in SamplingCircularQueue
This change fixes data race described in the bug by adding Acquire_Load to SamplingCircularQueue::StartDequeue and Acquire_Store to SamplingCircularQueue::Enqueue.
Also the queue implementation imposed a constraint on the records it stored: the first AtomicWord in each record was a marker. For that purpose TickSampleEventRecord had filter field of type int. This approach is error prone, e.g. on x64 sizeof(AtomicWord) is 8 while sizeof(int) is 4. Moreover the queue needs such marker only at the beginning of chunk. I changed the queue so that it stores the marker explicitly as the first Cell in chunk and removed the filter field.
BUG=251218
R=loislo@chromium.org, yangguo@chromium.org
Review URL: https://codereview.chromium.org/
19642002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15750
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
loislo@chromium.org [Thu, 18 Jul 2013 13:18:46 +0000 (13:18 +0000)]
Extract JitLogger from Logger class.
Second patch from the set.
BUG=260203
TEST=logic wasn't changed
R=yangguo@chromium.org, yurys@chromium.org
Review URL: https://codereview.chromium.org/
19761003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15749
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Thu, 18 Jul 2013 13:00:40 +0000 (13:00 +0000)]
Fix --track_gc_object_stats option.
- Update ObjectStatsVisitTracker::Visit function to check if CodeCache is of
CodeCache type, and extract the FixedArray from the struct if so
- Fix typo in v8-counters.h where count_of_FIXED_ARRAY_XXX fields weren't being
initialized.
BUG=v8:2780
R=danno@chromium.org, hpayer@chromium.org
Review URL: https://codereview.chromium.org/
19257002
Patch from Ross McIlroy <mcilroy@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15748
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 18 Jul 2013 12:25:22 +0000 (12:25 +0000)]
Fix GC issue in Runtime_DebugEvaluate.
R=hpayer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
19520006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15747
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Thu, 18 Jul 2013 12:22:23 +0000 (12:22 +0000)]
Update blink test expectations.
The original expectations from blink contain crash expectations for these three tests. We overwrote those by adding timeout.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
19753002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15746
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Thu, 18 Jul 2013 12:21:46 +0000 (12:21 +0000)]
Disable some tests for nacl runs.
These tests fail with the nacl/v8 builders.
Patch from bradchen@chromium.org.
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
19769002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15745
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Thu, 18 Jul 2013 12:18:35 +0000 (12:18 +0000)]
Fix NaCl regression caused by pepper revision 28.
Patch from bradchen@chromium.org.
Prevents use of PROT_EXEC for NaCl builds
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
19729003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15744
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Thu, 18 Jul 2013 09:46:56 +0000 (09:46 +0000)]
Hydrogen array accesses: switch from elements_kind to map based polymorphism
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
18209023
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15743
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Thu, 18 Jul 2013 09:25:54 +0000 (09:25 +0000)]
Use C++11 deleted functions feature if available.
Implement DISALLOW_COPY_AND_ASSIGN and DISALLOW_IMPLICIT_CONSTRUCTORS
using C++11 deleted functions if possible.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
19728003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15742
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Thu, 18 Jul 2013 09:12:44 +0000 (09:12 +0000)]
Fixed type feedback in presence of negative lookups.
To fix the issue at hand regarding constant function calls and perhaps
other hidden issues regarding negative lookups, we basically add a
"marker instruction", just for harvesting purposes. Our type feedback
oracle is really, really fragile, we should better switch to some more
explicit and robust scheme soon.
BUG=chromium:252797
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
19588002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15741
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Thu, 18 Jul 2013 08:42:03 +0000 (08:42 +0000)]
Double align fast literals of fast double elements kind.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
19603002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15740
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Thu, 18 Jul 2013 08:12:01 +0000 (08:12 +0000)]
Make deoptimization stress count global.
Store the deopt stress counter per isolate instead of per shared function info. The old field is removed.
Enable output of the counter value with a new flag.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
19383002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15739
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Thu, 18 Jul 2013 07:59:48 +0000 (07:59 +0000)]
Handlify JSFunction::SetPrototype method.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
19594002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15738
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Thu, 18 Jul 2013 07:50:33 +0000 (07:50 +0000)]
Just check for C++ version.
This fixes build breakage introduced with r15736.
TBR=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
19671009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15737
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Thu, 18 Jul 2013 07:43:41 +0000 (07:43 +0000)]
Use C++11 static_assert() if available.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
19684009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15736
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Thu, 18 Jul 2013 07:34:19 +0000 (07:34 +0000)]
Revert "Deprecate some debugger methods"
This reverts commit
69957c36edaebe0b9b614099eb1b067fb0208671. Blink roll this patch depends on was reverted for some reason.
BUG=None
TBR=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
19483003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15735
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Thu, 18 Jul 2013 06:51:03 +0000 (06:51 +0000)]
Deprecate some debugger methods
These methods have been superceeded by equivalents accepting object arguments exposing more details.
This is exactly the same change as r15708 which was reverted in r15710 due to pending Blink changes.
BUG=None
TBR=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
19542003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15734
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Wed, 17 Jul 2013 23:57:32 +0000 (23:57 +0000)]
MIPS: Improve code aging sequence.
Port r15697 (
61d56196)
Original commit message:
The code aging sequence contains a load which is unecessary for optimised
function. This has been replaced by a nop.
BUG=
Review URL: https://codereview.chromium.org/
19683005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15733
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Wed, 17 Jul 2013 18:39:34 +0000 (18:39 +0000)]
MIPS: The gc should be able to traverse all AllocationSites for decision making.
Port r15715 (2e830d4)
Original commit message:
The gc should be able to traverse all AllocationSites for decision making. The sites are threaded into a weak list. Special problems include:
* Allocations of AllocationSites occur in generated code, so generated code needs to be able to add to the list. For now I have a special hydrogen instruction, though it would be nice to use general purpose instructions.
* The snapshot contains AllocationSites, and these need to be re-threaded into the list on deserialization.
Something nice is that the AllocationSites are only created in old space, so a special new space visitor isn't required.
BUG=
Review URL: https://codereview.chromium.org/
19635002
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15732
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
alph@chromium.org [Wed, 17 Jul 2013 18:23:16 +0000 (18:23 +0000)]
Do not report unessential weak references in heap snapshot.
R=verwaest@chromium.org, yurys@chromium.org
Review URL: https://codereview.chromium.org/
19267023
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15731
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Wed, 17 Jul 2013 16:38:49 +0000 (16:38 +0000)]
Handlify JSReceiver/JSObject::DeleteProperty method.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
18774002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15730
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Wed, 17 Jul 2013 16:21:03 +0000 (16:21 +0000)]
Add support for empty hydrogen filter that matches only the top-level JSFunction.
BUG=
Review URL: https://codereview.chromium.org/
19590002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15729
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Wed, 17 Jul 2013 15:58:59 +0000 (15:58 +0000)]
Better fix for LiteralCompareTypeof
This reverts r15725 and replaces it with the following one-liner
in hydrogen.cc's HandleLiteralCompareTypeof:
- CHECK_ALIVE(VisitForValue(sub_expr));
+ CHECK_ALIVE(VisitForTypeOf(sub_expr));
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
19523005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15728
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 17 Jul 2013 15:29:00 +0000 (15:29 +0000)]
Do not materialize context-allocated values for debug-evaluate.
BUG=259300
R=ulan@chromium.org, verwaest@chromium.org
Review URL: https://codereview.chromium.org/
19569003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15727
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Wed, 17 Jul 2013 15:21:22 +0000 (15:21 +0000)]
Fix gc stress builder.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
19507004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15726
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Wed, 17 Jul 2013 14:58:00 +0000 (14:58 +0000)]
Fix LiteralCompareTypeof breakage introduced in r15723
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
19556003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15725
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
olivf@chromium.org [Wed, 17 Jul 2013 14:10:38 +0000 (14:10 +0000)]
There is no undefined Literal.
BUG=
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/
18429005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15724
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Wed, 17 Jul 2013 13:13:38 +0000 (13:13 +0000)]
Synchronize Compare-Literal behavior in FullCodegen and Hydrogen
BUG=chromium:260345
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
19582002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15723
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
alph@chromium.org [Wed, 17 Jul 2013 13:12:48 +0000 (13:12 +0000)]
Provide named links to code objects in heap snapshot.
R=loislo@chromium.org, verwaest@chromium.org, yurys@chromium.org
Review URL: https://codereview.chromium.org/
19397002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15722
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Wed, 17 Jul 2013 12:19:40 +0000 (12:19 +0000)]
Enable compiled transitions by default.
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
19568002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15717
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Wed, 17 Jul 2013 12:16:16 +0000 (12:16 +0000)]
Remove V8_DISABLE_DEPRECATIONS=1 from test-cpu-profiler.cc
BUG=None
R=loislo@chromium.org, yangguo@chromium.org
Review URL: https://codereview.chromium.org/
19554002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15716
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Wed, 17 Jul 2013 11:50:24 +0000 (11:50 +0000)]
The gc should be able to traverse all AllocationSites for decision making. The sites are threaded into a weak list. Special problems include:
* Allocations of AllocationSites occur in generated code, so generated code needs to be able to add to the list. For now I have a special hydrogen instruction, though it would be nice to use general purpose instructions.
* The snapshot contains AllocationSites, and these need to be re-threaded into the list on deserialization.
Something nice is that the AllocationSites are only created in old space, so a special new space visitor isn't required.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
18173013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15715
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Wed, 17 Jul 2013 11:42:32 +0000 (11:42 +0000)]
Some tests involving AllocationSites are failing in GcStress test mode.
The reason is that an AllocationMemento associated with an array only
lives for one gc (it is unrooted). So an excess of garbage collections
in these tests cause the Memento to be lost, and expected behavior
can't be guaranteed.
BUG=
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
19544002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15714
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Wed, 17 Jul 2013 11:37:20 +0000 (11:37 +0000)]
Reland "Turn ElementsTransitionAndStore stub into a HydrogenCodeStub".
Fix the invalid array length check, replacing it with a check of
the elements pointer similar to TransitionElementsKindStub.
Refactor common code from ElementsTransitionAndStoreStub and TransitionElementsKindStub into BuildTransitionElementsKind() helper method.
Add test case for the MD5 computation that used to crash before,
and a small test case for the specific issue.
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
19367003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15713
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Wed, 17 Jul 2013 11:16:07 +0000 (11:16 +0000)]
Add BYTES_PER_ELEMENT property to constructors of typed arrays.
ES6 does not prescribe it, but both Blink and Firefox have it.
Also does a small rename of parameter in test.
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
19562002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15712
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
alph@chromium.org [Wed, 17 Jul 2013 10:16:40 +0000 (10:16 +0000)]
Report initial_map field of JSFunction in heap snapshot.
R=verwaest@chromium.org, yurys@chromium.org
Review URL: https://codereview.chromium.org/
19256020
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15711
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Wed, 17 Jul 2013 10:03:49 +0000 (10:03 +0000)]
Revert "Deprecate some debugger methods"
This reverts commit r15708 to make WebKit bots happy while Blink change https://src.chromium.org/viewvc/blink?view=rev&revision=154386 is not rolled into Chromium.
BUG=None
TBR=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
19557002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15710
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Wed, 17 Jul 2013 09:57:56 +0000 (09:57 +0000)]
Use private field chunk_
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
19495002
Patch from HaiTao Feng <haitao.feng@intel.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15709
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Wed, 17 Jul 2013 09:20:16 +0000 (09:20 +0000)]
Deprecate some debugger methods
These methods have been superceeded by equivalents accepting object arguments exposing more details.
BUG=None
R=loislo@chromium.org, yangguo@chromium.org
Review URL: https://codereview.chromium.org/
19549002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15708
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Wed, 17 Jul 2013 08:46:44 +0000 (08:46 +0000)]
Do not call reinterpret_cast when converting from NULL.
If NULL is a nullptr (such as on my FreeBSD system), it is not possible to
use reinterpret_cast to convert it to another pointer. Plus, just using NULL
directly achieves the same effect.
R=ulan@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
19388005
Patch from Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15705
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Wed, 17 Jul 2013 08:46:01 +0000 (08:46 +0000)]
Calls to HCheckFunction can be eliminated if the value is an HConstant.
Reland "Calls to HCheckFunction can be eliminated if the value is an HConstant"
(https://codereview.chromium.org/
18751003/).
The CL failed because of heap snapshot issues. alph@chromium.org just checked in
a fix for that (https://code.google.com/p/v8/source/detail?r=15694).
BUG=
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
19504007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15704
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Wed, 17 Jul 2013 08:44:10 +0000 (08:44 +0000)]
More aggressively inline optimized code.
BUG=
R=danno@chromium.org, mstarzinger@chromium.org, titzer@chromium.org
Review URL: https://codereview.chromium.org/
19504006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15703
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Wed, 17 Jul 2013 08:37:48 +0000 (08:37 +0000)]
Enable building for android on x86_64 machines.
R=ulan@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/
18535011
Patch from Ross McIlroy <rmcilroy@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15702
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Wed, 17 Jul 2013 08:32:28 +0000 (08:32 +0000)]
Fix invalid array length check in TransitionElementsKindStub.
The stub used to check the length of the JS array to see if
there's a need to duplicate the elements backing store. This
way it will not duplicate the elements array when going from
double to object even if the elements array is not the empty
fixed array. Later on it will then store pointers into a
FixedDoubleArray.
The native code stub used to check whether elements points to
the empty_fixed_array singleton instead of testing the length.
The Hydrogen stub does that as well now.
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
19289009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15701
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Wed, 17 Jul 2013 08:19:34 +0000 (08:19 +0000)]
Prepare push to trunk. Now working on version 3.20.7.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
19543002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15698
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rodolph.perfetta@gmail.com [Wed, 17 Jul 2013 08:09:52 +0000 (08:09 +0000)]
ARM: Improve code aging sequence.
The code aging sequence contains a load which is unecessary for optimised
function. This has been replaced by a nop.
BUG=none
TEST=none
Review URL: https://chromiumcodereview.appspot.com/
19379003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15697
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Wed, 17 Jul 2013 08:02:08 +0000 (08:02 +0000)]
Removed unused HOptimizedGraphBuilder::BuildCallSetter method.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
19235011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15696
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Tue, 16 Jul 2013 18:02:43 +0000 (18:02 +0000)]
MIPS: Fix bug introduced by r15640.
This bug causes segfault in the octane benchmark,
because the deoptimization entries do not fit in the
deopt table.
This change increases the table entry size.
TEST=octane benchmark
BUG=
Review URL: https://codereview.chromium.org/
19381004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15695
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
alph@chromium.org [Tue, 16 Jul 2013 17:47:35 +0000 (17:47 +0000)]
Add missing links from GlobalPropertyCell to dependent_code
It produced orphan DependentCode nodes because links were not created explicitly in ExtractPropertyCellReferences and IndexedReferencesExtractor was disabled for ProperyCells.
R=danno@chromium.org, loislo@chromium.org
Review URL: https://codereview.chromium.org/
19368002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15694
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 16 Jul 2013 14:01:46 +0000 (14:01 +0000)]
Try to remove invalidated stubs before falling back to checking the constant state.
BUG=chromium:260585
R=hpayer@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
19267019
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15693
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
alph@chromium.org [Tue, 16 Jul 2013 12:48:34 +0000 (12:48 +0000)]
Make TransitionArray internal references originate from TA in heap snapshot.
TransitionArray references were added to the TA's map object instead
of TA itself.
R=verwaest@chromium.org, yurys@chromium.org
Review URL: https://codereview.chromium.org/
19265002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15692
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Tue, 16 Jul 2013 12:14:16 +0000 (12:14 +0000)]
Added mark bit cell iterator.
BUG=
R=mstarzinger@chromium.org, titzer@chromium.org
Review URL: https://codereview.chromium.org/
19182002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15691
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Tue, 16 Jul 2013 11:21:48 +0000 (11:21 +0000)]
Extend expectations for slow test cases on the V8/blink trunk builder.
The second test has an existing expectation that is extended.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
19299004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15690
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Tue, 16 Jul 2013 09:34:09 +0000 (09:34 +0000)]
Fix cctest/test-cpu-profiler/FunctionApplySample fakiness on ARM simulator
For STM and LDM instuctions with writeback update base register only after all registers have been saved/loaded. This guarantees that invariant sp <= fp is always true when iterating stack in the Sampler.
BUG=v8:2782
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
19243002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15687
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Tue, 16 Jul 2013 08:54:41 +0000 (08:54 +0000)]
Added tracing information to the case when allocation folding cannot be performed.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
19290008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15686
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 16 Jul 2013 08:37:49 +0000 (08:37 +0000)]
Minor cleanup of GVN state pushing.
R=hpayer@chromium.org, hpayer@google.com
Review URL: https://codereview.chromium.org/
19235010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15685
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Tue, 16 Jul 2013 08:11:30 +0000 (08:11 +0000)]
Throw if first argument to TypedArray.set is a number.
Further refinement to semantics that I have missed in previous change.
Both Blink and Firefox are permissive with arguments to .set method.
However, when first argument to "set" is a number, all implementations
throw, so that users know that
a.set(0,27)
does not assign 27 to 0th element of a, not 0 to 27th element of a.
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
19210002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15684
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 16 Jul 2013 07:07:04 +0000 (07:07 +0000)]
Use BitVector instead of handcrafted SparseSet.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
19272011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15683
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
adamk@chromium.org [Mon, 15 Jul 2013 22:16:30 +0000 (22:16 +0000)]
[Object.observe] Lazily allocate callbackInfo structure
This patch allows callbacks to lazily allocate the InternalArray which is used to store pendingChangeRecords. This moves some of the expense of observation to the case where changes actually occurred.
When there are no pendingChangeRecords, the callbackInfo structure is a number which is the callbacks priority. Whenever a changeRecord is enqueued to the callback, it "normalizes" to be an InternalArray with a priority property. Immediately before its changeRecords are delivered, it returns to its optimized state.
---
Note: Naming confusion resolved:
This patch corrects some naming confusion in object-observe.js. Previously, we used the terms "callback" and "observer" to mean roughly the same thing, and overloaded the term "observer" to be both the callback itself and the *registration* on a object to observe (which now includes an accept map).
This patch resolves this confusion:
"object" (objectInfo, objectInfoMap): This refers to the observed object and its structures
"callback" (callbackInfo, callbackInfoMap): This refers to the callback to whom change records may be delivered
"observer" (objectInfo.changeObservers): This refers to a registration to observe a given object by a given callback with the specified accept list.
---
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/
19132002
Patch from Rafael Weinstein <rafaelw@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15682
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Mon, 15 Jul 2013 18:47:40 +0000 (18:47 +0000)]
Make deopt testing compatible with runtime optimization status queries.
When deopt testing is activated, a new status code will be returned by optimization status queries (status=maybe deopted).
This will make those tests work that test for 'not status=no', when performing deopt testing.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
19184002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15681
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Mon, 15 Jul 2013 16:58:20 +0000 (16:58 +0000)]
Revert r15649 and fix for loop dominator propagation in GVN.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
19233002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15680
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 15 Jul 2013 16:56:32 +0000 (16:56 +0000)]
Disable compiled_transitions by default.
This was accidently re-enabled with r15674.
TBR=danno@chromium.org
Review URL: https://codereview.chromium.org/
19229003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15679
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Mon, 15 Jul 2013 16:33:06 +0000 (16:33 +0000)]
Make optimizations for debug configurable with compile flag.
To turn on optimizations for debug when building standalone, a compiler flag can be used:
make optdebug=on
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
19164003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15678
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Mon, 15 Jul 2013 15:41:21 +0000 (15:41 +0000)]
Fix gyp_v8 to work with use_system_icu=1
If you want to use the system icu library, you'll need to use gyp_v8 (as
opposed to the standalone Makefiles)
BUG=v8:2475
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
19195003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15677
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Mon, 15 Jul 2013 15:23:52 +0000 (15:23 +0000)]
Revert 15635: Turn ElementsTransitionAndStore stub into a HydrogenCodeStub
Causes breakage in crypto-(sha1|md5) SunSpider
TBR=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
19214002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15674
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Mon, 15 Jul 2013 15:12:16 +0000 (15:12 +0000)]
Reland deprecation of HAllocateObject in favor of HAllocate.
This essentially relands r14930 and r14935 with adaptions to the current
code base. It models the instantiation of an implicit receiver for
CallNew nodes in hydrogen using HAllocate together with generic stores
instead of one specialized HAllocateObject instruction, hence creating a
single choking point for inlined allocation in optimized code.
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
19207002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15673
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Mon, 15 Jul 2013 14:12:20 +0000 (14:12 +0000)]
Fix sloppy-mode 'const' under Harmony flag.
R=yangguo@chromium.org
BUG=173361
Review URL: https://codereview.chromium.org/
19199002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15670
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Mon, 15 Jul 2013 13:36:36 +0000 (13:36 +0000)]
Fix --deopt-every-n-times flag
(was broken since r15640)
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/
19188002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15669
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 15 Jul 2013 12:24:13 +0000 (12:24 +0000)]
Android lacks support for cxxabi.h.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
19153004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15666
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Mon, 15 Jul 2013 11:41:41 +0000 (11:41 +0000)]
Use internal array as API function cache.
R=yangguo@chromium.org
BUG=chromium:260106
TEST=cctest/test-api/Regress260106
Review URL: https://codereview.chromium.org/
19159003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15665
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
loislo@chromium.org [Mon, 15 Jul 2013 11:35:39 +0000 (11:35 +0000)]
Current logger code is messy. It mixes together
four or even five different logging destinations.
I think we can extract the code related to a destination
into a separate class, do the same for the all destinations
and have four classes with more or less simple common logging
API
BUG=none
Meta-bug= https://code.google.com/p/chromium/issues/detail?id=260203
R=yangguo@chromium.org, yurys@chromium.org
Review URL: https://codereview.chromium.org/
18259024
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15664
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00