]> Cypherpunks repositories - gostls13.git/commitdiff
cmd/internal/obj: clean up Biobuf
authorDave Cheney <dave@cheney.net>
Fri, 1 May 2015 01:51:47 +0000 (11:51 +1000)
committerDave Cheney <dave@cheney.net>
Fri, 1 May 2015 18:37:04 +0000 (18:37 +0000)
This is a follow up to rev 443a32e707d2 which reduces some of the
duplication between methods and functions that operate on obj.Biobuf.

obj.Biobuf has Flush and Write methods as well as helpers which duplicate
those methods, consolidate on the former and remove the latter.

Also, address a final comment from CL 9525.

Change-Id: I67deaf3a163bb489a9bb21bb39524785d7a2f6c5
Reviewed-on: https://go-review.googlesource.com/9527
Reviewed-by: Josh Bleecher Snyder <josharian@gmail.com>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
12 files changed:
src/cmd/8g/galign.go
src/cmd/asm/internal/asm/endtoend_test.go
src/cmd/asm/main.go
src/cmd/internal/asm/asm.go
src/cmd/internal/asm/lexbody.go
src/cmd/internal/gc/obj.go
src/cmd/internal/gc/subr.go
src/cmd/internal/obj/arm/obj5.go
src/cmd/internal/obj/arm64/obj7.go
src/cmd/internal/obj/objfile.go
src/cmd/internal/obj/ppc64/obj9.go
src/cmd/internal/obj/util.go

index 9125356691dc23d138772e00866c17150d622825..e96b628dcc2c595bd3d278957c6c3623384b5f3d 100644 (file)
@@ -61,7 +61,7 @@ func main() {
                gc.Thearch.FREGMAX = x86.REG_X7
        default:
                fmt.Fprintf(os.Stderr, "unsupported setting GO386=%s\n", v)
-               os.Exit(1)
+               gc.Exit(1)
        }
        gc.Thearch.MAXWIDTH = MAXWIDTH
        gc.Thearch.ReservedRegs = resvd
index 43f11caca0810d23efe5f1b14e8e3b2c39028d30..abe4e4efbc9a5c6659e4c244150c2e49206859bb 100644 (file)
@@ -33,7 +33,7 @@ func testEndToEnd(t *testing.T, goarch string) {
        var ok bool
        testOut = new(bytes.Buffer) // The assembler writes -S output to this buffer.
        ctxt.Bso = obj.Binitw(os.Stdout)
-       defer obj.Bflush(ctxt.Bso)
+       defer ctxt.Bso.Flush()
        ctxt.Diag = log.Fatalf
        obj.Binitw(ioutil.Discard)
        pList.Firstpc, ok = parser.Parse()
index 48315d08ce36f06224218d27f41b23de73d8ef6a..32bdee6624ab161374c7b042f1ca9dc69610e868 100644 (file)
@@ -46,7 +46,7 @@ func main() {
                ctxt.Flag_shared = 1
        }
        ctxt.Bso = obj.Binitw(os.Stdout)
-       defer obj.Bflush(ctxt.Bso)
+       defer ctxt.Bso.Flush()
        ctxt.Diag = log.Fatalf
        output := obj.Binitw(fd)
        fmt.Fprintf(output, "go object %s %s %s\n", obj.Getgoos(), obj.Getgoarch(), obj.Getgoversion())
@@ -63,5 +63,5 @@ func main() {
                os.Exit(1)
        }
        obj.Writeobjdirect(ctxt, output)
-       obj.Bflush(output)
+       output.Flush()
 }
index 90a4781e7b8bce957485213ab60b4f1488fb89a4..b96c2cbb2adfd137fba9f2af0c865b9001075f08 100644 (file)
@@ -209,7 +209,7 @@ func Main() {
        if assemble(flag.Arg(0)) != 0 {
                errorexit()
        }
-       obj.Bflush(&bstdout)
+       bstdout.Flush()
        if nerrors > 0 {
                errorexit()
        }
@@ -244,7 +244,7 @@ func assemble(file string) int {
        }
 
        obj.Writeobjdirect(Ctxt, &obuf)
-       obj.Bflush(&obuf)
+       obuf.Flush()
        return 0
 }
 
