platform/upstream/v8.git
14 years agoAdd missing newline to ChangeLog.
sgjesse@chromium.org [Wed, 7 Oct 2009 09:15:34 +0000 (09:15 +0000)]
Add missing newline to ChangeLog.

TBR=ager@chromium.org
Review URL: http://codereview.chromium.org/270002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3026 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoPrepare push to trunk. Now working on version 1.3.15.
sgjesse@chromium.org [Wed, 7 Oct 2009 07:24:51 +0000 (07:24 +0000)]
Prepare push to trunk. Now working on version 1.3.15.

TBR=ager@chromium.org
Review URL: http://codereview.chromium.org/262004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3023 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoClean up fixups of calls to builtins. Fix lint error.
whesse@chromium.org [Tue, 6 Oct 2009 13:59:56 +0000 (13:59 +0000)]
Clean up fixups of calls to builtins.  Fix lint error.
Review URL: http://codereview.chromium.org/259057

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3022 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoAdd near calls (32-bit displacement) to Code objects on X64 platform.
whesse@chromium.org [Tue, 6 Oct 2009 13:11:05 +0000 (13:11 +0000)]
Add near calls (32-bit displacement) to Code objects on X64 platform.
Review URL: http://codereview.chromium.org/200095

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3021 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoFix test error for IdleNotification() return code check.
mike@belshe.com [Tue, 6 Oct 2009 00:35:46 +0000 (00:35 +0000)]
Fix test error for IdleNotification() return code check.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3020 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoRemove the high-priority flag from IdleNotification() since
mike@belshe.com [Tue, 6 Oct 2009 00:06:17 +0000 (00:06 +0000)]
Remove the high-priority flag from IdleNotification() since
it is a strange API and unused anyway.

When we roll this to Chrome, we'll need a small chrome patch
to fix Chrome's usage of the API.

Review URL: http://codereview.chromium.org/257035

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3019 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoRecommit coderanges putting code objects within a 2 GB range, reserving only a 256...
whesse@chromium.org [Mon, 5 Oct 2009 11:16:25 +0000 (11:16 +0000)]
Recommit coderanges putting code objects within a 2 GB range, reserving only a 256 MB range of virtual memory for the code range.
Review URL: http://codereview.chromium.org/243087

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3018 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoRevert revisions 3013, 3014, and 3016. We need a better solution.
whesse@chromium.org [Mon, 5 Oct 2009 10:50:55 +0000 (10:50 +0000)]
Revert revisions 3013, 3014, and 3016.  We need a better solution.
Review URL: http://codereview.chromium.org/251088

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3017 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoAdd CHECK_INT64_EQ function to avoid operand size ambiguities.
whesse@chromium.org [Sat, 3 Oct 2009 13:46:22 +0000 (13:46 +0000)]
Add CHECK_INT64_EQ function to avoid operand size ambiguities.
Review URL: http://codereview.chromium.org/256048

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3016 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoFast fix to make tree green.
antonm@chromium.org [Fri, 2 Oct 2009 18:49:23 +0000 (18:49 +0000)]
Fast fix to make tree green.

Review URL: http://codereview.chromium.org/256041

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3015 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoThe error cases were returning false instead of true.
mike@belshe.com [Fri, 2 Oct 2009 17:26:50 +0000 (17:26 +0000)]
The error cases were returning false instead of true.
So if the caller does something like:
while(!IdleNotification())
it could spin forever if v8 were not initialized.

I'd like to further remove the is_high_priority flag,
because it is not in use. Mads - is there any reason
not to remove it?

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3014 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoAdd a method to convert unsigned C integer into V8 Integer.
antonm@chromium.org [Fri, 2 Oct 2009 15:51:07 +0000 (15:51 +0000)]
Add a method to convert unsigned C integer into V8 Integer.

Review URL: http://codereview.chromium.org/260002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3013 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoChanged Object.keys to return strings for element indices.
christian.plesner.hansen@gmail.com [Fri, 2 Oct 2009 13:43:16 +0000 (13:43 +0000)]
Changed Object.keys to return strings for element indices.

