- 09 Feb, 2011 15 commits
-
-
kmillikin@chromium.org authored
If we have a property access of the form this.x, where the access site sees the global object, we can specialize the IC stub so that it performs a map check without first performing a heap object check. Ensure that we do not get in JS code with a non-JSObject this value by deoptimizing at Function.prototype.apply if the first argument is not a JSObject. BUG=v8:1128 Review URL: http://codereview.chromium.org/6463025 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6707 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
whesse@chromium.org authored
Make VS2005 project files compile without errors: changelist http://codereview.chromium.org/6286135/. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6706 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
whesse@chromium.org authored
Review URL: http://codereview.chromium.org/6459023 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6705 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
Change the comparison in the full code generator to use CompareIC instead of the CompareStub to record the types. This also implements the patching in the full code generator where the inlined smi code is de-activated by default to call the CompareIC once and then activating the inlined smi code by patching the code. Fixed the smi comparison in the ICCompareStub. Fixed ToBooleanStub to ensure that the scratch register used is not the input. Use r9 as default as that will never be input with Crankshaft. Implemented lithium instruction CmpTAndBranch. Make sure that the lithium instruction CmpID have operands in registrers as the current optimized code expects that. Review URL: http://codereview.chromium.org/6461017 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6704 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ager@chromium.org authored
the code generated by the full code generator after my previous change. The generated code is the same as on ia32 and so is the patching. Review URL: http://codereview.chromium.org/6456023 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6703 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
Review URL: http://codereview.chromium.org/6458026 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6702 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
lrn@chromium.org authored
BUG=v8::1126 TEST=test/mjsunit/regress/regress-1126.js Review URL: http://codereview.chromium.org/6459021 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6701 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
floitschV8@gmail.com authored
Review URL: http://codereview.chromium.org/6461018 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6700 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
whesse@chromium.org authored
Review URL: http://codereview.chromium.org/6458027 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6699 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
whesse@chromium.org authored
Review URL: http://codereview.chromium.org/6460030 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6698 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
whesse@chromium.org authored
Review URL: http://codereview.chromium.org/6447007 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6697 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
fschneider@chromium.org authored
Instead of using the stack, use a temporary integer register and avoid memory access. Review URL: http://codereview.chromium.org/6452002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6696 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ricow@chromium.org authored
Since our zap values are valid heap object addreses we might hit asserts if a heap object gets the value of a zap constant as its address. Review URL: http://codereview.chromium.org/6456022 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6695 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kmillikin@chromium.org authored
When constructing stack traces we interpret the deoptimization data for optimized frames to find the receiver value. This value could sometimes be eliminated from the deoptimization data if we though it was unused. BUG=v8:1118 Review URL: http://codereview.chromium.org/6465023 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6694 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
antonm@chromium.org authored
BUG=1125 TEST=test/mjsunit/regress/regress-1125.js Review URL: http://codereview.chromium.org/6463001 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6693 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 08 Feb, 2011 24 commits
-
-
antonm@chromium.org authored
If --debug-code is on, check that returned value and Top::has_pending_exception agree on exception state. Review URL: http://codereview.chromium.org/6450004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6692 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
antonm@chromium.org authored
BUG=v8:1121 TEST=test/mjsunit/regress/regress-1121.js Review URL: http://codereview.chromium.org/6454004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6691 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ager@chromium.org authored
Review URL: http://codereview.chromium.org/6458001 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6690 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
antonm@chromium.org authored
Plus use more robust path when formatting messages---work directly with fixed arrays. BUG=v8:1107 TEST=test/mjsunit/getter-in-prototype.js,test/mjsunit/regress/regress-1107.js Review URL: http://codereview.chromium.org/6451004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6689 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
antonm@chromium.org authored
BUG=v8:1111 Review URL: http://codereview.chromium.org/6450005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6688 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
antonm@chromium.org authored
2) We cannot assert the declared property will go to the extension in the presence of callbacks and interceptors. BUG=1119 TEST=test/mjsunit/regress/regress-1119.js Review URL: http://codereview.chromium.org/6454011 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6687 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ager@chromium.org authored
Review URL: http://codereview.chromium.org/6453009 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6686 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ager@chromium.org authored
BUG=none TEST=none Review URL: http://codereview.chromium.org/6447003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6685 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
vegorov@chromium.org authored
BUG=v8:1109 TEST=test/mjsunit/regress/regress-1109.js Review URL: http://codereview.chromium.org/6453005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6684 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ager@chromium.org authored
Review URL: http://codereview.chromium.org/6452004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6683 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kmillikin@chromium.org authored
The state here should be NO_REGISTERS. It was spuriously changed to from NO_REGISTERS to TOS_REG when TOS_EAX was renamed to TOS_REG. BUG=v8:1113 Review URL: http://codereview.chromium.org/6452007 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6682 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ricow@chromium.org authored
Review URL: http://codereview.chromium.org/6448001 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6681 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
lrn@chromium.org authored
BUG=v8:1105 TEST=test/mjsunit/regress/regress-1105.js Review URL: http://codereview.chromium.org/6451003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6680 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kmillikin@chromium.org authored
For redeclarations of variables that alias the parameters in functions using arguments, we need to avoid re-visiting the shared variable rewrite. BUG=v8:1104 Review URL: http://codereview.chromium.org/6453004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6679 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
whesse@chromium.org authored
Bailout from crankshaft if a global property is found in the prototype chain of the global object, not on the global object itself. Review URL: http://codereview.chromium.org/6449002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6678 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ricow@chromium.org authored
When calling Object.isExtensible we did not do a check for the global js proxy. This caused the check on the extensible bit on the map to return true, even when the bit was set to false on the global js object. Review URL: http://codereview.chromium.org/6450003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6677 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
vegorov@chromium.org authored
Original patch by Alexander Karpinsky. Review URL: http://codereview.chromium.org/6440001 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6676 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ricow@chromium.org authored
but instead call this on the global object. BUG: 1103 Review URL: http://codereview.chromium.org/6454001 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6675 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
lrn@chromium.org authored
It added the __proto__ key as a normal key, which made it visible in enumeration, while reading still hit the hard-coded accessor. Review URL: http://codereview.chromium.org/6451002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6674 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
whesse@chromium.org authored
Review URL: http://codereview.chromium.org/6451001 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6673 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
fschneider@chromium.org authored
1. Remove unnecessary superlcass LConstant. 2. Use hydrogen accessor instead of duplicating the value. Review URL: http://codereview.chromium.org/6410120 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6672 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
vegorov@chromium.org authored
Provide special case for f.bind(obj). Review URL: http://codereview.chromium.org/6368138 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6671 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
whesse@chromium.org authored
Review URL: http://codereview.chromium.org/6449001 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6670 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ager@chromium.org authored
- Don't use SmiSub when overflow can occur. It asserts that overflow does not happen. - Actually use CompareICs and signal to crankshaft whether or not smi code was inlined. - Fix bug in CmpI where 64 bits were compared instead of 32 bits. - Implement Throw, DeferredStackCheck, StoreKeyedFastElement in lithium backend. BUG= TEST= Review URL: http://codereview.chromium.org/6312193 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6669 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 07 Feb, 2011 1 commit
-
-
mmaly@chromium.org authored
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6668 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-