- 26 May, 2011 5 commits
-
-
ager@chromium.org authored
A couple of corner cases have to be treated specially to not break everything: eval and getter/setter definitions. R=lrn@chromium.org BUG=v8:1365 TEST=mjsunit/regress/regress-1365.js Review URL: http://codereview.chromium.org/7068009 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8073 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kmillikin@chromium.org authored
Our implementations of arguments without materializing the arguments object (based on inspecting the stack frame) does not work for inlined functions. Guard all attempts by disallowing them if possible or else bailing out of the optimizing compiler. R=fschneider@chromium.org BUG= TEST= Review URL: http://codereview.chromium.org/6976022 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8072 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
The already working watchpoint break mechanism has been extended to handle "stop" instructions, with text messages. Explanation (also in constants-mips.h): On MIPS Simulator breakpoints can have different codes: - Breaks between 0 and kMaxWatchpointCode are treated as simple watchpoints, the simulator will run through them and print the registers. - Breaks between kMaxWatchpointCode and kMaxStopCode are treated as stop() instructions (see Assembler::stop()). - Breaks larger than kMaxStopCode are simple breaks, dropping you into the debugger. The current values are 31 for kMaxWatchpointCode and 127 for kMaxStopCode. From the user's point of view this works the same way as the ARM stop instruction except for the break code usage detailed above. Ported commits: r5723 (3ba78d24) BUG= TEST= Review URL: http://codereview.chromium.org//7062014 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8069 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
lrn@chromium.org authored
Review URL: http://codereview.chromium.org/6930006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8068 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
Port r8055 to mips. (5b50df9c) BUG= TEST= Review URL: http://codereview.chromium.org//7075003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8067 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 25 May, 2011 11 commits
-
-
http://codereview.chromium.org/7033038cira@chromium.org authored
Make 'ignoreCase' work in collator. BUG=28604 TEST=http://www.i18nl10n.com/chrome/coll.html Review URL: http://codereview.chromium.org/7008023 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8066 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
vitalyr@chromium.org authored
R=ager@chromium.org Review URL: http://codereview.chromium.org/7064017 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8065 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
vitalyr@chromium.org authored
R=vegorov@chromium.org Review URL: http://codereview.chromium.org/6992068 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8064 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
Review URL: http://codereview.chromium.org/6992061 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8060 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
Review URL: http://codereview.chromium.org/7031046 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8059 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
vegorov@chromium.org authored
Review URL: http://codereview.chromium.org/6992059 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8056 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
Review URL: http://codereview.chromium.org/6987009 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8055 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ricow@chromium.org authored
We currently throw when there is only a getter defined on the property, but this should only be the case in strict mode. Review URL: http://codereview.chromium.org/7064027 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8054 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
danno@chromium.org authored
R=ager@chromium.org Review URL: http://codereview.chromium.org/6979008 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8052 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
These originated from 4dfb7f2e. This fixes cctest test-api/ConversionNumber in soft-float mode. BUG= TEST= Review URL: http://codereview.chromium.org//7068002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8051 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ager@chromium.org authored
Port of r8040 to mips. Original commit message: Strict mode functions are to get 'undefined' as the receiver when called with an implicit receiver. Modes are bad! It forces us to have checks on all function calls. This change attempts to limit the cost by passing information about whether or not a call is with an implicit or explicit receiver in ecx as part of the calling convention. The cost is setting ecx on all calls and checking ecx on entry to strict mode functions. Implicit/explicit receiver state has to be maintained by ICs. Various stubs have to not clobber ecx or save and restore it. CallFunction stub needs to check if the receiver is implicit when it doesn't know from the context. BUG= TEST= Review URL: http://codereview.chromium.org/6992051 Patch from Paul Lind <plind44@gmail.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8050 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 24 May, 2011 18 commits
-
-
danno@chromium.org authored
R=ager@chromium.org BUG=none TEST=none Review URL: http://codereview.chromium.org/7064029 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8049 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
whesse@chromium.org authored
BUG=v8:1406 TEST=fast/canvas/canvas-putImageData.html Review URL: http://codereview.chromium.org/7067028 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8048 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
whesse@chromium.org authored
BUG= TEST= Review URL: http://codereview.chromium.org/6966033 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8047 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
R=ager@chromium.org BUG=none TEST=none Review URL: http://codereview.chromium.org//7059015 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8042 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
lrn@chromium.org authored
Small fixes. Added test for const declaration in strict mode. TEST=preparser/strict-function-statement Review URL: http://codereview.chromium.org/6990056 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8041 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ager@chromium.org authored
Only IA32 version for now. I'll start porting. Strict mode functions are to get 'undefined' as the receiver when called with an implicit receiver. Modes are bad! It forces us to have checks on all function calls. This change attempts to limit the cost by passing information about whether or not a call is with an implicit or explicit receiver in ecx as part of the calling convention. The cost is setting ecx on all calls and checking ecx on entry to strict mode functions. Implicit/explicit receiver state has to be maintained by ICs. Various stubs have to not clobber ecx or save and restore it. CallFunction stub needs to check if the receiver is implicit when it doesn't know from the context. Review URL: http://codereview.chromium.org/7039036 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8040 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
whesse@chromium.org authored
BUG= TEST= Review URL: http://codereview.chromium.org/7063021 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8039 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ricow@chromium.org authored
Review URL: http://codereview.chromium.org/7066019 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8034 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
R=ager@chromium.org BUG=v8:1403 TEST=test/mjsunit/regress/regress-1403.js Review URL: http://codereview.chromium.org//7067019 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8032 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
fschneider@chromium.org authored
There is no need for this long name. Review URL: http://codereview.chromium.org/7063017 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8031 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
vegorov@chromium.org authored
- correctly display time spent in scavenger (it was attributed to 'other' scope). - display time spent in 'external' scope. Review URL: http://codereview.chromium.org/7067022 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8030 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ricow@chromium.org authored
The current json parser and scanner inherits fromt he normal scanners and parsers, which are more complicated than we need for parsing json. The supplied scanner works directly on the string supplied and has a fast case mode for scanning only ascii characters (it will simply create a substring or a symbol directly from the existing string). To allow for creating symbols from a substring I have added a SubStringAsciiSymbolKey that creates the hash based from our string without extracting the sub-string. In case we need to add the symbol it simply creates the symbol directly from the characters inside the given string. Review URL: http://codereview.chromium.org/7039037 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8029 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kmillikin@chromium.org authored
When deoptimizing to just after an ignored (because of a duplicate property name) object literal property initializer, we incorrectly saw the value of the initializer expression on the stack in the unoptimized code. The bug affected x64 only. R=fschneider@chromium.org BUG=v8:1404 Review URL: http://codereview.chromium.org/7066015 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8028 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ricow@chromium.org authored
We are now following the spec, and with regards to the error message we are following firefox (webkit still has different type errors in their nightly) Review URL: http://codereview.chromium.org/7067017 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8026 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
danno@chromium.org authored
R=karlklose@chromium.org BUG=none TEST=existing tests Review URL: http://codereview.chromium.org/7067018 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8025 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
fschneider@chromium.org authored
We don't need to assert the existence of a length-property of the arguments object because it is not a JSArray, but just a normal JSObject. BUG=v8:1227 Review URL: http://codereview.chromium.org/7064020 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8024 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
This change supports all non-crankshaft features except serialization. This must be built after the changes in http://codereview.chromium.org/6966031 are landed. BUG= TEST= Review URL: http://codereview.chromium.org//7039058 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8023 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
Make mips-specifc changes for r7999, r8001, r8002. Also bring in changes for older commits 7203, 7279, 7693, 7715, 7788. Mips changes for 7715 (Arm: Support hardfloat in SCons build), and 7693 (Implement hardfloat calling convention in macro assembler and simulator) resulted in changes to SConstruct. BUG= TEST= Review URL: http://codereview.chromium.org//6966031 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8022 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 23 May, 2011 6 commits
-
-
vitalyr@chromium.org authored
R=ager@chromium.org Review URL: http://codereview.chromium.org/7066004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8009 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
karlklose@chromium.org authored
KeyedLoadStubCompiler::GenerateLoadExternalArray is tail-calling a stub, which it is not allowed to, because its major key is higher than InstanceOf. Instead of changing the major key I decided to provide an inline implementation. TEST=test-api/ExternalArrays with --noenable-vfp3 R=danno@chromium.org Review URL: http://codereview.chromium.org/7060007 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8002 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
danno@chromium.org authored
Reuse instance_descriptor field in the map to store additional flags when there are no descriptors. When descriptors get added to the map, move the flags to the DescriptorArray and access through indirection. Review URL: http://codereview.chromium.org/7033024 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8001 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
whesse@chromium.org authored
BUG= TEST= Review URL: http://codereview.chromium.org/7062007 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8000 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
danno@chromium.org authored
R=ager@chromium.org BUG=none TEST=test/mjsunit/external-array.js Review URL: http://codereview.chromium.org/7058011 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7999 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
danno@chromium.org authored
R=ager@chromium.org BUG=none TEST=none Review URL: http://codereview.chromium.org/7059013 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7998 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-