Review URL: http://codereview.chromium.org/246077

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3012 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoAlign the stack correctly on ARM on calls to fp operation helpers.
erik.corry@gmail.com [Fri, 2 Oct 2009 13:36:20 +0000 (13:36 +0000)]
Align the stack correctly on ARM on calls to fp operation helpers.
Review URL: http://codereview.chromium.org/259013

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3011 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoWhen allocation is forced because we already did two GCs we need to force GCs
erik.corry@gmail.com [Fri, 2 Oct 2009 13:35:37 +0000 (13:35 +0000)]
When allocation is forced because we already did two GCs we need to force GCs
even if we are attempting to allocate in young space.  There were a few cases
where this wasn't done.  Also misc. changes to make diagnosis of errors like
this one easier.
Review URL: http://codereview.chromium.org/251072

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3010 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoFollow the spec in disallowing function declarations without a name. We
ager@chromium.org [Fri, 2 Oct 2009 12:47:15 +0000 (12:47 +0000)]
Follow the spec in disallowing function declarations without a name.  We
used to allow these for compatibility, but both Safari and Firefox now
disallow them.
Review URL: http://codereview.chromium.org/242124

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3009 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoEnsure V8 is initialized before locking and unlocking threads.
whesse@chromium.org [Fri, 2 Oct 2009 11:39:56 +0000 (11:39 +0000)]
Ensure V8 is initialized before locking and unlocking threads.
Review URL: http://codereview.chromium.org/242123

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3008 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoRemove unused flag --print-cfg.
kmillikin@chromium.org [Fri, 2 Oct 2009 10:18:14 +0000 (10:18 +0000)]
Remove unused flag --print-cfg.
Review URL: http://codereview.chromium.org/257030

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3007 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoRevert change r3004, issue http://codereview.chromium.org/244022, because Linux 64...
whesse@chromium.org [Thu, 1 Oct 2009 15:18:05 +0000 (15:18 +0000)]
Revert change r3004, issue codereview.chromium.org/244022, because Linux 64-bit Chrome crashes with more than 10 tabs.  Linux may not like 10 processes, each reserving 2 GB of virtual address space.
Review URL: http://codereview.chromium.org/246064

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3006 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoFix the stack limits setting API so it is usable.
erik.corry@gmail.com [Thu, 1 Oct 2009 10:33:05 +0000 (10:33 +0000)]
Fix the stack limits setting API so it is usable.
Review URL: http://codereview.chromium.org/242074

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3005 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoAllocate all executable code within a 2 GB code range.
whesse@chromium.org [Thu, 1 Oct 2009 09:29:38 +0000 (09:29 +0000)]
Allocate all executable code within a 2 GB code range.
Review URL: http://codereview.chromium.org/244022

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3004 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoFix style violation.
sgjesse@chromium.org [Thu, 1 Oct 2009 07:29:54 +0000 (07:29 +0000)]
Fix style violation.

TBR=christian.plesner.hansen@gmail.com
Review URL: http://codereview.chromium.org/257017

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3003 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoFix lint errors.
sgjesse@chromium.org [Thu, 1 Oct 2009 06:27:29 +0000 (06:27 +0000)]
Fix lint errors.

TBR=christian.plesner.hansen@gmail.com
Review URL: http://codereview.chromium.org/249056

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3002 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoBased on a patch submitted by Jens Alfke:
iposva@chromium.org [Wed, 30 Sep 2009 22:21:10 +0000 (22:21 +0000)]
Based on a patch submitted by Jens Alfke:

Tag Mac OS X VM regions allocated by V8. This has no effect other than making
it possible to identify V8 allocations in the vmmap(1) memory profiling tool,
to get a better idea of an embedder's/Chrome's memory usage.
CRBUG=23455
TEST=Tested by running vmmap(1) and looking for "Memory tag=255" in the output.

Review URL: http://codereview.chromium.org/244051

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3001 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoAdd pixel array handling in keyed IC's for x64 version.
sgjesse@chromium.org [Wed, 30 Sep 2009 20:18:40 +0000 (20:18 +0000)]
Add pixel array handling in keyed IC's for x64 version.
Review URL: http://codereview.chromium.org/251041

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3000 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoDo not flatten the string, but just write it out.
antonm@chromium.org [Wed, 30 Sep 2009 14:25:21 +0000 (14:25 +0000)]
Do not flatten the string, but just write it out.

In DOM bindings in many cases the string would be externalized immediately.  For other cases
I am going to add explicit flattening.  Overall, it looks like if user wants to flat string
before writing, it should be an explicit method invocation (going to add TryFlattenIfNotFlat
into public V8 API).

Review URL: http://codereview.chromium.org/255004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2999 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoRemove obsolete support for an experimental multipass compiler.
kmillikin@chromium.org [Wed, 30 Sep 2009 13:24:24 +0000 (13:24 +0000)]
Remove obsolete support for an experimental multipass compiler.

