sgjesse@chromium.org
b1a5bf4c5d
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
2009-09-30 09:24:46 +00:00
sgjesse@chromium.org
70821329a5
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
2009-09-29 14:56:24 +00:00
kmillikin@chromium.org
928bfae405
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
2009-09-29 13:28:30 +00:00
sgjesse@chromium.org
6f83ad58cc
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
2009-09-29 09:21:19 +00:00
antonm@chromium.org
5a2aa8ee8e
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
2009-09-29 07:30:37 +00:00
antonm@chromium.org
d9e23dc786
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
2009-09-28 23:21:58 +00:00
vitalyr@chromium.org
00c15b7c8b
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
2009-09-28 14:32:48 +00:00
whesse@chromium.org
5e90dba910
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
2009-09-28 13:53:43 +00:00
erik.corry@gmail.com
0c8f8de902
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
2009-09-28 13:53:03 +00:00
erik.corry@gmail.com
ae882b44e7
* 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
2009-09-28 12:25:21 +00:00
kmillikin@chromium.org
f0ba671344
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
2009-09-28 12:01:05 +00:00
whesse@chromium.org
94d57588fc
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
2009-09-28 11:22:08 +00:00
ager@chromium.org
c08b11db2d
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
2009-09-28 11:16:23 +00:00
ager@chromium.org
3da53e3e5c
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
2009-09-28 10:21:08 +00:00
mikhail.naganov@gmail.com
1ef8754597
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
2009-09-28 09:05:06 +00:00
mikhail.naganov@gmail.com
f1a89f3379
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
2009-09-28 07:12:39 +00:00
antonm@chromium.org
228f4aee13
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
2009-09-25 12:29:24 +00:00
christian.plesner.hansen@gmail.com
319097f255
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
2009-09-25 10:36:00 +00:00
sgjesse@chromium.org
196990cea1
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
2009-09-23 14:06:14 +00:00
ager@chromium.org
28772fbc57
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
2009-09-23 13:32:11 +00:00
sgjesse@chromium.org
ab34189c30
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
2009-09-23 13:04:07 +00:00
erik.corry@gmail.com
9839092874
* 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
2009-09-23 12:32:24 +00:00
sgjesse@chromium.org
cf46d30de9
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
2009-09-23 09:05:12 +00:00
ager@chromium.org
2d3edc621c
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
2009-09-23 08:13:19 +00:00
ager@chromium.org
69a877c2d7
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
2009-09-23 07:55:48 +00:00
mikhail.naganov@gmail.com
89831f8735
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
2009-09-22 10:02:42 +00:00
christian.plesner.hansen@gmail.com
21346ff4a3
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
2009-09-22 08:40:44 +00:00
whesse@chromium.org
b026021215
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
2009-09-21 10:35:47 +00:00
sgjesse@chromium.org
7febdab868
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
2009-09-21 07:28:04 +00:00
mikhail.naganov@gmail.com
3a9303852c
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
2009-09-21 07:12:38 +00:00
mikhail.naganov@gmail.com
ef246011e7
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
2009-09-18 13:23:58 +00:00
mikhail.naganov@gmail.com
9b4c950963
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
2009-09-18 12:05:18 +00:00
whesse@chromium.org
0e63056cf5
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
2009-09-18 12:02:36 +00:00
whesse@chromium.org
4ac11e3b15
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
2009-09-18 10:50:08 +00:00
ager@chromium.org
576ae4c115
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
2009-09-17 11:11:01 +00:00
christian.plesner.hansen@gmail.com
b58abab2df
Lint fix
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2912 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-09-17 10:35:52 +00:00
christian.plesner.hansen@gmail.com
87dab2f5cd
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
2009-09-17 08:58:06 +00:00
sgjesse@chromium.org
a0462f3af8
Reverting 2909,2908
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2910 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-09-17 07:58:49 +00:00
sgjesse@chromium.org
03db75e768
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
2009-09-17 07:24:44 +00:00
sgjesse@chromium.org
8524ee521c
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
2009-09-17 07:14:48 +00:00
mikhail.naganov@gmail.com
bc59334ee0
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
2009-09-16 20:36:08 +00:00
mikhail.naganov@gmail.com
016166ee14
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
2009-09-16 20:15:03 +00:00
mikhail.naganov@gmail.com
e30d461ee4
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
2009-09-16 19:44:04 +00:00
mikhail.naganov@gmail.com
3b1818dbab
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
2009-09-16 14:54:59 +00:00
mikhail.naganov@gmail.com
abc0bd46f6
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
2009-09-16 13:41:24 +00:00
sgjesse@chromium.org
40471b41da
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
2009-09-16 13:09:26 +00:00
whesse@chromium.org
412a146825
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
2009-09-16 12:40:15 +00:00
sgjesse@chromium.org
677c043fee
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
2009-09-16 11:17:57 +00:00
erik.corry@gmail.com
fb2897bcf9
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
2009-09-16 08:48:17 +00:00
christian.plesner.hansen@gmail.com
5c3fd26620
[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
2009-09-16 08:25:54 +00:00