• Jaideep Bajwa's avatar
    PPC/s390: Reland "[arm] Restrict grouping pushes before a TailCall to registers only" · a2388599
    Jaideep Bajwa authored
    Port 79bcb454
    
    Original Commit Message:
    
        This is a reland of a72b2f88
        Original change's description:
        > [arm] Restrict grouping pushes before a TailCall to registers only
        >
        > We optimize parallel moves performed before a TailCall by grouping adjacent
        > pushes. This way, we may use a single instruction to push multiple registers at
        > once. However, we also have support for pushing immediates and stack slots for
        > which the benefit is questionnable therefore this patch removes support for
        > them.
        >
        > Concerning immediate pushes, it looks like a mistake since we do not have
        > support for this case in `AssembleMove` so this patch removes it. Furthermore,
        > if we add a test for this case, we see that a `push ip` instruction is
        > generated, effectively pushing whatever was in `ip` at the time instead of
        > pushing a constant.
        >
        > Concerning stack slot pushes, we generate a more or less equivalent sequence of
        > instructions.
        >
        > Finally, grouping floating point pushes is not used anywhere so this patch
        > removes support for this also.
        >
        > Bug: v8:6553
        > Change-Id: I9b820d33361fc442dd813f66e1f96cda41009110
        > Reviewed-on: https://chromium-review.googlesource.com/567191
        > Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
        > Commit-Queue: Pierre Langlois <pierre.langlois@arm.com>
        > Cr-Commit-Position: refs/heads/master@{#46718}
    
    R=pierre.langlois@arm.com, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com
    BUG=
    LOG=N
    
    Change-Id: I8790c7a72f92803ea8fda3c6dc7e6b013e2e09e9
    Reviewed-on: https://chromium-review.googlesource.com/588471Reviewed-by: 's avatarJunliang Yan <jyan@ca.ibm.com>
    Commit-Queue: Jaideep Bajwa <bjaideep@ca.ibm.com>
    Cr-Commit-Position: refs/heads/master@{#46949}
    a2388599
code-generator-s390.cc 117 KB