iposva@chromium.org [Wed, 14 Oct 2009 15:26:38 +0000 (15:26 +0000)]
- Add String::Concat(Handle<String> left, Handle<String> right) to the V8 API.
This is the first step to address http://crbug.com/23131 by creating
a series of V8 ConsStrings as more data arrives from the server.
Review URL: http://codereview.chromium.org/271085
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3066
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
whesse@chromium.org [Wed, 14 Oct 2009 15:01:25 +0000 (15:01 +0000)]
Add comment to compilation-cache.cc explaining choice of 5 generations.
Review URL: http://codereview.chromium.org/267092
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3065
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
antonm@chromium.org [Wed, 14 Oct 2009 14:32:39 +0000 (14:32 +0000)]
Partially revert r2761.
Do not create handles for values of internal fields---this operation is performance
critical and plain pointers are safe.
Appy the same approach to External wrapping and unwrapping.
Plus some minor refactorings.
Review URL: http://codereview.chromium.org/270085
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3064
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
fschneider@chromium.org [Wed, 14 Oct 2009 13:12:38 +0000 (13:12 +0000)]
Fixed use of 'overwrite' flag for unary minus expressions.
Review URL: http://codereview.chromium.org/276018
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3063
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
vitalyr@chromium.org [Wed, 14 Oct 2009 11:19:55 +0000 (11:19 +0000)]
Skip access checks for hidden properties.
Hidden properties are used like internal fields which do not have
access checks. The checks can cause problems because there may be no
current context. See http://crbug.com/24200.
Review URL: http://codereview.chromium.org/271080
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3062
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
fschneider@chromium.org [Wed, 14 Oct 2009 10:24:50 +0000 (10:24 +0000)]
New mjsunit tests for the new compiler infrastructure. They
are in a separate subdirectory called 'compiler' in the mjsunit directory.
Review URL: http://codereview.chromium.org/273039
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3061
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
christian.plesner.hansen@gmail.com [Wed, 14 Oct 2009 09:42:13 +0000 (09:42 +0000)]
Implement ES5 Array.isArray
Patch by Jan de Mooij <jandemooij@gmail.com>
Review at http://codereview.chromium.org/271072
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3060
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
lrn@chromium.org [Wed, 14 Oct 2009 09:26:16 +0000 (09:26 +0000)]
Fix overflow in failure "requested size" field.
Review URL: http://codereview.chromium.org/275016
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3059
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mikhail.naganov@gmail.com [Tue, 13 Oct 2009 15:17:24 +0000 (15:17 +0000)]
A follow-up to r3009: add parentheses around one more anonymous function.
TBR=ager@chromium.org
Review URL: http://codereview.chromium.org/272045
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3058
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yurys@chromium.org [Tue, 13 Oct 2009 14:28:09 +0000 (14:28 +0000)]
Check that constructor is a FunctionMirror before calling .name(), otherwise we may end up calling name method on a mirror object that doesn't have it.
Review URL: http://codereview.chromium.org/271053
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3057
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
lrn@chromium.org [Tue, 13 Oct 2009 10:56:13 +0000 (10:56 +0000)]
X64: Fix bugs affecting Win64.
Increase stack space on Win64 sample and cctest executables.
Review URL: http://codereview.chromium.org/264047
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3056
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
kmillikin@chromium.org [Tue, 13 Oct 2009 09:37:17 +0000 (09:37 +0000)]
Remove a redundant field in the FunctionLiteral class. The boolean
contains_array_literal_ implies materialized_literal_count_ > 0, and
we appear not to need to know about array literals specifically.
Review URL: http://codereview.chromium.org/272043
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3055
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
erik.corry@gmail.com [Tue, 13 Oct 2009 08:58:24 +0000 (08:58 +0000)]
Use the USE_ARM_EABI macro consistently rather than the gcc-specific
__ARM_EABI__ macro to determine the ABI on ARM.
Review URL: http://codereview.chromium.org/274016
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3054
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
christian.plesner.hansen@gmail.com [Tue, 13 Oct 2009 08:29:19 +0000 (08:29 +0000)]
Fixed trim test failure.
Review URL: http://codereview.chromium.org/273033
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3053
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
christian.plesner.hansen@gmail.com [Tue, 13 Oct 2009 08:13:45 +0000 (08:13 +0000)]
Add trim, trimLeft and trimRight methods to String
Based on a recent patch for Webkit.
trim is defined in ES 5 section 15.5.4.20.
Author: Jan de Mooij <jandemooij@gmail.com>
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3052
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
kmillikin@chromium.org [Mon, 12 Oct 2009 15:06:28 +0000 (15:06 +0000)]
Initial implementation of printing the AST as a JSON string. This
implementation is not yet complete (it prints only the node name for
some AST constructs) and does not serialize everything needed to
reconstitute the AST.
It is motivated by a desire to prototype source-to-source
transformations in JavaScript itself (or anything else that can grok
JSON), but it should have other uses too.
Feedback is welcome.
Review URL: http://codereview.chromium.org/131101
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3051
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
kmillikin@chromium.org [Mon, 12 Oct 2009 14:00:11 +0000 (14:00 +0000)]
Add a pair of missing breaks to a switch statement.
Review URL: http://codereview.chromium.org/267050
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3050
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
whesse@chromium.org [Mon, 12 Oct 2009 13:55:06 +0000 (13:55 +0000)]
Change sscanf to atoi in test-debug.cc to make lint happy.
Review URL: http://codereview.chromium.org/264033
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3049
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
kmillikin@chromium.org [Mon, 12 Oct 2009 13:14:06 +0000 (13:14 +0000)]
Split the AST LoopStatement type into separate types for do/while,
while, and for loops.
Previously they were distinguished by a type field, which required
runtime asserts to avoid invalid nodes (since not all loop types have
the same internal structure). Now they C++ type system is used to
require well-formed loop ASTs.
Because they do not share compilation code, we had very large
functions in the code generators that merely did a runtime dispatch to
a specific implementation based on the type.
Review URL: http://codereview.chromium.org/269049
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3048
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
whesse@chromium.org [Mon, 12 Oct 2009 12:42:20 +0000 (12:42 +0000)]
Changes to comments only, fixing errors and grammar.
Review URL: http://codereview.chromium.org/269050
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3047
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
lrn@chromium.org [Mon, 12 Oct 2009 11:19:20 +0000 (11:19 +0000)]
Removed 31-bit smis.
Review URL: http://codereview.chromium.org/267049
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3046
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
iposva@chromium.org [Sat, 10 Oct 2009 00:38:44 +0000 (00:38 +0000)]
- Update Xcode project.
Review URL: http://codereview.chromium.org/268030
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3045
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
peter.rybin@gmail.com [Fri, 9 Oct 2009 16:27:47 +0000 (16:27 +0000)]
Make cctest test-debug.cc more accurate
Review URL: http://codereview.chromium.org/243036
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3044
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ager@chromium.org [Fri, 9 Oct 2009 08:21:56 +0000 (08:21 +0000)]
Add missing null check in Context::GetCurrent.
Review URL: http://codereview.chromium.org/272007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3043
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sgjesse@chromium.org [Thu, 8 Oct 2009 15:10:14 +0000 (15:10 +0000)]
Get rid of JSExitStub which is no longer used anywhere.
Review URL: http://codereview.chromium.org/268016
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3042
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sgjesse@chromium.org [Thu, 8 Oct 2009 14:27:46 +0000 (14:27 +0000)]
Optimize calls to GenericBinaryStub.
The calls to GenericBinaryStub can now pass the arguments in registers instead of on the stack. It is supported for ADD, SUB, MUL and DIV. The convention in GenericBinaryStub is not changed so the left operand is passed in edx and the right one in eax. When the stub contains smi code arguments are always passed on the stack as the smi code has to have left and right operands on eax and ebx, so moving from edx,eax to eax,ebx is not worth it and the smi code also trashes the registers so if arguments where passed in registers they would have to be saved on the stack anyway.
Added flags to disable the use of certain Intel CPU features to make it easier to test different code paths.
Review URL: http://codereview.chromium.org/246075
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3041
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sgjesse@chromium.org [Thu, 8 Oct 2009 13:28:46 +0000 (13:28 +0000)]
Add support for comisd and cmov in IA-32 disassembler.
Review URL: http://codereview.chromium.org/266014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3040
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
lrn@chromium.org [Thu, 8 Oct 2009 13:09:28 +0000 (13:09 +0000)]
X64: Fix incompatability with previous revision.
And fix bug in debug-mode of 32-bit smi.
Review URL: http://codereview.chromium.org/261024
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3039
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
antonm@chromium.org [Thu, 8 Oct 2009 12:54:29 +0000 (12:54 +0000)]
Introduce v8::Integer::NewFromUnsigned method.
Review URL: http://codereview.chromium.org/251100
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3038
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
lrn@chromium.org [Thu, 8 Oct 2009 12:36:12 +0000 (12:36 +0000)]
X64: Convert smis to holding 32 bits of payload.
Review URL: http://codereview.chromium.org/196139
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3037
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
kmillikin@chromium.org [Thu, 8 Oct 2009 11:49:58 +0000 (11:49 +0000)]
Guard the debug check at the start of every JS function with
--debug-code so it is not normally compiled in debug builds.
Review URL: http://codereview.chromium.org/268014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3036
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sgjesse@chromium.org [Thu, 8 Oct 2009 08:53:09 +0000 (08:53 +0000)]
Get rid of unused label varaible.
TBR=lrn@chromium.org
Review URL: http://codereview.chromium.org/261023
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3035
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sgjesse@chromium.org [Thu, 8 Oct 2009 07:10:10 +0000 (07:10 +0000)]
Fix a file name in the Visual Studio project files.
Review URL: http://codereview.chromium.org/266004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3034
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sgjesse@chromium.org [Thu, 8 Oct 2009 07:09:46 +0000 (07:09 +0000)]
Change clamping 0..255 instruction sequence for pixel array code.
The subb instruction added to the IA-32 assembler is not used as dec_b ended up being used instead.
There is a mesurable difference.
Review URL: http://codereview.chromium.org/246076
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3033
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
fschneider@chromium.org [Wed, 7 Oct 2009 14:55:41 +0000 (14:55 +0000)]
Added command line flag --sync_with_push (default: true) to
emit 'push' instead of 'sub esp, xxx' followed by 'mov' instructions
Reduces generated code size by 10-15% on several benchmarks.
Done on ia32 and x64 (no sync operation in the virtual frame on ARM
architecture)
Review URL: http://codereview.chromium.org/259058
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3032
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sgjesse@chromium.org [Wed, 7 Oct 2009 13:42:24 +0000 (13:42 +0000)]
Prepare push to trunk. Now working on version 1.3.16.
Review URL: http://codereview.chromium.org/267004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3029
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
whesse@chromium.org [Wed, 7 Oct 2009 12:47:49 +0000 (12:47 +0000)]
Double the CodeRange on X64 to 512 MB.
Review URL: http://codereview.chromium.org/265006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3028
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mikhail.naganov@gmail.com [Wed, 7 Oct 2009 12:20:02 +0000 (12:20 +0000)]
Fix a crash in Logger::LogCompiledFunctions due to a presence of scripts with disposed source.
When starting JS profiling under Chromium, a map from function addresses to function names is created. During it, for sourceful scripts, an attempt to access script source is made. This can cause a crash, if a source is an external string, which already has been disposed. We had a similar problem in the past with DebugGetLoadedScripts.
BUG=http://crbug.com/23768
TEST=test-log/Issue23768
Review URL: http://codereview.chromium.org/269003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3027
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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