• Junliang Yan's avatar
    PPC/s390: [Ignition] [TurboFan] Generate speculation poison in code generator. · abac06aa
    Junliang Yan authored
    Port a021b6c4
    
    Original Commit Message:
    
        Moves generation of speculation poison to be based on the PC target vs the
        actual PC being executed. The speculation poison is generated in the prologue
        of the generated code if CompilationInfo::kGenerateSpeculationPoison is set.
        The result is stored in a known register, which can then be read using the
        SpeculationPoison machine node.
    
        Currently we need to ensure the SpeculationPoison node is scheduled right after
        the code prologue so that the poison register doesn't get clobbered. This is
        currently not verified, however it's only use is in RawMachineAssembler where
        it is manually scheduled early.
    
        The Ignition bytecode handlers are updated to use this speculation poison
        rather than one generated by comparing the target bytecode.
    
    R=rmcilroy@chromium.org, joransiu@ca.ibm.com, michael_dawson@ca.ibm.com
    BUG=chromium:798964
    LOG=N
    
    Change-Id: I4b9a1b0865b6164171cf83f0e45c36c69ac08a18
    Reviewed-on: https://chromium-review.googlesource.com/914848Reviewed-by: 's avatarJoran Siu <joransiu@ca.ibm.com>
    Commit-Queue: Junliang Yan <jyan@ca.ibm.com>
    Cr-Commit-Position: refs/heads/master@{#51273}
    abac06aa
code-generator-ppc.cc 94.4 KB