github.com/FenixAra/go@v0.0.0-20170127160404-96ea0918e670/src/cmd/compile/internal/amd64/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 amd64
     6  
     7  import (
     8  	"cmd/compile/internal/gc"
     9  	"cmd/internal/obj"
    10  	"cmd/internal/obj/x86"
    11  )
    12  
    13  var leaptr = x86.ALEAQ
    14  
    15  func Init() {
    16  	gc.Thearch.LinkArch = &x86.Linkamd64
    17  	if obj.GOARCH == "amd64p32" {
    18  		gc.Thearch.LinkArch = &x86.Linkamd64p32
    19  		leaptr = x86.ALEAL
    20  	}
    21  	gc.Thearch.REGSP = x86.REGSP
    22  	gc.Thearch.MAXWIDTH = 1 << 50
    23  
    24  	gc.Thearch.Defframe = defframe
    25  	gc.Thearch.Proginfo = proginfo
    26  
    27  	gc.Thearch.SSAMarkMoves = ssaMarkMoves
    28  	gc.Thearch.SSAGenValue = ssaGenValue
    29  	gc.Thearch.SSAGenBlock = ssaGenBlock
    30  }