- 20 Sep, 2011 2 commits
-
-
kmillikin@chromium.org authored
We reset the count of outgoing arguments, used for the index in the frame's outgoing arguments, for each level of inlining. This could result in the arguments overlapping, rather than stacking on top of each other. R=whesse@chromium.org,fschneider@chromium.org BUG= TEST= Review URL: http://codereview.chromium.org/7932022 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9331 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
fschneider@chromium.org authored
BUG=v8:1698 Review URL: http://codereview.chromium.org/7974006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9330 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 19 Sep, 2011 6 commits
-
-
erik.corry@gmail.com authored
BUG=1696 Review URL: http://codereview.chromium.org/7956002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9329 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
vegorov@chromium.org authored
Review URL: http://codereview.chromium.org/7945009 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9328 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
fschneider@chromium.org authored
We don't modify the graph in later phases. This speeds up debug tests by a lot. Review URL: http://codereview.chromium.org/7942001 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9325 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
svenpanne@chromium.org authored
Although this patch is not small, most parts of it are rather mechanical: * First of all, the concept of a 'nil-like' value is introduced, which can be null or undefined. They are treated symmetrically regarding comparisons, so it makes sense to handle them in a uniform manner. It is a mystery why JavaScript defines two of those beasts, when even *one* is a design wart... * Extended and renamed a few things which now handle undefined in addition to null. * Made the parts of the full code generator and the hydrogen generation which deal with comparisons a bit more similar regarding their handling of special cases. * Refactored the syntactical detection of special cases for comparisons, hopefully making them a bit more readable and less copy-n-paste-oriented. Things like this should really be a one-liner in any sane programming language... :-P * Cut down the length of the argument lists of a few functions to something less insane, making them more easily understandable locally. This involves minor code duplication, but this was a good tradeoff and can be remedied later if necessary. * Replaced some boolean arguments with more readable enums. * Fixed a TODO: Values which are definitely a Smi or unboxed can never be equal to null or undefined. Review URL: http://codereview.chromium.org/7918012 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9323 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
ported r9310 (72a5468) BUG= TEST= Review URL: http://codereview.chromium.org/7931002 Patch from Paul Lind <plind44@gmail.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9322 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
generation on ARM without VFP3. Review URL: http://codereview.chromium.org/7937004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9319 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 18 Sep, 2011 4 commits
-
-
whesse@chromium.org authored
BUG= TEST= Review URL: http://codereview.chromium.org/7931023 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9318 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erikcorry authored
An ARM PreIndex store was badly ported. Landing http://codereview.chromium.org/7934003/ for Paul Lind. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9317 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erikcorry authored
port r9258 (c8709a9) Note on mips implementation: Arm reg r4 (call type) normally maps to mips reg t0. We had already used t0 as a temp in Generate_FunctionCall() and Generate_FunctionApply(), so I replaced that existing t0 usage with t3, and now use t0 only for call type. Original commit message: Introduce new %Apply native. Extend Execution::Call to optionally handle receiver rewriting (needed for %Apply). Fix Function.prototype.bind for functions that have .apply modified. Landing http://codereview.chromium.org/7891033/ for Paul Lind. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9316 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erikcorry authored
Fix a mips-specific CallCFunction assertion, when checking for valid frames on the stack. We fake it with AllowExternalCallThatCantCauseGC(). Landing http://codereview.chromium.org/7932010/ for Paul Lind. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9315 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 17 Sep, 2011 1 commit
-
-
fschneider@chromium.org authored
This flag is used to debug problems with inlining. By default we still limit inlining to small functions and up to a maximum depth to avoid too much code size growth. Review URL: http://codereview.chromium.org/7919012 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9314 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 16 Sep, 2011 6 commits
-
-
rossberg@chromium.org authored
Fix a couple of other proxy bugs along the way. Refactor trap invocation in native code. R=kmillikin@chromium.org BUG=v8:1543 TEST= Review URL: http://codereview.chromium.org/7799026 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9312 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
Review URL: http://codereview.chromium.org/7920006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9311 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
rossberg@chromium.org authored
R=kmillikin@chromium.org BUG=v8:1543 TEST= Review URL: http://codereview.chromium.org/7628021 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9310 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
Review URL: http://codereview.chromium.org/7922008 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9309 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
danno@chromium.org authored
Highlights: - code-stubs-mips.cc -- use EmitFPUTruncate in place of inline code in several places. -- use BranchF macro rather than lower-level FP cmp and branch for readability. -- Port of Sven's r8859 (Implement type recording for ToBoolean) and r8886 (Simplify and optimize ToBoolean handling.) -- Fix bug in TranscendentalCacheStub::Generate where some regs were not saved across CFunction call. -- use updated xxxCFunction macros. -- update InstanceOfStub to support crankshaft DoDeferredLInstanceOfKnownGlobal -- Provide code-patching and I-cache flushing support for generated code, used for InstanceOfStub under crankshaft (not submitted here). This requires adding new ExternalReference to src/assember.cc,h - stub-cache-mips.cc -- port Danno's r8901 (Create a common base class for Fixed-, FixedDouble- and ExternalArrays) to mips crankshaft branch. BUG= TEST= Review URL: http://codereview.chromium.org/7890001 Patch from Paul Lind <plind44@gmail.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9308 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
danno@chromium.org authored
Highlights: - Better support for FP compares and branches (BranchF macro) - Add EmitFPUTruncate() macro, similar to EmitVFPTruncate on Arm. - Some improvements to long-branch mechanism for mips. - Add ClampUint8() and ClampDoubleToUint8() - Minor changes to ic-mips, full-codegen-mips mostly, for improved code-patching with BinaryOpStub. - Small changes to stack checking in full-codegen-mips and regexp-macro-assembler-mips BUG= TEST= Review URL: http://codereview.chromium.org/7888004 Patch from Paul Lind <plind44@gmail.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9307 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 15 Sep, 2011 16 commits
-
-
erik.corry@gmail.com authored
we appear to have valid asserts triggering. Review URL: http://codereview.chromium.org/7908005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9305 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
danno@chromium.org authored
Support sharing maps after an changing an object's ElementsKind for element kinds other then external elements. R=svenpanne@chromium.org BUG=none TEST=external-arrays.js Review URL: http://codereview.chromium.org/7862036 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9304 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
Review URL: http://codereview.chromium.org/7910001 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9303 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
BUG=v8:1683 Review URL: http://codereview.chromium.org/7906003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9302 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jkummerow@chromium.org authored
TEST=mozilla tests are green Review URL: http://codereview.chromium.org/7908002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9301 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
Review URL: http://codereview.chromium.org/7909002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9300 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jkummerow@chromium.org authored
and make window.{Infinity,NaN,undefined} read-only as per ES5 BUG=89490 TEST=mjsunit/const-redecl.js, mjsunit/undeletable-functions.js, es5conform, sputnik Review URL: http://codereview.chromium.org/7811015 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9299 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jkummerow@chromium.org authored
Review URL: http://codereview.chromium.org/7903005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9298 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
1) Don't make a call to C without having a valid frame on the stack. 2) Don't generate a call to a stub while generating a stub, unless we can be sure that the stub we are calling has already been generated (the stub generation code is not reentrant wrt. GC). Review URL: http://codereview.chromium.org/7891042 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9297 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
TEST=cctest test-strings/SliceFromExternal, mjsunit/string-slices.js Review URL: http://codereview.chromium.org/7832002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9295 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
fschneider@chromium.org authored
Review URL: http://codereview.chromium.org/7887038 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9294 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
svenpanne@chromium.org authored
The Great Master Plan is to move the recognition of special cases for comparisons further down the compilation pipeline where more information is available. This is a first step into this direction: The special handling of equality comparisons involving null is pushed from the parser to the code generators, removing the need for a special AST node. (There are rumors from usually well-informed sources that this node type is actually a relic of ancient crankshaft days...) The next steps will be the unification of null/undefined handling and pushing the special case handling in crankshaft even further down the pipeline, enabling the recognition of cases like "var foo=null; if (foo === bar) ...", but these will be in separate CLs. Review URL: http://codereview.chromium.org/7887037 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9293 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jkummerow@chromium.org authored
TEST=make native; make native.check; make native.clean Review URL: http://codereview.chromium.org/7891045 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9292 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jkummerow@chromium.org authored
Patch by Ben Noordhuis <info@bnoordhuis.nl>. I don't have a Solaris box around to test this myself. BUG=v8:1684 Review URL: http://codereview.chromium.org/7889038 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9291 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
BUG=v8:1639 Review URL: http://codereview.chromium.org/7889039 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9287 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
lrn@chromium.org authored
R=ricow@chromium.org Review URL: http://codereview.chromium.org/7905001 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9286 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 14 Sep, 2011 5 commits
-
-
vegorov@chromium.org authored
R=fschneider@chromium.org,sgjesse@chromium.org BUG= TEST= Review URL: http://codereview.chromium.org/7890028 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9285 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
Review URL: http://codereview.chromium.org/7885026 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9282 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
keuchel@chromium.org authored
BUG=96523 TEST=mjsunit/regress/regress-96523.js Review URL: http://codereview.chromium.org/7890031 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9281 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
lrn@chromium.org authored
Uses the new %Apply runtime function instead. Removes last(?) dependency on user-mungable infrastructure. Review URL: http://codereview.chromium.org/7887031 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9277 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
lrn@chromium.org authored
Review URL: http://codereview.chromium.org/7892025 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9276 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-