github.com/go-asm/go@v1.21.1-0.20240213172139-40c5ead50c48/cmd/compile/ppc64/galign.go (about)

     1  // Copyright 2009 The Go Authors. All rights reserved.
     2  // Use of this source code is governed by a BSD-style
     3  // license that can be found in the LICENSE file.
     4  
     5  package ppc64
     6  
     7  import (
     8  	"github.com/go-asm/go/buildcfg"
     9  	"github.com/go-asm/go/cmd/compile/ssagen"
    10  	"github.com/go-asm/go/cmd/obj/ppc64"
    11  )
    12  
    13  func Init(arch *ssagen.ArchInfo) {
    14  	arch.LinkArch = &ppc64.Linkppc64
    15  	if buildcfg.GOARCH == "ppc64le" {
    16  		arch.LinkArch = &ppc64.Linkppc64le
    17  	}
    18  	arch.REGSP = ppc64.REGSP
    19  	arch.MAXWIDTH = 1 << 50
    20  
    21  	arch.ZeroRange = zerorange
    22  	arch.Ginsnop = ginsnop
    23  
    24  	arch.SSAMarkMoves = ssaMarkMoves
    25  	arch.SSAGenValue = ssaGenValue
    26  	arch.SSAGenBlock = ssaGenBlock
    27  	arch.LoadRegResult = loadRegResult
    28  	arch.SpillArgReg = spillArgReg
    29  }