Review URL: http://codereview.chromium.org/255022

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2996 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoChanged structure of accessor arguments passing to allow accessor
christian.plesner.hansen@gmail.com [Wed, 30 Sep 2009 12:25:46 +0000 (12:25 +0000)]
Changed structure of accessor arguments passing to allow accessor
callbacks to be called directly from native code.

Review URL: http://codereview.chromium.org/242050

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2995 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoTwo changes, one a refactoring and one that affects V8's JS semantics.
kmillikin@chromium.org [Wed, 30 Sep 2009 09:49:36 +0000 (09:49 +0000)]
Two changes, one a refactoring and one that affects V8's JS semantics.

1. Change the AST node type CallNew to be a subclass of Expression
   rather than Call.  It's not really a call but it just happens to
   have the same fields.

2. Change our error reporting for invalid left-hand sides in for-in
   statements, pre- and postfix count expressions, and assignments.
   Before we signaled a syntax error at compile time *unless* the LHS
   was a function call or 'new' expression, in which case we signaled
   a reference error at runtime.  Now we signal a reference error at
   runtime in all cases.  This matches the JSC behavior in Safari 4.

Review URL: http://codereview.chromium.org/249039

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2994 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoChange the functions named AllocateObjectInNewSpace to AllocateInNewSpace.
sgjesse@chromium.org [Wed, 30 Sep 2009 09:24:46 +0000 (09:24 +0000)]
Change the functions named AllocateObjectInNewSpace to AllocateInNewSpace.

These functions just moves forward the new space allocation top, and in some situations they are used to reserve space for several objects.
Review URL: http://codereview.chromium.org/219030

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2993 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoAPI: added warning about FunctionTemplate::GetFunction lifetime.
vitalyr@chromium.org [Wed, 30 Sep 2009 08:27:58 +0000 (08:27 +0000)]
API: added warning about FunctionTemplate::GetFunction lifetime.

Review URL: http://codereview.chromium.org/251042

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2992 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoReturn the original value when assigning to a pixel array.
sgjesse@chromium.org [Tue, 29 Sep 2009 14:56:24 +0000 (14:56 +0000)]
Return the original value when assigning to a pixel array.

After fast-case assignment to a pixel array the original value assigned is now returned. Before the un-tagged smi value was returned causing crashes.

BUG=22913
TEST=cctest/test-api/PixelArray
Review URL: http://codereview.chromium.org/248033

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2985 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoRemove CallEval as a subclass of the Call AST node type. We were not
kmillikin@chromium.org [Tue, 29 Sep 2009 13:28:30 +0000 (13:28 +0000)]
Remove CallEval as a subclass of the Call AST node type.  We were not
differentiating between Call and CallEval except in the code
generator, and the difference can be detected from a regular Call AST
node at code generation time.

Review URL: http://codereview.chromium.org/245042

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2984 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoCompile without debugger support in debug mode
sgjesse@chromium.org [Tue, 29 Sep 2009 09:21:19 +0000 (09:21 +0000)]
Compile without debugger support in debug mode

This makes it possible to build V8 without JavaScript debugging support in debug mode.

BUG=http://code.google.com/p/v8/issues/detail?id=454
Review URL: http://codereview.chromium.org/242048

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2983 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoFix a lint error.
antonm@chromium.org [Tue, 29 Sep 2009 07:30:37 +0000 (07:30 +0000)]
Fix a lint error.

Review URL: http://codereview.chromium.org/235052

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2982 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoPut method declations under #ifdef DEBUG in header (as they are in objects-inl.h).
antonm@chromium.org [Mon, 28 Sep 2009 23:21:58 +0000 (23:21 +0000)]
Put method declations under #ifdef DEBUG in header (as they are in objects-inl.h).

Review URL: http://codereview.chromium.org/251015

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2981 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoAPI: added a few missing HandleScope-s.
vitalyr@chromium.org [Mon, 28 Sep 2009 14:32:48 +0000 (14:32 +0000)]
API: added a few missing HandleScope-s.

