- 18 Feb, 2011 9 commits
-
-
ager@chromium.org authored
We leave room for all registers on the stack so we have to add a bit. This is not nicely factored and I need to do that. This will fix the breakage and I will fix the rest on Monday. TBR=lrn@chromium.org Review URL: http://codereview.chromium.org/6544017 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6857 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
whesse@chromium.org authored
X64 Crankshaft: Implement MathRound, MathFloor, MathSqrt, and MathPowHalf UnaryMathOperations in optimizing code generator. Remove unneeded bailout on Math.pow(-0, 0.5) from ia32 and x64 platforms - we produce the correct value without bailing out. Review URL: http://codereview.chromium.org/6532054 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6856 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
antonm@chromium.org authored
Do not relookup code object and use optimized_code instead shadowing existing code local. Review URL: http://codereview.chromium.org/6541020 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6855 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ager@chromium.org authored
TBR=lrn@chromium.org Review URL: http://codereview.chromium.org/6532055 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6854 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ager@chromium.org authored
Review URL: http://codereview.chromium.org/6469052 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6853 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ager@chromium.org authored
Review URL: http://codereview.chromium.org/6541019 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6852 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
whesse@chromium.org authored
Review URL: http://codereview.chromium.org/6542011 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6850 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
antonm@chromium.org authored
That better follows ECMA-262 (see 13.2 Creating Function Objects) and allows to ignore nasty JS accessors for 'constructor' property. BUG=v8:1172 TEST=test/mjsunit/regress/regress-1172.js Review URL: http://codereview.chromium.org/6531037 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6849 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ricow@chromium.org authored
Object.preventExtensions can currently be used cross-domain. With this change we follow firefox (IE9 has our current behaviour). In addition this includes a regression test for 1027 and access tests for Object.seal and Object.freeze. Review URL: http://codereview.chromium.org/6534019 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6848 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 17 Feb, 2011 15 commits
-
-
mmaly@chromium.org authored
This reverts commit 6845 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6847 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ager@chromium.org authored
Call accessors in the global object prototype when initializing global variables. Function declarations are special cased for compatibility with Safari and setters are not called for them. If this special casing was not done webkit layout tests would fail. Make the declaration of global const variables in the presence of callbacks a redeclaration error. Handle const context slot declarations conflicting with a CALLBACK as a redeclaration error. That is, unless it is on a context extension object which is not a real object and therefore conceptually have no accessors in prototype chains. Accessors in prototype chains of context extension objects are explicitly ignored in SetProperty. Review URL: http://codereview.chromium.org/6534029 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6846 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mmaly@chromium.org authored
CallIC and KeyedCallIC do not wrap this when calling builtin and strict mode functions. Review URL: http://codereview.chromium.org/6523052 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6845 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
antonm@chromium.org authored
That unifies the behaviour with CALL_HEAP_FUNCTION macro. BUG=v8:1165 Review URL: http://codereview.chromium.org/6528050 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6844 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ager@chromium.org authored
may WebKit layout test failures. I will look into it tomorrow. TBR=kmillikin@chromium.org Review URL: http://codereview.chromium.org/6537021 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6843 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
vegorov@chromium.org authored
Patch by Bert Belder. BUG=v8:64 BUG=v8:964 BUG=v8:1029 Review URL: http://codereview.chromium.org/6525028 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6842 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ager@chromium.org authored
variables. Make the declaration of global const variables in the presence of callbacks a redeclaration error. Handle const context slot declarations conflicting with a CALLBACK as a redeclaration error. That is, unless it is on a context extension object which is not a real object and therefore conceptually have no accessors in prototype chains. Accessors in prototype chains of context extension objects are explicitly ignored in SetProperty. Review URL: http://codereview.chromium.org/6519050 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6841 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
vegorov@chromium.org authored
Review URL: http://codereview.chromium.org/6519052 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6840 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
whesse@chromium.org authored
ARM: Port new version of ParallelMove's GapResolver to ARM. Fix error in vstr(DoubleRegister, MemOperand), where it was implemented as a vldr, in r6830. Review URL: http://codereview.chromium.org/6311010 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6839 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
lrn@chromium.org authored
The test contains a syntax error that shouldn't be detected, but it sometimes is. TBR: kmillikin@chromium.org Review URL: http://codereview.chromium.org/6519049 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6836 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kmillikin@chromium.org authored
The baseline compiler does not materialize a value for expressions of the form !expr in an effect context so the graph translation should not produce such an environment, otherwise we risk targeting it by deoptimization. BUG=v8:1167 Review URL: http://codereview.chromium.org/6537018 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6833 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
lrn@chromium.org authored
We currently leave the exception as pending without returning a Failure::Exception() value. This is either caught immediately if running with --debug-code, or caught later by an assert in debug mode. This change makes the pending exception be cleared before returning from the failed optimization attempt. BUG=v8::1145 TEST=test/mjsunit/regress/regress-1145.js Review URL: http://codereview.chromium.org/6524039 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6832 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kmillikin@chromium.org authored
When deoptimizing to after an expression of the form (expr0 || expr1) or (expr0 && expr1) in an effect context, the unoptimized code could incorrectly see the value of the expression. Handle the short-circuit binary operators specially in effect contexts. This fixes the issue and will generate better code when the left subexpression is boolean-valued. BUG=v8:1166 Review URL: http://codereview.chromium.org/6519046 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6831 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
whesse@chromium.org authored
Review URL: http://codereview.chromium.org/6530002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6830 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
The simulator implementation of the icache did not like size being zero. BUG=v8:1090 Review URL: http://codereview.chromium.org/6526052 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6829 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 16 Feb, 2011 16 commits
-
-
vegorov@chromium.org authored
This does not affect correctness of most common use cases. Review URL: http://codereview.chromium.org/6525053 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6827 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
whesse@chromium.org authored
Review URL: http://codereview.chromium.org/6529053 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6826 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
whesse@chromium.org authored
Review URL: http://codereview.chromium.org/6529052 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6825 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
whesse@chromium.org authored
Review URL: http://codereview.chromium.org/6529024 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6824 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
The crankshaft code now only relies on the type recording binary operation stub. Added check for overwritable heap number in the type recording binary operation stub. Review URL: http://codereview.chromium.org/6529050 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6823 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
danno@chromium.org authored
Review URL: http://codereview.chromium.org/6525052 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6822 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ager@chromium.org authored
BUG= TEST= Review URL: http://codereview.chromium.org/6526049 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6821 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
danno@chromium.org authored
Review URL: http://codereview.chromium.org/6526048 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6820 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ager@chromium.org authored
BUG= TEST= Review URL: http://codereview.chromium.org/6480116 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6819 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ager@chromium.org authored
BUG= TEST= Review URL: http://codereview.chromium.org/6525051 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6818 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
danno@chromium.org authored
Review URL: http://codereview.chromium.org/6528013 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6817 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ager@chromium.org authored
strstr returns a pointer and we are using an int to store a pointer difference. Using intptr_t instead. Review URL: http://codereview.chromium.org/6529049 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6816 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kmillikin@chromium.org authored
Review URL: http://codereview.chromium.org/6530001 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6811 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ager@chromium.org authored
As with named properties, search the value wrapper prototypes for properties. Review URL: http://codereview.chromium.org/6526046 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6810 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
antonm@chromium.org authored
In some circumstances, try/finally block can actually catch the exception: function f() { try { throw 42; } finally { return 0; } } Therefore when propagating exception to v8::TryCatch, we must be sure there is no try/finally blocks as well. When bulding the messages we should be more conservative and expect that any v8::TryCatch with no JS try/catch in between can potentionally be the right exception handler. Plus various minor refactorings. BUG=1147 TEST=cctest/test-api/TryCatchAndFinallyHidingException, cctest/test-api/TryCatchAndFinally Review URL: http://codereview.chromium.org/6526016 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6809 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ricow@chromium.org authored
Review URL: http://codereview.chromium.org/6480109 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6808 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-