- 05 Jan, 2010 5 commits
-
-
bak@chromium.org authored
Review URL: http://codereview.chromium.org/525024 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3536 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kmillikin@chromium.org authored
true. The rules are: 1. Heap::AllocateRaw can normally handle allocation requests in new space even when always_allocate() is true. It properly retries failed allocation in the second 'retry' space. 2. Heap::Allocate can normally handle allocation requests in new space. 3. We only need to check always_allocate() when explicitly requesting allocation in new space via Heap::new_space().AllocateRaw(). 4. The exception to these rules is fixed arrays with size such that MaxObjectSizeInPagedSpace < size <= MaxObjectSizeInNewSpace (ie, those that will be allocated in new space and promoted to large object space). They cannot be allocated in new space via Heap::Allocate or Heap::AllocateRaw, because the retry logic does not know to allocate extra remembered set bits when retrying in large object space. Review URL: http://codereview.chromium.org/518007 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3535 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kmillikin@chromium.org authored
Rename CreateSlotOperand so that it's clear it can emit code. Use it where possible. Review URL: http://codereview.chromium.org/523052 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3534 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kasperl@chromium.org authored
stack traversal code. Review URL: http://codereview.chromium.org/523051 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3533 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kmillikin@chromium.org authored
generator. The Slot::Type enumeration has four values. It should never be necessary to use a default to handle the case of a value out of range of the enumeration. Doing so silences a useful warning when one of the enumeration values is actually forgotten or when a new enumeration value is added. Review URL: http://codereview.chromium.org/521019 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3532 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 04 Jan, 2010 3 commits
-
-
fschneider@chromium.org authored
Save one instruction by using stm instead of push. Review URL: http://codereview.chromium.org/517027 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3531 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
fschneider@chromium.org authored
Until now we only supported postfix operations on global variables. This change add generic count operations to the top-level compiler. I tried to re-use code from the code generator used for assignment expressions where possible. Review URL: http://codereview.chromium.org/496009 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3530 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kasperl@chromium.org authored
Review URL: http://codereview.chromium.org/523036 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3529 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 28 Dec, 2009 3 commits
-
-
fschneider@chromium.org authored
Instead of falling back to calling GetObjectProperty we call GetCharAt directly if the object is a string and the key in a SMI. Review URL: http://codereview.chromium.org/522015 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3528 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kasperl@chromium.org authored
Review URL: http://codereview.chromium.org/519007 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3525 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
http://codereview.chromium.org/509029kasperl@chromium.org authored
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3522 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 23 Dec, 2009 2 commits
-
-
fschneider@chromium.org authored
If a function contains more than a certain number of locals (IA32: 9, X64: 6, ARM: 4) a loop for initializing the locals with 'undefined' is more compact. For less locals we unroll that loop by emitting a sequence of push instructions. Review URL: http://codereview.chromium.org/515012 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3521 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
bak@chromium.org authored
- Replaced the or instruction with lea. Review URL: http://codereview.chromium.org/521003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3520 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 22 Dec, 2009 8 commits
-
-
kmillikin@chromium.org authored
non-large objects that cannot contain non-map-word pointers to other heap objects into the old data space. Review URL: http://codereview.chromium.org/502100 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3519 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kasperl@chromium.org authored
TBR=fschneider@chromium.org Review URL: http://codereview.chromium.org/507069 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3518 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ager@chromium.org authored
that attempt to run with a small heap. Additionally, it can potentially keep a lot of string data alive and it is never flushed. Can we make it grow dynamically if used so that we can still start the VM with a small heap size? Review URL: http://codereview.chromium.org/503081 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3517 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
fschneider@chromium.org authored
the code generator. The runtime function checks if it needs to create a boilerplate object or if it can clone from an existing boilerplate. This is already done in the top-level compiler. Review URL: http://codereview.chromium.org/507036 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3516 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kasperl@chromium.org authored
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3515 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
bak@chromium.org authored
- Change the instruction order for inlined allocation. Review URL: http://codereview.chromium.org/501170 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3514 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kasperl@chromium.org authored
Review URL: http://codereview.chromium.org/503079 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3513 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ager@chromium.org authored
int32 for bitops. undefined converts to zero in ToInt32 conversions. Review URL: http://codereview.chromium.org/508020 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3512 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 21 Dec, 2009 6 commits
-
-
kasperl@chromium.org authored
Review URL: http://codereview.chromium.org/508006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3509 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
the comparison it uses in the code generator. Use Math.floor for date operations. Review URL: http://codereview.chromium.org/509007 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3508 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ager@chromium.org authored
us much. Review URL: http://codereview.chromium.org/509006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3507 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ager@chromium.org authored
operation can throw an exception. Review URL: http://codereview.chromium.org/504073 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3506 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kasperl@chromium.org authored
fixed contexts slots. Take this into account when using the new, fast context creation path to avoid allocating too many slots (wasteful). Review URL: http://codereview.chromium.org/501148 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3505 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
input so we don't have to check the exception flags afterwards. Review URL: http://codereview.chromium.org/509001 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3504 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 20 Dec, 2009 1 commit
-
-
kmillikin@chromium.org authored
MacroAssembler::PopHandleScope emits a runtime call (through a stub), which should not be allowed to perform a GC but return a failure instead. BUG=30790 TEST=none Review URL: http://codereview.chromium.org/504071 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3501 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 18 Dec, 2009 12 commits
-
-
peter.rybin@gmail.com authored
Review URL: http://codereview.chromium.org/491079 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3500 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kasperl@chromium.org authored
Recommit r3494 after fixing stupid mistake where the deferred code stub didn't know it was reversed. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3499 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
lrn@chromium.org authored
Still no support for lookup-variables, so we bailout if using the catch variable. Review URL: http://codereview.chromium.org/501076 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3498 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
antonm@chromium.org authored
Force mark sweep instead of compcation if size of map space is too big to allow forward pointers encoding. Review URL: http://codereview.chromium.org/507025 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3497 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kasperl@chromium.org authored
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3496 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kasperl@chromium.org authored
is a constant by avoiding a few checks. Review URL: http://codereview.chromium.org/504057 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3495 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kasperl@chromium.org authored
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3494 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kasperl@chromium.org authored
Review URL: http://codereview.chromium.org/501113 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3493 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
to floating point and then converting back we convert directly to a 32 bit integer. In addition the bit twiddling implementation of float- to-integer conversion has been ported from ARM. Testing has shown that this runs faster than the x87 or SSE3 rounding instructions. This change is IA32 only. There may be a smaller benefit from doing the same on x64. Review URL: http://codereview.chromium.org/506052 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3492 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
Review URL: http://codereview.chromium.org/504056 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3489 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
bak@chromium.org authored
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3488 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
bak@chromium.org authored
-Inlined double variant of compare iff one of the sides is a constant smi and it is not a for loop condition. Review URL: http://codereview.chromium.org/507040 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3487 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-