diff options
Diffstat (limited to 'src/cmd/internal/obj/mips')
| -rw-r--r-- | src/cmd/internal/obj/mips/asm0.go | 31 | ||||
| -rw-r--r-- | src/cmd/internal/obj/mips/obj0.go | 13 |
2 files changed, 23 insertions, 21 deletions
diff --git a/src/cmd/internal/obj/mips/asm0.go b/src/cmd/internal/obj/mips/asm0.go index dc9ca46db8..39c4d4750b 100644 --- a/src/cmd/internal/obj/mips/asm0.go +++ b/src/cmd/internal/obj/mips/asm0.go @@ -31,6 +31,7 @@ package mips import ( "cmd/internal/obj" + "cmd/internal/objabi" "cmd/internal/sys" "fmt" "log" @@ -545,7 +546,7 @@ func (c *ctxt0) aclass(a *obj.Addr) int { } c.instoffset = a.Offset if a.Sym != nil { // use relocation - if a.Sym.Type == obj.STLSBSS { + if a.Sym.Type == objabi.STLSBSS { return C_TLS } return C_ADDR @@ -605,13 +606,13 @@ func (c *ctxt0) aclass(a *obj.Addr) int { if s == nil { break } - if s.Type == obj.SCONST { + if s.Type == objabi.SCONST { c.instoffset = a.Offset goto consize } c.instoffset = a.Offset - if s.Type == obj.STLSBSS { + if s.Type == objabi.STLSBSS { return C_STCON // address of TLS variable } return C_LECON @@ -1219,9 +1220,9 @@ func (c *ctxt0) asmout(p *obj.Prog, o *Optab, out []uint32) { rel.Sym = p.To.Sym rel.Add = p.To.Offset if p.As == AJAL { - rel.Type = obj.R_CALLMIPS + rel.Type = objabi.R_CALLMIPS } else { - rel.Type = obj.R_JMPMIPS + rel.Type = objabi.R_JMPMIPS } case 12: /* movbs r,r */ @@ -1278,7 +1279,7 @@ func (c *ctxt0) asmout(p *obj.Prog, o *Optab, out []uint32) { rel := obj.Addrel(c.cursym) rel.Off = int32(c.pc) rel.Siz = 0 - rel.Type = obj.R_CALLIND + rel.Type = objabi.R_CALLIND case 19: /* mov $lcon,r ==> lu+or */ v := c.regoff(&p.From) @@ -1474,14 +1475,14 @@ func (c *ctxt0) asmout(p *obj.Prog, o *Optab, out []uint32) { rel.Siz = 4 rel.Sym = p.To.Sym rel.Add = p.To.Offset - rel.Type = obj.R_ADDRMIPSU + rel.Type = objabi.R_ADDRMIPSU o2 = OP_IRR(c.opirr(p.As), uint32(0), uint32(REGTMP), uint32(p.From.Reg)) rel2 := obj.Addrel(c.cursym) rel2.Off = int32(c.pc + 4) rel2.Siz = 4 rel2.Sym = p.To.Sym rel2.Add = p.To.Offset - rel2.Type = obj.R_ADDRMIPS + rel2.Type = objabi.R_ADDRMIPS if o.size == 12 { o3 = o2 @@ -1496,14 +1497,14 @@ func (c *ctxt0) asmout(p *obj.Prog, o *Optab, out []uint32) { rel.Siz = 4 rel.Sym = p.From.Sym rel.Add = p.From.Offset - rel.Type = obj.R_ADDRMIPSU + rel.Type = objabi.R_ADDRMIPSU o2 = OP_IRR(c.opirr(-p.As), uint32(0), uint32(REGTMP), uint32(p.To.Reg)) rel2 := obj.Addrel(c.cursym) rel2.Off = int32(c.pc + 4) rel2.Siz = 4 rel2.Sym = p.From.Sym rel2.Add = p.From.Offset - rel2.Type = obj.R_ADDRMIPS + rel2.Type = objabi.R_ADDRMIPS if o.size == 12 { o3 = o2 @@ -1518,14 +1519,14 @@ func (c *ctxt0) asmout(p *obj.Prog, o *Optab, out []uint32) { rel.Siz = 4 rel.Sym = p.From.Sym rel.Add = p.From.Offset - rel.Type = obj.R_ADDRMIPSU + rel.Type = objabi.R_ADDRMIPSU o2 = OP_IRR(c.opirr(add), uint32(0), uint32(p.To.Reg), uint32(p.To.Reg)) rel2 := obj.Addrel(c.cursym) rel2.Off = int32(c.pc + 4) rel2.Siz = 4 rel2.Sym = p.From.Sym rel2.Add = p.From.Offset - rel2.Type = obj.R_ADDRMIPS + rel2.Type = objabi.R_ADDRMIPS if o.size == 12 { o3 = o2 @@ -1543,7 +1544,7 @@ func (c *ctxt0) asmout(p *obj.Prog, o *Optab, out []uint32) { rel.Siz = 4 rel.Sym = p.To.Sym rel.Add = p.To.Offset - rel.Type = obj.R_ADDRMIPSTLS + rel.Type = objabi.R_ADDRMIPSTLS case 54: /* mov tlsvar, r ==> rdhwr + lw o(r3) */ // clobbers R3 ! @@ -1554,7 +1555,7 @@ func (c *ctxt0) asmout(p *obj.Prog, o *Optab, out []uint32) { rel.Siz = 4 rel.Sym = p.From.Sym rel.Add = p.From.Offset - rel.Type = obj.R_ADDRMIPSTLS + rel.Type = objabi.R_ADDRMIPSTLS case 55: /* mov $tlsvar, r ==> rdhwr + add */ // clobbers R3 ! @@ -1565,7 +1566,7 @@ func (c *ctxt0) asmout(p *obj.Prog, o *Optab, out []uint32) { rel.Siz = 4 rel.Sym = p.From.Sym rel.Add = p.From.Offset - rel.Type = obj.R_ADDRMIPSTLS + rel.Type = objabi.R_ADDRMIPSTLS } out[0] = o1 diff --git a/src/cmd/internal/obj/mips/obj0.go b/src/cmd/internal/obj/mips/obj0.go index 2316bc64ec..fd53c3212e 100644 --- a/src/cmd/internal/obj/mips/obj0.go +++ b/src/cmd/internal/obj/mips/obj0.go @@ -31,6 +31,7 @@ package mips import ( "cmd/internal/obj" + "cmd/internal/objabi" "cmd/internal/sys" "encoding/binary" "fmt" @@ -634,7 +635,7 @@ func (c *ctxt0) stacksplit(p *obj.Prog, framesize int32) *obj.Prog { p.To.Reg = REG_R1 var q *obj.Prog - if framesize <= obj.StackSmall { + if framesize <= objabi.StackSmall { // small stack: SP < stackguard // AGTU SP, stackguard, R1 p = obj.Appendp(p, c.newprog) @@ -645,7 +646,7 @@ func (c *ctxt0) stacksplit(p *obj.Prog, framesize int32) *obj.Prog { p.Reg = REG_R1 p.To.Type = obj.TYPE_REG p.To.Reg = REG_R1 - } else if framesize <= obj.StackBig { + } else if framesize <= objabi.StackBig { // large stack: SP-framesize < stackguard-StackSmall // ADD $-(framesize-StackSmall), SP, R2 // SGTU R2, stackguard, R1 @@ -653,7 +654,7 @@ func (c *ctxt0) stacksplit(p *obj.Prog, framesize int32) *obj.Prog { p.As = add p.From.Type = obj.TYPE_CONST - p.From.Offset = -(int64(framesize) - obj.StackSmall) + p.From.Offset = -(int64(framesize) - objabi.StackSmall) p.Reg = REGSP p.To.Type = obj.TYPE_REG p.To.Reg = REG_R2 @@ -685,7 +686,7 @@ func (c *ctxt0) stacksplit(p *obj.Prog, framesize int32) *obj.Prog { p.As = mov p.From.Type = obj.TYPE_CONST - p.From.Offset = obj.StackPreempt + p.From.Offset = objabi.StackPreempt p.To.Type = obj.TYPE_REG p.To.Reg = REG_R2 @@ -701,7 +702,7 @@ func (c *ctxt0) stacksplit(p *obj.Prog, framesize int32) *obj.Prog { p = obj.Appendp(p, c.newprog) p.As = add p.From.Type = obj.TYPE_CONST - p.From.Offset = obj.StackGuard + p.From.Offset = objabi.StackGuard p.Reg = REGSP p.To.Type = obj.TYPE_REG p.To.Reg = REG_R2 @@ -716,7 +717,7 @@ func (c *ctxt0) stacksplit(p *obj.Prog, framesize int32) *obj.Prog { p = obj.Appendp(p, c.newprog) p.As = mov p.From.Type = obj.TYPE_CONST - p.From.Offset = int64(framesize) + obj.StackGuard - obj.StackSmall + p.From.Offset = int64(framesize) + objabi.StackGuard - objabi.StackSmall p.To.Type = obj.TYPE_REG p.To.Reg = REG_R1 |