Review URL: http://codereview.chromium.org/245024

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2980 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoRename JumpToBuiltin to JumpToRuntime. Add comment to ResolveBuiltin.
whesse@chromium.org [Mon, 28 Sep 2009 13:53:43 +0000 (13:53 +0000)]
Rename JumpToBuiltin to JumpToRuntime.  Add comment to ResolveBuiltin.
Review URL: http://codereview.chromium.org/218025

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2979 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoFix the last memory leak demonstrated by the test program in
erik.corry@gmail.com [Mon, 28 Sep 2009 13:53:03 +0000 (13:53 +0000)]
Fix the last memory leak demonstrated by the test program in
http://code.google.com/p/v8/issues/detail?id=444
Review URL: http://codereview.chromium.org/243027

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2978 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years ago* Fix memory leaks caused by thread local data being lost.
erik.corry@gmail.com [Mon, 28 Sep 2009 12:25:21 +0000 (12:25 +0000)]
* Fix memory leaks caused by thread local data being lost.
* Rename some instance variables and accessors to fit code style.
* Don't overwrite existing thread ID.
Review URL: http://codereview.chromium.org/251014

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2977 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoMove the per-ast-node statement position to only statement node types.
kmillikin@chromium.org [Mon, 28 Sep 2009 12:01:05 +0000 (12:01 +0000)]
Move the per-ast-node statement position to only statement node types.
It was not currently being used for expressions or declarations and
always had the default initial value.

Review URL: http://codereview.chromium.org/246019

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2976 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoFix unused variable warning in serialize.cc
whesse@chromium.org [Mon, 28 Sep 2009 11:22:08 +0000 (11:22 +0000)]
Fix unused variable warning in serialize.cc
Review URL: http://codereview.chromium.org/243025

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2975 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoLand change by Alexander Botero-Lowry to fix profiler sampling on
ager@chromium.org [Mon, 28 Sep 2009 11:16:23 +0000 (11:16 +0000)]
Land change by Alexander Botero-Lowry to fix profiler sampling on
FreeBSD in 64-bit mode.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2974 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoAdd missing null check to Context::GetCalling().
ager@chromium.org [Mon, 28 Sep 2009 10:21:08 +0000 (10:21 +0000)]
Add missing null check to Context::GetCalling().
Review URL: http://codereview.chromium.org/248017

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2973 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoHeap profiler: correctly determine equivalence of objects having self-refs.
mikhail.naganov@gmail.com [Mon, 28 Sep 2009 09:05:06 +0000 (09:05 +0000)]
Heap profiler: correctly determine equivalence of objects having self-refs.

Review URL: http://codereview.chromium.org/242031

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2972 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoHeap profiler: aggregate retainers count of equivalent clusters.
mikhail.naganov@gmail.com [Mon, 28 Sep 2009 07:12:39 +0000 (07:12 +0000)]
Heap profiler: aggregate retainers count of equivalent clusters.

Also perform some refactoring.

Review URL: http://codereview.chromium.org/247001

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2971 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoGet rid of duplicate LICENSE entry for the Valgrind
kasperl@chromium.org [Sun, 27 Sep 2009 09:33:11 +0000 (09:33 +0000)]
Get rid of duplicate LICENSE entry for the Valgrind
client API header.

TBR=erik.corry@gmail.com
Review URL: http://codereview.chromium.org/245021

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2970 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoAdd another method that allows to lookup for a real named property not only
antonm@chromium.org [Fri, 25 Sep 2009 12:29:24 +0000 (12:29 +0000)]
Add another method that allows to lookup for a real named property not only
in prototype chain, but in the object itself.

Review URL: http://codereview.chromium.org/235004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2969 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoFixed some cctest flakiness on mac.
christian.plesner.hansen@gmail.com [Fri, 25 Sep 2009 10:36:00 +0000 (10:36 +0000)]
Fixed some cctest flakiness on mac.

Review URL: http://codereview.chromium.org/242003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2968 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoLand gyp file change for gcc 4.4.
ager@chromium.org [Wed, 23 Sep 2009 14:32:45 +0000 (14:32 +0000)]
Land gyp file change for gcc 4.4.

Review URL: http://codereview.chromium.org/230001.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2965 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoFix lint error.
sgjesse@chromium.org [Wed, 23 Sep 2009 14:06:14 +0000 (14:06 +0000)]
Fix lint error.

TBR=ager@chromium.org
Review URL: http://codereview.chromium.org/230002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2964 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoReverting 2950.
ager@chromium.org [Wed, 23 Sep 2009 13:32:11 +0000 (13:32 +0000)]
Reverting 2950.

It causes test shell test failures.
Review URL: http://codereview.chromium.org/222004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2961 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoHandle array construction in native code (x64 version).
sgjesse@chromium.org [Wed, 23 Sep 2009 13:04:07 +0000 (13:04 +0000)]
Handle array construction in native code (x64 version).

Ported the handle array construction in native code to x64. See http://codereview.chromium.org/193125 for details.

