aboutsummaryrefslogtreecommitdiff
path: root/src/cmd/link/internal/amd64
diff options
context:
space:
mode:
authorJeremy Faller <jeremy@golang.org>2020-04-16 23:33:11 +0000
committerJeremy Faller <jeremy@golang.org>2020-04-17 13:47:03 +0000
commit7fe3f30bbbcb89ced4fb2cd4cbb93c8a0986a973 (patch)
treeceeebd6f6460d3a964413fecd1bed90ec3694bbc /src/cmd/link/internal/amd64
parentb2def42d9efcf4540656e26632b744f8e7436814 (diff)
downloadgo-7fe3f30bbbcb89ced4fb2cd4cbb93c8a0986a973.tar.xz
Revert "[dev.link] cmd/link: remove buffered file I/O from OutBuf"
This reverts commit b2def42d9efcf4540656e26632b744f8e7436814. Reason for revert: trybots failing Change-Id: I920be6d8de158b1e513154ac0eb0c8fa0cffa9f4 Reviewed-on: https://go-review.googlesource.com/c/go/+/228657 Reviewed-by: Than McIntosh <thanm@google.com> Reviewed-by: Cherry Zhang <cherryyz@google.com>
Diffstat (limited to 'src/cmd/link/internal/amd64')
-rw-r--r--src/cmd/link/internal/amd64/asm.go5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/cmd/link/internal/amd64/asm.go b/src/cmd/link/internal/amd64/asm.go
index d26a9a234c..5c4ffe19c2 100644
--- a/src/cmd/link/internal/amd64/asm.go
+++ b/src/cmd/link/internal/amd64/asm.go
@@ -756,6 +756,7 @@ func asmb2(ctxt *ld.Link) {
if ctxt.IsELF {
ctxt.Out.SeekSet(symo)
ld.Asmelfsym(ctxt)
+ ctxt.Out.Flush()
ctxt.Out.Write(ld.Elfstrdat)
if ctxt.LinkMode == ld.LinkExternal {
@@ -765,11 +766,13 @@ func asmb2(ctxt *ld.Link) {
case objabi.Hplan9:
ld.Asmplan9sym(ctxt)
+ ctxt.Out.Flush()
sym := ctxt.Syms.Lookup("pclntab", 0)
if sym != nil {
ld.Lcsize = int32(len(sym.P))
ctxt.Out.Write(sym.P)
+ ctxt.Out.Flush()
}
case objabi.Hwindows:
@@ -814,6 +817,8 @@ func asmb2(ctxt *ld.Link) {
case objabi.Hwindows:
ld.Asmbpe(ctxt)
}
+
+ ctxt.Out.Flush()
}
func tlsIEtoLE(s *sym.Symbol, off, size int) {