• plind44@gmail.com's avatar
    MIPS: Inline zero argument array constructor. · 166799c2
    plind44@gmail.com authored
    Port r17741 (fe14ef8)
    
    Original commit message:
    patch from issue 54583003 (dependent code).
    
    Zero arguments - very easy
    
    1 argument - three special cases:
    a) If length is a constant in valid array length range,
    no need to check it at runtime.
    b) respect DoNotInline feedback on the AllocationSite for
    cases that the argument is not a smi or is an integer
    with a length that should create a dictionary.
    c) if kind feedback is non-holey, and length is non-constant,
    we'd have to generate a lot of code to be correct.
    Don't inline this case.
    
    N arguments - one special case:
    a) If a deopt ever occurs because an input argument isn't
    compatible with the elements kind, then set the
    DoNotInline flag.
    
    BUG=
    R=plind44@gmail.com
    
    Review URL: https://codereview.chromium.org/72893003
    
    Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
    
    git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17759 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
    166799c2
code-stubs-mips.cc 223 KB