Please take a closer look of my use of the macro assembler Smi abstractions.
Review URL: http://codereview.chromium.org/209048

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2960 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years ago* Remove non-Open Source code from Douglas Crockford.
erik.corry@gmail.com [Wed, 23 Sep 2009 12:32:24 +0000 (12:32 +0000)]
* Remove non-Open Source code from Douglas Crockford.
* Be more var-correct in JS files.
* Rename some JS variables to reflect the fact that they are instance
  variables on the global intrinsics object.
* Missing optimization in StringCharAt.
Review URL: http://codereview.chromium.org/215052

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2959 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoHandle array construction in native code (ARM version).
sgjesse@chromium.org [Wed, 23 Sep 2009 09:05:12 +0000 (09:05 +0000)]
Handle array construction in native code (ARM version).

Ported the handle array construction in native code to ARM. See http://codereview.chromium.org/193125 for details.
Review URL: http://codereview.chromium.org/217014

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2956 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoPrepare push to trunk containing fix for uninitialized memory bug.
ager@chromium.org [Wed, 23 Sep 2009 08:13:19 +0000 (08:13 +0000)]
Prepare push to trunk containing fix for uninitialized memory bug.
Now working on version 1.3.14.

Review URL: http://codereview.chromium.org/228001

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2955 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoInitialize the can_continue_ field in the TryCatch constructor.
ager@chromium.org [Wed, 23 Sep 2009 07:55:48 +0000 (07:55 +0000)]
Initialize the can_continue_ field in the TryCatch constructor.
Review URL: http://codereview.chromium.org/227001

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2954 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoHeap profiler: consider Function instances separately, similar to Arrays and Objects.
mikhail.naganov@gmail.com [Tue, 22 Sep 2009 10:02:42 +0000 (10:02 +0000)]
Heap profiler: consider Function instances separately, similar to Arrays and Objects.

Review URL: http://codereview.chromium.org/209066

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2950 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoAdded change to ChangeLog that had been left out.
christian.plesner.hansen@gmail.com [Tue, 22 Sep 2009 09:28:44 +0000 (09:28 +0000)]
Added change to ChangeLog that had been left out.

Review URL: http://codereview.chromium.org/210041

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2948 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoPrepare to push to trunk. Now working on 1.3.13.
christian.plesner.hansen@gmail.com [Tue, 22 Sep 2009 08:40:44 +0000 (08:40 +0000)]
Prepare to push to trunk.  Now working on 1.3.13.

Review URL: http://codereview.chromium.org/210040

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2947 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoStop "cooking" targets of jumps and calls in code objects. Do not convert jump and...
whesse@chromium.org [Mon, 21 Sep 2009 10:35:47 +0000 (10:35 +0000)]
Stop "cooking" targets of jumps and calls in code objects.  Do not convert jump and call targets to absolute pointers to Code objects during GC, heap verification, and serialization.
Review URL: http://codereview.chromium.org/203070

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2941 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoMinor changes to the native array construct code
sgjesse@chromium.org [Mon, 21 Sep 2009 07:28:04 +0000 (07:28 +0000)]
Minor changes to the native array construct code

Named a constant and added an assert to get notified when related constants
change.

Removed reloading of the Array function when Array is called as a constructor as
the Array function is preserved in edi.

This - unlike r2908 and r2909 - both compiles and passes the tests.
Review URL: http://codereview.chromium.org/209012

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2940 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoEliminate recursion in ZoneSplayTree traversal.
mikhail.naganov@gmail.com [Mon, 21 Sep 2009 07:12:38 +0000 (07:12 +0000)]
Eliminate recursion in ZoneSplayTree traversal.

Convert the code to be similar with JS version. Recursive traversal is dangerous as it can cause stack exhaustion on deep trees.

Review URL: http://codereview.chromium.org/211024

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2939 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoFix Windows build. My mistake for not trying it our prior to submitting.
mikhail.naganov@gmail.com [Fri, 18 Sep 2009 13:23:58 +0000 (13:23 +0000)]
Fix Windows build. My mistake for not trying it our prior to submitting.

Kudos to William Hesse for alarming me.

TBR=sgjesse@chromium.org

Review URL: http://codereview.chromium.org/214020

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2938 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoFix documentation of security callbacks.
antonm@chromium.org [Fri, 18 Sep 2009 12:18:08 +0000 (12:18 +0000)]
Fix documentation of security callbacks.

