ager@chromium.org
12854e6c67
Allocate as many object-literal properties as possible inobject.
...
This can lead to large objects which wastes a lot of space if we normalize properties. We therfore clear the inobject properties when normalizing properties. This is done by adjusting the instance size in the new map and overwriting the inobject properties with a filler.
Review URL: http://codereview.chromium.org/17308
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1051 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-01-12 10:59:58 +00:00
iposva@chromium.org
f3da5ff626
Fix for issue 171:
...
- Make sure to not destroy the instance type by slightly rearranging the code.
- Added regression test.
Review URL: http://codereview.chromium.org/16594
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1042 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-01-07 23:26:31 +00:00
olehougaard
726aa859c6
Fix for issue 91 ( http://code.google.com/p/v8/issues/detail?id=91 )
...
Review URL: http://codereview.chromium.org/17232
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1036 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-01-07 09:58:58 +00:00
sgjesse@chromium.org
60cb58ea91
Factored the generation of JSON serialization from beeing part of the mirror objects into a seperate class. The purpose of this is to make it easier to change the serialization to contain object identification and references.
...
Added a test case for the script mirror and modified a number of the other mirror tests.
Review URL: http://codereview.chromium.org/16539
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1035 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-01-07 09:27:30 +00:00
christian.plesner.hansen@gmail.com
afcc36a417
Added runtime call to the logging infrastructure. Made some changes
...
to the way regexps are being logged.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1028 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2009-01-06 13:24:52 +00:00
olehougaard
ed7d9e9c5b
Reverting the BOM changes due to security concerns.
...
Review URL: http://codereview.chromium.org/14890
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1011 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-19 13:28:56 +00:00
olehougaard
2c3b392c8c
Handling byte-order marks as specified in Ecmascript-262 and in compliance with Safari.
...
Review URL: http://codereview.chromium.org/15075
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1006 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-19 12:06:11 +00:00
erik.corry@gmail.com
ab2d4bc9bf
* Generate quick checks based on mask and compare for
...
the alternatives in a choice node. The quick checks
are conservative in the sense that they only detect
failure with certainty. Checks can do 2 or 4 characters
at a time.
* Inline the quick checks to allow the alternatives to
be checked without branching in the common case where
they fail.
Review URL: http://codereview.chromium.org/14194
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1005 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-19 12:02:34 +00:00
sgjesse@chromium.org
6c7a746c5d
Refactored the code for handling debug step in in the runtime system into one function. For constructors this also means that step in will no longer step into the code for the builtins context.
...
Review URL: http://codereview.chromium.org/15035
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1001 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-18 14:32:49 +00:00
olehougaard
392e6f849b
Fixing a subtle bug in receiver resolution when a thrown and caught function is called from a catch-block.
...
Second attempt - now with better memory efficiency.
Review URL: http://codereview.chromium.org/14834
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@999 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-18 11:28:13 +00:00
sgjesse@chromium.org
b3dd6b686a
Refactored the recording of source position in the generated code. The code generator now has two methods
...
void CodeForStatement(Node* node)
void CodeForSourcePosition(int pos)
The first is used to indicate that code is about to be generated for the given statement and the second is used to indicate that code is about to be generated for the given source position.
Added position information for some statements which was missing whem.
Updated the code generator for ARM to emit source position the same way as for IA-32.
Added an assert to ensure that deferred code stubs will always have a source source position as if it has not it will take whatever source position before which makes no sense.
The passing test on ARM has only been tested using the simulator.
Review URL: http://codereview.chromium.org/14170
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@985 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-17 08:45:42 +00:00
erik.corry@gmail.com
4ede982a4b
Added test for bug 176 (zero length matches should fail in quantifiers).
...
Review URL: http://codereview.chromium.org/13381
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@960 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-11 09:01:55 +00:00
lrn@chromium.org
5afca497cb
Arm codegen could emit const pool in the middle of jump table.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@956 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-10 08:37:58 +00:00
sgjesse@chromium.org
6a8fdf0429
Skip some debugger related tests on ARM for nowas they have different behaviour based on platform and mode. The debugger infrastructure is currently not working on the ARM platform. This also fix the "syntax" error of the previous change to mjsunit.status.
...
Review URL: http://codereview.chromium.org/13622
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@940 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-08 15:11:02 +00:00
sgjesse@chromium.org
0bc3f21c20
Changed expectations on some ARM debugger tests after CL 933.
...
Review URL: http://codereview.chromium.org/13245
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@939 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-08 13:39:25 +00:00
erik.corry@gmail.com
ba09ec5e89
Irregexp:
...
* Facility for generating a node several ways. This allows
code to be generated for a node knowing where it is trying
to match relative to the 'current position' and it allows
code to be generated that knows where to backtrack to. Both
allow dramatic reductions in the amount of popping and pushing
on the stack and the number of indirect jumps.
* Generate special backtracking for greedy quantifiers on
constant-length atoms. This allows .* to run in constant
space relative to input string size.
* When we are checking a long sequence of characters or character
classes in the input then we do them right to left and only the
first (rightmost) needs to check for end-of-string.
* Record the pattern in the profile instead of just <CompiledRegExp>
* Nodes no longer contain an on_failure_ node. This was only used
for lookaheads and they are now handled with a choice node instead.
Review URL: http://codereview.chromium.org/12900
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@930 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-08 09:22:12 +00:00
lrn@chromium.org
ee9e6b5bae
Excluded test that fails in JSCRE.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@922 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-05 10:04:40 +00:00
lrn@chromium.org
ed4e792cd5
Makes irregexp-ia32 feature complete wrt. regexps.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@920 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-05 09:18:55 +00:00
ager@chromium.org
c1c8603a13
Follow jsc in throwing an exception when using test or exec on a
...
regexp with no input.
Fixed problem with assertThrows.
Deleted test that tests arbitrary limits on the sizes of regular
expressions.
Review URL: http://codereview.chromium.org/13088
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@907 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-12-03 12:47:21 +00:00
erik.corry@gmail.com
4722a886ec
Implement $ for non-multiline.
...
Review URL: http://codereview.chromium.org/10992
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@862 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-11-28 08:53:53 +00:00
olehougaard
2b72eeedfb
Change implementation of eval to make an exact distinction between direct eval and aliased eval.
...
Review URL: http://codereview.chromium.org/12673
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@860 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-11-27 13:55:06 +00:00
ager@chromium.org
f15d07afe2
Update d8 so that it can be used to run the mjsunit tests.
...
Set the security token on the debugger context after all contexts have
been created in d8. This ensures that all d8 contexts (including the
debugger context) can access eachother.
Copy extra command-line handling from the shell sample to d8.
Review URL: http://codereview.chromium.org/12431
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@836 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-11-25 12:58:48 +00:00
christian.plesner.hansen@gmail.com
b57b4a15cd
Merge regexp2000 back into bleeding_edge
...
Review URL: http://codereview.chromium.org/12427
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@832 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-11-25 11:07:48 +00:00
feng@chromium.org
2b3b337d24
Buildbot still is not happy. Looks like CRASH keyword is needed.
...
TBR = iposva
Review URL: http://codereview.chromium.org/11417
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@778 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-11-17 20:04:52 +00:00
feng@chromium.org
d1b9ab06e3
Adjust test status of ARM build to reflect the current situation.
...
TBR = iposva
Review URL: http://codereview.chromium.org/11414
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@777 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-11-17 19:01:37 +00:00
lrn@chromium.org
4e3bbd8247
If a HeapNumber is the incoming value, it must be converted to Smi before
...
checking. This is not done in a fast way.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@679 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-11-03 13:33:13 +00:00
erik.corry@gmail.com
6951059c6a
fuzz natives times out on some machines due to DebugReferencedBy
...
Review URL: http://codereview.chromium.org/9039
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@677 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-11-03 12:07:22 +00:00
kasperl@chromium.org
744aedd2d0
Fix natives fuzzing: Let the StringIndexOf runtime function
...
deal with start indexes that are out of range.
Review URL: http://codereview.chromium.org/8762
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@663 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-10-31 08:51:26 +00:00
sgjesse@chromium.org
4717ed1de9
Most of the crashing ARM tests failed in debug mode.
...
TBR=kasperl
Review URL: http://codereview.chromium.org/8698
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@643 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-10-29 15:50:50 +00:00
sgjesse@chromium.org
10e380400b
Skip the tests which currently crash on the ARM simulator.
...
Review URL: http://codereview.chromium.org/8696
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@642 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-10-29 14:23:18 +00:00
kasperl@chromium.org
b5fe75f950
Fix issue with Array.concat not preserving holes in the
...
top-level arrays.
Review URL: http://codereview.chromium.org/8694
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@635 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-10-29 10:02:09 +00:00
feng@chromium.org
4c1a5810b9
Implement Array::concat function in C++.
...
The performance of Array::concat is critical of jQuery benchmark from
http://www.dromaeo.com . Our current implementation in JavaScript is very
generic and is several times slower than JSC and SpiderMonkey.
Re-implement Array::concat in C++ to take advantage of underlying implementation
details. This cuts dom-travesal-jquery execution time by half.
We may want to move Array specific implementation into a separate source file,
say jsarray.cc.
Review URL: http://codereview.chromium.org/7990
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@625 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-10-28 14:47:50 +00:00
kasperl@chromium.org
a71cca5054
Allow string-compare-alignment to pass on ARM simulator.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@611 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-10-27 16:43:56 +00:00
erik.corry@gmail.com
5f4c9b0960
It seems we haven't nailed the unaligned string compare problem yet.
...
Review URL: http://codereview.chromium.org/8622
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@610 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-10-27 15:53:29 +00:00
erik.corry@gmail.com
d7c5ee9120
Test for a bug that was fixed in r554 where we used unaligned accesses on ARM
...
with surprising results.
Review URL: http://codereview.chromium.org/8619
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@609 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-10-27 14:42:23 +00:00
erik.corry@gmail.com
6e00a80354
You can't use BinarySearch on an unsorted array and other
...
sillinesses found while trying to get rid of medium-sized strings.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@595 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-10-26 20:50:05 +00:00
kasperl@chromium.org
c128b8d9de
Improve code for looking up in context slots in runtime.cc and
...
use safe casting operations to slot access on contexts when
possible.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@588 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-10-24 10:59:40 +00:00
sgjesse@chromium.org
39a5ffbd85
Cleanup of http://codereview.chromium.org/8101 .
...
Changed the catcher_ field to a boolean value and renamed it. Modified the
propagation of the external caught exception to also clear the current
TryCatch if there is no exception as it might hold an exception which has
been bypassed by code in a finally block.
Minor formatting changes to a test.
Review URL: http://codereview.chromium.org/8102
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@576 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-10-24 06:22:47 +00:00
sgjesse@chromium.org
f7367a9fe6
Posponed the setting of "external_caught_exception" to when leaving JavaScript
...
execution. This is achieved by storing a pointer to the C++ TryCatch when the
exception is thrown and checking that this is the handler active when leaving
JavaScript.
Review URL: http://codereview.chromium.org/8101
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@570 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-10-23 12:54:13 +00:00
kasperl@chromium.org
b727198587
Fix issue 124 by computing the receiver correctly when
...
the property is found in a context slot.
Review URL: http://codereview.chromium.org/8097
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@566 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-10-23 08:42:22 +00:00
kasperl@chromium.org
8e675da371
Update Mozilla test status to reflect that regress-363258
...
is flaky on Linux and Mac (as well as Windows) and remove
line that refers to non-existing mozilla/... test.
Review URL: http://codereview.chromium.org/7910
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@559 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-10-23 06:11:39 +00:00
kasperl@chromium.org
96733af32b
Added failing test case for bug 124.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@558 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-10-23 05:49:05 +00:00
erik.corry@gmail.com
99f5ae88a3
Fix bug 1439135 (slicedstring on constring not flat)
...
Review URL: http://codereview.chromium.org/7809
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@530 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-10-21 08:08:17 +00:00
kasperl@chromium.org
3d4d596e00
Added failing test case for bug 1439135.
...
Review URL: http://codereview.chromium.org/7808
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@529 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-10-21 07:39:53 +00:00
kasperl@chromium.org
c63477df3d
Fix issue 116 by returning the value from SetFastElement.
...
Review URL: http://codereview.chromium.org/7615
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@514 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-10-17 06:36:35 +00:00
iposva@chromium.org
6d97b325db
- Fix instance size calculation to ensure that the object cannot
...
overflow the maximum object size.
- Added a test that will crash previous revisions.
Review URL: http://codereview.chromium.org/7427
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@507 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-10-16 05:45:33 +00:00
lrn@chromium.org
c46b0e84d4
Reduced the string length and rounds in the extensive indexOf-test in string-indexof.js.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@495 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-10-14 10:56:40 +00:00
olehougaard
cee2947da0
Testing that sorting behaves reasonably with a bad comparison function.
...
Review URL: http://codereview.chromium.org/7137
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@494 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-10-14 10:50:44 +00:00
christian.plesner.hansen@gmail.com
a601594796
Fixed bug 114
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@493 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-10-14 09:13:23 +00:00
lrn@chromium.org
9e0609db8e
Most operations are faster than before.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@492 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-10-14 08:57:31 +00:00
kasperl@chromium.org
b314b46b09
Make sure to check that the function prototype is a
...
real JavaScript object before looking for it in the
prototype chain during instanceof checks.
Review URL: http://codereview.chromium.org/6579
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@471 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-10-08 14:03:53 +00:00
kasperl@chromium.org
77643dbef6
Improve the generated code for the instanceof operator,
...
and extended the instanceof test case.
Review URL: http://codereview.chromium.org/6341
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@470 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-10-08 13:33:16 +00:00
bak@chromium.org
9dadae1bfb
- Fixed Issue 3201: Embedded Google Calendar crashes the renderer
...
ExtendStorage did not work with keyed store IC.
- Reduced instructions generated when performing a tail call to
kSharedStoreIC_ExtendStorage
- Moved test/mjsunit/bugs/bug-109.js
to test/mjsunit/keyed-storage-extend.js
Review URL: http://codereview.chromium.org/6526
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@455 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-10-07 09:28:04 +00:00
lrn@chromium.org
ca7668ee32
Fixed typo
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@454 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-10-07 09:04:23 +00:00
kasperl@chromium.org
f7174fd151
Add reproducible failing test case for bug 109.
...
Review URL: http://codereview.chromium.org/6300
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@451 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-10-07 08:11:38 +00:00
sgjesse@chromium.org
47439f3274
Skip the test debug-scripts-request on ARM in debug mode. It has consistently
...
been running for more than 3 minutes on Arm�g.g.
Review URL: http://codereview.chromium.org/6273
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@447 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-10-06 15:16:53 +00:00
sgjesse@chromium.org
167d7b4504
Marked a test parsing on ARM as parsing.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@446 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-10-06 14:30:24 +00:00
sgjesse@chromium.org
c0e04e1e86
Fixed unsafe code where a GC could occour after a Handle had been deferenced.
...
instances->set(i, *GetScriptWrapper(script));
GetScriptWrapper can call GC. The failure have only been seen on ARM, where
the g++ compiler pulls out the object from the instances handle to a register
before calling GetScriptWrapper causing set to be called on an object which
may have moved.
Marked a test on ARM as no longer flaky, whereas two other fails consistently
but that is no longer related to the problem fixed above.
BUG=1308895
Review URL: http://codereview.chromium.org/6271
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@444 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-10-06 13:20:27 +00:00
ager@chromium.org
70dcba4024
Exclude the bit-field bits from string hash codes. String hash codes
...
are always odd if the bit-field bits are included.
Modified a couple of debugger tests that relied on the ordering of
elements in descriptor arrays. Descriptor arrays are sorted by
hash-code values, so the order changes if we change the hash code.
Review URL: http://codereview.chromium.org/6489
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@440 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-10-06 09:35:52 +00:00
kasperl@chromium.org
1f38bc429a
Adapt the test expectations on ARM to make ARMu pass
...
in debug mode.
Review URL: http://codereview.chromium.org/6264
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@436 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-10-06 07:37:24 +00:00
kasperl@chromium.org
5458eac183
Improve performance of arguments object allocation by taking
...
care of arguments adaptor frames in the generated code.
Review URL: http://codereview.chromium.org/6262
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@434 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-10-06 06:08:15 +00:00
ager@chromium.org
192d439f45
Update v8natives to use InstallFunctions to get the correct function
...
names for library functions.
Review URL: http://codereview.chromium.org/6447
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@433 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-10-03 18:00:28 +00:00
sgjesse@chromium.org
43783fa236
Mark a test as flaky on ARM. Fails on hardware but passes in simulator.Z
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@427 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-10-03 12:15:32 +00:00
whessev8
d2a8454d2f
This change removes the %AddProperty native JavaScript function from V8.
...
All uses of %AddProperty are replaced by %SetProperty. A few uses of
IgnoreAttributesAndSetLocalProperty are added, and the runtime version
of it adds a PropertyAttributes argument. Only the JSObject class
in objects.cc now uses AddProperty, and it can become private.
Review URL: http://codereview.chromium.org/6445
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@426 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-10-03 12:14:29 +00:00
lrn@chromium.org
17dc503149
Added fast-case switch to ARM.
...
Refactored to reuse code between ia32 and ARM.
Added tests for switch.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@424 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-10-03 12:04:59 +00:00
ager@chromium.org
9da356eea6
Make sure that the name accessor on functions return the expected
...
names.
- Set the correct name of library functions.
- Set the name of C++ callback functions.
- Clean up a couple of out-dated comments related to literal creation.
Review URL: http://codereview.chromium.org/6223
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@414 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-10-03 07:14:31 +00:00
christian.plesner.hansen@gmail.com
06fa6d1cde
- Case-sensitive atomic regular expressions now use the same code as
...
String.indexOf to do matching.
- The --log option is no longer automatically enabled by the other log
options.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@413 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-10-02 15:35:28 +00:00
olehougaard
864ebf14ad
Fixed use of undefined in ArraySort.
...
Changed 'undefined' in ArraySort to 'void 0'. Also added regression test to catch the error.
Review URL: http://codereview.chromium.org/6073
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@406 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-10-02 08:58:03 +00:00
kasperl@chromium.org
016fcd4aff
Fix issue 86 by keeping track of the fact that finally blocks
...
are evaluated with an extra element on the stack, which needs
to be taken into account when breaking and continuing.
I'll clean up the code and add an abstraction for manipulating
the break stack height in a future CL -- I want to try to get
rid of the separate local variable we keep around for the "state"
when running in a finally block.
Review URL: http://codereview.chromium.org/5625
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@400 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-10-01 07:43:00 +00:00
christian.plesner.hansen@gmail.com
20e3e2f85f
Added copyright headers to tests.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@377 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-25 13:14:23 +00:00
christian.plesner.hansen@gmail.com
2d0c43ad09
- Added support for warnings on unused test rules.
...
- Added automatic loading of test suites
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@375 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-25 12:38:34 +00:00
olehougaard
69156911be
Using quick sort for arrays.
...
Using quick sort in ArraySort instead of heap sort for better performance.
Review URL: http://codereview.chromium.org/4065
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@374 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-25 11:28:02 +00:00
ager@chromium.org
ff4e9ea134
Make sure that the body of the function created by calling Function is
...
on a line of its own. This allows the body to be terminated by a
single-line comment.
Also, make sure to set the name of the function to anonymous after the
fact so that recursion through the name anonymous is not allowed and
so that global variables called anonymous are not shadowed.
This is a fix for http://code.google.com/p/v8/issues/detail?id=85
Review URL: http://codereview.chromium.org/4248
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@370 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-25 07:35:45 +00:00
christian.plesner.hansen@gmail.com
6d47b29765
- Added new object type, RegExp, for regular expressions.
...
- Renamed some ::kSizes to ::kHeaderSizes to avoid confusion.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@362 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-23 11:45:43 +00:00
lrn@chromium.org
2816e8a899
Added fast-case for switch statement where all lables are constant Smi's in a limited range (IA32 only so far).
...
Implemented using a jump-table, for constant time lookup.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@343 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-18 11:59:55 +00:00
erik.corry@gmail.com
05597193ce
More thorough tests of sorting integers in lexicographic order.
...
Review URL: http://codereview.chromium.org/2923
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@324 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-17 10:25:05 +00:00
kasperl@chromium.org
6b4f5aba96
Fix issue 67 by copying the receiver function one slot
...
down too. Also fix lint issue in codegen-arm.cc.
Reviewed offline by Ivan (iposva@chromium.org ).
Review URL: http://codereview.chromium.org/3080
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@316 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-16 11:40:21 +00:00
iposva@chromium.org
88192fc01c
Fix http://code.google.com/p/v8/issues/detail?id=69 :
...
- Simplify the switch statement code generation.
- Ensure that the switch value is always popped from the stack.
Credit goes to Feng for isolating the issue and proposing a fix.
Review URL: http://codereview.chromium.org/2888
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@315 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-16 11:23:02 +00:00
iposva@chromium.org
ffa7f7bd5b
- Update test status file with fixed tests for ARM and add failing test tracked by issue 67.
...
- Remove debugging aid stop("Generate_ArgumentsAdaptorTrampoline - non-function call")
- Cleanup comment
Review URL: http://codereview.chromium.org/2801
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@290 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-12 04:31:34 +00:00
ager@chromium.org
888abb1bfd
Fix bug in function context slot lookup. There were two problems: we
...
read at the wrong index in the scope information and we forgot to add
Context::MIN_CONTEXT_SLOTS to the index.
This fixes issue 24.
Review URL: http://codereview.chromium.org/1938
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@279 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-11 13:00:30 +00:00
olehougaard
d667ef8e00
Enabling a few tests when using snapshots.
...
Some of the tests that were disabled when using snapshot has been modified and reenabled.
Review URL: http://codereview.chromium.org/1937
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@277 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-11 12:33:31 +00:00
christian.plesner.hansen@gmail.com
f5b571e873
Quick fix: copyright header
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@255 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-10 13:05:26 +00:00
christian.plesner.hansen@gmail.com
6974e4b2c7
Fixed bug #57 . Introduced String::Utf8Value and replaced a bunch of
...
uses of String::AsciiValue with String::Utf8Value. Fixed shell sample
'load' so it doesn't print error messages.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@254 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-10 11:41:48 +00:00
christian.plesner.hansen@gmail.com
089da79517
Quick fix for mjsunit/debug-sourceinfo failure
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@243 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-09 20:20:35 +00:00
christian.plesner.hansen@gmail.com
9bed566bdb
Changed copyright header from google inc. to v8 project authors.
...
Added presubmit step to check copyright.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@242 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-09 20:08:45 +00:00
christian.plesner.hansen@gmail.com
23d2381749
Fixed misspelling in mjsunit status file.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@234 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-09 12:45:21 +00:00
feng@chromium.org
d3f42673db
Mark number-string-index-call.js as FAIL on ARM because it depends on the new calling convention. TBR=iposva@chromium.org
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@216 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-08 18:56:27 +00:00
feng@chromium.org
5d0d354e09
Fix issue http://code.google.com/p/v8/issues/detail?id=32
...
Allows numberical strings as array index and make a call. e.g.,
callbacks['0']();
Added more test case for regexp (disabled by default, requires --call_regexp)
and call_as_function object created by API.
Review URL: http://codereview.chromium.org/1604
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@214 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-08 16:47:23 +00:00
christian.plesner.hansen@gmail.com
3351499cb5
Fixed problem where asian characters were not categorized as letters
...
because they were defined using different syntax in the unicode
database.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@200 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-08 10:45:01 +00:00
kasperl@chromium.org
c60fef3013
Fix issues with running some of our tests with an embedded
...
snapshot. Changed the debug-script.js test to ignore the
exact number of extension scripts.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@199 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-08 09:26:02 +00:00
kasperl@chromium.org
2f0c910731
Fix issue 35 by applying patch by Daniel James.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@195 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-08 07:58:54 +00:00
ager@chromium.org
0543ea721d
Update mjsunit status file. The debugger does not currently work on
...
ARM and all the tests are disabled for now.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@194 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-08 07:55:28 +00:00
christian.plesner.hansen@gmail.com
6d13d9864c
- Marked flaky windows gc test as flaky.
...
- Added support for --cat in test runner.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@190 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-08 07:04:22 +00:00
ager@chromium.org
e0b50dde0e
Avoid string conversion when comparing Smis during sorting.
...
Avoid runtime calls for trivial object equality checks.
Minor style cleanups.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@185 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-08 06:17:38 +00:00
feng@chromium.org
ecbfddf052
Honor the declaration order of getter/setter in object literals
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@174 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-05 16:47:42 +00:00
feng@chromium.org
93a5d0b959
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@147 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-04 20:49:18 +00:00
ager@chromium.org
552e5f831f
Make Date.prototype.toTimeString and Date.prototype.toLocaleTimeString
...
only return the time portion of the date.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@128 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-04 07:13:21 +00:00
ager@chromium.org
d295ddd922
Fix the 'in' operator so it works correctly for negative indices.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@117 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-03 07:34:21 +00:00
christian.plesner.hansen@gmail.com
472ae34f9d
- Added some "special" tests that were left out before.
...
- Added option to test runner that allows us to run the tests under
valgrind.
- Added test status for the failing arm simulator tests.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@116 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-03 07:31:19 +00:00
feng.qian.v8
6287c675d8
Change __ mov(eax, TOS) to
...
__ pop(eax);
...
__ push(eax);
to enable push/pop eliminations.
__ push(eax) must happen before RecordWrite because RecordWrite may destroy
eax value. To be safe, also moved __ push(r0) on ARM to above RecordWrite.
This only affects the case where a context variable is used in a inner scope.
Create a tests for it. It fails if __ push(eax) is after RecordWrite.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@111 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-09-02 21:47:45 +00:00
mads.s.ager@gmail.com
9ef7673d82
Clean up a couple of runtime functions that mixed handles and raw
...
pointers.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@36 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-08-29 08:48:06 +00:00
feng.qian.v8
69b74a95bb
Add a test that access a property name in its unicode escaped form.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@30 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-08-28 18:32:52 +00:00
mads.s.ager@gmail.com
c470d9f05b
Changed status file support for the tests. The testcfg.py script is
...
now responsible for adding the status information for the tests in the
corresponding test suite.
Added status file from mjsunit tests.
Added tests for known bugs.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@29 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-08-28 13:17:47 +00:00
mads.s.ager@gmail.com
6bda17f12b
Make test.py executable.
...
Changed eol-style on debug-sourceinfo.js since the test expects CRLF
endings.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@27 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-08-28 10:50:31 +00:00
christian.plesner.hansen
968facb9ff
- Fixed issue when building samples and cctests on 64-bit machines.
...
- Fixed mozilla test breakage caused by python's obscure module
loading rules.
- Made sure test.py propagates test failures out as the exit code of
the script.
- Remove runtime calls to get number constants. Remove Heap roots for
some special numbers.
- Fix typo in accessors.h.
- Changes CopyMap to not copy descriptors. Adds
CopyMapRemoveTransitions that copies non-transition descriptors.
Changes interface of DescriptorArray::Copy operations to simplify
them.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@21 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-08-27 13:47:52 +00:00
christian.plesner.hansen
05bbf90b3a
Changed shell sample to take flags directly from the command-line. Added api call that implements this.
...
Added better test support.
Added load, quit and version functions to the shell sample so it's easier to run benchmarks and tests.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-08-27 10:11:39 +00:00
christian.plesner.hansen
c42f5829a1
Included mjsunit JavaScript test suite and C++ unit tests.
...
In the shell sample don't print the result of executing a script, only
evaluating expressions.
Fixed issue when building samples on Windows using a shared V8
library. Added visibility option on Linux build which makes the
generated library 18% smaller.
Changed build system to accept multiple build modes in one build and
generate seperate objects, libraries and executables for each mode.
Removed deferred negation optimization (a * -b => -(a * b)) since this
visibly changes operand conversion order.
Improved parsing performance by introducing stack guard in preparsing.
Without a stack guard preparsing always bails out with stack overflow.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-08-22 13:33:59 +00:00
mads.s.ager
cbaa060d28
Improved performance of garbage collection by moving the function that updates pointers during compacting collection into the updating visitor. This gives the compiler a better chance to inline and avoid a function call per (potential) pointer.
...
Extended the shell sample with a --runtime-flags option.
Added Visual Studio project files for the shell.cc and process.cc samples.
git-svn-id: http://v8.googlecode.com/svn/trunk@14 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2008-08-14 13:41:48 +00:00