- 12 Feb, 2010 5 commits
-
-
whesse@chromium.org authored
Review URL: http://codereview.chromium.org/573009 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3841 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kmillikin@chromium.org authored
Begin changing the interface of the virtual-frame-based code generator to avoid pushing short-lived temporaries on the frame. Review URL: http://codereview.chromium.org/600097 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3840 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
fschneider@chromium.org authored
This change add simple local live variable information to the fast code generator. It supports only AST nodes that are accepted by the syntax checker. Each variable use points to a variable definition structure which contains the last use of the definition. To determine whether a variable is live after a certain point we can check whether its last use occurs later in the evaluation order defined by the AST labeling number. The new information is currently only printed out together with the IR and not yet used for code generation. Review URL: http://codereview.chromium.org/603004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3839 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
whesse@chromium.org authored
Review URL: http://codereview.chromium.org/596036 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3838 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kmillikin@chromium.org authored
Review URL: http://codereview.chromium.org/600069 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3837 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 11 Feb, 2010 4 commits
-
-
ager@chromium.org authored
Review URL: http://codereview.chromium.org/597022 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3835 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ager@chromium.org authored
left operand. For non-commutative operations the right operand could be overwritten with the Smi left operand. We need better testing of all of these cases. We will add more test cases as a separate commit. Review URL: http://codereview.chromium.org/598059 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3834 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kmillikin@chromium.org authored
Initial implementation of ad hoc must-be-smi tracking in the fast code generator. Type information is used to avoid the write barrier for smi property stores and to avoid the smi check for the inputs/output of bitwise OR. Review URL: http://codereview.chromium.org/597021 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3833 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ager@chromium.org authored
function instead of baking in the address of the first one that we see in code. This removes the need for fixups processing and makes the stubs safe when there is no natives cache and therefore multiple versions of the builtin functions. Review URL: http://codereview.chromium.org/594009 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3832 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 10 Feb, 2010 6 commits
-
-
mikhail.naganov@gmail.com authored
Patch from Dineel D Sule <dsule@codeaurora.org>. Original issue: http://codereview.chromium.org/600019 TBR=sgjesse@chromium.org Review URL: http://codereview.chromium.org/593038 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3831 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
whesse@chromium.org authored
Review URL: http://codereview.chromium.org/554152 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3830 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
antonm@chromium.org authored
Review URL: http://codereview.chromium.org/598020 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3829 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kmillikin@chromium.org authored
Explicitly check that global variables do not have accessors or interceptors in the fast code generator syntax checker. Review URL: http://codereview.chromium.org/595022 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3828 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
antonm@chromium.org authored
Review URL: http://codereview.chromium.org/593014 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3827 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kmillikin@chromium.org authored
Do not use the speculative compiler for functions with other than one statement in the body, and do not use it if subexpressions can have side effects. Bailing out to the beginning of the full code is not sound if side effects have already occurred. Add tests that would fail without the restrictions. Review URL: http://codereview.chromium.org/598016 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3826 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 09 Feb, 2010 8 commits
-
-
vitalyr@chromium.org authored
This uses the fact that if a map stayed the same then the object still passes the type check. A new builtin is added to handle the API call in this case. Review URL: http://codereview.chromium.org/573003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3825 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
whesse@chromium.org authored
Eliminate unused function KeyedStoreIC::GenerateExtendStorage, and unused parameter from StubCompiler::GenerateStoreField. Review URL: http://codereview.chromium.org/575022 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3824 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
whesse@chromium.org authored
Review URL: http://codereview.chromium.org/597006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3823 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kmillikin@chromium.org authored
Support a binary operation (bitwise OR) so long as it's not nested in the left subexpression. This ensures that the expression stack never has height greater than two and so can be kept fully in registers. The bounded expression stack height and the absence of any side effects on the fast path allows us to still bailout out to the very beginning of the function if any of our fast-path checks fail. Review URL: http://codereview.chromium.org/594008 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3822 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
lrn@chromium.org authored
Review URL: http://codereview.chromium.org/597005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3821 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
whesse@chromium.org authored
Change GenerateLoadStringLength to have two scratch registers on all platforms. This is needed so that the LoadIC can pass the receiver in a register, and not have it overwritten, and also simplifies the code. Review URL: http://codereview.chromium.org/596011 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3820 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ricow@chromium.org authored
on functions that takes five or more arguments. Original version runs for a long time when there is 5 arguments in a runtime function (45+ seconds). The fuzzer can be run with all arguments on all functions regardless of the number of arguments by setting RUN_WITH_ALL_ARGUMENT_ENTRIES to true in fuzz-natives.js Review URL: http://codereview.chromium.org/598011 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3819 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kmillikin@chromium.org authored
Added helper functions to the fast code generator for temporary, ad hoc fixed register allocation. Also inlined some helper functions that had only one call site to simplify the code generator API for now. Review URL: http://codereview.chromium.org/586002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3818 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 08 Feb, 2010 7 commits
-
-
whesse@chromium.org authored
Review URL: http://codereview.chromium.org/583008 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3817 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
fschneider@chromium.org authored
1. Eliminate unnecessary include of register-allocator-inl.h in frame-element.h. 2. Move functions register-allocator.h to the -inl.h file if they use other inline functions. 3. Add missing includes that resulted from the above changes. Review URL: http://codereview.chromium.org/585009 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3816 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
Review URL: http://codereview.chromium.org/584006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3815 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
http://codereview.chromium.org/561049serya@chromium.org authored
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3814 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mikhail.naganov@gmail.com authored
TBR=sgjesse@chromium.org Review URL: http://codereview.chromium.org/574027 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3813 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
fschneider@chromium.org authored
-inl.h files should only contains small inline functions and no class declarations. Implementation moved to codegen.cc since it's not a performance critical class (only used in DEBUG mode). Review URL: http://codereview.chromium.org/585004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3812 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mikhail.naganov@gmail.com authored
entire file prior to parsing it. This allows processing of huge log files (over 200 MB.) Review URL: http://codereview.chromium.org/574015 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3811 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 05 Feb, 2010 5 commits
-
-
fschneider@chromium.org authored
This is a first step towards loading globals directly from property cells instead of going through a load IC. This change supports only properties with the DontDelete attribute since we are only able to bailout into the generic code generated by the secondary code generator the beginning of a function. The resulting fast-case code is specialized for a specific context. When invoked with a different global object, it will always bailout to the secondary code. When loading a property that does not exist at compile-time or a property that is deleteable we still generate the generic load IC. Review URL: http://codereview.chromium.org/565034 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3808 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mikhail.naganov@gmail.com authored
all stubs have valid major_keys, and this is OK. So I've added a check to avoid termination in debug mode. Review URL: http://codereview.chromium.org/572034 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3807 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
lrn@chromium.org authored
Review URL: http://codereview.chromium.org/571005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3806 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
Patch from Kun Zhang <zhangk@codeaurora.org>, see http://codereview.chromium.org/569015. Review URL: http://codereview.chromium.org/573027 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3804 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ricow@chromium.org authored
Review URL: http://codereview.chromium.org/570040 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3803 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 04 Feb, 2010 5 commits
-
-
mikhail.naganov@gmail.com authored
After this fix, profiles of non-snapshotted VMs are now equivalent to profiles of snapshotted VMs (having that --log-snapshot-positions is used, and mksnapshot's log is given to the tick processor script.) BUG=597 Review URL: http://codereview.chromium.org/574005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3802 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
Review URL: http://codereview.chromium.org/574009 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3801 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
TBR=ager@chromium.org Review URL: http://codereview.chromium.org/572011 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3800 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
This is the first step in the MIPS port of V8. It adds assembler, disassembler and simulator for the MIPS32 architecture. Contains stubbed out implementation of all the compiler/code generator infrastructure to make it all build. Patch by Alexandre Rames from Sigma Designs Inc. This is the landing of http://codereview.chromium.org/543161. Review URL: http://codereview.chromium.org/561072 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3799 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ricow@chromium.org authored
DefineOrRedefineDataProperty to avoid invalid input. Added tests to object-define-property.js to test that it does not crash on invalid input. Review URL: http://codereview.chromium.org/572005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3798 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-