1// Copyright 2016 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
5package mips
6
7import (
8	"cmd/compile/internal/ssa"
9	"cmd/compile/internal/ssagen"
10	"cmd/internal/obj/mips"
11	"internal/buildcfg"
12)
13
14func Init(arch *ssagen.ArchInfo) {
15	arch.LinkArch = &mips.Linkmips
16	if buildcfg.GOARCH == "mipsle" {
17		arch.LinkArch = &mips.Linkmipsle
18	}
19	arch.REGSP = mips.REGSP
20	arch.MAXWIDTH = (1 << 31) - 1
21	arch.SoftFloat = (buildcfg.GOMIPS == "softfloat")
22	arch.ZeroRange = zerorange
23	arch.Ginsnop = ginsnop
24	arch.SSAMarkMoves = func(s *ssagen.State, b *ssa.Block) {}
25	arch.SSAGenValue = ssaGenValue
26	arch.SSAGenBlock = ssaGenBlock
27}
28