• Cherry Zhang's avatar
    cmd/compile, cmd/internal/obj/ppc64: mark unsafe points · ceca99bd
    Cherry Zhang authored
    We'll use CTR as a scratch register for call injection. Mark code
    sequences that use CTR as unsafe for async preemption. Currently
    it is only used in LoweredZero and LoweredMove. It is unfortunate
    that they are nonpreemptible. But I think it is still better than
    using LR for call injection and marking all leaf functions
    nonpreemptible.
    
    Also mark the prologue of large frame functions nonpreemptible,
    as we write below SP.
    
    Change-Id: I05a75431499f3f4b2f23651a7b17f7fcf2afbe06
    Reviewed-on: https://go-review.googlesource.com/c/go/+/203823
    Run-TryBot: Cherry Zhang <cherryyz@google.com>
    TryBot-Result: Gobot Gobot <gobot@golang.org>
    Reviewed-by: default avatarKeith Randall <khr@golang.org>
    ceca99bd
PPC64Ops.go 36.1 KB