Actually 1st parameter could be any object in prototype chain from this to actual holder, not only a
the global object.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2937 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoHeap profiler: count the number of back references for objects.
mikhail.naganov@gmail.com [Fri, 18 Sep 2009 12:05:18 +0000 (12:05 +0000)]
Heap profiler: count the number of back references for objects.

Also, perform some refactoring to reuse common code between constructor and retainer profiles.

Review URL: http://codereview.chromium.org/209028

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2936 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoFix --heap-stats option on X64
whesse@chromium.org [Fri, 18 Sep 2009 12:02:36 +0000 (12:02 +0000)]
Fix --heap-stats option on X64
Review URL: http://codereview.chromium.org/210020

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2935 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoDon't convert jump and call targets to code object pointers when (de)serializing.
whesse@chromium.org [Fri, 18 Sep 2009 10:50:08 +0000 (10:50 +0000)]
Don't convert jump and call targets to code object pointers when (de)serializing.
Review URL: http://codereview.chromium.org/207012

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2932 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoChanged valgrind script to match changed output format
christian.plesner.hansen@gmail.com [Thu, 17 Sep 2009 12:13:08 +0000 (12:13 +0000)]
Changed valgrind script to match changed output format

Review URL: http://codereview.chromium.org/214006

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2915 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoRemove failure expectation for mozilla test that now passes.
ager@chromium.org [Thu, 17 Sep 2009 11:56:58 +0000 (11:56 +0000)]
Remove failure expectation for mozilla test that now passes.

TBR=christian.plesner.hansen
Review URL: http://codereview.chromium.org/213005

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2914 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoLand change by Jan de Mooij to change the toString behavior of
ager@chromium.org [Thu, 17 Sep 2009 11:11:01 +0000 (11:11 +0000)]
Land change by Jan de Mooij to change the toString behavior of
|function|.toString() for builtin functions.

Review URL: http://codereview.chromium.org/209014

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2913 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoLint fix
christian.plesner.hansen@gmail.com [Thu, 17 Sep 2009 10:35:52 +0000 (10:35 +0000)]
Lint fix

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2912 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoAdd Object::IsDirty function in the API.
christian.plesner.hansen@gmail.com [Thu, 17 Sep 2009 08:58:06 +0000 (08:58 +0000)]
Add Object::IsDirty function in the API.

Review URL: http://codereview.chromium.org/209013

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2911 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoReverting 2909,2908
sgjesse@chromium.org [Thu, 17 Sep 2009 07:58:49 +0000 (07:58 +0000)]
Reverting 2909,2908

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2910 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoFix compile error.
sgjesse@chromium.org [Thu, 17 Sep 2009 07:24:44 +0000 (07:24 +0000)]
Fix compile error.

Why even compile simple changes?

TBR=ager@chromium.org
Review URL: http://codereview.chromium.org/209011

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2909 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoMinor changes to the native array construct code.
sgjesse@chromium.org [Thu, 17 Sep 2009 07:14:48 +0000 (07:14 +0000)]
Minor changes to the native array construct code.

Named a constant and added an assert to get notified when related constants change.

Removed reloading of the Array function when Array is called as a constructor as the Array function is preserved in edi.
Review URL: http://codereview.chromium.org/207010

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2908 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoArgh, one more place to fix.
mikhail.naganov@gmail.com [Wed, 16 Sep 2009 20:36:08 +0000 (20:36 +0000)]
Argh, one more place to fix.

TBR=sgjesse@chromium.org

Review URL: http://codereview.chromium.org/194131

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2907 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoFix Windows build. I'm wondering, how does gcc accept such code?
mikhail.naganov@gmail.com [Wed, 16 Sep 2009 20:15:03 +0000 (20:15 +0000)]
Fix Windows build. I'm wondering, how does gcc accept such code?

TBR=sgjesse@chromium.org

Review URL: http://codereview.chromium.org/201140

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2906 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoFix variables names.
mikhail.naganov@gmail.com [Wed, 16 Sep 2009 19:44:04 +0000 (19:44 +0000)]
Fix variables names.

TBR=kasperl@chromium.org

Review URL: http://codereview.chromium.org/193129

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2905 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoFix ARM build (gcc 3.3 failed to resolve types correctly) and constants names.
mikhail.naganov@gmail.com [Wed, 16 Sep 2009 14:54:59 +0000 (14:54 +0000)]
Fix ARM build (gcc 3.3 failed to resolve types correctly) and constants names.

TBR=sgjesse@chromium.org

