- 17 Nov, 2009 1 commit
-
-
sgjesse@chromium.org authored
Change name of shifts picking the shift count from cl to sal_cl, shl_cl and shr_cl. Add special encoding of shift by one for shr which was missing it. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3314 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 16 Nov, 2009 7 commits
-
-
fschneider@chromium.org authored
This change fixes the problem with the original version of this approach (r3032) that may lead to a corrupted stack if we would invoke spilling during syncing a large SMI constant (unsafe SMIs) in the virtual frame. The new code for storing unsafe SMI constants does not use an extra temporary register. This prevents the compiler from ever having to spill during a virutal frame sync operation. For storing a large SMI constant we previously generated: mov ecx, (large_smi & 0x0000ffff) xor ecx, (large_smi & 0xffff0000) push ecx we now generate: push (large_smi & 0x0000ffff) or [esp], (large_smi & 0xffff0000) Not using a temporary register avoids spilling within an nvocation of VirtualFrame::SyncRange. Review URL: http://codereview.chromium.org/391079 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3313 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yurys@chromium.org authored
Condition block of do/while statements is a valid break location so it should have its own position. The block is represented by a regular Expression node so we cannot store the position in it, instead the position is stored in a separate field in DoWhileStatement AST node. BUG=514 Review URL: http://codereview.chromium.org/385136 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3312 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yurys@chromium.org authored
TBR=sgjesse@chromium.org Review URL: http://codereview.chromium.org/400001 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3311 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yurys@chromium.org authored
BUG=509 Review URL: http://codereview.chromium.org/398002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3310 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
Review URL: http://codereview.chromium.org/399001 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3309 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
of code that can't be tested on slow targets. Review URL: http://codereview.chromium.org/385133 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3308 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
Review URL: http://codereview.chromium.org/394007 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3307 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 13 Nov, 2009 9 commits
-
-
yurys@chromium.org authored
TBR=sgjesse@chromium.org Review URL: http://codereview.chromium.org/384121 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3306 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yurys@chromium.org authored
The test currently fails on v8 trunk if the new compiler is used. The issue seems to be fixed on bleeding_edge so there is no changes to src, just test. Cromium bug: http://crbug.com/26686 Review URL: http://codereview.chromium.org/384120 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3305 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
fschneider@chromium.org authored
This optimization is already done on x64 and ARM. Until now we used a push immediate for each local variable on IA32: push $undefined push $undefined ... to initialize each local variable. This change does: mov eax, $undefined push eax push eax ... Review URL: http://codereview.chromium.org/393009 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3304 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
fschneider@chromium.org authored
See http://code.google.com/p/chromium/issues/detail?id=27227 Review URL: http://codereview.chromium.org/385092 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3303 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
lrn@chromium.org authored
Review URL: http://codereview.chromium.org/393010 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3302 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
available. We use this to ensure that snapshots on MacOSX can use SSE2 instructions. Also clean up and assertify the handling of things we can't do when we are generating a snapshot. Fix a bug in the new serialization tests where they activated Snapshot::enable() too late after code had been generated that assumed no snapshots. Review URL: http://codereview.chromium.org/391051 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3301 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
fschneider@chromium.org authored
This change re-allows non-lazy compiled function literals for top-level compilation. There was a problem on ARM exposed through this change which was fixed as part of r3289 in fast-codegen-arm.cc (Threading and Threading2 tests failed) It occurred before r3289 when we allocate a local context at the beginning of a function. The code for the stack check was split up in an unintended way (load of stack check limit into r2, and use of r2 in the actual stack check code). Review URL: http://codereview.chromium.org/385070 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3300 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
fschneider@chromium.org authored
The test for a SMI before the write barrier tested the wrong register: r0 = target context address r1 = value to be written This change fixes the SMI test and tests r1 instead of r0. Review URL: http://codereview.chromium.org/384085 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3299 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
fschneider@chromium.org authored
Review URL: http://codereview.chromium.org/384087 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3298 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 12 Nov, 2009 9 commits
-
-
yurys@chromium.org authored
TBR=vitalyr Review URL: http://codereview.chromium.org/387037 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3295 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yurys@chromium.org authored
Interceptors cannot provide a meaningful result for hidden_symbol anyway and some of them crash on empty property name. Related Chromium issue: http://code.google.com/p/chromium/issues/detail?id=27385 Review URL: http://codereview.chromium.org/390020 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3294 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
Also move a function into the macro assembler. Fix some *& placement errors that had accumulated. Review URL: http://codereview.chromium.org/385069 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3293 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
Review URL: http://codereview.chromium.org/348019 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3292 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
christian.plesner.hansen@gmail.com authored
Review URL: http://codereview.chromium.org/385068 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3291 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
lrn@chromium.org authored
Review URL: http://codereview.chromium.org/385067 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3290 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
lrn@chromium.org authored
Functions using "arguments" have their arguments object created on entry. Also added support for variables rewritten into argument object property access. Review URL: http://codereview.chromium.org/384078 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3289 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ager@chromium.org authored
Review URL: http://codereview.chromium.org/386019 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3288 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ager@chromium.org authored
and if it doesn't we need to figure out why. Review URL: http://codereview.chromium.org/385065 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3287 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 11 Nov, 2009 9 commits
-
-
kbr@chromium.org authored
was always falling through to the runtime. Re-examined both load and store ICs and verified they are now in sync with the 32-bit port. Ran tests and benchmarks. Review URL: http://codereview.chromium.org/385020 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3286 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
christian.plesner.hansen@gmail.com authored
potentially leading to bogus FatalProcessOutOfMemory situations. Also fixed a few cases where callers relied on getting a NewSpace object back (to avoid write barrier overhead) which they can't when always_allocate is in effect. Review URL: http://codereview.chromium.org/391018 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3285 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
Review URL: http://codereview.chromium.org/391016 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3284 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
a sensible output. Review URL: http://codereview.chromium.org/385039 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3281 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
christian.plesner.hansen@gmail.com authored
Patch by Jan de Mooij <jandemooij@gmail.com> Review: http://codereview.chromium.org/273073 Review URL: http://codereview.chromium.org/389008 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3279 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
Split a long running test into two parts. The second part still takes most of the time and is skipped on ARM in debug mode. BUG=http://code.google.com/p/v8/issues/detail?id=500 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3278 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
lrn@chromium.org authored
Set warning level to /W3 and change implicit conversions from size_t to int. Most "fixes" are simply manifesting the implicit casts or using a special strlen replacement that returns int. Review URL: http://codereview.chromium.org/390004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3273 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
the snapshot. Still needed: info to register profile ticks in stubs. Review URL: http://codereview.chromium.org/385035 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3272 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ager@chromium.org authored
Remove variable that is currently unused. BUG=http://code.google.com/p/v8/issues/detail?id=502 Review URL: http://codereview.chromium.org/392001 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3267 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 10 Nov, 2009 5 commits
-
-
yurys@chromium.org authored
TBR=ager@chromium.org Review URL: http://codereview.chromium.org/388005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3266 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yurys@chromium.org authored
All hidden properties of an object are stored in a value of a regular property with empty name. This property may confuse user if returned among regular properties. It should not be exposed directly by ObjectMirror. Should we want an access to these properties from debugger we need to implement an explicit method for that. Current patch filters the hidden_symbol from property names returned to ObjectMirror. See http://crbug.com/26491 Review URL: http://codereview.chromium.org/390001 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3265 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
Removal of string slices made this test time out on the ARM simulator. Temporaly mark this as pass or timeout. BUG=http://code.google.com/p/v8/issues/detail?id=500 TBR=christian.plesner.hansen@gmail.com Review URL: http://codereview.chromium.org/390002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3264 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ager@chromium.org authored
leads to stack corruption in 32-bit version of V8. See http://code.google.com/p/chromium/issues/detail?id=27227 for a reproducible case. Since this is only an issue on 32-bit V8 I think this has got something to do with the UnsafeSmi handling that we do on ia32. I'm reverting for now so we can push a fix, but we should track down the issue and create a regression test for this. Review URL: http://codereview.chromium.org/383005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3263 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
With slices string string type removed generating a large amount of sub-strings takes more time. Change a test to avoid timeout in debug mode. Review URL: http://codereview.chromium.org/385006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3260 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-