index 7943cba039652783c9b0754da4fae4f24d26ec45..b5e5d1eee24fba35530f4ebec6458b666aae6b3e 100644 (file)
@@ -98,7 +98,7 @@ func setinclude(p string) {
 }
 
 func errorexit() {
-       obj.Bflush(&bstdout)
+       bstdout.Flush()
        if outfile != "" {
                os.Remove(outfile)
        }
index 891f5548f7f47ae7d16e3b687dc85dcc51a07936..05c5b1a811271d15078e4f516052d1dbf4448972 100644 (file)
@@ -35,7 +35,7 @@ func dumpobj() {
        if writearchive != 0 {
                obj.Bwritestring(bout, "!<arch>\n")
                arhdr = [ArhdrSize]byte{}
-               obj.Bwrite(bout, arhdr[:])
+               bout.Write(arhdr[:])
                startobj = obj.Boffset(bout)
        }
 
@@ -43,19 +43,19 @@ func dumpobj() {
        dumpexport()
 
        if writearchive != 0 {
-               obj.Bflush(bout)
+               bout.Flush()
                size := obj.Boffset(bout) - startobj
                if size&1 != 0 {
                        obj.Bputc(bout, 0)
                }
                obj.Bseek(bout, startobj-ArhdrSize, 0)
                formathdr(arhdr[:], "__.PKGDEF", size)
-               obj.Bwrite(bout, arhdr[:])
-               obj.Bflush(bout)
+               bout.Write(arhdr[:])
+               bout.Flush()
 
                obj.Bseek(bout, startobj+size+(size&1), 0)
                arhdr = [ArhdrSize]byte{}
-               obj.Bwrite(bout, arhdr[:])
+               bout.Write(arhdr[:])
                startobj = obj.Boffset(bout)
                fmt.Fprintf(bout, "go object %s %s %s %s\n", obj.Getgoos(), obj.Getgoarch(), obj.Getgoversion(), obj.Expstring())
        }
@@ -96,7 +96,7 @@ func dumpobj() {
        obj.Writeobjdirect(Ctxt, bout)
 
        if writearchive != 0 {
-               obj.Bflush(bout)
+               bout.Flush()
                size := obj.Boffset(bout) - startobj
                if size&1 != 0 {
                        obj.Bputc(bout, 0)
@@ -104,7 +104,7 @@ func dumpobj() {
                obj.Bseek(bout, startobj-ArhdrSize, 0)
                name := fmt.Sprintf("_go_.%c", Thearch.Thechar)
                formathdr(arhdr[:], name, size)
-               obj.Bwrite(bout, arhdr[:])
+               bout.Write(arhdr[:])
        }
 
        obj.Bterm(bout)
index 8cc140a004657a4323bd8da26f10689c2a55954f..06ceff5844decafd9c50e4ae90d5b8f6e7814ee6 100644 (file)
@@ -82,7 +82,7 @@ func (x errcmp) Less(i, j int) bool {
 }
 
 func Flusherrors() {
-       obj.Bflush(&bstdout)
+       bstdout.Flush()
        if len(errors) == 0 {
                return
        }
index 847fce6490ef86d8f350b3c92519846b8edadcdc..c73c14640496a19d3c6d00ccb045f4f22d28c412 100644 (file)
@@ -338,7 +338,7 @@ func preprocess(ctxt *obj.Link, cursym *obj.LSym) {
                        if autosize == 0 && cursym.Text.Mark&LEAF == 0 {
                                if ctxt.Debugvlog != 0 {
                                        fmt.Fprintf(ctxt.Bso, "save suppressed in: %s\n", cursym.Name)
-                                       obj.Bflush(ctxt.Bso)
+                                       ctxt.Bso.Flush()
                                }
 
                                cursym.Text.Mark |= LEAF
index 6fe13ea3cb9335c38f53a173269a030e69ee2dc9..b8d930b41973cb3344238c29b27e74063b881529 100644 (file)
@@ -485,7 +485,7 @@ func preprocess(ctxt *obj.Link, cursym *obj.LSym) {
         * strip NOPs
         * expand RET
         */
-       obj.Bflush(ctxt.Bso)
+       ctxt.Bso.Flush()
        q := (*obj.Prog)(nil)
        var q1 *obj.Prog
        for p := cursym.Text; p != nil; p = p.Link {
@@ -575,7 +575,7 @@ func preprocess(ctxt *obj.Link, cursym *obj.LSym) {
                                if ctxt.Debugvlog != 0 {
                                        fmt.Fprintf(ctxt.Bso, "save suppressed in: %s\n", cursym.Text.From.Sym.Name)
                                }
-                               obj.Bflush(ctxt.Bso)
+                               ctxt.Bso.Flush()
                                cursym.Text.Mark |= LEAF
                        }
 
index 473a4bffe21f20743fc2c041813f511824e113cc..35a9ef626fa0a2979c170d9d4f8d97ede3fe54ab 100644 (file)
@@ -481,7 +481,7 @@ func wrint(b *Biobuf, sval int64) {
        }
        p[0] = uint8(v)
        p = p[1:]
-       Bwrite(b, varintbuf[:len(varintbuf)-len(p)])
+       b.Write(varintbuf[:len(varintbuf)-len(p)])
 }
 
 func wrstring(b *Biobuf, s string) {
@@ -497,7 +497,7 @@ func wrpath(ctxt *Link, b *Biobuf, p string) {
 
 func wrdata(b *Biobuf, v []byte) {
        wrint(b, int64(len(v)))
-       Bwrite(b, v)
+       b.Write(v)
 }
 
 func wrpathsym(ctxt *Link, b *Biobuf, s *LSym) {
index 4de04a7406de9deefd610e444cf5596ecf33e1e6..6d7db4245e9dcf8d4eeffa05da4a2110b76a53f6 100644 (file)
@@ -137,7 +137,7 @@ func preprocess(ctxt *obj.Link, cursym *obj.LSym) {
        if ctxt.Debugvlog != 0 {
                fmt.Fprintf(ctxt.Bso, "%5.2f noops\n", obj.Cputime())
        }
-       obj.Bflush(ctxt.Bso)
+       ctxt.Bso.Flush()
 
        var q *obj.Prog
        var q1 *obj.Prog
@@ -346,7 +346,7 @@ func preprocess(ctxt *obj.Link, cursym *obj.LSym) {
                        } else if cursym.Text.Mark&LEAF == 0 {
                                if ctxt.Debugvlog != 0 {
                                        fmt.Fprintf(ctxt.Bso, "save suppressed in: %s\n", cursym.Name)
-                                       obj.Bflush(ctxt.Bso)
+                                       ctxt.Bso.Flush()
                                }
 
                                cursym.Text.Mark |= LEAF
index 03e6ad911645826cc44e40fddc2c7ad835543c12..71587954f4682d9aa4250fa50bec354351e0391d 100644 (file)
@@ -99,10 +99,6 @@ func (b *Biobuf) Flush() error {
        return b.w.Flush()
 }
 
-func Bwrite(b *Biobuf, p []byte) (int, error) {
-       return b.w.Write(p)
-}
-
 func Bputc(b *Biobuf, c byte) {
        b.w.WriteByte(c)
 }
@@ -189,10 +185,6 @@ func Bungetc(b *Biobuf) {
        b.numUnget++
 }
 
-func Bflush(b *Biobuf) error {
-       return b.w.Flush()
-}
-
 func Bterm(b *Biobuf) error {
        var err error
        if b.w != nil {