Review URL: http://codereview.chromium.org/195102

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2904 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoAdd initial version of retainers heap profile.
mikhail.naganov@gmail.com [Wed, 16 Sep 2009 13:41:24 +0000 (13:41 +0000)]
Add initial version of retainers heap profile.

The profile is taken together with constructors profile. In theory, it
should represent a complete heap graph. However, this takes a lot of memory,
so it is reduced to a more compact, but still useful form. Namely:

 - objects are aggregated by their constructors, except for Array and Object
   instances, that are too hetereogeneous;

 - for Arrays and Objects, initially every instance is concerned, but then
   they are grouped together based on their retainer graph paths similarity (e.g.
   if two objects has the same retainer, they are considered equal);

Review URL: http://codereview.chromium.org/200132

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2903 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoFix GC bug and ARM simulator timeout.
sgjesse@chromium.org [Wed, 16 Sep 2009 13:09:26 +0000 (13:09 +0000)]
Fix GC bug and ARM simulator timeout.

In the Runtime_DebugGetPropertyDetails the raw object pointers from a LookupResult could be used after a GC might have happened. Fixed the bug and restructured the code to make it less likely for changes to the code to re-introduce the bug.

Skipped a long running test from the ARM simulator in debug mode (and renamed the test).
Review URL: http://codereview.chromium.org/204039

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2902 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoX64: Ensure that unary subtraction returns a zero-extended smi, if it returns a smi.
whesse@chromium.org [Wed, 16 Sep 2009 12:40:15 +0000 (12:40 +0000)]
X64: Ensure that unary subtraction returns a zero-extended smi, if it returns a smi.
Review URL: http://codereview.chromium.org/195101

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2900 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoHandle array construction on native code.
sgjesse@chromium.org [Wed, 16 Sep 2009 11:17:57 +0000 (11:17 +0000)]
Handle array construction on native code.

The construction of arrays when using the the Array function either as a constructor or a normal function is now handled fully in generated code in most cases. Only when Array is called with one argument which is either negative or abowe JSObject::kInitialMaxFastElementArray (which is currently 1000) or if the allocated object cannot fit in the room left in new space is the runtime system entered.

Two new native code built-in functions are added one for normal invocation and one for the construct call. The existing C++ builtin is renamed, but kept. When the normal invocation cannot be handled in generated code the C++ builtin is called. When the construct invocation cannot be handled in native code the generic construct stub is called (which will end up in the C++ builtin through a construct trampoline).

One thing that might be changed is preserving esi (constructor function) during the handling of a construct call. We know precisily what function we where calling anyway and can just reload it. This could remove the parameter construct_call to ArrayNativeCode and remove the handling of this from that function.

The X64 and ARM implementations are not part of this changelist.
Review URL: http://codereview.chromium.org/193125

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2899 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoClean up the ifdefs on ARM.
erik.corry@gmail.com [Wed, 16 Sep 2009 08:48:17 +0000 (08:48 +0000)]
Clean up the ifdefs on ARM.
Ensure that we use ARMv5 instructions on ARMv6 and ARMv7 CPUs.
Review URL: http://codereview.chromium.org/206012

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2898 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years ago[ES5] Made properties of the arguments array enumerable.
christian.plesner.hansen@gmail.com [Wed, 16 Sep 2009 08:25:54 +0000 (08:25 +0000)]
[ES5] Made properties of the arguments array enumerable.

Review URL: http://codereview.chromium.org/200141

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2897 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoRemove explicit include of Chromium's common.gypi from v8.gyp.
mark@chromium.org [Tue, 15 Sep 2009 18:03:12 +0000 (18:03 +0000)]
Remove explicit include of Chromium's common.gypi from v8.gyp.

Explicit includes of common.gypi are being deprecated.  Chromium will include
the .gypi files that it needs by asking GYP to force-include them into each
.gyp file that it loads.  See http://codereview.chromium.org/206006.
Review URL: http://codereview.chromium.org/193114

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2895 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoFixed typo in mozilla expectations file.
christian.plesner.hansen@gmail.com [Tue, 15 Sep 2009 14:36:29 +0000 (14:36 +0000)]
Fixed typo in mozilla expectations file.

Review URL: http://codereview.chromium.org/206014

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2894 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoFixed mozilla test expectations.
christian.plesner.hansen@gmail.com [Tue, 15 Sep 2009 14:02:31 +0000 (14:02 +0000)]
Fixed mozilla test expectations.

Review URL: http://codereview.chromium.org/196121

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2893 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoAdded test suite adapter for es5conform.
christian.plesner.hansen@gmail.com [Tue, 15 Sep 2009 13:30:46 +0000 (13:30 +0000)]
Added test suite adapter for es5conform.

