bmeurer@chromium.org [Tue, 2 Jul 2013 08:29:33 +0000 (08:29 +0000)]
Turn escape analysis into a proper HPhase.
R=danno@chromium.org, mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
18476004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15438
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 2 Jul 2013 08:27:27 +0000 (08:27 +0000)]
Properly cleanup the transcendental subcaches.
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
18487002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15437
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Tue, 2 Jul 2013 07:51:09 +0000 (07:51 +0000)]
Correctly report callstack when current function is FunctionCall builtin
When current function is FunctionCall builtin we have no reliable way to determine its caller function (in many cases the top of the sampled stack contains address of the caller but sometimes it does not). Instead of dropping the sample or its two top frames we simply mark the caller frame as '(unresolved function)'. It seems like a better approach that dropping whole sample as knowing the top function and the rest of the stack the user should be able to figure out what the caller was.
This change adds builtin id to CodeEntry objects. It will be used later to add similar top frame analysis for FunctionApply and probably other builtins.
BUG=None
TBR=loislo@chromium.org
Review URL: https://codereview.chromium.org/
18422003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15436
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 2 Jul 2013 07:21:07 +0000 (07:21 +0000)]
Cleanup the default Isolate's entry stack.
This adds an ASSERT that the entry_stack_ of the Isolate is
empty upon destruction. The default Isolate is an exception
here, as it may still contain an entry stack item upon
destruction.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
18247004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15435
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Tue, 2 Jul 2013 06:26:07 +0000 (06:26 +0000)]
Revert "Correctly report callstack when current function is FunctionCall builtin"
This reverts commit r15426. The new test fails in Debug mode.
BUG=None
TBR=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
18478002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15434
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
loislo@chromium.org [Tue, 2 Jul 2013 06:14:01 +0000 (06:14 +0000)]
CPUProfiler: propagate scriptId to the front-end
Each CpuProfileNode has resource_name string property.
It cost us N * strlen(resource_name) where N is number of functions in the collected profile.
We could transfer script_id instead of resource_name so it would reduce transfer
size and help us to solve the problem with evals and sourceURL.
BUG=none
TEST=test-cpu-profiler/CollectCpuProfile
R=jkummerow@chromium.org, yurys@chromium.org
Committed: https://code.google.com/p/v8/source/detail?r=15429
Review URL: https://codereview.chromium.org/
17642009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15433
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Mon, 1 Jul 2013 21:05:03 +0000 (21:05 +0000)]
MIPS: Fix register usage in ProfileEntryHookStub
Different register must be used to pass the test on target hardware.
BUG=
TEST=cctest/test-api/SetFunctionEntryHook
Review URL: https://codereview.chromium.org/
18368002
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15432
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
loislo@chromium.org [Mon, 1 Jul 2013 19:22:45 +0000 (19:22 +0000)]
Revert "CPUProfiler: propagate scriptId to the front-end"
This reverts commit
d575f6bc8b262dac08f02913ae6e7c504c9dd900.
Check is failing on debug bots.
TBR= yurys@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
18332010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15431
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
loislo@chromium.org [Mon, 1 Jul 2013 15:15:57 +0000 (15:15 +0000)]
CPUProfiler: propagate scriptId to the front-end
Each CpuProfileNode has resource_name string property.
It cost us N * strlen(resource_name) where N is number of functions in the collected profile.
We could transfer script_id instead of resource_name so it would reduce transfer
size and help us to solve the problem with evals and sourceURL.
BUG=none
TEST=test-cpu-profiler/CollectCpuProfile
R=jkummerow@chromium.org, yurys@chromium.org
Review URL: https://codereview.chromium.org/
17642009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15429
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 1 Jul 2013 15:12:59 +0000 (15:12 +0000)]
Also delete optimization jobs in the output queue when stopping thread.
R=hpayer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
18364002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15428
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Mon, 1 Jul 2013 15:12:21 +0000 (15:12 +0000)]
Revert r15419: "Generate StoreGlobal stubs with Hydrogen"
TBR=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
18357004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15427
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Mon, 1 Jul 2013 14:57:58 +0000 (14:57 +0000)]
Correctly report callstack when current function is FunctionCall builtin
When current function is FunctionCall builtin we have no reliable way to determine its caller function (in many cases the top of the sampled stack contains address of the caller but sometimes it does not). Instead of dropping the sample or its two top frames we simply mark the caller frame as '(unresolved function)'. It seems like a better approach that dropping whole sample as knowing the top function and the rest of the stack the user should be able to figure out what the caller was.
This change adds builtin id to CodeEntry objects. It will be used later to add similar top frame analysis for FunctionApply and probably other builtins.
BUG=None
R=jkummerow@chromium.org, loislo@chromium.org
Review URL: https://codereview.chromium.org/
18316004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15426
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Mon, 1 Jul 2013 13:59:18 +0000 (13:59 +0000)]
Derive synthetic type bounds for expressions
Currently synthesizes Smi as the lower bound for numeric operations (except for +, which might result in a string). That would need to change in places where we want to track constants as type feedback.
Does not do anything about variables yet.
R=jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
17842004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15422
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Mon, 1 Jul 2013 13:56:48 +0000 (13:56 +0000)]
Implement WeakMap.prototype.clear function.
R=rossberg@chromium.org
BUG=v8:2753
TEST=mjsunit/harmony/collections
Review URL: https://codereview.chromium.org/
18352002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15421
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
prybin@chromium.org [Mon, 1 Jul 2013 13:44:10 +0000 (13:44 +0000)]
Debug: support breakpoints set in the middle of statement (try #2 after rollback)
Review URL: https://codereview.chromium.org/
18349004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15420
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Mon, 1 Jul 2013 13:22:13 +0000 (13:22 +0000)]
Generate StoreGlobal stubs with Hydrogen
- Constants globals are inlined into Hydrogen code using code dependencies that invalidate the Crankshafted code when global PropertyCells or the global object change.
- The more general case generates code that is just as good as the hand-written assembly stubs on all platforms.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
16925008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15419
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
prybin@chromium.org [Mon, 1 Jul 2013 13:05:21 +0000 (13:05 +0000)]
Revert "Debug: support breakpoints set in the middle of statement"
Review URL: https://codereview.chromium.org/
18326007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15418
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Mon, 1 Jul 2013 12:57:15 +0000 (12:57 +0000)]
Ensure CheckInitialized is present independent of define.
This makes sure that the same symbols are present, independent of which
defines have been used while building V8. Otherwise only embedders with
compatible defines would be able to link against that binary.
R=danno@chromium.org
BUG=chromium:255779
Review URL: https://codereview.chromium.org/
18305004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15417
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
prybin@chromium.org [Mon, 1 Jul 2013 12:54:13 +0000 (12:54 +0000)]
Debug: support breakpoints set in the middle of statement
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
16093040
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15416
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Mon, 1 Jul 2013 12:32:52 +0000 (12:32 +0000)]
Test that profiler is stopped when isolate is being disposed
The only way to get v8::CpuProfiler instance in the V8 public API is to call v8::Iolate::GetCpuProfiler(). The method will return NULL if the isolate has not been initialized yet or has been torn down already. It is the client's reponsibility to make sure that CPU profiling has been stopped before disposing of the isolate.
This CL adds a test for this and several ASSRTS enforcing that assumptions. This allowed to be sure that heap is always setup when CPU profiling is being started. Based on that the number of places where already compiled functions are reported to the profiler event processor boils down to the single place (CpuProfiler::StartProcessorIfNotStarted). I'm going to rely on this assumption in further changes.
BUG=None
R=loislo@chromium.org, yangguo@chromium.org
Review URL: https://codereview.chromium.org/
18336002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15415
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 1 Jul 2013 12:30:26 +0000 (12:30 +0000)]
Plug leaked mutexes in OptimizingCompilerThread.
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
18345004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15414
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 1 Jul 2013 12:24:26 +0000 (12:24 +0000)]
No need to pass profiles to ProfilerEventsProcessor.
Following up on https://codereview.chromium.org/
18353002, there's
no need to pass the profiles to ProfilerEventsProcessor's constructor.
BUG=
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
18332004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15413
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 1 Jul 2013 12:11:29 +0000 (12:11 +0000)]
Fix compiler error about unused profiles_ field in ProfilerEventsProcessor.
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
18353002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15412
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 1 Jul 2013 12:07:53 +0000 (12:07 +0000)]
Plug leaked string stream debug object cache in Isolate.
BUG=
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
18324007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15411
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Mon, 1 Jul 2013 11:37:40 +0000 (11:37 +0000)]
Grokdump: new shell command, "lm"
lm - list matching modules and details such as product version number
found in the minidump. Also, enabled a mode to execute one command and
exit.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
18310003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15410
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Mon, 1 Jul 2013 11:08:01 +0000 (11:08 +0000)]
Add broader custom test expectations for blink tests to detect crashes. Remove also useless documentation.
Most of these tests had some problems (failure, crash or timeout), but which problem exactly cannot be retrieved anymore.
We let them rum for a while with a broader test expectation (pass fail slow) and analyse the results.
Tests that crash get a crash expectation. Timeouts will get a timeout expectation.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
18319005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15409
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 1 Jul 2013 10:54:39 +0000 (10:54 +0000)]
Restore message when rethrowing in TryCatch.
Based on a patch contributed by Andrew Paprocki <andrew@ishiboo.com>.
R=jkummerow@chromium.org
BUG=
TEST=cctest/test-api/TryCatchNestedSyntax
Review URL: https://codereview.chromium.org/
17694002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15408
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
loislo@chromium.org [Mon, 1 Jul 2013 10:12:03 +0000 (10:12 +0000)]
CpuProfiler: eliminate 2 layers of 4 for CodeCreateEvent calls.
The bodies of methods in ProfilerEventProcessor were moved into CpuProfiler.
Multiple NewCodeEntry methods in CpuProfilesCollection were replaced with one which
simply passes arguments to the CodeEntry constructor.
And CpuProfiler just calls this method when it needs a CodeEntry object.
This NewCodeEntry method is required because CpuProfilesCollection keeps ownership of CodeEntry objects.
BUG=255392
TEST=existing tests
R=yangguo@chromium.org, yurys@chromium.org
Committed: https://code.google.com/p/v8/source/detail?r=15405
Review URL: https://codereview.chromium.org/
18053004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15407
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
loislo@chromium.org [Mon, 1 Jul 2013 09:51:44 +0000 (09:51 +0000)]
Revert "CpuProfiler: eliminate 2 layers of 4 for CodeCreateEvent calls."
This reverts commit
76adf84b83ec3c0b261cbc29369ce4ac83f9d002.
windows compilation failed
BUG=none
TBR=yurys@chromium.org
Review URL: https://codereview.chromium.org/
18344002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15406
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
loislo@chromium.org [Mon, 1 Jul 2013 09:39:15 +0000 (09:39 +0000)]
CpuProfiler: eliminate 2 layers of 4 for CodeCreateEvent calls.
The bodies of methods in ProfilerEventProcessor were moved into CpuProfiler.
Multiple NewCodeEntry methods in CpuProfilesCollection were replaced with one which
simply passes arguments to the CodeEntry constructor.
And CpuProfiler just calls this method when it needs a CodeEntry object.
This NewCodeEntry method is required because CpuProfilesCollection keeps ownership of CodeEntry objects.
BUG=255392
TEST=existing tests
R=yangguo@chromium.org, yurys@chromium.org
Review URL: https://codereview.chromium.org/
18053004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15405
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 1 Jul 2013 09:14:15 +0000 (09:14 +0000)]
Fix infinite loop in regress-opt-after-deopt.
%CompleteOptimization attempts to install optimized functions
that the parallel thread has put on the output queue, as long as
the function is marked with a builtin. However, activating the
debugger will set all functions to the lazy recompile builtin,
without the function being on the parallel recompilation pipeline.
So we wait for the function to finish parallel recompilation
while it's marked by a builtin that's unrelated to parallel
recompilation.
R=hpayer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
18129003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15404
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Mon, 1 Jul 2013 09:00:14 +0000 (09:00 +0000)]
Test fix - array-feedback.js has a test that only make sense when
running crankshaft. Allow the test to tolerate --nocrankshaft.
BUG=
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
18328002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15403
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Mon, 1 Jul 2013 08:32:41 +0000 (08:32 +0000)]
Add dependency to ICU 4.6
We use the patched version from the chromium project, as it already has
a gyp file and allows for using the system icu instead of the bundled
version if desired.
This is in preparation of bringing in v8-i18n.
R=jkummerow@chromium.org
BUG=v8:2745
Review URL: https://codereview.chromium.org/
17850002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15402
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Mon, 1 Jul 2013 08:11:30 +0000 (08:11 +0000)]
Remove irrelevant parser test that has SVN issues.
The file tests different CR and LF combinations that cannot be stored correctly in SVN.
Since we do not need coverage here, we rather remove the test completely.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
18333002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15401
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Mon, 1 Jul 2013 07:54:56 +0000 (07:54 +0000)]
Remove test from blacklist that should pass.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
18324003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15398
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Fri, 28 Jun 2013 19:52:44 +0000 (19:52 +0000)]
MIPS: Fix wrong checkin.
This commit fixes r15396.
BUG=
Review URL: https://codereview.chromium.org/
18054020
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15397
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Fri, 28 Jun 2013 18:34:08 +0000 (18:34 +0000)]
MIPS: Improved function entry hook coverage.
Port r15384 (d553efd)
Original commit message:
Adds more coverage for function entry hook, sufficient to capture profiles
that are contiguous from C++, through JS and back out to C++.
BUG=
Review URL: https://codereview.chromium.org/
18184011
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15396
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Fri, 28 Jun 2013 17:16:17 +0000 (17:16 +0000)]
MIPS: Hydrogen array constructor cleanup and improvements.
Port r15383 (3e90aaf)
Original commit message:
* Cleanup of LCallNewArray::PrintDataTo() method
* Created HCallNewArray::PrintDataTo()
* Created many more tests in array-constructor-feedback.js
* Removed redundant instructions in
GenerateRecordCallTarget
* Bugfix in CreateArrayDispatchOneArgument: on a call to
new Array(0), we'd like to set the type feedback cell to
a packed elements kind, but we shouldn't do it if the
cell contains the megamorphic sentinel.
* When used from crankshaft, ArrayConstructorStubs can
avoid verifying that the function being called is the
array function from the current native context, relying
instead on the fact that crankshaft issues an
HCheckFunction to protect the constructor call. (this
new minor key is used in LCodeGen::DoCallNewArray(), and
influences code generation in
CodeStubGraphBuilderBase::BuildArrayConstructor()).
* Optimization: the array constructor specialized for
FAST_SMI_ELEMENTS can save some instructions by looking
up the correct map on the passed in constructor, rather
than indexing into the array of cached maps per element
kind.
BUG=
Review URL: https://codereview.chromium.org/
18191007
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15395
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Fri, 28 Jun 2013 16:31:11 +0000 (16:31 +0000)]
Use HInstructionIterator more broadly for hydrogen.
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
18068002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15394
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Fri, 28 Jun 2013 16:09:54 +0000 (16:09 +0000)]
First simplistic implementation of escape analysis.
R=jkummerow@chromium.org, titzer@chromium.org
Review URL: https://codereview.chromium.org/
17914002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15393
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Fri, 28 Jun 2013 15:48:38 +0000 (15:48 +0000)]
Add %_DebugBreakInOptimizedCode() pseudo function call to insert int3/stop instructions into optimized code
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
17870002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15392
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Fri, 28 Jun 2013 15:34:48 +0000 (15:34 +0000)]
Clean up the usage of V8_TARGET_ARCH_${arch} and V8_HOST_ARCH_${arch}
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
18037002
Patch from Haitao Feng <haitao.feng@intel.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15391
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Fri, 28 Jun 2013 15:26:01 +0000 (15:26 +0000)]
Use macros instead of using number directly for x64
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
18076002
Patch from Weiliang Lin <weiliang.lin2@gmail.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15390
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Fri, 28 Jun 2013 15:22:46 +0000 (15:22 +0000)]
Introduce a notion of "v8_code" in gyp config files.
This allows for compiling third-party code (such as ICU) with less
strict flags.
BUG=v8:2745
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
18181006
Patch from Jochen Eisinger <jochen@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15389
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Fri, 28 Jun 2013 15:20:07 +0000 (15:20 +0000)]
Roll gyp to r1656
r1656 contains a bug fix for the make generator to correctly regenerate
Makefiles if a gyp was touched. Before, it would assume that it is
running in the top-level directory. However, the v8 standalone build
puts the generated Makefile into the out subdirectory, and so gyp
failed to locate the gyp binary.
BUG=none
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
18053015
Patch from Jochen Eisinger <jochen@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15388
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Fri, 28 Jun 2013 13:58:15 +0000 (13:58 +0000)]
Prepare push to trunk. Now working on version 3.20.1.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
18052019
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15385
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Fri, 28 Jun 2013 13:40:41 +0000 (13:40 +0000)]
Improved function entry hook coverage
Adds more coverage for function entry hook, sufficient to capture profiles that are contiguous from C++, through JS and back out to C++.
R=danno@chromium.org
Committed: http://code.google.com/p/v8/source/detail?r=15361
Review URL: https://codereview.chromium.org/
16578008
Patch from Sigurður Ásgeirsson <siggi@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15384
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Fri, 28 Jun 2013 13:16:14 +0000 (13:16 +0000)]
Hydrogen array constructor cleanup and improvements
* Cleanup of LCallNewArray::PrintDataTo() method
* Created HCallNewArray::PrintDataTo()
* Created many more tests in array-constructor-feedback.js
* Removed redundant instructions in
GenerateRecordCallTarget
* Bugfix in CreateArrayDispatchOneArgument: on a call to
new Array(0), we'd like to set the type feedback cell to
a packed elements kind, but we shouldn't do it if the
cell contains the megamorphic sentinel.
* When used from crankshaft, ArrayConstructorStubs can
avoid verifying that the function being called is the
array function from the current native context, relying
instead on the fact that crankshaft issues an
HCheckFunction to protect the constructor call. (this
new minor key is used in LCodeGen::DoCallNewArray(), and
influences code generation in
CodeStubGraphBuilderBase::BuildArrayConstructor()).
* Optimization: the array constructor specialized for
FAST_SMI_ELEMENTS can save some instructions by looking
up the correct map on the passed in constructor, rather
than indexing into the array of cached maps per element
kind.
BUG=
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
17091002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15383
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Fri, 28 Jun 2013 13:10:58 +0000 (13:10 +0000)]
Repair test file with newline problems.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
18051011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15382
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
alph@chromium.org [Fri, 28 Jun 2013 12:53:52 +0000 (12:53 +0000)]
Heap snapshot: Update user roots definition.
Do not define an object as a user root if its context is not
present in Global handles.
R=mstarzinger@chromium.org, yurys@chromium.org
Review URL: https://codereview.chromium.org/
17881005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15381
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Fri, 28 Jun 2013 12:28:39 +0000 (12:28 +0000)]
Fix GCC 4.2 errors introduced with revision 15379.
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
18184005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15380
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Fri, 28 Jun 2013 11:44:16 +0000 (11:44 +0000)]
Make use of templatized convienience functions for adding Hydrogen instructions.
Building on the previous changes from https://codereview.chromium.org/
18050004/
this patch makes even more use of the templatized functions for adding
Hydrogen instructions.
R=danno@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
18051010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15379
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 28 Jun 2013 11:34:51 +0000 (11:34 +0000)]
Abort optimization when debugger is turned on.
BUG=v8:2751
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
18198003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15378
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Fri, 28 Jun 2013 11:25:26 +0000 (11:25 +0000)]
Delete test file with newline problems.
The file contains the combinations CRLF LFCR CR and LF, and it looks like git automatically changed them to LF in the last dcommit.
See also http://www.dont-panic.cc/capi/2009/02/16/how-to-force-git-to-consider-a-file-as-binary/
The file is going to be added again in a different issue with an additional .gitattributes file to treat it as binary.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
18080013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15377
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Fri, 28 Jun 2013 11:24:27 +0000 (11:24 +0000)]
Avoid data race in debug mode on the parallel thread.
R=jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
18194004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15376
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Fri, 28 Jun 2013 10:55:25 +0000 (10:55 +0000)]
Fast-forward version number on bleeding_edge to 3.20.0
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
18194005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15375
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Fri, 28 Jun 2013 10:32:43 +0000 (10:32 +0000)]
Skip webkit tests in debug that are very slow.
Duration for each is between 14 s and 160 s.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
18034017
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15374
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Fri, 28 Jun 2013 07:40:35 +0000 (07:40 +0000)]
Refactor HInferRepresentation into an HPhase and use the phase zone.
Rename HInferRepresentation to HInferRepresentationPhase,
following naming scheme suggested by danno@chromium.org in
https://codereview.chromium.org/
17458002
The HInferRepresentationPhase now uses the phase zone for all its
allocations.
Depends on https://codereview.chromium.org/
17587008
R=danno@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
18054002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15373
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Fri, 28 Jun 2013 07:36:43 +0000 (07:36 +0000)]
Fix zone usage within LAllocator.
Previously all allocations in the register allocator were done on the
chunk (and graph) zone, even those that did not need to survive past
the register allocation. Now only allocations that need to survive
use the chunk zone, all other allocations use a separate zone local
to the LAllocator.
Depends on https://codereview.chromium.org/
18022002
R=danno@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
17553004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15372
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Fri, 28 Jun 2013 07:31:23 +0000 (07:31 +0000)]
Fix Android V8 path for testing on devices.
This allows to run tests in production Android builds.
R=yangguo@chromium.org
Review URL: https://chromiumcodereview.appspot.com/
18087002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15371
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Thu, 27 Jun 2013 20:02:04 +0000 (20:02 +0000)]
Migrated several tests from blink to V8 repository.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
18068003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15370
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Thu, 27 Jun 2013 19:45:45 +0000 (19:45 +0000)]
Make webkit test output comparison compatible to stress testing.
In stress testing, the output is repeated several times. In this case, it is now compared several times to the actual output.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
18062002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15369
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Thu, 27 Jun 2013 19:19:48 +0000 (19:19 +0000)]
MIPS: The check for internalized strings relied on the fact that we had less than 64 distinct InstanceTypes.
Port r15358 (3af77be)
Original commit message:
The check for internalized strings relied on the fact that we had less
than 64 distinct InstanceTypes. We are hitting that boundary, so this
check needs to be more comprehensive. In fact, two bits need to be
tested: verify that kNotStringTag isn't set, and that kInternalizedTag
is set.
BUG=
Review URL: https://codereview.chromium.org/
18083004
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15368
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Thu, 27 Jun 2013 16:07:55 +0000 (16:07 +0000)]
Remove superfluous HInnerAllocatedObject in BuildEmitDeepCopy
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/
17881004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15367
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Thu, 27 Jun 2013 15:31:49 +0000 (15:31 +0000)]
Type handling for special cases and optimization
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/
18078002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15366
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Thu, 27 Jun 2013 15:31:06 +0000 (15:31 +0000)]
Revert r15361 "Improved function entry hook coverage" because of ARM build error.
R=siggi@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/
18062006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15365
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Thu, 27 Jun 2013 15:19:04 +0000 (15:19 +0000)]
Turn off stress compaction for break point tests.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
17880005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15364
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
hpayer@chromium.org [Thu, 27 Jun 2013 15:17:55 +0000 (15:17 +0000)]
Fix check style breakage.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
18056005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15363
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 27 Jun 2013 14:44:36 +0000 (14:44 +0000)]
Fix constructor call of relocation lock.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
18020002
Patch from Haitao Feng <haitao.feng@intel.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15362
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Thu, 27 Jun 2013 14:39:37 +0000 (14:39 +0000)]
Improved function entry hook coverage
Adds more coverage for function entry hook, sufficient to capture profiles that are contiguous from C++, through JS and back out to C++.
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
16578008
Patch from Sigurður Ásgeirsson <siggi@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15361
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Thu, 27 Jun 2013 14:36:14 +0000 (14:36 +0000)]
Add templatized convienience functions for adding hydrogen instructions
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
18050004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15360
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Thu, 27 Jun 2013 14:22:07 +0000 (14:22 +0000)]
Make sure HCallNewArray uses right ElementsKind
Close a small gc window that exists between when a HNewArrayCall instruction is
created and the ElementsKind type feedback for the construction function is
accesses.
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
18059005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15359
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Thu, 27 Jun 2013 13:39:44 +0000 (13:39 +0000)]
The check for internalized strings relied on the fact that we had less
than 64 distinct InstanceTypes. We are hitting that boundary, so this
check needs to be more comprehensive. In fact, two bits need to be
tested: verify that kNotStringTag isn't set, and that kInternalizedTag
is set.
BUG=
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
17895002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15358
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Thu, 27 Jun 2013 13:36:15 +0000 (13:36 +0000)]
Generalize utilities to allow code templatization
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
17853004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15357
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Thu, 27 Jun 2013 13:15:10 +0000 (13:15 +0000)]
Refactor Hydrogen environment liveness analysis into an HPhase.
Rename EnvironmentSlotLivenessAnalyzer to HEnvironmentLivenessAnalysisPhase,
following naming scheme suggested by danno@chromium.org in
https://codereview.chromium.org/
17458002
The environment slot liveness analysis now uses the phase zone for
all its allocations.
Depends on https://codereview.chromium.org/
18034003
R=danno@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
17587008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15356
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Thu, 27 Jun 2013 13:13:18 +0000 (13:13 +0000)]
Add templatized Run() method for Hydrogen phases.
Depends upon https://codereview.chromium.org/
17657004
R=danno@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
18034003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15355
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Thu, 27 Jun 2013 13:10:43 +0000 (13:10 +0000)]
Turn zone_excess_limit_ into a constant.
The zone_excess_limit_ is not changed at runtime, and there seems to
be no obvious reason to do so in the future.
R=danno@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
18034006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15354
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Thu, 27 Jun 2013 13:09:08 +0000 (13:09 +0000)]
Refactor Hydrogen GVN into an HPhase and use the phase zone.
The HGlobalValueNumberer class is renamed to HGlobalValueNumberingPhase,
following the naming scheme suggested by danno@chromium.org in
https://codereview.chromium.org/
17458002
The GVN phase now uses the phase zone for all its allocations.
Depends upon https://codereview.chromium.org/
18022002
R=danno@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
17657004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15353
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Thu, 27 Jun 2013 13:03:01 +0000 (13:03 +0000)]
Move phase_zone from CompilationInfo to CompilationPhase.
Each CompilationPhase has its own zone, used for phase local
allocations. The zone of CompilationInfo should only be used
for non phase local allocations.
R=danno@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
18022002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15352
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Thu, 27 Jun 2013 11:38:37 +0000 (11:38 +0000)]
Fix the compilation of gdbjit
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
18023005
Patch from Haitao Feng <haitao.feng@intel.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15351
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Thu, 27 Jun 2013 11:37:47 +0000 (11:37 +0000)]
Add myself to OWNERS.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15350
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Thu, 27 Jun 2013 09:34:31 +0000 (09:34 +0000)]
Extract StackFrameIteratorBase
This change introduces StackFrameIteratorBase which owns singleton frame instances and encapsulates some basic iterator functionality. It has two actual implementations: StackFrameIterator and SafeStackFrameIterator.
All logic specific to frame iteration at a random point (basically checks that fp and sp extracted from stack frames are within current stack boundaries) used only by CPU profiler is now concentrated in SafeStackFrameIterator.
Generic stack iteration used in all other places is put into StackFrameIterator. Also this iterator unlike SafeStackFrameIterator iterates through stack handlers.
StackAddressValidator and ExitFrameValidator classes were removed in favor of inline checks and simple methods.
BUG=None
R=loislo@chromium.org, svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
17819003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15349
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Thu, 27 Jun 2013 09:28:11 +0000 (09:28 +0000)]
Do not iterate stack handlers in SafeStackFrameIterator
CPU profiler doesn't use stack handlers so there is no need to iterate through them while traversing stack. This change SafeStackFrameIterator always iterate only frames and removes checks corresponding to the handlers iteration.
The problem described in the bug occurred because of a false assumption in SafeStackFrameIterator that if Isolate::c_entry_fp is not NULL then the top frame on the stack is always a C++ frame. It is false because we may have entered JS code again, in which case JS_ENTRY code stub generated by JSEntryStub::GenerateBody() will save current c_entry_fp value but not reset it to NULL and after that it will create ENTRY stack frame and JS_ENTRY handler on the stack and put the latter into Isolate::handler(top). This means that if we start iterating from c_entry_fp frame and try to compare the frame's sp with Isolate::handler()->address() it will turn out that frame->sp() > handler->address() and the condition in SafeStackFrameIterator::CanIterateHandles is not held.
BUG=252097
R=loislo@chromium.org, svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
17589022
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15348
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Thu, 27 Jun 2013 08:46:46 +0000 (08:46 +0000)]
Fix elements-kind test to disable optimization of important functions under test; add simpler versions of elements kind test.
Review URL: https://codereview.chromium.org/
17872002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15347
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Thu, 27 Jun 2013 07:42:08 +0000 (07:42 +0000)]
Do not allow invocation of ArrayBuffer and array buffer views' constructors as functions.
ES6 bug 695 (https://bugs.ecmascript.org/show_bug.cgi?id=695).
This never worked in WebKit, so no compatibility issues.
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/
17904007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15346
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
palfia@homejinni.com [Wed, 26 Jun 2013 20:22:41 +0000 (20:22 +0000)]
MIPS: Avoid Unnecessary Smi Checks.
Port r15344 (9fd1942)
BUG=
Review URL: https://codereview.chromium.org/
17887007
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15345
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
olivf@chromium.org [Wed, 26 Jun 2013 17:37:55 +0000 (17:37 +0000)]
Avoid Unnecessary Smi Checks
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/
16026023
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15344
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Wed, 26 Jun 2013 16:37:15 +0000 (16:37 +0000)]
Remove obsolete free-space checks from MarkCompactCollector.
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
17840004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15343
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
peter.rybin@gmail.com [Wed, 26 Jun 2013 16:18:00 +0000 (16:18 +0000)]
Fix misleading names and comments in mute local variables debugger helper
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
17644013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15342
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Wed, 26 Jun 2013 16:17:12 +0000 (16:17 +0000)]
Add DependentCode to PropertyCells
R=mstarzinger@chromium.org, ulan@chromium.org
Review URL: https://codereview.chromium.org/
17895004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15341
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
loislo@chromium.org [Wed, 26 Jun 2013 16:04:25 +0000 (16:04 +0000)]
CPUProfiler: Simplify CodeEntry constructor calls.
In almost all the places where we create CodeEntry we use default values.
Lets move them into arguments default values.
BUG=none
TEST=no logic changes.
R=yangguo@chromium.org, yurys@chromium.org
Committed: https://code.google.com/p/v8/source/detail?r=15333
Review URL: https://codereview.chromium.org/
17836002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15340
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Wed, 26 Jun 2013 14:23:30 +0000 (14:23 +0000)]
Migrate blink tests that are not relevant to blink into a new V8 test suite called 'blink'.
This initial CL contains the new test suite code and two tests for demonstration.
Other tests will follow in a separate CL.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
17260002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15339
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Wed, 26 Jun 2013 14:04:25 +0000 (14:04 +0000)]
Remove obsolete unchecked accessors in JSFunction.
R=hpayer@chromium.org
BUG=v8:1490
Review URL: https://codereview.chromium.org/
17833002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15338
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Wed, 26 Jun 2013 13:36:16 +0000 (13:36 +0000)]
Get rid of ZoneScope completely.
There's no need to differentiate between an actual Zone and its
scope. Instead we bind the lifetime of the Zone memory to the
lifetime of the Zone itself, which is way easier to understand
than having to dig through the code looking for zone scopes.
Depends on https://codereview.chromium.org/
17826004/
R=danno@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
17827005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15337
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Wed, 26 Jun 2013 12:54:12 +0000 (12:54 +0000)]
Get rid of the ZoneScopeMode.
No one is using the DONT_DELETE_ON_EXIT mode for ZoneScopes anymore, so
we can safely assume that all ZoneScopes are DELETE_ON_EXIT now.
R=danno@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
17826004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15336
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
loislo@chromium.org [Wed, 26 Jun 2013 12:38:10 +0000 (12:38 +0000)]
Revert "CPUProfiler: Simplify CodeEntry constructor calls."
This reverts commit
a6cc1e3b563c0d0689da35dbf8163545c8146ddd.
One test starts failing on Windows.
BUG=none
TBR= yurys@chromium.org
Review URL: https://codereview.chromium.org/
17875002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15335
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Wed, 26 Jun 2013 12:03:22 +0000 (12:03 +0000)]
ia32: Restore missing temp register for LNumberTagU
BUG=v8:2692
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
17865002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15334
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
loislo@chromium.org [Wed, 26 Jun 2013 09:55:33 +0000 (09:55 +0000)]
CPUProfiler: Simplify CodeEntry constructor calls.
In almost all the places where we create CodeEntry we use default values.
Lets move them into arguments default values.
BUG=none
TEST=no logic changes.
R=yangguo@chromium.org, yurys@chromium.org
Review URL: https://codereview.chromium.org/
17836002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15333
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
rossberg@chromium.org [Wed, 26 Jun 2013 09:51:57 +0000 (09:51 +0000)]
Introduce Unsigned32 and RegExp types
Also, renamed Integer31 back to Smi, and Integer32 to Signed32.
R=jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
17589013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15332
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Wed, 26 Jun 2013 08:43:27 +0000 (08:43 +0000)]
Change PC for OSR entries to point to something more sensible (i.e. the first UnknownOsrValue), removing the need to record spilled OSR values and the need for duplicate deopt entries.
Review URL: https://codereview.chromium.org/
16381006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15331
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00