dgozman@chromium.org
8fee5e810a
Added ability to remove prototype from function. In this case, [[Construct]] from function will not be allowed.
...
Added runtime function %FunctionRemovePrototype for this.
Removed prototypes from all builtin functions.
Some sputnik tests marked as fixed.
Added test to check builtins behavior.
Review URL: http://codereview.chromium.org/1722003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4536 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-04-28 12:05:40 +00:00
peter.rybin@gmail.com
80453231fe
LiveEdit: breakpoints updates and fixes for related problems
...
Review URL: http://codereview.chromium.org/1800007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4533 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-04-28 11:38:43 +00:00
erik.corry@gmail.com
3206d70dec
Fix search-for-string and replace global to avoid hangs
...
and spurious exceptions.
Review URL: http://codereview.chromium.org/1687013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4511 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-04-27 11:45:08 +00:00
peter.rybin@gmail.com
af63e61605
Support multi-chunk differences
...
Review URL: http://codereview.chromium.org/1672006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4467 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-04-21 16:59:58 +00:00
antonm@chromium.org
0710de75c0
Fix one off error.
...
Proper condition to start eviction is when next possible index is equal
to cache length.
Review URL: http://codereview.chromium.org/1709001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4460 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-04-21 11:13:53 +00:00
lrn@chromium.org
1e46286091
Add missing check to StringBuilderConcat runtime function.
...
Review URL: http://codereview.chromium.org/1578036
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4449 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-04-20 13:10:18 +00:00
peter.rybin@gmail.com
8fdc7a5ae1
LiveEdit: calculate a real script difference
...
Review URL: http://codereview.chromium.org/1652008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4441 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-04-19 16:08:26 +00:00
antonm@chromium.org
a713b27428
Introduce fast native caches and use it in String.search.
...
Review URL: http://codereview.chromium.org/1563005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4418 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-04-14 14:46:15 +00:00
lrn@chromium.org
7bca61c11d
Fix build problems on Windows 64-bit by casting.
...
Gave the root register a name for reference.
Review URL: http://codereview.chromium.org/1539033
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4397 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-04-13 11:59:37 +00:00
lrn@chromium.org
285d5bc48a
Native construction of RegExp result objects, with in-object index and input.
...
Avoid cloning using CloneRegExpResult for results that are just arrays.
Made a more direct path for string.match with string argument.
Review URL: http://codereview.chromium.org/1645001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4395 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-04-13 09:31:03 +00:00
antonm@chromium.org
400b1be449
Faster invocation of custom comparator function.
...
Review URL: http://codereview.chromium.org/1623004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4381 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-04-12 07:05:24 +00:00
peter.rybin@gmail.com
4e6a738e63
LiveEdit: update breakpoint positions for non-changed functions
...
Review URL: http://codereview.chromium.org/1090003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4359 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-04-08 12:37:10 +00:00
sgjesse@chromium.org
c0976e9276
Add number string cache lookup for heap numbers to generatred code (on top of the already existing smi lookup)
...
Added a number to string runtime function which does not try to do a cache lookup as the number is known to not be in the cahce.
Review URL: http://codereview.chromium.org/1602010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4355 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-04-07 11:13:05 +00:00
peter.rybin@gmail.com
be5bb26e38
LiveEdit: implement frame dropping
...
Review URL: http://codereview.chromium.org/1118007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4351 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-04-06 17:58:28 +00:00
serya@chromium.org
eb04a6a95f
JS implementation of isFinite.
...
Review URL: http://codereview.chromium.org/1608003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4344 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-04-06 10:40:25 +00:00
serya@chromium.org
9877ea8b90
Parsing some kinds of integers and junk values in Runtime_NumberToString. For that values the string is converted into int and then into SMI. It lets to avoid floating point operations.
...
Committed: http://code.google.com/p/v8/source/detail?r=4331
Review URL: http://codereview.chromium.org/1572004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4339 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-04-05 08:00:28 +00:00
serya@chromium.org
93477c22d3
StringToInt rewritten. This version doesn't allocate memory for long decimals and uses percise rounding if radix 10 or a power of 2 (in other cases rounding error still may occur). Handling special values moved from Runtime_StringParseInt into StringToInt in order to make it consistent with StringToDouble.
...
Committed: http://code.google.com/p/v8/source/detail?r=4329
Review URL: http://codereview.chromium.org/1529004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4333 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-03-31 17:19:05 +00:00
serya@chromium.org
4db3400782
Parsing some kinds of integers and junk values in Runtime_NumberToString. For that values the string is converted into int and then into SMI. It lets to avoid floating point operations.
...
Review URL: http://codereview.chromium.org/1572004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4331 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-03-31 12:00:57 +00:00
serya@chromium.org
704eca9aca
Reverting r4329 due to failure in webkit tests.
...
Review URL: http://codereview.chromium.org/1579004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4330 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-03-31 11:13:42 +00:00
serya@chromium.org
dcd96d1fa0
StringToInt rewritten. This version doesn't allocate memory for long decimals and uses percise rounding if radix 10 or a power of 2 (in other cases rounding error still may occur). Handling special values moved from Runtime_StringParseInt into StringToInt in order to make it consistent with StringToDouble.
...
Review URL: http://codereview.chromium.org/1529004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4329 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-03-31 10:11:33 +00:00
vitalyr@chromium.org
c51c67d9c0
Make link happy.
...
TBR=lrn@chromium.org
Review URL: http://codereview.chromium.org/1558005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4324 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-03-30 14:02:40 +00:00
lrn@chromium.org
ce1d3ca80a
Fix bug in string replace with nonparticipating captures.
...
Review URL: http://codereview.chromium.org/1565004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4322 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-03-30 13:26:13 +00:00
lrn@chromium.org
845fd15dd6
Pre-create properties on JSRegExp objects
...
Initialize properties in single runtime call.
Review URL: http://codereview.chromium.org/1350003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4298 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-03-26 14:19:47 +00:00
lrn@chromium.org
498b074bd0
Run string replace regexp with function in C++ code loop.
...
Reuses the result array to save on allocation.
Matches Safari's behavior.
Review URL: http://codereview.chromium.org/1109010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4269 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-03-25 12:57:58 +00:00
erik.corry@gmail.com
3672624b45
Fix pop push optimization to work with partial snapshots (correct
...
registration of external references in Proxy objects).
I moved the declaration of the two functions to stub-cache.h
because with all the types they use it's hard to declare them
anywhere else. But the actual definition is still in runtime.cc
near to the place where they are used.
Review URL: http://codereview.chromium.org/1079012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4231 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-03-23 14:33:42 +00:00
kasperl@chromium.org
7d6a3b433f
Merge the partial_snapshots branch back into bleeding_edge. For
...
now, the custom call generator stuff is disabled.
Review URL: http://codereview.chromium.org/1094014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4217 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-03-23 11:40:38 +00:00
iposva@chromium.org
a1ec99c05d
- Remove function boilerplate objects and use SharedFunctionInfos in
...
their place.
- Add one field to the SharedFunctionInfo to remember the number of
literals used in this function.
Review URL: http://codereview.chromium.org/669240
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4211 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-03-23 06:04:44 +00:00
ager@chromium.org
103db91e12
Add parens to DateYMDFromTimeSlow to clearify.
...
BUG=649
Review URL: http://codereview.chromium.org/1132002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4188 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-03-19 08:00:52 +00:00
oleg@chromium.org
825a5d741f
Improve Math.round(). Fix the bug in r4146. Further improve performance by checking the exponent instead of comparing doubles. Add several tests for numbers near the limits of SMI and several tests from WebKit.
...
Review URL: http://codereview.chromium.org/1008004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4180 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-03-18 13:00:57 +00:00
vitalyr@chromium.org
494ba3a4c8
Fix windows build again: one more memchr call.
...
Review URL: http://codereview.chromium.org/1109001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4176 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-03-18 09:38:30 +00:00
vitalyr@chromium.org
c3972d21fb
Fix windows build.
...
On windows memchr returns const void* instead of void*.
Review URL: http://codereview.chromium.org/1074003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4175 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-03-18 09:27:15 +00:00
vitalyr@chromium.org
b148282b56
String search performance improvements:
...
* Using memchr for first/only char lookup is faster than hand-coded
loop. It processes one machine word per iteration so it helps even
more on x64.
* Tweaked badness computation in simple search. We pay only for the
first char memchr scans, not for all of them.
Review URL: http://codereview.chromium.org/1100002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4173 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-03-18 09:01:08 +00:00
erik.corry@gmail.com
dda96b61c6
Fix formatting around * and &.
...
Review URL: http://codereview.chromium.org/1000007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4169 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-03-17 14:53:16 +00:00
fschneider@chromium.org
38d6470fca
Revert r4146. Add a special case in Math.round for a SMI result. Also change the imp...
...
TBR=ager@chromium.org ,
Review URL: http://codereview.chromium.org/1042006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4156 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-03-17 09:58:28 +00:00
oleg@chromium.org
78f19f1ae9
Add a special case in Math.round for a SMI result. Also change the implementation for non-SMI case.
...
Review URL: http://codereview.chromium.org/981002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4146 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-03-16 13:23:41 +00:00
vitalyr@chromium.org
6a10a837c0
Add heuristic for flattening strings before comparing them.
...
Also switched to using CompareChars instead of memcmp since it's
faster than gcc's builtin and on par with msvc's builtin.
Review URL: http://codereview.chromium.org/991002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4145 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-03-16 12:30:04 +00:00
lrn@chromium.org
11dca3ae12
Fix build problem on arm compiler.
...
Review URL: http://codereview.chromium.org/975005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4140 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-03-16 09:10:11 +00:00
peter.rybin@gmail.com
ad876956c0
LiveEdit: patch positions in function
...
Review URL: http://codereview.chromium.org/914003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4139 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-03-15 21:06:51 +00:00
lrn@chromium.org
d8aed420a9
Converted String.prototype.split with string to C++.
...
Review URL: http://codereview.chromium.org/875001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4134 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-03-15 15:27:11 +00:00
antonm@chromium.org
c2dc316138
Add Array.concat builtin for the most common case.
...
Review URL: http://codereview.chromium.org/954001
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4129 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-03-15 10:52:38 +00:00
antonm@chromium.org
7f1eda50cc
Implement a custom call compiler for Array.pop.
...
Review URL: http://codereview.chromium.org/870007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4118 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-03-12 13:45:31 +00:00
oleg@chromium.org
5f75b01bb1
Rewrite the function that converts timestamp to year, month and day in C++.
...
Review URL: http://codereview.chromium.org/811006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4115 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-03-12 13:01:32 +00:00
antonm@chromium.org
de070ccfa6
First take on custom call generators.
...
Review URL: http://codereview.chromium.org/669061
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4108 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-03-11 16:24:31 +00:00
ager@chromium.org
ef371f3f24
Do not waste space for the fast-case elements backing storage for
...
object-literals with few elements but large element indices.
We can decide at parse time whether the created object literal should
have fast-case of slow-case elements.
Remove unused runtime function.
Review URL: http://codereview.chromium.org/805004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4100 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-03-11 10:34:29 +00:00
sgjesse@chromium.org
e5f27966dc
Add fuzzing support for inline runtime functions
...
The inline runtime functions are now included in the fuzzing of the natives. The chack for the expected number of arguments passed have been moved to the parser which will generate a syntax error if a runtime function (either C++ or inline) is called with a different number of arguments than expected.
Review URL: http://codereview.chromium.org/573056
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4096 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-03-11 09:27:12 +00:00
serya@chromium.org
4fd99d23cc
Math.abs rewrited to not use Runtime.
...
Review URL: http://codereview.chromium.org/799006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4093 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-03-11 08:31:15 +00:00
peter.rybin@gmail.com
9c9451eff3
Check that function being patched has no activations on any thread stack
...
Review URL: http://codereview.chromium.org/668246
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4069 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-03-09 21:45:24 +00:00
peter.rybin@gmail.com
77d63cc29e
Basic implementation of liveedit feature
...
Review URL: http://codereview.chromium.org/652027
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4045 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-03-05 22:08:58 +00:00
sgjesse@chromium.org
df4471c8f3
Fix stack tweaking in array allocation
...
When Array(0) or new Array(0) is handled by the generated code it is handled
by the same code as Array() and new Array(). For this to work the stack is
tweaked to remove the argument of value 0. However the argc was still passed
as 1 if a call to the runtime system was made.
When the stack is tweaked argc is also changed to 0.
BUG=634
TEST=test/mjsunittest/mjsunit/regress/regress-634.js
Review URL: http://codereview.chromium.org/668155
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4038 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-03-05 13:43:53 +00:00
vitalyr@chromium.org
48cc7ed3b0
Fixed filling of char array in StringToArray.
...
Review URL: http://codereview.chromium.org/669159
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4036 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-03-05 13:33:33 +00:00