Review URL: http://codereview.chromium.org/193112

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2892 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoImplemented Object.keys.
christian.plesner.hansen@gmail.com [Tue, 15 Sep 2009 11:51:40 +0000 (11:51 +0000)]
Implemented Object.keys.

Review URL: http://codereview.chromium.org/201114

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2890 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoPrepare push to trunk. Now working on version 1.3.12.
ager@chromium.org [Tue, 15 Sep 2009 11:48:18 +0000 (11:48 +0000)]
Prepare push to trunk.  Now working on version 1.3.12.
Review URL: http://codereview.chromium.org/204020

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2889 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoUse GetCodeFromTargetAddress everywhere, uniformly.
whesse@chromium.org [Tue, 15 Sep 2009 11:39:47 +0000 (11:39 +0000)]
Use GetCodeFromTargetAddress everywhere, uniformly.
Review URL: http://codereview.chromium.org/193111

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2888 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoX64: Abstract indexing by a smi to the macro assembler.
lrn@chromium.org [Tue, 15 Sep 2009 11:35:23 +0000 (11:35 +0000)]
X64: Abstract indexing by a smi to the macro assembler.

Review URL: http://codereview.chromium.org/196118

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2887 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoMake 'hidden' the default visibility for gcc. Add build option,
christian.plesner.hansen@gmail.com [Tue, 15 Sep 2009 11:11:09 +0000 (11:11 +0000)]
Make 'hidden' the default visibility for gcc.  Add build option,
visibility=[hidden|default], that controls visibility and make
'hidden' the default.  Export a few variables that had been forgotten.

Review URL: http://codereview.chromium.org/206011

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2884 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoAdd definition of ENABLE_DEBUGGER_SUPPORT to v8 gyp file.
sgjesse@chromium.org [Tue, 15 Sep 2009 11:07:26 +0000 (11:07 +0000)]
Add definition of ENABLE_DEBUGGER_SUPPORT to v8 gyp file.

This reflects the change in r2875 (http://code.google.com/p/v8/source/detail?r=2875) where ENABLE_DEBUGGER_SUPPORT is not longer defined automatcally in v8.h.
Review URL: http://codereview.chromium.org/196120

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2883 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoIncorporate dtoa change from upstream to avoid potential buffer
ager@chromium.org [Tue, 15 Sep 2009 10:48:11 +0000 (10:48 +0000)]
Incorporate dtoa change from upstream to avoid potential buffer
overrun.

Review URL: http://codereview.chromium.org/196119

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2882 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoFix bug that errnoeously sets FPU exception.
lrn@chromium.org [Mon, 14 Sep 2009 12:20:13 +0000 (12:20 +0000)]
Fix bug that errnoeously sets FPU exception.
This has only been caught on Win64 yet.

Review URL: http://codereview.chromium.org/201106

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2881 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoFix lint error.
sgjesse@chromium.org [Mon, 14 Sep 2009 09:00:21 +0000 (09:00 +0000)]
Fix lint error.

TBR=erik.corry@gmail.com
Review URL: http://codereview.chromium.org/203052

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2880 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

14 years agoImplemented missing pieces of the debugger for ARM.
sgjesse@chromium.org [Mon, 14 Sep 2009 06:57:24 +0000 (06:57 +0000)]
Implemented missing pieces of the debugger for ARM.

The main piece of this change was to add support for break on return for ARM. On ARM the normal js function return consist of the following code sequence.

  mov sp, fp
  ldmia sp!, {fp, lr}
  add sp, sp, #4
  bx lr

to a call to the debug break return entry code using the following code sequence

  mov lr, pc
  ldr pc, [pc, #-4]
  <debug break return entry code entry point address>
  bktp 0

The values of Assembler::kPatchReturnSequenceLength and Assembler::kPatchReturnSequenceLength are somewhat misleading, but they fit the current use in the debugger. Also Assembler::kPatchReturnSequenceLength is used in the IC code as well (for something which is not related to return sequences at all). I will change that in a separate changelist.

For the debugger to work also added recording of the return sequence in the relocation info and handling of source position recording when a function ends with a return statement.

Used the constant kInstrSize instead of sizeof(Instr).

Passes all debugger tests on both simulator and hardware (only release mode tested on hardware).
Review URL: http://codereview.chromium.org/199075

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2879 ce2b1a6d-e550-0410-aec6-3dcde31c8c00