- 15 Mar, 2012 7 commits
-
-
mstarzinger@chromium.org authored
According to ES5 10.4.2(3), eval calls of strict code always require their own lexical and variable environment. For now we just add a new scope when we parse the strict mode directive. The clean solution would be to always have this sope present (even for global eval calls) and adapt variable binding to cope with that. R=rossberg@chromium.org BUG=v8:1624 TEST=mjsunit/regress/regress-1624,test262/S10.4.2.1_A1 Review URL: https://chromiumcodereview.appspot.com/9703021 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11057 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
vegorov@chromium.org authored
Port r11008 (f7a04e6f9). Original commit message: Support arguments materialization after deoptimization in all frames (not only in topmost one). BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/9677053 Patch from Daniel Kalmar <kalmard@homejinni.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11056 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
vegorov@chromium.org authored
Use corresponding phi from the loop entry as a hint to infer proper representation for HUnkownOSRValue and dependent phis. R=fschneider@chromium.org Review URL: https://chromiumcodereview.appspot.com/9704012 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11055 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
pfeldman@chromium.org authored
Review URL: https://chromiumcodereview.appspot.com/9677043 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11054 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
danno@chromium.org authored
R=fschneider@chromium.org BUG=v8:2004 TEST=test/mjsunit/pixel-array-rounding.js Review URL: https://chromiumcodereview.appspot.com/9702027 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11053 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
svenpanne@chromium.org authored
TBR=mstarzinger@chromium.org Review URL: https://chromiumcodereview.appspot.com/9703056 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11052 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
svenpanne@chromium.org authored
Ensure that generated code for object literals will call Runtime_DefineOrRedefineAccessorProperty only once per accessor property. To do this, we collect all accessor properties in a first pass and emit code for defining those properties afterwards in a second pass. As a finger exercise, the table used for collecting accessors has a (subset of an) STL-like iterator interface, including STL-like names and operators. Although C++ is quite verbose here (as usual, but partly this is caused by our current slightly clumsy classes/templates), things work out quite nicely and it cleans up some confusion, e.g. a table entry is not an iterator etc. Everything compiles into very efficient code, e.g. the loop condition 'it != accessor_table.end()' compiles into a single 'testl' instruction on ia32. +1 for using standard APIs! Review URL: https://chromiumcodereview.appspot.com/9691040 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11051 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 14 Mar, 2012 11 commits
-
-
mstarzinger@chromium.org authored
R=rossberg@chromium.org BUG=v8:1973 TEST=mjsunit/regress/regress-1973 Review URL: https://chromiumcodereview.appspot.com/9705020 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11050 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
rossberg@chromium.org authored
R=ulan@chromium.org BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/9706025 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11049 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/9702026 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11048 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mstarzinger@chromium.org authored
R=jkummerow@chromium.org Review URL: https://chromiumcodereview.appspot.com/9702022 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11047 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mstarzinger@chromium.org authored
R=svenpanne@chromium.org Review URL: https://chromiumcodereview.appspot.com/9699023 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11044 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
rossberg@chromium.org authored
R=mstarzinger@chromium.org BUG=115452 TEST=mjsunit/regress/regress-115452 Review URL: https://chromiumcodereview.appspot.com/9696035 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11043 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ulan@chromium.org authored
R=vegorov@chromium.org Review URL: https://chromiumcodereview.appspot.com/9695002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11042 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
vegorov@chromium.org authored
For DIV with uninitialized result assume double result representation. R=fschneider@chromium.org Review URL: https://chromiumcodereview.appspot.com/9664070 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11041 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mstarzinger@chromium.org authored
R=jkummerow@chromium.org Review URL: https://chromiumcodereview.appspot.com/9703018 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11038 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jkummerow@chromium.org authored
R=mstarzinger@chromium.org Review URL: https://chromiumcodereview.appspot.com/9699016 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11037 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
fschneider@chromium.org authored
When prepending a '-' to the function name, the function will not be optimized. --hydrogen-filter=foo works as before. --hydrogen-filter=-foo means don't optimize foo. Review URL: https://chromiumcodereview.appspot.com/9691042 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11036 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 13 Mar, 2012 13 commits
-
-
jkummerow@chromium.org authored
TBR=yangguo@chromium.org TEST=Win Reliability Builder stops complaining Review URL: https://chromiumcodereview.appspot.com/9693052 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11034 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/9695053 Patch from Bert Belder <bertbelder@gmail.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11033 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/9692048 Patch from Daniel Kalmar <kalmard@homejinni.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11032 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jkummerow@chromium.org authored
R=danno@chromium.org Review URL: https://chromiumcodereview.appspot.com/9689062 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11031 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/9694041 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11030 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
alexeif@chromium.org authored
BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/9695046 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11029 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
vegorov@chromium.org authored
We do not know if we are going to need it and creating it lazyly might cause us to insert it at the block that does not dominate all uses. R=mstarzinger@chromium.org TEST=mjsunit/compiler/inline-arguments.js Review URL: https://chromiumcodereview.appspot.com/9692046 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11024 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mstarzinger@chromium.org authored
This uses the type feedback already present for computed value stores into object literals to generate optimized stores in Crankshaft, thus avoiding unnecessary generic stores with side effects. R=svenpanne@chromium.org Review URL: https://chromiumcodereview.appspot.com/9692036 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11023 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kmillikin@chromium.org authored
There was a comment that, for such ICs specialized to the global object, they were always contextual loads. This is very brittle. It is a micro-optimization that relies too much on the way that things happen to work today. Instead, never omit the smi check because it's safer. R=vegorov@chromium.org BUG=117794 TEST=regress-117794.js Review URL: https://chromiumcodereview.appspot.com/9691038 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11022 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
Also included: simplify String.slice. BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/9694033 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11021 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jkummerow@chromium.org authored
R=yangguo@chromium.org Review URL: https://chromiumcodereview.appspot.com/9693037 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11020 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ulan@chromium.org authored
R=jkummerow@chromium.org Review URL: https://chromiumcodereview.appspot.com/9694032 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11019 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
R=svenpanne@chromium.org BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/9696030 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11016 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 12 Mar, 2012 9 commits
-
-
yangguo@chromium.org authored
BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/9662064 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11015 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
fschneider@chromium.org authored
Review URL: https://chromiumcodereview.appspot.com/9664067 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11014 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
Review URL: https://chromiumcodereview.appspot.com/9690019 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11013 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
BUG= TEST=regress-sqrt.js Review URL: https://chromiumcodereview.appspot.com/9690010 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11012 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
fschneider@chromium.org authored
Review URL: https://chromiumcodereview.appspot.com/9666055 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11011 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
fschneider@chromium.org authored
This change includes two CLs by pliard@chromium.org: 1. http://codereview.chromium.org/9447052/ (Add CallOnce() and simple LazyInstance implementation): Note that this implementation of LazyInstance does not handle global destructors (i.e. the lazy instances are never deleted). This CL was initially reviewed on codereview.appspot.com: http://codereview.appspot.com/5687064/ 2. http://codereview.chromium.org/9455088/ (Remove static initializers in v8): This CL depends on CL 9447052 (adding CallOnce and LazyInstance). It is based on a patch sent by Digit. With this patch applied, we have only one static initializer left (in atomicops_internals_x86_gcc.cc). This static initializer populates a structure used by x86 atomic operations. It seems that we can hardly remove it. If possible, it will be removed in a next CL. This CL also modifies the presubmit script to check the number of static initializers. BUG=v8:1859 Review URL: https://chromiumcodereview.appspot.com/9666052 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11010 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
int32_t on Windows). Review URL: https://chromiumcodereview.appspot.com/9669051 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11009 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
vegorov@chromium.org authored
Support arguments materialization after deoptimization in all frames (not only in topmost one). R=fschneider@chromium.org Review URL: https://chromiumcodereview.appspot.com/9643001 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11008 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
Review URL: https://chromiumcodereview.appspot.com/9600009 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11007 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-