- 09 Mar, 2011 3 commits
-
-
danno@chromium.org authored
Worth mentioning: - Specialized versions of pixel array and store/loads inside the generic stubs have been removed, since to have parity for all external arrays, 8 different versions would have to be inlined/checked. - There's a new constant in v8.h for external arrays with pixel array elements. Review URL: http://codereview.chromium.org/6546036 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7106 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kmillikin@chromium.org authored
Refactor construction of switch statements so it doesn't use class HSubgraph. There are also a few improvements. We do not use an auxiliary list of comparisons because they're embedded as a linked list in the graph under construction. We share a common break block for all breaks from the same switch. We do not insert empty blocks unless necessary to maintain edge-split form. There is also a bug fix. The entry to a clause body is a potential join and must have a join ID set, otherwise deoptimization within the body can go to an unpredictable place in the unoptimized code. Review URL: http://codereview.chromium.org/6650021 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7099 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
Non-moveable code-stube are allocated in large object space. They are only required on ARM where the different C-entry stubs are required to never move. This gets rid of pre-computing these stubs and hope that they never move. Also for crankshaft the C-entry stub which saved doubles is not generated in the snapshot so it ends up being generated at runtime and potentially move. Review URL: http://codereview.chromium.org/6626072 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7097 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 08 Mar, 2011 1 commit
-
-
karlklose@chromium.org authored
Review URL: http://codereview.chromium.org/6613015 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7086 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 07 Mar, 2011 2 commits
-
-
mmaly@chromium.org authored
Move strict mode flag from TemporaryScope to Scope so that it can be accessed from variable binding code. Arguments do not alias in strict mode (ia32, x64 and arm, codegen and full codegen). Hydrogen tolerates null arguments_shadow(). In codegen-<arch> arguments object is allocated eagerly to capture values before they get modified. Review URL: http://codereview.chromium.org/6625048/ git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7083 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kmillikin@chromium.org authored
Change the way we construct the graph for polymorphic loads to match that of polymorphic stores. Introduce a stack-allocated helper for saving and restoring all the function-specific graph builder state that needs to change when we begin translating an inlined function. Make this class authoritative by moving redundant state out of the builder and deferring to the current function's state. Ensure that we always print a tracing message when abandoning an inlining attempt. Review URL: http://codereview.chromium.org/6628012 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7074 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 04 Mar, 2011 1 commit
-
-
sgjesse@chromium.org authored
BUG=none TEST=none Patch by Rodolph Perfetta from ARM Ltd. Review URL: http://codereview.chromium.org/6612017 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7055 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 03 Mar, 2011 8 commits
-
-
lrn@chromium.org authored
Review URL: http://codereview.chromium.org/6613016 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7046 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
whesse@chromium.org authored
Review URL: http://codereview.chromium.org/6614015 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7042 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
whesse@chromium.org authored
Review URL: http://codereview.chromium.org/6606005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7041 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
lrn@chromium.org authored
In built-in code we use arrays for internal computations. This makes it possible to affect the built-in code by putting getters or setters on the Array prototype chain. This adds a new internal Array constructor that creates Arrays with a very simplistic prototype chain that doesn't include any publicly visible objects. These Arrays shoudl ofcourse never leak outside the builtins, since that would expose the prototype object. The prototype object contains only the array functions that we use: push, pop and join (and not even a toString, so it doesn't stringify well). Also change uses of .call to %_CallFunction. BUG=1206 Review URL: http://codereview.chromium.org/6602081 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7040 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
TBR=karlklose@chromium.org Review URL: http://codereview.chromium.org/6614012 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7038 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
BUG=v8:1093 Review URL: http://codereview.chromium.org/6611014 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7037 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
TBR=karlklose@chromium.org Review URL: http://codereview.chromium.org/6615008 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7036 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
Review URL: http://codereview.chromium.org/6597106 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7033 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 02 Mar, 2011 4 commits
-
-
whesse@chromium.org authored
Add ArithmeticD(MOD) to x64 optimizing code generator. Minor changes to ArithmeticD on other platforms. Review URL: http://codereview.chromium.org/6594118 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7029 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
karlklose@chromium.org authored
Review URL: http://codereview.chromium.org/6591073 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7028 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
TEST=none BUG=none Patch by Rodolph Perfetta from ARM Ltd. Review URL: http://codereview.chromium.org/6594009 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7014 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mmaly@chromium.org authored
Review URL: http://codereview.chromium.org/6594037/ Revert "Revert "Assignment to read only properties throws in strict mode."" This reverts commit aefcd82e1d36d458dd071ebf4777340f08aa67b1. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7007 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 01 Mar, 2011 8 commits
-
-
fschneider@chromium.org authored
This fixes an assert when an exception is thrown inside instanceof. BUG=v8:1207 TEST=mjsunit/regress/regress-1207.js Review URL: http://codereview.chromium.org/6588083 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6999 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
vitalyr@chromium.org authored
Review URL: http://codereview.chromium.org/6598066 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6998 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
Review URL: http://codereview.chromium.org/6594071 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6994 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
vegorov@chromium.org authored
Review URL: http://codereview.chromium.org/6596070 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6991 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
Fixed Building the simulator with CAN_USE_UNALIGNED_ACCESSES defined. Fixed a bug in the code generator where it was doing unaliged read and write. Review URL: http://codereview.chromium.org/6598062 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6983 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
fschneider@chromium.org authored
This change makes the full code generator always materialize smi constants to match the behavior of the environment tracked in the optimizing compiler. The mismatch between environment and what the non-optimized code causes problems and potentially crashes when doing deoptimization and OSR. BUG=67732 Review URL: http://codereview.chromium.org/6592064 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6982 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mmaly@chromium.org authored
This reverts commit 503f2a501e504f330821f247074e731aa649b1f0. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6977 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mmaly@chromium.org authored
Review URL: http://codereview.chromium.org/6594037/ git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6976 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 28 Feb, 2011 1 commit
-
-
sgjesse@chromium.org authored
Review URL: http://codereview.chromium.org/6594045 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6963 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 25 Feb, 2011 2 commits
-
-
sgjesse@chromium.org authored
Use ToBooleanStub in DoTest instead of runtime call. Try allocation in generated code in VisitRegExpLiteral. Use TranscendentalCacheStub for sin, cos and log instead of calling runtime. Minor "alignment" of the full codegen code across platforms. Review URL: http://codereview.chromium.org/6597003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6953 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
The double to i convertion should round to zero not infinity. Thes bug was revealed by http://codereview.chromium.org/6597003, where the value of (x * 1.0000000001) | 0 was x - 1 and not x when x was a negative smi. I will not commit http://codereview.chromium.org/6597003 before this is committed. TEST=test/mjsunit/smi-ops-inlined.js Review URL: http://codereview.chromium.org/6594008 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6951 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 24 Feb, 2011 6 commits
-
-
antonm@chromium.org authored
Direct call accessor getter callbacks (arm implementation). Original review: http://codereview.chromium.org/6462029/ Review URL: http://codereview.chromium.org/6576035 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6938 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
The loading the register used for the null object was to early and it could be clobbered. TBR=karlklose@chromium.org BUG=none TEST=mozilla/ecma_3/Statements/regress-131348 Review URL: http://codereview.chromium.org/6578020 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6937 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
r5445: Implement for-in cache validity checking in the full codegen on IA-32. Review URL: http://codereview.chromium.org/6581031 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6930 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
karlklose@chromium.org authored
BUG=1811 TEST=test/mjsunit/regress/regress-1181.js Review URL: http://codereview.chromium.org/6573004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6925 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
TBR=ricow@chromium.org Review URL: http://codereview.chromium.org/6580026 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6921 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
r6635: Remove the redundant load on every context lookup. r6659: Do not compile the unreachable body of functions with illegal redeclarations. Review URL: http://codereview.chromium.org/6572003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6920 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 23 Feb, 2011 2 commits
-
-
fschneider@chromium.org authored
Review URL: http://codereview.chromium.org/6538080 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6910 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
karlklose@chromium.org authored
Review URL: http://codereview.chromium.org/6532020 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6909 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 22 Feb, 2011 2 commits
-
-
http://code.google.com/p/v8/issues/detail?id=1176mmaly@chromium.org authored
Review URL: http://codereview.chromium.org/6469083/ git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6904 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
rossberg@chromium.org authored
Allocate the context in the prologue. Two issues had to be solved: (1) deoptimization needs to handle functions with a local context, (2) we need a safepoint in the prologue. (Thanks to Kevin.) Review URL: http://codereview.chromium.org/6534022 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6903 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-