ager@chromium.org
11bab3a5c4
Fix the tests that change because of change to toISOString format.
...
Review URL: http://codereview.chromium.org/543057
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3602 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-14 09:05:52 +00:00
ager@chromium.org
bfb111b9ed
Fix Date.prototype.toISOString for NaN dates and add milliseconds for
...
compatibility with Safari.
Review URL: http://codereview.chromium.org/543056
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3601 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-14 08:55:15 +00:00
antonm@chromium.org
51a0cf8a71
Compact map space when doing mark-sweep if after collection size of map space would
...
drop below threshold.
Review URL: http://codereview.chromium.org/509035
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3600 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-13 19:16:07 +00:00
kmillikin@chromium.org
9dec8f3c74
Remove an inlined ASSERT made obsolete by r3598.
...
Review URL: http://codereview.chromium.org/549035
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3599 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-13 16:21:06 +00:00
kmillikin@chromium.org
ede65c19a1
Remove a pair of problematic uses of the Reference utility class from
...
the code generators.
These uses broke the rules of the class because it was safe to do so,
but there was no real reason to do it that way.
Review URL: http://codereview.chromium.org/543041
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3598 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-13 16:01:15 +00:00
ager@chromium.org
9f60238c35
Revert r3583 which seems to degrade performance.
...
Review URL: http://codereview.chromium.org/536042
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3597 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-13 13:26:31 +00:00
fschneider@chromium.org
3dd2420511
Fix bug in top-level code generator with global receiver.
...
We did not correcty pass the global receiver object in some cases.
This change fixes this bug on all three platforms.
Review URL: http://codereview.chromium.org/542053
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3596 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-13 12:13:37 +00:00
ricow@chromium.org
19e49e1740
Enabled es5conform tests for new array methods and corrected errors that was discovered by enabling these.
...
Added new es5 methods:
GetOwnPropertyDescriptor
GetOwnProperty
FromPropertyDescriptor
Review URL: http://codereview.chromium.org/546032
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3595 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-13 12:10:57 +00:00
kmillikin@chromium.org
39b9f57f19
Cleanup the handling of control flow in the toplevel code generator.
...
Do abstract the setting and restoring of 'argument' state into a
function that takes arguments.
Do not set the argument state in the code generator unless it
represents arguments to a recursive call to Visit.
Review URL: http://codereview.chromium.org/550010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3594 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-13 11:29:08 +00:00
ager@chromium.org
4ed9eb18ea
Fix bug in the ARM port of FastNewContextStub. Load the function from
...
the stack instead of popping it - it is needed by the slow case.
Review URL: http://codereview.chromium.org/546031
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3593 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-13 10:27:54 +00:00
ager@chromium.org
bac8b21ff0
Port FastNewContextStub to x64 and arm.
...
BUG=551
Review URL: http://codereview.chromium.org/541027
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3592 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-13 08:16:02 +00:00
sgjesse@chromium.org
0d01d17b98
Fix ARM thumb/debug build
...
Landing http://codereview.chromium.org/548007
TBR=piman@chromium.org
Review URL: http://codereview.chromium.org/549033
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3591 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-13 07:45:53 +00:00
sgjesse@chromium.org
caf177c688
Fix ARM cross compiles generated from gyp.
...
Landing of http://codereview.chromium.org/549018 .
TBR=piman@chromium.org
Review URL: http://codereview.chromium.org/546030
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3590 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-13 07:35:31 +00:00
antonm@chromium.org
4377037336
Reverting temporary reverts 3586 and 3588 back.
...
TBR=kasperl@chromium.org
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3589 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-12 23:42:36 +00:00
antonm@chromium.org
fada07aecc
Temporary backing out r3536 to see impact on DOM benchmarks.
...
TBR=kasperl@chromium.org
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3588 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-12 19:36:09 +00:00
fschneider@chromium.org
fdba189730
Fix a problem with const initialization in the top-level code generator.
...
When initializing the special local variable containing the reference to the enclosing
function in named functions we now (correctly) emit an INIT_CONST instead of INIT_VAR,
and we correctly bail out in the top-level code generator.
Also part of this change is adding missing statement position information
for some statements in the top-level code generator.
Review URL: http://codereview.chromium.org/536029
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3587 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-12 17:22:57 +00:00
antonm@chromium.org
6cabd63572
Temporary backing out r3538 to see impact on DOM benchmarks.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3586 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-12 16:57:18 +00:00
erik.corry@gmail.com
1aeb239e60
Fix float conversion warning from some gcc versions.
...
Review URL: http://codereview.chromium.org/541026
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3585 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-12 15:36:43 +00:00
erik.corry@gmail.com
612d9b82f0
Add some interfaces to the GC that allow us to reserve space. This is needed
...
for partial snapshots. After reserving space we can be sure that allocations
will happen linearly (no GCs and no free-list allocation). This change also
contains the start of the partial snapshot support, which, however is not yet
completed or tested.
Review URL: http://codereview.chromium.org/545026
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3584 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-12 15:16:23 +00:00
ager@chromium.org
b63f5cf4d9
Reapply the parts of revision 3545 that did not work because of broken
...
fixups code on ARM.
Review URL: http://codereview.chromium.org/545025
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3583 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-12 11:56:19 +00:00
ager@chromium.org
61a1c089e4
Change the ARM fixup code to handle the use of the following
...
instruction sequence for jumps:
mov(ip, Operand(target, rmode), LeaveCC, cond);
bx(ip, cond)
Changed a JS call in the compare stub to a tail call to avoid GC
problems where the pushed return address is not updated on GC.
Review URL: http://codereview.chromium.org/549022
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3582 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-12 11:54:19 +00:00
kmillikin@chromium.org
c891a7a683
Fix lint error. I must have been following the Standard ML style
...
guide.
Review URL: http://codereview.chromium.org/541024
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3581 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-12 09:58:50 +00:00
kmillikin@chromium.org
f0b8c2d97a
Some cleanup of the toplevel code generator:
...
* Rename the operation of filling a context with a value. Formerly it
was 'Move', now it's 'Apply' so as to avoid confusion with various
other Moves (eg, in the toplevel codegen, in the macro assemblers).
* Use the abstraction Drop rather than math on the stack pointer.
* Add a predicate on AST expression nodes to abstract a repeated test
whether we should us a regular (named) IC or a keyed IC.
Review URL: http://codereview.chromium.org/546006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3580 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-12 08:48:26 +00:00
ager@chromium.org
55b73d9415
Fix variable name when build with oprofile agent.
...
BUG=572
Review URL: http://codereview.chromium.org/549020
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3579 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-12 08:31:00 +00:00
ager@chromium.org
c1cafb7cf1
Port FastNewClosureStub introduced for ia32 in r3477 to x64 and arm.
...
BUG=552
Review URL: http://codereview.chromium.org/543010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3578 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-12 07:16:49 +00:00
sgjesse@chromium.org
658ca2f174
Add missing instructions to the IA-32 disasembler
...
Added newly added instructions to test-disasem-ia32.cc and implemented the missi
ng ones in the disasembler.
Added some asserts to 8-bit instructions which only work with eax, ebx, ecx and
edx (al, bl, cl and dl).
Removed the loope instruction.
Review URL: http://codereview.chromium.org/548002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3577 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-11 15:19:53 +00:00
fschneider@chromium.org
c860533020
Added two missing instructions to disassembler.
...
The subb and the loop instructions are also added to the IA-32 disassembler.
Review URL: http://codereview.chromium.org/541008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3576 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-11 12:59:17 +00:00
christian.plesner.hansen@gmail.com
41e1d6a6a5
Added ScriptData::HasError.
...
Review URL: http://codereview.chromium.org/542010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3575 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-11 12:13:24 +00:00
sgjesse@chromium.org
1705b1eb91
Fix building of D8
...
This fixes building D8 when SCons cannot figure the build environment and it is passed using the env argument. This is usually only used when building with Visual Studio 2008.
Review URL: http://codereview.chromium.org/542009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3574 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-11 10:00:07 +00:00
ager@chromium.org
35fae75f01
Fix wrong assert in compare stub minor key computation.
...
TBR=erik.corry
Review URL: http://codereview.chromium.org/536010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3573 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-11 07:35:32 +00:00
sgjesse@chromium.org
8c2620112c
Fixed wrong cmov operand order
...
TBR=erik.corry@gmail.com
Review URL: http://codereview.chromium.org/518082
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3572 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-08 14:17:26 +00:00
erik.corry@gmail.com
1670dce1bf
Fix same Windows compiler error in another place.
...
Review URL: http://codereview.chromium.org/518081
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3571 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-08 13:48:27 +00:00
erik.corry@gmail.com
a5247c039c
Fix Windows build.
...
Review URL: http://codereview.chromium.org/527031
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3570 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-08 12:42:58 +00:00
sgjesse@chromium.org
91cfb3730a
Add generated code for ascii string comparison
...
Careted a stub for string comparison and used part of the code from that to inline string comparison in the compare stub.
Review URL: http://codereview.chromium.org/525115
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3569 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-08 11:58:15 +00:00
lrn@chromium.org
2cb1f8271f
Fix potential length-miscalculation in %StringBuilderConcat.
...
Review URL: http://codereview.chromium.org/521074
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3568 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-08 11:27:37 +00:00
erik.corry@gmail.com
dcd89af437
Lint, schmlint!
...
Review URL: http://codereview.chromium.org/525114
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3567 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-08 10:41:25 +00:00
erik.corry@gmail.com
eb6b3f601a
Speed up compares with characters ie single-character strings.
...
Make use of it when we know that something can't be a NaN.
Review URL: http://codereview.chromium.org/524059
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3566 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-08 09:54:11 +00:00
ager@chromium.org
d73f2efcf3
Inline a number of simple date computations.
...
The minifier has been updated to have better recognition of regular
expressions.
Review URL: http://codereview.chromium.org/521057
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3565 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-08 07:49:07 +00:00
kasperl@chromium.org
8dd3666741
Make sure to use the CHECK_PARSE_ERROR macro (and thereby
...
the static CheckParse function) even in release builds.
TBR=lrn@chromium.org
Review URL: http://codereview.chromium.org/518079
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3564 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-08 06:40:09 +00:00
lrn@chromium.org
46504c1557
Attempt to make \b\w+ faster. Slight performance increase on, e.g., string unpacking.
...
Review URL: http://codereview.chromium.org/507051
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3563 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-07 19:01:23 +00:00
lrn@chromium.org
40d6cbca89
Forgot patch to make it compiler on Linux.
...
Review URL: http://codereview.chromium.org/525087
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3562 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-07 14:04:56 +00:00
sgjesse@chromium.org
db64cd9a75
Fix wrong asserts from r3554
...
Review URL: http://codereview.chromium.org/523128
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3561 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-07 13:17:37 +00:00
lrn@chromium.org
dddadf9f7e
Fixed potential length miscalculations by limiting max size of arrays and strings.
...
Review URL: http://codereview.chromium.org/525064
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3560 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-07 13:17:18 +00:00
fschneider@chromium.org
c4416d628d
Fix runtime function StringCharAt where an argument was not checked.
...
Review URL: http://codereview.chromium.org/523126
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3559 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-07 12:31:45 +00:00
kasperl@chromium.org
3321d06ccd
Make String.prototype.replace a tiny bit faster by avoiding
...
ToString conversions for strings.
Review URL: http://codereview.chromium.org/518059
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3558 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-07 12:18:56 +00:00
fschneider@chromium.org
714dfeaece
Fix x64 and arm build.
...
Review URL: http://codereview.chromium.org/524058
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3557 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-07 11:38:43 +00:00
fschneider@chromium.org
903301248e
Improve keyed loads on strings by using a new stub.
...
Instead of going through a runtime function for keyed loads
on strings we invoke a separate specialized stub that
assumes string as receiver type and the key to be a number.
The stub calls a JS builtin function to return the corresponding one-character string.
Review URL: http://codereview.chromium.org/521041
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3556 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-07 10:25:20 +00:00
ricow@chromium.org
33079fb851
Added ES5 15.2.3.2 Object.getPrototypeOf.
...
Review URL: http://codereview.chromium.org/523124
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3555 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-07 10:01:24 +00:00
sgjesse@chromium.org
3d36c712aa
Use generated code to create sub strings.
...
Added a stub to allocate and fill a string object with a substring from another string.
Use the rep movs instruction to copy the string data as it turned out to be the fastest way.
While preparing this I experimented with some SSE2 instructions, so the instructions movdqa and movdqu are still in the IA-32 assembler even though they are not used.
Review URL: http://codereview.chromium.org/525085
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3554 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-07 09:59:37 +00:00
kasperl@chromium.org
060711ab37
Improve the performance of String.prototype.concat and the slow-case
...
for compare operations.
Review URL: http://codereview.chromium.org/521054
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3553 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2010-01-07 09:40:50 +00:00