Go: all: port to RISC-V

Created on 6 Sep 2018  ·  219Comments  ·  Source: golang/go

This issue serves to track the port to the RISC-V architecture. There is an out-of-tree port at https://github.com/riscv/riscv-go based on Go 1.8 which - according to riscv/riscv-go#19 - is no longer maintained and would need quite some work to be updated to the current Go tip.

Also see https://golang.org/cl/106256#message-2d9a5c5b89ad55b8b7999f794983f993649232c8 and https://groups.google.com/forum/#!searchin/golang-dev/RISC%7Csort:date/golang-dev/VpsyGdi-sQQ/FMu6IB_2CwAJ where @josharian summarized the current state of the existing port.

The GOARCH values riscv and riscv64 were reserved in https://golang.org/cl/106256. These values are already used by gccgo. Additional changes were made to debug/elf (https://golang.org/cl/107339), cmd/cgo (https://golang.org/cl/110066), cmd/dist and cmd/types (https://golang.org/cl/118618) in order be able to generate type definition files in the x/sys/unix package (https://golang.org/cl/133735).

/cc @bradfitz @ianlancetaylor @josharian

FeatureRequest arch-riscv help wanted

Most helpful comment

We seem to have liftoff 🚀Couple of failing tests but nothing of real interest and it seems relatively simple to fix.

Latest commits seem to fix the majority of the problems and I am running relatively large go programs in qemu-system-riscv.

Can you guys test and provide some feedback?

All 219 comments

Change https://golang.org/cl/133735 mentions this issue: unix: add support for linux/riscv64

/cc myself as Fedora/RISC-V maintainer.

I would be happy to incl. this into the distribution (once it compiles) and do some testing.

Thanks for raising this.

Does anyone know where I can get hardware to test on ?

New house, CPU and fgpa efforts are going on using risc-v.
Quite a turning point and opportunity for golang programmers.

Here is the main news feed on all of it:
https://riscv.org/news/

@gedw99 At the moment SiFive is the only company that has produced a RISC-V dev board (HiFive Unleashed). One caveat to this board is the price, which is around $1,000 USD.

cc @ganshun and @rjoleary the three of us were also about to start looking at a port. We got a couple of SiFive boards to try it out on.

@hugelgupf, when you're far enough along to want a builder set up, file a bug and copy me and I'd be more than happy to help.

I recently starting using qemu to run a riscv fedora build. Here are the links in case it's useful for devving without a board.

https://github.com/riscv/riscv-qemu
https://fedoraproject.org/wiki/Architectures/RISC-V/Installing#Download_the_latest_disk_image
https://fedoraproject.org/wiki/Architectures/RISC-V/Installing#Boot_under_qemu

Using dnf install gccgo I've been able to build and run go apps in emulation.

Just reminder that RISC-V is supported in released versions of QEMU and libvirt, which makes it easy to setup multiple VMs with management. See: https://fedoraproject.org/wiki/Architectures/RISC-V/Installing#Boot_with_libvirt

Note, that our libffi does not support Go closures thus some functionality does not work. The patch exist already, but I need to backport it to our libffi version. Should I bump priority on this?

FWIW, I started rebasing the Go 1.18-based https://github.com/riscv/go-riscv to current Go tip at https://github.com/tklauser/go-riscv. It currently builds on linux/amd64 but cannot generate valid riscv64 binaries yet.

I currently lack the time and resources to really push it forward but maybe someone else working on it might find it useful.

Just saw that you can apparently run RISC-V in the cloud via an FPGA AWS instance:

https://www.cnx-software.com/2017/02/22/amazon-ec2-f1-instances-put-xilinx-virtex-ultrascale-fpga-boards-in-the-cloud/

That might be a possible temporary builder strategy.

@bradfitz https://fires.im/ is a risc-v deployment on aws fpgas but the underlying risc-v implementation only runs up to something like 100mhz. Working with a team that's doing some research in that area and it seems to be the norm. So far emulation has been the most performant by far.

QEMU supports up to 8 cores (MTTCG - multi-threaded TCG), which is great if you can compile in parallel.

Alternatively contact Palmer Dabbelt from SiFive and ask for a free SiFive HiFive Unleashed board (multiple projects have received one for porting efforts).

Change https://golang.org/cl/157899 mentions this issue: unix: use Renameat2 to implement Renameat on linux/riscv64

Change https://golang.org/cl/157900 mentions this issue: unix: use int8 for RawSockaddrUnix.Path on linux/riscv64

Change https://golang.org/cl/157901 mentions this issue: unix: add assembly for riscv64 syscalls

Issue for setting up a qemu-based RISC-V builder: #30262

Change https://golang.org/cl/170298 mentions this issue: cpu: add basic support for GOARCH=riscv64

The riscv qemu port works pretty well and Fedora has been making strides making it a normal distro. I am keeping tabs on the state of riscv here: https://github.com/marcopeereboom/riscv-bringup-doco and maybe it has some helpful nuggets for some folks. The point is that qemu makes a fine development target and you really don't need metal to make progress.

The last missing piece of the puzzle for me is go. https://github.com/riscv/riscv-go seems to work but is 1.8 and pretty much everything I work on has moved on to 1.12 and uses modules. I looked at porting the 1.8 codebase up a release at a time and it doesn't look terribly hard but I don't have time to sit there and grind at it (familiar refrain).

Excited to see this move forward.

A buddy of mine made Go 1.12 work. He forked https://github.com/riscv/riscv-go and updated it to go 1.12. It seems to produce binaries that work but undoubtedly there are still some bugs lurking.

It seems to be able to build binaries but when it is cross-compiled it does not quite work yet.

See the repo here: https://github.com/4a6f656c/riscv-go

It would be great if some of this can start being backported to master for more widespread testing.

A buddy of mine made Go 1.12 work.

Yay!

Did he also pull in the as-yet-unlanded changes from Stefan O'Rear?

It seems to be able to build binaries but when it is cross-compiled it does not quite work yet.

I haven't looked at the code, but it would be good to run the compiler under the race detector. (That is, run on amd64 with -race, building for risc-v.) The obj asm backends have to be concurrent as of 1.9.

It would be great if some of this can start being backported to master for more widespread testing.

I assume you mean upstreamed. We're in a code freeze now. See https://github.com/golang/go/wiki/Go-Release-Cycle. Ideally adding risc-v to master would happen right at the beginning of the cycle, starting around Aug 1.

Note that we can't accept code unless all the authors have signed a CLA (which is part of why I haven't looked through it yet).

Joel is ex google and has made several commits to Go. Pretty sure there won't be an issue with that.

Didn't know we were in code freeze but that is actually pretty good. That way we can get the last bits worked out and see if we can get it in as soon as it unfreezes and then we have an entire release cycle to get it right. Exciting!

Did he also pull in the as-yet-unlanded changes from Stefan O'Rear?

Got a link?

Joel is ex google and has made several commits to Go. Pretty sure there won't be an issue with that.

I should have checked out his GitHub profile. Nice to see his name again. :)

That way we can get the last bits worked out and see if we can get it in as soon as it unfreezes and then we have an entire release cycle to get it right.

Yes, indeed.

In an ideal world, too, we'd break up the upstreaming into a series of commits, to aid in reviewing. It's worth checking out how other completed architectures got upstreamed (e.g. arm64, wasm).

Got a link?

https://review.gerrithub.io/q/project:riscv/riscv-go

A few of us with an interest in making this happen are hanging out in #risc-v on Gophers Slack. We'd love to have more folks join us there, and to pitch in.

https://invite.slack.golangbridge.org

I'm happy to be involved, but I am intentionally not a Slack user. If y'all start using some other medium as well (github issues, a mailing list), please let me know.

I deleted slack on all my devices.

We certainly could use some help with the remaining bugs. It looks like some linux syscalls fail or are not implemented. These bugs should not be super hard to hound down and fix. We can even use GitHub to track bugs 😏

Little update. Bootstrapping now works reliably and one can build go itself in QEMU riscv. There seems to be either a bug with locks or with QEMU causing some fun crashes and we are looking into those. If anyone has the skills to help we'd love to hear from you.

Basic steps are on a machine with go1.4 or a new enough go installed:

GOOS=linux GOARCH=riscv ./bootstrap.sh

Copy the tbz file to the riscv QEMU host, untar it and then build go itself:

GOGC=off GOROOT_^COTSTRAP=~/build/go-linux-riscv-bootstrap/ ./all.bash

Note: all compilation was done from this repo: https://github.com/4a6f656c/riscv-go

It doesn't always work and may have to be restarted but it'll eventually build. I tried building some larger apps and they act the same. Work for a bit and then kind of randomly crash. It certainly looks like races.

Without using GOGC=off I get the following error:

# ./make.bash
Building Go cmd/dist using /root/go-linux-riscv-bootstrap/.
# _/root/riscv-go/src/cmd/dist
cmd/dist/test.go:1263:9: internal compiler error: '(*tester).hasSwig': panic during lowered cse while compiling (*tester).hasSwig:

runtime error: index out of range

goroutine 9 [running]:
cmd/compile/internal/ssa.Compile.func1(0x210198d118, 0x210134f1e0)
    /Users/cdepaula/repos/go-linux-riscv-bootstrap/src/cmd/compile/internal/ssa/compile.go:45 +0xc0
panic(0xc20c00, 0x14821a0)
    /Users/cdepaula/repos/go-linux-riscv-bootstrap/src/runtime/panic.go:522 +0x254
cmd/compile/internal/ssa.cse(0x210134f1e0)
    /Users/cdepaula/repos/go-linux-riscv-bootstrap/src/cmd/compile/internal/ssa/cse.go:116 +0x26d4
cmd/compile/internal/ssa.Compile(0x210134f1e0)
    /Users/cdepaula/repos/go-linux-riscv-bootstrap/src/cmd/compile/internal/ssa/compile.go:90 +0x67c
cmd/compile/internal/gc.buildssa(0x21005509a0, 0x3, 0x0)
    /Users/cdepaula/repos/go-linux-riscv-bootstrap/src/cmd/compile/internal/gc/ssa.go:233 +0x9d4
cmd/compile/internal/gc.compileSSA(0x21005509a0, 0x3)
    /Users/cdepaula/repos/go-linux-riscv-bootstrap/src/cmd/compile/internal/gc/pgen.go:299 +0x40
cmd/compile/internal/gc.compileFunctions.func2(0x2100ea3080, 0x21010b2970, 0x3)
    /Users/cdepaula/repos/go-linux-riscv-bootstrap/src/cmd/compile/internal/gc/pgen.go:364 +0x50
created by cmd/compile/internal/gc.compileFunctions
    /Users/cdepaula/repos/go-linux-riscv-bootstrap/src/cmd/compile/internal/gc/pgen.go:362 +0x160

I've built the bootstrap on Mac with Go 1.12.5.

After building it successfully (never failed) I ran the tests and got some problems. Will paste here as a follow-up to document:

Running on Qemu 4.0 on Mac.

# uname -a
Linux fedora-riscv 5.1.0-rc7-00005-g83a50840e72a #2 SMP Mon Apr 29 19:07:37 -03 2019 riscv64 riscv64 riscv64 GNU/Linux

Here is the output:

[root@fedora-riscv riscv-go]# export GOROOT_BOOTSTRAP=/root/go-linux-riscv-bootstrap
[root@fedora-riscv riscv-go]# export GOROOT_BOOTSTRAP=/root/go-linux-riscv-bootstrap/
[root@fedora-riscv riscv-go]# export PATH="$(pwd)/misc/riscv:$(pwd)/bin:$PATH"
[root@fedora-riscv riscv-go]# cd src/
[root@fedora-riscv src]# GOGC=off ./all.bash
Building Go cmd/dist using /root/go-linux-riscv-bootstrap/.
Building Go toolchain1 using /root/go-linux-riscv-bootstrap/.
Building Go bootstrap cmd/go (go_bootstrap) using Go toolchain1.
Building Go toolchain2 using go_bootstrap and Go toolchain1.
Building Go toolchain3 using go_bootstrap and Go toolchain2.
Building packages and commands for linux/riscv.

##### Testing packages.
ok      archive/tar 4.774s
ok      archive/zip 21.521s
ok      bufio   3.639s
ok      bytes   5.138s
ok      compress/bzip2  2.772s
ok      compress/flate  8.117s
ok      compress/gzip   1.108s
ok      compress/lzw    0.826s
ok      compress/zlib   1.022s
ok      container/heap  0.990s
ok      container/list  0.648s
ok      container/ring  0.846s
ok      context 7.816s
ok      crypto  0.955s
ok      crypto/aes  1.070s
ok      crypto/cipher   9.553s
ok      crypto/des  0.956s
ok      crypto/dsa  0.927s
ok      crypto/ecdsa    5.014s
ok      crypto/elliptic 1.320s
ok      crypto/hmac 0.942s
ok      crypto/internal/subtle  0.764s
# crypto/rc4.test
fatal error: cas1
runtime: panic before malloc heap initialized

runtime stack:
runtime.throw(0x327630, 0x4)
    /root/riscv-go/src/runtime/panic.go:617 +0x88 fp=0x3ffffa3f20 sp=0x3ffffa3ef8 pc=0x4b2f8
runtime.check()
    /root/riscv-go/src/runtime/runtime1.go:215 +0x57c fp=0x3ffffa3f60 sp=0x3ffffa3f20 pc=0x60b74
runtime.rt0_go(0x3ffffa3f88, 0xd3868, 0xb, 0x3ffffa42c9, 0x3ffffa42f2, 0x3ffffa42f5, 0x3ffffa431a, 0x3ffffa4325, 0x3ffffa4350, 0x3ffffa4353, ...)
    /root/riscv-go/src/runtime/asm_riscv.s:54 +0x90 fp=0x3ffffa3f68 sp=0x3ffffa3f60 pc=0x82b40
ok      crypto/md5  0.979s
ok      crypto/rand 1.497s
FAIL    crypto/rc4 [build failed]
ok      crypto/rsa  2.727s
ok      crypto/sha1 0.862s
ok      crypto/sha256   0.824s
ok      crypto/sha512   0.762s
ok      crypto/subtle   0.779s
ok      crypto/tls  44.390s
ok      crypto/x509 34.962s
ok      database/sql    4.479s
ok      database/sql/driver 1.066s
ok      debug/dwarf 1.704s
ok      debug/elf   2.404s
ok      debug/gosym 1.270s
ok      debug/macho 0.978s
ok      debug/pe    1.284s
ok      debug/plan9obj  0.863s
ok      encoding/ascii85    1.240s
ok      encoding/asn1   1.454s
ok      encoding/base32 1.355s
ok      encoding/base64 1.883s
ok      encoding/binary 1.401s
ok      encoding/csv    1.864s
ok      encoding/gob    5.054s
ok      encoding/hex    1.033s
ok      encoding/json   8.759s
ok      encoding/pem    1.930s
ok      encoding/xml    2.070s
fatal error: cas1
runtime: panic before malloc heap initialized

runtime stack:
runtime.throw(0x187542, 0x4)
    /root/riscv-go/src/runtime/panic.go:617 +0x88 fp=0x3fffdd1030 sp=0x3fffdd1008 pc=0x4aaf8
runtime.check()
    /root/riscv-go/src/runtime/runtime1.go:215 +0x57c fp=0x3fffdd1070 sp=0x3fffdd1030 pc=0x603ac
runtime.rt0_go(0x3fffdd1098, 0xd3868, 0x4, 0x3fffdd1392, 0x3fffdd13ba, 0x3fffdd13f4, 0x3fffdd1405, 0x0, 0x3fffdd1418, 0x3fffdd1428, ...)
    /root/riscv-go/src/runtime/asm_riscv.s:54 +0x90 fp=0x3fffdd1078 sp=0x3fffdd1070 pc=0x82ad0
FAIL    errors  0.297s
ok      expvar  1.476s
ok      flag    0.833s
ok      fmt 2.489s
ok      go/ast  1.208s
ok      go/build    8.902s
ok      go/constant 1.123s
ok      go/doc  3.244s
ok      go/format   1.172s
ok      go/importer 3.839s
ok      go/internal/gccgoimporter   34.297s
ok      go/internal/gcimporter  8.633s
ok      go/internal/srcimporter 22.413s
ok      go/parser   1.492s
ok      go/printer  6.098s
ok      go/scanner  0.852s
ok      go/token    1.905s
ok      go/types    18.929s
ok      hash    1.167s
ok      hash/adler32    0.904s
ok      hash/crc32  0.923s
ok      hash/crc64  0.816s
ok      hash/fnv    0.867s
ok      html    0.831s
ok      html/template   2.683s
ok      image   2.286s
ok      image/color 1.855s
ok      image/draw  2.629s
ok      image/gif   8.489s
ok      image/jpeg  4.625s
ok      image/png   1.799s
ok      index/suffixarray   0.999s
ok      internal/cpu    2.004s
ok      internal/fmtsort    1.547s
ok      internal/poll   1.498s
ok      internal/singleflight   1.047s
ok      internal/trace  27.373s
ok      internal/x/crypto/chacha20poly1305  2.748s
ok      internal/x/crypto/cryptobyte    1.295s
ok      internal/x/crypto/curve25519    1.391s
ok      internal/x/crypto/hkdf  0.922s
ok      internal/x/crypto/internal/chacha20 3.302s
ok      internal/x/crypto/poly1305  1.255s
ok      internal/x/net/dns/dnsmessage   1.205s
ok      internal/x/net/http/httpguts    1.827s
ok      internal/x/net/http/httpproxy   1.312s
ok      internal/x/net/http2/hpack  1.077s
ok      internal/x/net/idna 0.996s
ok      internal/x/net/nettest  8.717s
ok      internal/x/text/transform   1.009s
ok      internal/x/text/unicode/norm    1.169s
ok      internal/xcoff  1.624s
ok      io  1.837s
ok      io/ioutil   1.566s
ok      log 1.603s
ok      log/syslog  2.579s
ok      math    1.303s
ok      math/big    47.180s
ok      math/bits   1.002s
ok      math/cmplx  1.417s
ok      math/rand   5.141s
ok      mime    1.002s
ok      mime/multipart  16.293s
ok      mime/quotedprintable    13.263s
ok      net 88.754s
runtime: newstack sp=0x21008e3758 stack=[0x21008e4000, 0x21008e4800]
    morebuf={pc:0x4d7dc4 sp:0x21008e3758 lr:0x0}
    sched={pc:0xd8230 sp:0x21008e3758 lr:0x4d7dc4 ctxt:0x0}
runtime: gp=0x2100ed3980, goid=1166, gp->status=0x2
 runtime: split stack overflow: 0x21008e3758 < 0x21008e4000
fatal error: runtime: split stack overflow

runtime stack:
runtime.newstack()
    /root/riscv-go/src/runtime/stack.go:995 +0xa18
runtime: unexpected return pc for runtime.newstack called from 0x21010f8180
stack: frame={sp:0x21006b3fb0, fp:0x21006b4138} stack=[0x2100674000,0x21006b4000)
00000021006b3eb0:  000000000000048e  00000000004d7dc4 <net/http_test.testHandlerPanic.func2+156>
00000021006b3ec0:  00000000000d8230 <io.(*pipe).Read+24>  0000000000000000
00000021006b3ed0:  00000021008e3758  00000000004d7dc4 <net/http_test.testHandlerPanic.func2+156>
00000021006b3ee0:  00000021008e4800  00000021008e4000
00000021006b3ef0:  0000000000000001  0000000000000004
00000021006b3f00:  0000000000000000  0000000000000000
00000021006b3f10:  000000210001ee00  0000000000000000
00000021006b3f20:  0000002100ed3980  00000021005fa180
00000021006b3f30:  00000021008e3758  00000000004d7dc4 <net/http_test.testHandlerPanic.func2+156>
00000021006b3f40:  0000002100ed3980  0000000000000000
00000021006b3f50:  0000000000000000  0000000000000000
00000021006b3f60:  0000000000000000  0000000000000000
00000021006b3f70:  0000000000058500 <runtime.park_m+80>  0000000000a65204
00000021006b3f80:  00000000864b8a7e  00000021000002ad
00000021006b3f90:  0000002100ed3980  010000210108d618
00000021006b3fa0:  00000021005fa180  0000000000089fdc <runtime.mcall+84>
00000021006b3fb0: <00000021010f8180  00000015577cdd50
00000021006b3fc0:  000000210108e201  00000021005fa180
00000021006b3fd0:  0000000000000000  0000000000000000
00000021006b3fe0:  000000000008c688 <runtime.clone+120>  0000000000053b98 <runtime.mstart+0>
00000021006b3ff0:  00000021005fa180  00000021005f8000
runtime.newstack()
    /root/riscv-go/src/runtime/stack.go:995 +0xa18

goroutine 1166 [running]:
io.(*pipe).Read(0x210110e190, 0x21008e37a8, 0x1000, 0x1000, 0x0, 0x0, 0x0)
    /root/riscv-go/src/io/pipe.go:43 +0x18 fp=0x21008e3758 sp=0x21008e3758 pc=0xd8230
io.(*PipeReader).Read(...)
    /root/riscv-go/src/io/pipe.go:127
net/http_test.testHandlerPanic.func2(0x210000c950, 0x2101112100, 0x2100e82f50)
    /root/riscv-go/src/net/http/serve_test.go:2784 +0x9c fp=0x21008e47c0 sp=0x21008e3758 pc=0x4d7dc4
runtime.goexit()
    /root/riscv-go/src/runtime/asm_riscv.s:469 +0x4 fp=0x21008e47c0 sp=0x21008e47c0 pc=0x8bf34
created by net/http_test.testHandlerPanic
    /root/riscv-go/src/net/http/serve_test.go:2782 +0x3a4

goroutine 1 [chan receive]:
testing.(*T).Run(0x2101112100, 0x621c14, 0x1f, 0x63e488, 0x13f601)
    /root/riscv-go/src/testing/testing.go:917 +0x3c0
testing.runTests.func1(0x2100241600)
    /root/riscv-go/src/testing/testing.go:1157 +0x88
testing.tRunner(0x2100241600, 0x2100063e30)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
testing.runTests(0x21001aa3e0, 0xa461a0, 0x1e2, 0x1e2, 0x0)
    /root/riscv-go/src/testing/testing.go:1155 +0x2e8
testing.(*M).Run(0x210023c680, 0x0)
    /root/riscv-go/src/testing/testing.go:1072 +0x194
net/http_test.TestMain(0x210023c680)
    /root/riscv-go/src/net/http/main_test.go:23 +0x34
main.main()
    _testmain.go:1062 +0x190

goroutine 18 [syscall]:
os/signal.signal_recv(0x0)
    /root/riscv-go/src/runtime/sigqueue.go:139 +0x234
os/signal.loop()
    /root/riscv-go/src/os/signal/signal_unix.go:23 +0x2c
created by os/signal.init.0
    /root/riscv-go/src/os/signal/signal_unix.go:29 +0x54

goroutine 104 [chan receive]:
testing.(*T).Parallel(0x21005f0200)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21005f0200)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestClientRedirects(0x21005f0200)
    /root/riscv-go/src/net/http/client_test.go:203 +0x38
testing.tRunner(0x21005f0200, 0x63d7b8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 50 [chan receive]:
testing.(*T).Parallel(0x21002b3800)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http.TestCmdGoNoHTTPServer(0x21002b3800)
    /root/riscv-go/src/net/http/http_test.go:85 +0x38
testing.tRunner(0x21002b3800, 0x63d188)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 291 [chan receive]:
testing.(*T).Parallel(0x21008b1f00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21008b1f00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testClientTimeout_Headers(0x21008b1f00, 0x3857c0f7600)
    /root/riscv-go/src/net/http/client_test.go:1286 +0x38
net/http_test.TestClientTimeout_Headers_h1(0x21008b1f00)
    /root/riscv-go/src/net/http/client_test.go:1281 +0x3c
testing.tRunner(0x21008b1f00, 0x63d7e0)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 56 [chan receive]:
testing.(*T).Parallel(0x21003f1200)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http.TestRequestWriteTransport(0x21003f1200)
    /root/riscv-go/src/net/http/requestwrite_test.go:648 +0x38
testing.tRunner(0x21003f1200, 0x63d278)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 61 [chan receive]:
testing.(*T).Parallel(0x21003f1900)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http.TestReadResponseCloseInMiddle(0x21003f1900)
    /root/riscv-go/src/net/http/response_test.go:643 +0x38
testing.tRunner(0x21003f1900, 0x63d220)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 4 [chan receive]:
testing.(*T).Parallel(0x21005a6000)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21005a6000)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestClient(0x21005a6000)
    /root/riscv-go/src/net/http/client_test.go:70 +0x38
testing.tRunner(0x21005a6000, 0x63d840)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 294 [chan receive]:
testing.(*T).Parallel(0x21008cc300)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21008cc300)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testClientRedirectEatsBody(0x21008cc300, 0x3857c2df600)
    /root/riscv-go/src/net/http/client_test.go:1356 +0x38
net/http_test.TestClientRedirectEatsBody_h1(0x21008cc300)
    /root/riscv-go/src/net/http/client_test.go:1353 +0x3c
testing.tRunner(0x21008cc300, 0x63d780)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 378 [chan receive]:
testing.(*T).Parallel(0x21008cd000)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21008cd000)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x63da40, 0x63cf58, 0x0, 0x0, 0x0, 0x0, 0x0, 0x21008cd000)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.TestH12_HeadContentLengthNoBody(0x21008cd000)
    /root/riscv-go/src/net/http/clientserver_test.go:285 +0x64
testing.tRunner(0x21008cd000, 0x63da48)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 101 [chan receive]:
testing.(*T).Parallel(0x21004d3d00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21004d3d00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestGetRequestFormat(0x21004d3d00)
    /root/riscv-go/src/net/http/client_test.go:116 +0x34
testing.tRunner(0x21004d3d00, 0x63d9a8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 339 [chan receive]:
testing.(*T).Parallel(0x21007bbd00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21007bbd00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestTransportBodyReadError(0x21007bbd00)
    /root/riscv-go/src/net/http/client_test.go:1842 +0x38
testing.tRunner(0x21007bbd00, 0x63e590)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 707 [chan receive]:
testing.(*T).Parallel(0x2100b2b900)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100b2b900)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testInterruptWithPanic(0x2100b2b900, 0x5cd34501, 0x568b00, 0x6d1ea0)
    /root/riscv-go/src/net/http/clientserver_test.go:1158 +0x38
net/http_test.TestInterruptWithPanic_h2(0x2100b2b900)
    /root/riscv-go/src/net/http/clientserver_test.go:1148 +0x54
testing.tRunner(0x2100b2b900, 0x63dcf8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 155 [chan receive]:
testing.(*T).Parallel(0x21005f1800)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21005f1800)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestClientRedirect308NoLocation(0x21005f1800)
    /root/riscv-go/src/net/http/client_test.go:538 +0x34
testing.tRunner(0x21005f1800, 0x63d768)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1117 [chan receive]:
testing.(*T).Parallel(0x2100fa3d00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100fa3d00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testSetsRemoteAddr(0x2100fa3d00, 0x386727f1501)
    /root/riscv-go/src/net/http/serve_test.go:1228 +0x38
net/http_test.TestSetsRemoteAddr_h2(0x2100fa3d00)
    /root/riscv-go/src/net/http/serve_test.go:1225 +0x3c
testing.tRunner(0x2100fa3d00, 0x63e378)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 379 [chan receive]:
testing.(*T).Parallel(0x21008cd100)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21008cd100)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x63da50, 0x63cf58, 0x0, 0x0, 0x0, 0x0, 0x0, 0x21008cd100)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.TestH12_HeadContentLengthSmallBody(0x21008cd100)
    /root/riscv-go/src/net/http/clientserver_test.go:294 +0x64
testing.tRunner(0x21008cd100, 0x63da58)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 154 [chan receive]:
testing.(*T).Parallel(0x21005f1700)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21005f1700)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestClientRedirectUseResponse(0x21005f1700)
    /root/riscv-go/src/net/http/client_test.go:496 +0x38
testing.tRunner(0x21005f1700, 0x63d7b0)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 105 [chan receive]:
testing.(*T).Parallel(0x21005f0300)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21005f0300)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestClientRedirectContext(0x21005f0300)
    /root/riscv-go/src/net/http/client_test.go:302 +0x38
testing.tRunner(0x21005f0300, 0x63d778)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 208 [chan receive]:
testing.(*T).Parallel(0x210082c500)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x210082c500)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestClientInsecureTransport(0x210082c500)
    /root/riscv-go/src/net/http/client_test.go:847 +0x38
testing.tRunner(0x210082c500, 0x63d748)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 293 [chan receive]:
testing.(*T).Parallel(0x21008cc200)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21008cc200)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestClientTimeoutCancel(0x21008cc200)
    /root/riscv-go/src/net/http/client_test.go:1326 +0x38
testing.tRunner(0x21008cc200, 0x63d7c8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 338 [chan receive]:
testing.(*T).Parallel(0x21007bbc00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21007bbc00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestClientRedirectTypes(0x21007bbc00)
    /root/riscv-go/src/net/http/client_test.go:1734 +0x54
testing.tRunner(0x21007bbc00, 0x63d7a8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1115 [chan receive]:
testing.(*T).Parallel(0x2100fa3b00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100fa3b00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestKeepAliveFinalChunkWithEOF(0x2100fa3b00)
    /root/riscv-go/src/net/http/serve_test.go:1195 +0x38
testing.tRunner(0x2100fa3b00, 0x63dd90)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 289 [chan receive]:
testing.(*T).Parallel(0x21008b1d00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21008b1d00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testClientTimeout(0x21008b1d00, 0x3857bf2ab00)
    /root/riscv-go/src/net/http/client_test.go:1204 +0x38
net/http_test.TestClientTimeout_h1(0x21008b1d00)
    /root/riscv-go/src/net/http/client_test.go:1200 +0x3c
testing.tRunner(0x21008b1d00, 0x63d7f0)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 711 [chan receive]:
testing.(*T).Parallel(0x2100b2bd00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100b2bd00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testInterruptWithPanic(0x2100b2bd00, 0x5cd34501, 0x589480, 0x21001a0b40)
    /root/riscv-go/src/net/http/clientserver_test.go:1158 +0x38
net/http_test.TestInterruptWithPanic_ErrAbortHandler_h2(0x2100b2bd00)
    /root/riscv-go/src/net/http/clientserver_test.go:1155 +0x68
testing.tRunner(0x2100b2bd00, 0x63dce8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 708 [chan receive]:
testing.(*T).Parallel(0x2100b2ba00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100b2ba00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testInterruptWithPanic(0x2100b2ba00, 0x5cd34500, 0x0, 0x0)
    /root/riscv-go/src/net/http/clientserver_test.go:1158 +0x38
net/http_test.TestInterruptWithPanic_nil_h1(0x2100b2ba00)
    /root/riscv-go/src/net/http/clientserver_test.go:1149 +0x4c
testing.tRunner(0x2100b2ba00, 0x63dd00)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1097 [chan receive]:
testing.(*T).Parallel(0x2100fa2900)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100fa2900)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestMuxRedirectLeadingSlashes(0x2100fa2900)
    /root/riscv-go/src/net/http/serve_test.go:457 +0x38
testing.tRunner(0x2100fa2900, 0x63de00)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 156 [chan receive]:
testing.(*T).Parallel(0x21005f1900)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21005f1900)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestClientRedirect308NoGetBody(0x21005f1900)
    /root/riscv-go/src/net/http/client_test.go:561 +0x38
testing.tRunner(0x21005f1900, 0x63d758)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 295 [chan receive]:
testing.(*T).Parallel(0x21008cc400)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21008cc400)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testClientRedirectEatsBody(0x21008cc400, 0x3857c367a01)
    /root/riscv-go/src/net/http/client_test.go:1356 +0x38
net/http_test.TestClientRedirectEatsBody_h2(0x21008cc400)
    /root/riscv-go/src/net/http/client_test.go:1354 +0x3c
testing.tRunner(0x21008cc400, 0x63d788)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1112 [chan receive]:
testing.(*T).Parallel(0x2100fa3800)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100fa3800)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testTCPConnectionStaysOpen(0x2100fa3800, 0x62a9d5, 0x2a, 0x6dd000, 0x63ea38)
    /root/riscv-go/src/net/http/serve_test.go:1115 +0x38
net/http_test.TestHTTP10KeepAlive204Response(0x2100fa3800)
    /root/riscv-go/src/net/http/serve_test.go:1180 +0x60
testing.tRunner(0x2100fa3800, 0x63db00)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 158 [chan receive]:
testing.(*T).Parallel(0x21007ba100)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21007ba100)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestRedirectCookiesJar(0x21007ba100)
    /root/riscv-go/src/net/http/client_test.go:660 +0x34
testing.tRunner(0x21007ba100, 0x63df18)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1111 [chan receive]:
testing.(*T).Parallel(0x2100fa3700)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100fa3700)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testTCPConnectionCloses(0x2100fa3700, 0x61b087, 0x18, 0x6dd000, 0x63db20)
    /root/riscv-go/src/net/http/serve_test.go:1071 +0x38
net/http_test.TestHTTP2UpgradeClosesConnection(0x2100fa3700)
    /root/riscv-go/src/net/http/serve_test.go:1169 +0x60
testing.tRunner(0x2100fa3700, 0x63db28)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1116 [chan receive]:
testing.(*T).Parallel(0x2100fa3c00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100fa3c00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testSetsRemoteAddr(0x2100fa3c00, 0x3867275a300)
    /root/riscv-go/src/net/http/serve_test.go:1228 +0x38
net/http_test.TestSetsRemoteAddr_h1(0x2100fa3c00)
    /root/riscv-go/src/net/http/serve_test.go:1224 +0x3c
testing.tRunner(0x2100fa3c00, 0x63e370)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 290 [chan receive]:
testing.(*T).Parallel(0x21008b1e00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21008b1e00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testClientTimeout(0x21008b1e00, 0x3857c056001)
    /root/riscv-go/src/net/http/client_test.go:1204 +0x38
net/http_test.TestClientTimeout_h2(0x21008b1e00)
    /root/riscv-go/src/net/http/client_test.go:1201 +0x3c
testing.tRunner(0x21008b1e00, 0x63d7f8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 702 [chan receive]:
testing.(*T).Parallel(0x2100b2b400)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100b2b400)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testTransportGCRequest(0x2100b2b400, 0x38607620000)
    /root/riscv-go/src/net/http/clientserver_test.go:1049 +0x38
net/http_test.TestTransportGCRequest_NoBody_h1(0x2100b2b400)
    /root/riscv-go/src/net/http/clientserver_test.go:1046 +0x40
testing.tRunner(0x2100b2b400, 0x63e6f8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 292 [chan receive]:
testing.(*T).Parallel(0x21008cc000)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21008cc000)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testClientTimeout_Headers(0x21008cc000, 0x3857c1c2801)
    /root/riscv-go/src/net/http/client_test.go:1286 +0x38
net/http_test.TestClientTimeout_Headers_h2(0x21008cc000)
    /root/riscv-go/src/net/http/client_test.go:1282 +0x3c
testing.tRunner(0x21008cc000, 0x63d7e8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1113 [chan receive]:
testing.(*T).Parallel(0x2100fa3900)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100fa3900)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testTCPConnectionStaysOpen(0x2100fa3900, 0x61f5f6, 0x1d, 0x6dd000, 0x63ea38)
    /root/riscv-go/src/net/http/serve_test.go:1115 +0x38
net/http_test.TestHTTP11KeepAlive204Response(0x2100fa3900)
    /root/riscv-go/src/net/http/serve_test.go:1184 +0x60
testing.tRunner(0x2100fa3900, 0x63db10)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1114 [chan receive]:
testing.(*T).Parallel(0x2100fa3a00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100fa3a00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testTCPConnectionStaysOpen(0x2100fa3a00, 0x635f4f, 0x5c, 0x6dd000, 0x63ea40)
    /root/riscv-go/src/net/http/serve_test.go:1115 +0x38
net/http_test.TestHTTP10KeepAlive304Response(0x2100fa3a00)
    /root/riscv-go/src/net/http/serve_test.go:1188 +0x60
testing.tRunner(0x2100fa3a00, 0x63db08)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 282 [chan receive]:
testing.(*T).Parallel(0x21008b0d00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21008b0d00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestEmptyPasswordAuth(0x21008b0d00)
    /root/riscv-go/src/net/http/client_test.go:1057 +0x34
testing.tRunner(0x21008b0d00, 0x63d940)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 709 [chan receive]:
testing.(*T).Parallel(0x2100b2bb00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100b2bb00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testInterruptWithPanic(0x2100b2bb00, 0x5cd34501, 0x0, 0x0)
    /root/riscv-go/src/net/http/clientserver_test.go:1158 +0x38
net/http_test.TestInterruptWithPanic_nil_h2(0x2100b2bb00)
    /root/riscv-go/src/net/http/clientserver_test.go:1150 +0x4c
testing.tRunner(0x2100b2bb00, 0x63dd08)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 710 [chan receive]:
testing.(*T).Parallel(0x2100b2bc00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100b2bc00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testInterruptWithPanic(0x2100b2bc00, 0x5cd34500, 0x589480, 0x21001a0b40)
    /root/riscv-go/src/net/http/clientserver_test.go:1158 +0x38
net/http_test.TestInterruptWithPanic_ErrAbortHandler_h1(0x2100b2bc00)
    /root/riscv-go/src/net/http/clientserver_test.go:1152 +0x68
testing.tRunner(0x2100b2bc00, 0x63dce0)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 706 [chan receive]:
testing.(*T).Parallel(0x2100b2b800)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100b2b800)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testInterruptWithPanic(0x2100b2b800, 0x5cd34500, 0x568b00, 0x6d1e60)
    /root/riscv-go/src/net/http/clientserver_test.go:1158 +0x38
net/http_test.TestInterruptWithPanic_h1(0x2100b2b800)
    /root/riscv-go/src/net/http/clientserver_test.go:1147 +0x54
testing.tRunner(0x2100b2b800, 0x63dcf0)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 434 [chan receive]:
testing.(*T).Parallel(0x21009cc600)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21009cc600)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x63ea20, 0x210099a6a0, 0x210099e8c0, 0x0, 0x0, 0x0, 0x0, 0x21009cc600)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.h12requestContentLength(0x21009cc600, 0x63da90, 0xffffffffffffffff)
    /root/riscv-go/src/net/http/clientserver_test.go:515 +0x128
net/http_test.TestH12_RequestContentLength_Unknown(0x21009cc600)
    /root/riscv-go/src/net/http/clientserver_test.go:498 +0x48
testing.tRunner(0x21009cc600, 0x63da98)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 705 [chan receive]:
testing.(*T).Parallel(0x2100b2b700)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100b2b700)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testTransportRejectsInvalidHeaders(0x2100b2b700, 0x38607902b01)
    /root/riscv-go/src/net/http/clientserver_test.go:1096 +0x38
net/http_test.TestTransportRejectsInvalidHeaders_h2(0x2100b2b700)
    /root/riscv-go/src/net/http/clientserver_test.go:1093 +0x3c
testing.tRunner(0x2100b2b700, 0x63e880)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 380 [chan receive]:
testing.(*T).Parallel(0x21008cd200)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21008cd200)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x63da30, 0x63cf58, 0x0, 0x0, 0x0, 0x0, 0x0, 0x21008cd200)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.TestH12_HeadContentLengthLargeBody(0x21008cd200)
    /root/riscv-go/src/net/http/clientserver_test.go:306 +0x64
testing.tRunner(0x21008cd200, 0x63da38)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 381 [chan receive]:
testing.(*T).Parallel(0x21008cd300)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21008cd300)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x63d9b0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x21008cd300)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.TestH12_200NoBody(0x21008cd300)
    /root/riscv-go/src/net/http/clientserver_test.go:310 +0x58
testing.tRunner(0x21008cd300, 0x63d9b8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 382 [chan receive]:
testing.(*T).Parallel(0x21008cd400)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21008cd400)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x21008ce3e0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x21008cd400)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.testH12_noBody(0x21008cd400, 0xcc)
    /root/riscv-go/src/net/http/clientserver_test.go:320 +0xa0
net/http_test.TestH2_204NoBody(0x21008cd400)
    /root/riscv-go/src/net/http/clientserver_test.go:313 +0x3c
testing.tRunner(0x21008cd400, 0x63dad8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 383 [chan receive]:
testing.(*T).Parallel(0x21008cd500)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21008cd500)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x21008ce400, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x21008cd500)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.testH12_noBody(0x21008cd500, 0x130)
    /root/riscv-go/src/net/http/clientserver_test.go:320 +0xa0
net/http_test.TestH2_304NoBody(0x21008cd500)
    /root/riscv-go/src/net/http/clientserver_test.go:314 +0x3c
testing.tRunner(0x21008cd500, 0x63dae0)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 384 [chan receive]:
testing.(*T).Parallel(0x21008cd600)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21008cd600)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x21008ce420, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x21008cd600)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.testH12_noBody(0x21008cd600, 0x194)
    /root/riscv-go/src/net/http/clientserver_test.go:320 +0xa0
net/http_test.TestH2_404NoBody(0x21008cd600)
    /root/riscv-go/src/net/http/clientserver_test.go:315 +0x3c
testing.tRunner(0x21008cd600, 0x63dae8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 385 [chan receive]:
testing.(*T).Parallel(0x21008cd700)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21008cd700)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x63dab0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x21008cd700)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.TestH12_SmallBody(0x21008cd700)
    /root/riscv-go/src/net/http/clientserver_test.go:326 +0x58
testing.tRunner(0x21008cd700, 0x63dab8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 386 [chan receive]:
testing.(*T).Parallel(0x21008cd800)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21008cd800)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x63d9e8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x21008cd800)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.TestH12_ExplicitContentLength(0x21008cd800)
    /root/riscv-go/src/net/http/clientserver_test.go:333 +0x58
testing.tRunner(0x21008cd800, 0x63d9f0)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 387 [chan receive]:
testing.(*T).Parallel(0x21008cd900)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21008cd900)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x63d9f8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x21008cd900)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.TestH12_FlushBeforeBody(0x21008cd900)
    /root/riscv-go/src/net/http/clientserver_test.go:340 +0x58
testing.tRunner(0x21008cd900, 0x63da00)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 388 [chan receive]:
testing.(*T).Parallel(0x21008cda00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21008cda00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x63da08, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x21008cda00)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.TestH12_FlushMidBody(0x21008cda00)
    /root/riscv-go/src/net/http/clientserver_test.go:348 +0x58
testing.tRunner(0x21008cda00, 0x63da10)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 389 [chan receive]:
testing.(*T).Parallel(0x21008cdb00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21008cdb00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x21008a9050, 0x63cf58, 0x0, 0x0, 0x0, 0x0, 0x0, 0x21008cdb00)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.TestH12_Head_ExplicitLen(0x21008cdb00)
    /root/riscv-go/src/net/http/clientserver_test.go:360 +0xcc
testing.tRunner(0x21008cdb00, 0x63da60)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 390 [chan receive]:
testing.(*T).Parallel(0x21008cdc00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21008cdc00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x21008a9070, 0x63cf58, 0x0, 0x0, 0x0, 0x0, 0x0, 0x21008cdc00)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.TestH12_Head_ImplicitLen(0x21008cdc00)
    /root/riscv-go/src/net/http/clientserver_test.go:372 +0xcc
testing.tRunner(0x21008cdc00, 0x63da68)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 391 [chan receive]:
testing.(*T).Parallel(0x21008cdd00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21008cdd00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x63da18, 0x0, 0x21008a9090, 0x0, 0x0, 0x0, 0x0, 0x21008cdd00)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.TestH12_HandlerWritesTooLittle(0x21008cdd00)
    /root/riscv-go/src/net/http/clientserver_test.go:394 +0xcc
testing.tRunner(0x21008cdd00, 0x63da20)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 392 [chan receive]:
testing.(*T).Parallel(0x21008cde00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21008cde00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x21008a90b0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x21008cde00)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.TestH12_HandlerWritesTooMuch(0x21008cde00)
    /root/riscv-go/src/net/http/clientserver_test.go:415 +0xc0
testing.tRunner(0x21008cde00, 0x63da28)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 393 [chan receive]:
testing.(*T).Parallel(0x21008cdf00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21008cdf00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x21008a90d0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x21008cdf00)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.TestH12_AutoGzip(0x21008cdf00)
    /root/riscv-go/src/net/http/clientserver_test.go:431 +0xc0
testing.tRunner(0x21008cdf00, 0x63d9e0)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 394 [chan receive]:
testing.(*T).Parallel(0x2100a9c000)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100a9c000)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x21008a9100, 0x0, 0x0, 0x0, 0x21008a90f0, 0x1, 0x1, 0x2100a9c000)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.TestH12_AutoGzip_Disabled(0x2100a9c000)
    /root/riscv-go/src/net/http/clientserver_test.go:445 +0x124
testing.tRunner(0x2100a9c000, 0x63d9d8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 351 [chan receive]:
testing.(*T).Parallel(0x21009cc300)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21009cc300)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x63daa0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x21009cc300)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.TestH12_ServerEmptyContentLength(0x21009cc300)
    /root/riscv-go/src/net/http/clientserver_test.go:486 +0x58
testing.tRunner(0x21009cc300, 0x63daa8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1092 [chan receive]:
testing.(*T).Parallel(0x2100fa2400)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.TestConsumingBodyOnNextConn(0x2100fa2400)
    /root/riscv-go/src/net/http/serve_test.go:164 +0x38
testing.tRunner(0x2100fa2400, 0x63d8d8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1101 [chan receive]:
testing.(*T).Parallel(0x2100fa2d00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100fa2d00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestServerTimeouts(0x2100fa2d00)
    /root/riscv-go/src/net/http/serve_test.go:656 +0x38
testing.tRunner(0x2100fa2d00, 0x63e310)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 352 [chan receive]:
testing.(*T).Parallel(0x21009cc400)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21009cc400)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x63ea20, 0x210099a660, 0x210099e880, 0x0, 0x0, 0x0, 0x0, 0x21009cc400)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.h12requestContentLength(0x21009cc400, 0x63da70, 0x4)
    /root/riscv-go/src/net/http/clientserver_test.go:515 +0x128
net/http_test.TestH12_RequestContentLength_Known_NonZero(0x21009cc400)
    /root/riscv-go/src/net/http/clientserver_test.go:490 +0x48
testing.tRunner(0x21009cc400, 0x63da78)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 699 [chan receive]:
testing.(*T).Parallel(0x2100b2b100)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100b2b100)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestTransportDiscardsUnneededConns(0x2100b2b100)
    /root/riscv-go/src/net/http/clientserver_test.go:964 +0x38
testing.tRunner(0x2100b2b100, 0x63e678)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 704 [chan receive]:
testing.(*T).Parallel(0x2100b2b600)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100b2b600)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testTransportRejectsInvalidHeaders(0x2100b2b600, 0x38607831300)
    /root/riscv-go/src/net/http/clientserver_test.go:1096 +0x38
net/http_test.TestTransportRejectsInvalidHeaders_h1(0x2100b2b600)
    /root/riscv-go/src/net/http/clientserver_test.go:1090 +0x3c
testing.tRunner(0x2100b2b600, 0x63e878)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 433 [chan receive]:
testing.(*T).Parallel(0x21009cc500)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21009cc500)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x63ea20, 0x210099a680, 0x210099e8a0, 0x0, 0x0, 0x0, 0x0, 0x21009cc500)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.h12requestContentLength(0x21009cc500, 0x63da80, 0x0)
    /root/riscv-go/src/net/http/clientserver_test.go:515 +0x128
net/http_test.TestH12_RequestContentLength_Known_Zero(0x21009cc500)
    /root/riscv-go/src/net/http/clientserver_test.go:494 +0x48
testing.tRunner(0x21009cc500, 0x63da88)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1143 [chan receive]:
testing.(*T).Parallel(0x2100f07700)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100f07700)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testAutomaticHTTP2_Serve(0x2100f07700, 0x2100ddd500, 0x3867d1ddc00)
    /root/riscv-go/src/net/http/serve_test.go:1599 +0x34
net/http_test.TestAutomaticHTTP2_Serve_NonH2TLSConfig(0x2100f07700)
    /root/riscv-go/src/net/http/serve_test.go:1591 +0x54
testing.tRunner(0x2100f07700, 0x63d640)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1159 [chan receive]:
testing.(*T).Parallel(0x2100ef5c00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100ef5c00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestTimeoutHandlerRace(0x2100ef5c00)
    /root/riscv-go/src/net/http/serve_test.go:2367 +0x34
testing.tRunner(0x2100ef5c00, 0x63e4d0)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 703 [chan receive]:
testing.(*T).Parallel(0x2100b2b500)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100b2b500)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testTransportGCRequest(0x2100b2b500, 0x38607680001)
    /root/riscv-go/src/net/http/clientserver_test.go:1049 +0x38
net/http_test.TestTransportGCRequest_NoBody_h2(0x2100b2b500)
    /root/riscv-go/src/net/http/clientserver_test.go:1047 +0x44
testing.tRunner(0x2100b2b500, 0x63e700)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 767 [chan receive]:
testing.(*T).Parallel(0x2100c15100)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100c15100)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testWriteHeaderAfterWrite(0x2100c15100, 0x386209d0001)
    /root/riscv-go/src/net/http/clientserver_test.go:1436 +0x38
net/http_test.TestWriteHeaderNoCodeCheck_h2(0x2100c15100)
    /root/riscv-go/src/net/http/clientserver_test.go:1434 +0x44
testing.tRunner(0x2100c15100, 0x63e998)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1110 [chan receive]:
testing.(*T).Parallel(0x2100fa3600)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100fa3600)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testTCPConnectionCloses(0x2100fa3600, 0x62a9d5, 0x2a, 0x6dd000, 0x63dbc0)
    /root/riscv-go/src/net/http/serve_test.go:1071 +0x38
net/http_test.TestHandlersCanSetConnectionClose10(0x2100fa3600)
    /root/riscv-go/src/net/http/serve_test.go:1163 +0x60
testing.tRunner(0x2100fa3600, 0x63dbc8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 701 [chan receive]:
testing.(*T).Parallel(0x2100b2b300)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100b2b300)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testTransportGCRequest(0x2100b2b300, 0x386075b0101)
    /root/riscv-go/src/net/http/clientserver_test.go:1049 +0x38
net/http_test.TestTransportGCRequest_Body_h2(0x2100b2b300)
    /root/riscv-go/src/net/http/clientserver_test.go:1045 +0x40
testing.tRunner(0x2100b2b300, 0x63e6f0)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 700 [chan receive]:
testing.(*T).Parallel(0x2100b2b200)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100b2b200)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testTransportGCRequest(0x2100b2b200, 0x38607530100)
    /root/riscv-go/src/net/http/clientserver_test.go:1049 +0x38
net/http_test.TestTransportGCRequest_Body_h1(0x2100b2b200)
    /root/riscv-go/src/net/http/clientserver_test.go:1044 +0x44
testing.tRunner(0x2100b2b200, 0x63e6e8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1109 [chan receive]:
testing.(*T).Parallel(0x2100fa3500)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100fa3500)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testTCPConnectionCloses(0x2100fa3500, 0x62175b, 0x1f, 0x6dd000, 0x63dbd0)
    /root/riscv-go/src/net/http/serve_test.go:1071 +0x38
net/http_test.TestHandlersCanSetConnectionClose11(0x2100fa3500)
    /root/riscv-go/src/net/http/serve_test.go:1157 +0x60
testing.tRunner(0x2100fa3500, 0x63dbd8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1093 [chan receive]:
testing.(*T).Parallel(0x2100fa2500)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100fa2500)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestHostHandlers(0x2100fa2500)
    /root/riscv-go/src/net/http/serve_test.go:246 +0x38
testing.tRunner(0x2100fa2500, 0x63dca8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1106 [chan receive]:
testing.(*T).Parallel(0x2100fa3200)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100fa3200)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestIdentityResponse(0x2100fa3200)
    /root/riscv-go/src/net/http/serve_test.go:992 +0x38
testing.tRunner(0x2100fa3200, 0x63dcc0)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 712 [chan receive]:
testing.(*T).Parallel(0x2100b2be00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100b2be00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x63d9c0, 0x0, 0x0, 0x2100c678a0, 0x0, 0x0, 0x0, 0x2100b2be00)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.TestH12_AutoGzipWithDumpResponse(0x2100b2be00)
    /root/riscv-go/src/net/http/clientserver_test.go:1256 +0xcc
testing.tRunner(0x2100b2be00, 0x63d9c8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 713 [chan receive]:
testing.(*T).Parallel(0x2100b2bf00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100b2bf00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testCloseIdleConnections(0x2100b2bf00, 0x38607e6d600)
    /root/riscv-go/src/net/http/clientserver_test.go:1263 +0x34
net/http_test.TestCloseIdleConnections_h1(0x2100b2bf00)
    /root/riscv-go/src/net/http/clientserver_test.go:1260 +0x3c
testing.tRunner(0x2100b2bf00, 0x63d848)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 714 [chan receive]:
testing.(*T).Parallel(0x2100d04000)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100d04000)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testCloseIdleConnections(0x2100d04000, 0x386080e8a01)
    /root/riscv-go/src/net/http/clientserver_test.go:1263 +0x34
net/http_test.TestCloseIdleConnections_h2(0x2100d04000)
    /root/riscv-go/src/net/http/clientserver_test.go:1261 +0x3c
testing.tRunner(0x2100d04000, 0x63d850)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 765 [chan receive]:
testing.(*T).Parallel(0x2100c14f00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100c14f00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testWriteHeaderAfterWrite(0x2100c14f00, 0x38620910000)
    /root/riscv-go/src/net/http/clientserver_test.go:1436 +0x38
net/http_test.TestWriteHeaderNoCodeCheck_h1(0x2100c14f00)
    /root/riscv-go/src/net/http/clientserver_test.go:1432 +0x40
testing.tRunner(0x2100c14f00, 0x63e990)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1096 [chan receive]:
testing.(*T).Parallel(0x2100fa2800)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100fa2800)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestServeMuxHandlerRedirects(0x2100fa2800)
    /root/riscv-go/src/net/http/serve_test.go:414 +0x38
testing.tRunner(0x2100fa2800, 0x63e0a8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1100 [chan receive]:
testing.(*T).Parallel(0x2100fa2c00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100fa2c00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestShouldRedirectConcurrency(0x2100fa2c00)
    /root/riscv-go/src/net/http/serve_test.go:602 +0x34
testing.tRunner(0x2100fa2c00, 0x63e390)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1108 [chan receive]:
testing.(*T).Parallel(0x2100fa3400)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100fa3400)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testTCPConnectionCloses(0x2100fa3400, 0x62df2a, 0x30, 0x6dd000, 0x63d6f0)
    /root/riscv-go/src/net/http/serve_test.go:1071 +0x38
net/http_test.TestClientCanClose(0x2100fa3400)
    /root/riscv-go/src/net/http/serve_test.go:1149 +0x60
testing.tRunner(0x2100fa3400, 0x63d6f8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 766 [chan receive]:
testing.(*T).Parallel(0x2100c15000)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100c15000)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testWriteHeaderAfterWrite(0x2100c15000, 0x38620970100)
    /root/riscv-go/src/net/http/clientserver_test.go:1436 +0x38
net/http_test.TestWriteHeaderNoCodeCheck_h1hijack(0x2100c15000)
    /root/riscv-go/src/net/http/clientserver_test.go:1433 +0x44
testing.tRunner(0x2100c15000, 0x63e988)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1072 [chan receive]:
testing.(*T).Parallel(0x2100f07100)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100f07100)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testHeadResponses(0x2100f07100, 0x386775efa01)
    /root/riscv-go/src/net/http/serve_test.go:1388 +0x38
net/http_test.TestHeadResponses_h2(0x2100f07100)
    /root/riscv-go/src/net/http/serve_test.go:1385 +0x3c
testing.tRunner(0x2100f07100, 0x63dbe8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 768 [chan receive]:
testing.(*T).Parallel(0x2100c15200)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100c15200)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestBidiStreamReverseProxy(0x2100c15200)
    /root/riscv-go/src/net/http/clientserver_test.go:1487 +0x38
testing.tRunner(0x2100c15200, 0x63d678)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 801 [chan receive]:
testing.(*T).Parallel(0x2100c15300)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100c15300)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x63dac0, 0x63dac8, 0x0, 0x2100db4350, 0x0, 0x0, 0x0, 0x2100c15300)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.TestH12_WebSocketUpgrade(0x2100c15300)
    /root/riscv-go/src/net/http/clientserver_test.go:1569 +0xd8
testing.tRunner(0x2100c15300, 0x63dad0)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 802 [chan receive]:
testing.(*T).Parallel(0x2100c15400)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100c15400)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestServeFile(0x2100c15400)
    /root/riscv-go/src/net/http/fs_test.go:71 +0x38
testing.tRunner(0x2100c15400, 0x63e078)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 999 [chan receive]:
testing.(*T).Parallel(0x2100f06700)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100f06700)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestLinuxSendfile(0x2100f06700)
    /root/riscv-go/src/net/http/fs_test.go:1094 +0x38
testing.tRunner(0x2100f06700, 0x63dda8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1138 [chan receive]:
testing.(*T).Parallel(0x2100f07300)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100f07300)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestTLSServer(0x2100f07300)
    /root/riscv-go/src/net/http/serve_test.go:1457 +0x38
testing.tRunner(0x2100f07300, 0x63e468)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1105 [chan receive]:
testing.(*T).Parallel(0x2100fa3100)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100fa3100)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestOnlyWriteTimeout(0x2100fa3100)
    /root/riscv-go/src/net/http/serve_test.go:918 +0x38
testing.tRunner(0x2100fa3100, 0x63de80)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1107 [chan receive]:
testing.(*T).Parallel(0x2100fa3300)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100fa3300)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testTCPConnectionCloses(0x2100fa3300, 0x615c55, 0x12, 0x6dd000, 0x63e080)
    /root/riscv-go/src/net/http/serve_test.go:1071 +0x38
net/http_test.TestServeHTTP10Close(0x2100fa3300)
    /root/riscv-go/src/net/http/serve_test.go:1142 +0x60
testing.tRunner(0x2100fa3300, 0x63e088)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1142 [chan receive]:
testing.(*T).Parallel(0x2100f07600)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100f07600)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testAutomaticHTTP2_Serve(0x2100f07600, 0x0, 0x3867d171201)
    /root/riscv-go/src/net/http/serve_test.go:1599 +0x34
net/http_test.TestAutomaticHTTP2_Serve_NoTLSConfig(0x2100f07600)
    /root/riscv-go/src/net/http/serve_test.go:1587 +0x44
testing.tRunner(0x2100f07600, 0x63d638)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1141 [chan receive]:
testing.(*T).Parallel(0x2100f07500)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100f07500)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestTLSServerRejectHTTPRequests(0x2100f07500)
    /root/riscv-go/src/net/http/serve_test.go:1561 +0x38
testing.tRunner(0x2100f07500, 0x63e460)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1095 [chan receive]:
testing.(*T).Parallel(0x2100fa2700)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100fa2700)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestServeMuxHandleFuncWithNilHandler(0x2100fa2700)
    /root/riscv-go/src/net/http/serve_test.go:389 +0x34
testing.tRunner(0x2100fa2700, 0x63e0a0)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1154 [chan receive]:
testing.(*T).Parallel(0x2100ef5700)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100ef5700)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestRequestBodyReadErrorClosesConnection(0x2100ef5700)
    /root/riscv-go/src/net/http/serve_test.go:2110 +0x38
testing.tRunner(0x2100ef5700, 0x63df78)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1155 [chan receive]:
testing.(*T).Parallel(0x2100ef5800)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100ef5800)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestInvalidTrailerClosesConnection(0x2100ef5800)
    /root/riscv-go/src/net/http/serve_test.go:2141 +0x38
testing.tRunner(0x2100ef5800, 0x63dd10)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1099 [chan receive]:
testing.(*T).Parallel(0x2100fa2b00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100fa2b00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestServeWithSlashRedirectForHostPatterns(0x2100fa2b00)
    /root/riscv-go/src/net/http/serve_test.go:544 +0x38
testing.tRunner(0x2100fa2b00, 0x63e0d0)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1098 [chan receive]:
testing.(*T).Parallel(0x2100fa2a00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100fa2a00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestServeWithSlashRedirectKeepsQueryString(0x2100fa2a00)
    /root/riscv-go/src/net/http/serve_test.go:486 +0x38
testing.tRunner(0x2100fa2a00, 0x63e0e8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1161 [chan receive]:
testing.(*T).Parallel(0x2100ef5e00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100ef5e00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestTimeoutHandlerRaceHeaderTimeout(0x2100ef5e00)
    /root/riscv-go/src/net/http/serve_test.go:2449 +0x38
testing.tRunner(0x2100ef5e00, 0x63e4c0)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1157 [chan receive]:
testing.(*T).Parallel(0x2100ef5a00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100ef5a00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testTimeoutHandler(0x2100ef5a00, 0x38688ef2000)
    /root/riscv-go/src/net/http/serve_test.go:2310 +0x38
net/http_test.TestTimeoutHandler_h1(0x2100ef5a00)
    /root/riscv-go/src/net/http/serve_test.go:2307 +0x3c
testing.tRunner(0x2100ef5a00, 0x63e4e8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1137 [chan receive]:
testing.(*T).Parallel(0x2100f07200)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100f07200)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestTLSHandshakeTimeout(0x2100f07200)
    /root/riscv-go/src/net/http/serve_test.go:1426 +0x38
testing.tRunner(0x2100f07200, 0x63e438)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1160 [chan receive]:
testing.(*T).Parallel(0x2100ef5d00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100ef5d00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestTimeoutHandlerRaceHeader(0x2100ef5d00)
    /root/riscv-go/src/net/http/serve_test.go:2411 +0x34
testing.tRunner(0x2100ef5d00, 0x63e4c8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1158 [chan receive]:
testing.(*T).Parallel(0x2100ef5b00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100ef5b00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testTimeoutHandler(0x2100ef5b00, 0x3868932cc01)
    /root/riscv-go/src/net/http/serve_test.go:2310 +0x38
net/http_test.TestTimeoutHandler_h2(0x2100ef5b00)
    /root/riscv-go/src/net/http/serve_test.go:2308 +0x3c
testing.tRunner(0x2100ef5b00, 0x63e4f0)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1056 [runnable]:
net/http.(*timeoutHandler).ServeHTTP.func1.1(0x2100eabce0)
    /root/riscv-go/src/net/http/server.go:3185 +0x7c
panic(0x568b00, 0x6d1180)
    /root/riscv-go/src/runtime/panic.go:522 +0x254
net/http_test.testHandlerPanic.func1(0x6e68a0, 0x2100eabc80, 0x2100edd700)
    /root/riscv-go/src/net/http/serve_test.go:2770 +0x170
net/http.HandlerFunc.ServeHTTP(0x2100e85d10, 0x6e68a0, 0x2100eabc80, 0x2100edd700)
    /root/riscv-go/src/net/http/server.go:1995 +0x44
net/http.(*timeoutHandler).ServeHTTP.func1(0x2100eabce0, 0x2100f04580, 0x2100eabc80, 0x2100edd700, 0x2100ecd740)
    /root/riscv-go/src/net/http/server.go:3188 +0x80
created by net/http.(*timeoutHandler).ServeHTTP
    /root/riscv-go/src/net/http/server.go:3182 +0x200

goroutine 1094 [chan receive]:
testing.(*T).Parallel(0x2100fa2600)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100fa2600)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestServeMuxHandler(0x2100fa2600)
    /root/riscv-go/src/net/http/serve_test.go:364 +0x38
testing.tRunner(0x2100fa2600, 0x63e0b0)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1019 [chan receive]:
testing.(*T).Parallel(0x2100edc200)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100edc200)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestNextProtoUpgrade(0x2100edc200)
    /root/riscv-go/src/net/http/npn_test.go:22 +0x38
testing.tRunner(0x2100edc200, 0x63de28)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1163 [chan receive]:
testing.(*T).Parallel(0x2101112000)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2101112000)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestTimeoutHandlerEmptyResponse(0x2101112000)
    /root/riscv-go/src/net/http/serve_test.go:2533 +0x34
testing.tRunner(0x2101112000, 0x63e478)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1071 [chan receive]:
testing.(*T).Parallel(0x2100f07000)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100f07000)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testHeadResponses(0x2100f07000, 0x3867759be00)
    /root/riscv-go/src/net/http/serve_test.go:1388 +0x38
net/http_test.TestHeadResponses_h1(0x2100f07000)
    /root/riscv-go/src/net/http/serve_test.go:1384 +0x3c
testing.tRunner(0x2100f07000, 0x63dbe0)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1055 [IO wait]:
internal/poll.runtime_pollWait(0x15577cdd28, 0x72, 0xffffffffffffffff)
    /root/riscv-go/src/runtime/netpoll.go:182 +0x64
internal/poll.(*pollDesc).wait(0x2100f0b098, 0x72, 0x0, 0x1, 0xffffffffffffffff)
    /root/riscv-go/src/internal/poll/fd_poll_runtime.go:87 +0xd8
internal/poll.(*pollDesc).waitRead(...)
    /root/riscv-go/src/internal/poll/fd_poll_runtime.go:92
internal/poll.(*FD).Read(0x2100f0b080, 0x210108a881, 0x1, 0x1, 0x0, 0x0, 0x0)
    /root/riscv-go/src/internal/poll/fd_unix.go:169 +0x1f8
net.(*netFD).Read(0x2100f0b080, 0x210108a881, 0x1, 0x1, 0x0, 0x0, 0x0)
    /root/riscv-go/src/net/fd_unix.go:202 +0x50
net.(*conn).Read(0x21001b4c30, 0x210108a881, 0x1, 0x1, 0x0, 0x0, 0x0)
    /root/riscv-go/src/net/net.go:177 +0x74
net/http.(*connReader).backgroundRead(0x210108a870)
    /root/riscv-go/src/net/http/server.go:677 +0x54
created by net/http.(*connReader).startBackgroundRead
    /root/riscv-go/src/net/http/server.go:673 +0xf0

goroutine 991 [chan receive]:
testing.(*T).Parallel(0x2100ef5400)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100ef5400)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestServerUnreadRequestBodyLittle(0x2100ef5400)
    /root/riscv-go/src/net/http/serve_test.go:1855 +0x38
testing.tRunner(0x2100ef5400, 0x63e330)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1153 [chan receive]:
testing.(*T).Parallel(0x2100ef5600)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100ef5600)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestHandlerBodyClose(0x2100ef5600)
    /root/riscv-go/src/net/http/serve_test.go:2030 +0x38
testing.tRunner(0x2100ef5600, 0x63db58)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1144 [chan receive]:
testing.(*T).Parallel(0x2100f07800)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100f07800)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testAutomaticHTTP2_Serve(0x2100f07800, 0x2100ddd800, 0x2ae36301)
    /root/riscv-go/src/net/http/serve_test.go:1599 +0x34
net/http_test.TestAutomaticHTTP2_Serve_H2TLSConfig(0x2100f07800)
    /root/riscv-go/src/net/http/serve_test.go:1595 +0xe4
testing.tRunner(0x2100f07800, 0x63d630)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1145 [chan receive]:
testing.(*T).Parallel(0x2100f07900)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100f07900)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestAutomaticHTTP2_Serve_WithTLSConfig(0x2100f07900)
    /root/riscv-go/src/net/http/serve_test.go:1615 +0x34
testing.tRunner(0x2100f07900, 0x63d648)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 990 [chan receive]:
testing.(*T).Parallel(0x2100ef5300)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100ef5300)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestServerExpect(0x2100ef5300)
    /root/riscv-go/src/net/http/serve_test.go:1761 +0x38
testing.tRunner(0x2100ef5300, 0x63e1e0)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 992 [chan receive]:
testing.(*T).Parallel(0x2100ef5500)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100ef5500)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestServerUnreadRequestBodyLarge(0x2100ef5500)
    /root/riscv-go/src/net/http/serve_test.go:1896 +0x38
testing.tRunner(0x2100ef5500, 0x63e328)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1169 [select]:
net/http.(*timeoutHandler).ServeHTTP(0x2100f04580, 0x6e6860, 0x2100d71180, 0x2100f07d00)
    /root/riscv-go/src/net/http/server.go:3191 +0x2a8
net/http.serverHandler.ServeHTTP(0x2100d5fa00, 0x6e6860, 0x2100d71180, 0x2100f07d00)
    /root/riscv-go/src/net/http/server.go:2774 +0xac
net/http.(*conn).serve(0x2100e47860, 0x6e74e0, 0x210108e300)
    /root/riscv-go/src/net/http/server.go:1878 +0xb50
created by net/http.(*Server).Serve
    /root/riscv-go/src/net/http/server.go:2884 +0x368

goroutine 1164 [select]:
net/http.(*persistConn).roundTrip(0x2100e7a900, 0x2100e85f80, 0x0, 0x0, 0x0)
    /root/riscv-go/src/net/http/transport.go:2174 +0x49c
net/http.(*Transport).roundTrip(0x2100e7a5a0, 0x2101112200, 0x0, 0x2100000001, 0x4)
    /root/riscv-go/src/net/http/transport.go:481 +0xaf4
net/http.(*Transport).RoundTrip(0x2100e7a5a0, 0x2101112200, 0x2100e7a5a0, 0x0, 0x0)
    /root/riscv-go/src/net/http/roundtrip.go:17 +0x3c
net/http.send(0x2101112200, 0x6dc400, 0x2100e7a5a0, 0x0, 0x0, 0x0, 0x0, 0x210000c980, 0x2100e85e60, 0x1)
    /root/riscv-go/src/net/http/client.go:250 +0x268
net/http.(*Client).send(0x2100e85d40, 0x2101112200, 0x0, 0x0, 0x0, 0x210000c980, 0x0, 0x1, 0x1555558008)
    /root/riscv-go/src/net/http/client.go:174 +0x118
net/http.(*Client).do(0x2100e85d40, 0x2101112200, 0x0, 0x0, 0x0)
    /root/riscv-go/src/net/http/client.go:641 +0x2bc
net/http.(*Client).Do(...)
    /root/riscv-go/src/net/http/client.go:509
net/http.(*Client).Get(0x2100e85d40, 0x2100ef2940, 0x16, 0x2101112100, 0x2100e82f50, 0x0)
    /root/riscv-go/src/net/http/client.go:398 +0xb4
net/http_test.testHandlerPanic(0x2101112100, 0x130000, 0x63e480, 0x568b00, 0x6d1180)
    /root/riscv-go/src/net/http/serve_test.go:2792 +0x3d0
net/http_test.TestTimeoutHandlerPanicRecovery(0x2101112100)
    /root/riscv-go/src/net/http/serve_test.go:2559 +0x64
testing.tRunner(0x2101112100, 0x63e488)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1165 [IO wait]:
internal/poll.runtime_pollWait(0x15577cdc58, 0x72, 0x0)
    /root/riscv-go/src/runtime/netpoll.go:182 +0x64
internal/poll.(*pollDesc).wait(0x2100ee7418, 0x72, 0x0, 0x0, 0x60f868)
    /root/riscv-go/src/internal/poll/fd_poll_runtime.go:87 +0xd8
internal/poll.(*pollDesc).waitRead(...)
    /root/riscv-go/src/internal/poll/fd_poll_runtime.go:92
internal/poll.(*FD).Accept(0x2100ee7400, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
    /root/riscv-go/src/internal/poll/fd_unix.go:384 +0x22c
net.(*netFD).accept(0x2100ee7400, 0x0, 0x210118be60, 0x3b3efc)
    /root/riscv-go/src/net/fd_unix.go:238 +0x3c
net.(*TCPListener).accept(0x210000c960, 0x385c3f6d003b3f00, 0x2100eece40, 0x5a358)
    /root/riscv-go/src/net/tcpsock_posix.go:139 +0x38
net.(*TCPListener).Accept(0x210000c960, 0x210118bef0, 0x18, 0x2100ed3800, 0x3b9e90)
    /root/riscv-go/src/net/tcpsock.go:260 +0x58
net/http.(*Server).Serve(0x2100d5fa00, 0x6e6560, 0x210000c960, 0x0, 0x0)
    /root/riscv-go/src/net/http/server.go:2859 +0x270
net/http/httptest.(*Server).goServe.func1(0x2100eece40)
    /root/riscv-go/src/net/http/httptest/server.go:298 +0x7c
created by net/http/httptest.(*Server).goServe
    /root/riscv-go/src/net/http/httptest/server.go:296 +0x6c

goroutine 1168 [IO wait]:
internal/poll.runtime_pollWait(0x15577cdab8, 0x72, 0xffffffffffffffff)
    /root/riscv-go/src/runtime/netpoll.go:182 +0x64
internal/poll.(*pollDesc).wait(0x2100ee7598, 0x72, 0x1000, 0x1000, 0xffffffffffffffff)
    /root/riscv-go/src/internal/poll/fd_poll_runtime.go:87 +0xd8
internal/poll.(*pollDesc).waitRead(...)
    /root/riscv-go/src/internal/poll/fd_poll_runtime.go:92
internal/poll.(*FD).Read(0x2100ee7580, 0x2101071000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
    /root/riscv-go/src/internal/poll/fd_unix.go:169 +0x1f8
net.(*netFD).Read(0x2100ee7580, 0x2101071000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
    /root/riscv-go/src/net/fd_unix.go:202 +0x50
net.(*conn).Read(0x210000c988, 0x2101071000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
    /root/riscv-go/src/net/net.go:177 +0x74
net/http.(*persistConn).Read(0x2100e7a900, 0x2101071000, 0x1000, 0x1000, 0x0, 0x3d3484, 0x21001b23c0)
    /root/riscv-go/src/net/http/transport.go:1524 +0x194
bufio.(*Reader).fill(0x2100eed140)
    /root/riscv-go/src/bufio/bufio.go:100 +0x178
bufio.(*Reader).Peek(0x2100eed140, 0x1, 0x2100ecd620, 0x2101183d90, 0x0, 0x0, 0x0)
    /root/riscv-go/src/bufio/bufio.go:138 +0x54
net/http.(*persistConn).readLoop(0x2100e7a900)
    /root/riscv-go/src/net/http/transport.go:1677 +0x1b8
created by net/http.(*Transport).dialConn
    /root/riscv-go/src/net/http/transport.go:1357 +0xe80

goroutine 1185 [select]:
net/http.(*persistConn).writeLoop(0x2100e7a900)
    /root/riscv-go/src/net/http/transport.go:1958 +0xd8
created by net/http.(*Transport).dialConn
    /root/riscv-go/src/net/http/transport.go:1358 +0xea8
FAIL    net/http    9.884s
ok      net/http/cgi    11.329s
ok      net/http/cookiejar  1.470s
ok      net/http/fcgi   2.691s
ok      net/http/httptest   3.710s
ok      net/http/httptrace  1.383s
panic: test timed out after 9m0s

goroutine 58 [running]:
testing.(*M).startAlarm.func1()
    /root/riscv-go/src/testing/testing.go:1334 +0x104
created by time.goFunc
    /root/riscv-go/src/time/sleep.go:169 +0x54

goroutine 1 [chan receive]:
testing.(*T).Run(0x2100260500, 0x4004ad, 0x10, 0x415758, 0x11bd01)
    /root/riscv-go/src/testing/testing.go:917 +0x3c0
testing.runTests.func1(0x2100226700)
    /root/riscv-go/src/testing/testing.go:1157 +0x88
testing.tRunner(0x2100226700, 0x2100055e50)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
testing.runTests(0x21001ca3c0, 0x6a4c00, 0x18, 0x18, 0x0)
    /root/riscv-go/src/testing/testing.go:1155 +0x2e8
testing.(*M).Run(0x2100224400, 0x0)
    /root/riscv-go/src/testing/testing.go:1072 +0x194
main.main()
    _testmain.go:100 +0x190

goroutine 37 [select]:
net/http.(*persistConn).roundTrip(0x21001e8c60, 0x2100195650, 0x0, 0x0, 0x0)
    /root/riscv-go/src/net/http/transport.go:2174 +0x49c
net/http.(*Transport).roundTrip(0x2100274a20, 0x2100226a00, 0x0, 0x0, 0x0)
    /root/riscv-go/src/net/http/transport.go:481 +0xaf4
net/http.(*Transport).RoundTrip(0x2100274a20, 0x2100226a00, 0x2100274a20, 0x0, 0x0)
    /root/riscv-go/src/net/http/roundtrip.go:17 +0x3c
net/http.send(0x2100226a00, 0x472920, 0x2100274a20, 0x0, 0x0, 0x0, 0x0, 0x210019e088, 0x21001955c0, 0x1)
    /root/riscv-go/src/net/http/client.go:250 +0x268
net/http.(*Client).send(0x2100264de0, 0x2100226a00, 0x0, 0x0, 0x0, 0x210019e088, 0x0, 0x1, 0x15555586d0)
    /root/riscv-go/src/net/http/client.go:174 +0x118
net/http.(*Client).do(0x2100264de0, 0x2100226a00, 0x0, 0x0, 0x0)
    /root/riscv-go/src/net/http/client.go:641 +0x2bc
net/http.(*Client).Do(...)
    /root/riscv-go/src/net/http/client.go:509
net/http/httputil.TestReverseProxy(0x2100260500)
    /root/riscv-go/src/net/http/httputil/reverseproxy_test.go:140 +0x1028
testing.tRunner(0x2100260500, 0x415758)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 28 [IO wait]:
internal/poll.runtime_pollWait(0x15577cdd28, 0x72, 0xffffffffffffffff)
    /root/riscv-go/src/runtime/netpoll.go:182 +0x64
internal/poll.(*pollDesc).wait(0x2100224718, 0x72, 0x1000, 0x1000, 0xffffffffffffffff)
    /root/riscv-go/src/internal/poll/fd_poll_runtime.go:87 +0xd8
internal/poll.(*pollDesc).waitRead(...)
    /root/riscv-go/src/internal/poll/fd_poll_runtime.go:92
internal/poll.(*FD).Read(0x2100224700, 0x21003a4000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
    /root/riscv-go/src/internal/poll/fd_unix.go:169 +0x1f8
net.(*netFD).Read(0x2100224700, 0x21003a4000, 0x1000, 0x1000, 0x21001e2aa0, 0x21001ca400, 0x101d38)
    /root/riscv-go/src/net/fd_unix.go:202 +0x50
net.(*conn).Read(0x210019e090, 0x21003a4000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
    /root/riscv-go/src/net/net.go:177 +0x74
net/http.(*persistConn).Read(0x21001e8c60, 0x21003a4000, 0x1000, 0x1000, 0x0, 0x315688, 0x2100000008)
    /root/riscv-go/src/net/http/transport.go:1524 +0x194
bufio.(*Reader).fill(0x21001a0f00)
    /root/riscv-go/src/bufio/bufio.go:100 +0x178
bufio.(*Reader).Peek(0x21001a0f00, 0x1, 0x2100190c00, 0x2100387d90, 0x1555562718, 0xa, 0x6ab860)
    /root/riscv-go/src/bufio/bufio.go:138 +0x54
net/http.(*persistConn).readLoop(0x21001e8c60)
    /root/riscv-go/src/net/http/transport.go:1677 +0x1b8
created by net/http.(*Transport).dialConn
    /root/riscv-go/src/net/http/transport.go:1357 +0xe80

goroutine 39 [IO wait]:
internal/poll.runtime_pollWait(0x15577cdec8, 0x72, 0x0)
    /root/riscv-go/src/runtime/netpoll.go:182 +0x64
internal/poll.(*pollDesc).wait(0x2100262398, 0x72, 0x0, 0x0, 0x3fd78d)
    /root/riscv-go/src/internal/poll/fd_poll_runtime.go:87 +0xd8
internal/poll.(*pollDesc).waitRead(...)
    /root/riscv-go/src/internal/poll/fd_poll_runtime.go:92
internal/poll.(*FD).Accept(0x2100262380, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
    /root/riscv-go/src/internal/poll/fd_unix.go:384 +0x22c
net.(*netFD).accept(0x2100262380, 0x2100000000, 0x21002ebe60, 0x2f9f0c)
    /root/riscv-go/src/net/fd_unix.go:238 +0x3c
net.(*TCPListener).accept(0x210000c060, 0x32616205002f9f00, 0x21000eac00, 0x59a70)
    /root/riscv-go/src/net/tcpsock_posix.go:139 +0x38
net.(*TCPListener).Accept(0x210000c060, 0x21002ebef0, 0x18, 0x2100000f00, 0x2fef98)
    /root/riscv-go/src/net/tcpsock.go:260 +0x58
net/http.(*Server).Serve(0x210024a0d0, 0x4788c0, 0x210000c060, 0x0, 0x0)
    /root/riscv-go/src/net/http/server.go:2859 +0x270
net/http/httptest.(*Server).goServe.func1(0x21000eac00)
    /root/riscv-go/src/net/http/httptest/server.go:298 +0x7c
created by net/http/httptest.(*Server).goServe
    /root/riscv-go/src/net/http/httptest/server.go:296 +0x6c

goroutine 38 [IO wait]:
internal/poll.runtime_pollWait(0x15577cdf98, 0x72, 0x0)
    /root/riscv-go/src/runtime/netpoll.go:182 +0x64
internal/poll.(*pollDesc).wait(0x2100262298, 0x72, 0x0, 0x0, 0x3fd78d)
    /root/riscv-go/src/internal/poll/fd_poll_runtime.go:87 +0xd8
internal/poll.(*pollDesc).waitRead(...)
    /root/riscv-go/src/internal/poll/fd_poll_runtime.go:92
internal/poll.(*FD).Accept(0x2100262280, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
    /root/riscv-go/src/internal/poll/fd_unix.go:384 +0x22c
net.(*netFD).accept(0x2100262280, 0x0, 0x2100363e60, 0x2f9f0c)
    /root/riscv-go/src/net/fd_unix.go:238 +0x3c
net.(*TCPListener).accept(0x210000c058, 0x2ec8d4ad002f9f00, 0x21000eaba0, 0x59a70)
    /root/riscv-go/src/net/tcpsock_posix.go:139 +0x38
net.(*TCPListener).Accept(0x210000c058, 0x2100363ef0, 0x18, 0x2100001200, 0x2fef98)
    /root/riscv-go/src/net/tcpsock.go:260 +0x58
net/http.(*Server).Serve(0x210024a000, 0x4788c0, 0x210000c058, 0x0, 0x0)
    /root/riscv-go/src/net/http/server.go:2859 +0x270
net/http/httptest.(*Server).goServe.func1(0x21000eaba0)
    /root/riscv-go/src/net/http/httptest/server.go:298 +0x7c
created by net/http/httptest.(*Server).goServe
    /root/riscv-go/src/net/http/httptest/server.go:296 +0x6c

goroutine 30 [semacquire]:
sync.runtime_SemacquireMutex(0x21003901fc, 0x900000000)
    /root/riscv-go/src/runtime/sema.go:71 +0x44
sync.(*Mutex).Lock(0x21003901f8)
    /root/riscv-go/src/sync/mutex.go:134 +0x1a8
net/http.(*persistConn).canceled(0x2100390120, 0x0, 0x0)
    /root/riscv-go/src/net/http/transport.go:1543 +0x50
net/http.(*persistConn).mapRoundTripError(0x2100390120, 0x2100195a10, 0x84, 0x4736c0, 0x210009e7c0, 0x71c68, 0xf)
    /root/riscv-go/src/net/http/transport.go:1606 +0x50
net/http.(*persistConn).roundTrip(0x2100390120, 0x2100195a10, 0x0, 0x0, 0x0)
    /root/riscv-go/src/net/http/transport.go:2210 +0x888
net/http.(*Transport).roundTrip(0x6a4460, 0x2100226c00, 0x387c60, 0x2100209601, 0x2100209600)
    /root/riscv-go/src/net/http/transport.go:481 +0xaf4
net/http.(*Transport).RoundTrip(0x6a4460, 0x2100226c00, 0x3fff5e, 0xf, 0x21002096b8)
    /root/riscv-go/src/net/http/roundtrip.go:17 +0x3c
net/http/httputil.(*ReverseProxy).ServeHTTP(0x2100272190, 0x478b40, 0x21003aa000, 0x2100226b00)
    /root/riscv-go/src/net/http/httputil/reverseproxy.go:259 +0x38c
net/http.serverHandler.ServeHTTP(0x210024a0d0, 0x478b40, 0x21003aa000, 0x2100226b00)
    /root/riscv-go/src/net/http/server.go:2774 +0xac
net/http.(*conn).serve(0x21001e2be0, 0x4791c0, 0x21001c2c40)
    /root/riscv-go/src/net/http/server.go:1878 +0xb50
created by net/http.(*Server).Serve
    /root/riscv-go/src/net/http/server.go:2884 +0x368

goroutine 29 [select]:
net/http.(*persistConn).writeLoop(0x21001e8c60)
    /root/riscv-go/src/net/http/transport.go:1958 +0xd8
created by net/http.(*Transport).dialConn
    /root/riscv-go/src/net/http/transport.go:1358 +0xea8

goroutine 31 [IO wait]:
internal/poll.runtime_pollWait(0x15577cddf8, 0x72, 0xffffffffffffffff)
    /root/riscv-go/src/runtime/netpoll.go:182 +0x64
internal/poll.(*pollDesc).wait(0x2100224798, 0x72, 0x0, 0x1, 0xffffffffffffffff)
    /root/riscv-go/src/internal/poll/fd_poll_runtime.go:87 +0xd8
internal/poll.(*pollDesc).waitRead(...)
    /root/riscv-go/src/internal/poll/fd_poll_runtime.go:92
internal/poll.(*FD).Read(0x2100224780, 0x21001958a1, 0x1, 0x1, 0x0, 0x0, 0x0)
    /root/riscv-go/src/internal/poll/fd_unix.go:169 +0x1f8
net.(*netFD).Read(0x2100224780, 0x21001958a1, 0x1, 0x1, 0x0, 0x0, 0x0)
    /root/riscv-go/src/net/fd_unix.go:202 +0x50
net.(*conn).Read(0x210019e098, 0x21001958a1, 0x1, 0x1, 0x0, 0x0, 0x0)
    /root/riscv-go/src/net/net.go:177 +0x74
net/http.(*connReader).backgroundRead(0x2100195890)
    /root/riscv-go/src/net/http/server.go:677 +0x54
created by net/http.(*connReader).startBackgroundRead
    /root/riscv-go/src/net/http/server.go:673 +0xf0

goroutine 32 [select]:
net/http/httputil.(*ReverseProxy).ServeHTTP.func1(0x21003a8000, 0x21001930d0, 0x4791c0, 0x21001c2e00)
    /root/riscv-go/src/net/http/httputil/reverseproxy.go:201 +0x98
created by net/http/httputil.(*ReverseProxy).ServeHTTP
    /root/riscv-go/src/net/http/httputil/reverseproxy.go:200 +0x1718
FAIL    net/http/httputil   541.995s
ok      net/http/internal   1.389s
ok      net/http/pprof  3.426s
ok      net/internal/socktest   0.825s
ok      net/mail    0.834s
ok      net/rpc 2.033s
ok      net/rpc/jsonrpc 1.488s
ok      net/smtp    1.406s
ok      net/textproto   0.651s
ok      net/url 1.064s
ok      os  4.607s
ok      os/exec 5.496s
ok      os/signal   7.892s
ok      os/user 0.617s
ok      path    4.671s
ok      path/filepath   1.661s
ok      plugin  0.765s
ok      reflect 6.602s
ok      regexp  3.787s
ok      regexp/syntax   9.755s
--- FAIL: TestSelectStackAdjust (0.76s)
    chan_test.go:723: failed to trigger concurrent GC
unexpected fault address 0x8001c2820
fatal error: fault
[signal SIGSEGV: segmentation violation code=0x1 addr=0x8001c2820 pc=0x2379c]

goroutine 22394 [running]:
runtime.throw(0x385e44, 0x5)
    /root/riscv-go/src/runtime/panic.go:617 +0x88 fp=0x2100ab8d18 sp=0x2100ab8cf0 pc=0x4f550
runtime.sigpanic()
    /root/riscv-go/src/runtime/signal_unix.go:397 +0x504 fp=0x2100ab8d48 sp=0x2100ab8d18 pc=0x6d41c
runtime.evacuate(0x332f20, 0x2100ab9ee8, 0x6)
    /root/riscv-go/src/runtime/map.go:1173 +0x224 fp=0x2100ab8e18 sp=0x2100ab8d50 pc=0x2379c
runtime.growWork(0x332f20, 0x2100ab9ee8, 0xa)
    /root/riscv-go/src/runtime/map.go:1119 +0xf0 fp=0x2100ab8e38 sp=0x2100ab8e18 pc=0x23568
runtime.mapassign(0x332f20, 0x2100ab9ee8, 0x2100ab96e8, 0x21005a9800)
    /root/riscv-go/src/runtime/map.go:606 +0x818 fp=0x2100ab8eb8 sp=0x2100ab8e38 pc=0x218c0
runtime_test.TestGcMapIndirection(0x2107516000)
    /root/riscv-go/src/runtime/gc_test.go:63 +0x190 fp=0x2100ab9fa8 sp=0x2100ab8eb8 pc=0x2854f8
testing.tRunner(0x2107516000, 0x39b858)
    /root/riscv-go/src/testing/testing.go:865 +0xf4 fp=0x2100ab9fc8 sp=0x2100ab9fa8 pc=0x140d04
runtime.goexit()
    /root/riscv-go/src/runtime/asm_riscv.s:469 +0x4 fp=0x2100ab9fc8 sp=0x2100ab9fc8 pc=0x9067c
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1 [chan receive, locked to thread]:
runtime.gopark(0x39aa10, 0x2100192358, 0x122000019170d, 0x3)
    /root/riscv-go/src/runtime/proc.go:301 +0x188 fp=0x2100055bb0 sp=0x2100055b88 pc=0x51ce0
runtime.goparkunlock(...)
    /root/riscv-go/src/runtime/proc.go:307
runtime.chanrecv(0x2100192300, 0x2100055cbf, 0x2100000101, 0x141118)
    /root/riscv-go/src/runtime/chan.go:524 +0x374 fp=0x2100055c38 sp=0x2100055bb0 pc=0x15bb4
runtime.chanrecv1(0x2100192300, 0x2100055cbf)
    /root/riscv-go/src/runtime/chan.go:406 +0x2c fp=0x2100055c60 sp=0x2100055c38 pc=0x157f4
testing.(*T).Run(0x2107516000, 0x38beb5, 0x14, 0x39b858, 0x140c01)
    /root/riscv-go/src/testing/testing.go:917 +0x3c0 fp=0x2100055d08 sp=0x2100055c60 pc=0x141140
testing.runTests.func1(0x21001e8100)
    /root/riscv-go/src/testing/testing.go:1157 +0x88 fp=0x2100055d50 sp=0x2100055d08 pc=0x1454e0
testing.tRunner(0x21001e8100, 0x2100055e08)
    /root/riscv-go/src/testing/testing.go:865 +0xf4 fp=0x2100055d70 sp=0x2100055d50 pc=0x140d04
testing.runTests(0x210000a260, 0x5dce40, 0xef, 0xef, 0x0)
    /root/riscv-go/src/testing/testing.go:1155 +0x2e8 fp=0x2100055e28 sp=0x2100055d70 pc=0x142630
testing.(*M).Run(0x21001ce200, 0x0)
    /root/riscv-go/src/testing/testing.go:1072 +0x194 fp=0x2100055ef0 sp=0x2100055e28 pc=0x1415fc
runtime_test.TestMain(0x21001ce200)
    /root/riscv-go/src/runtime/crash_test.go:28 +0x34 fp=0x2100055f38 sp=0x2100055ef0 pc=0x27af34
main.main()
    _testmain.go:980 +0x190 fp=0x2100055f98 sp=0x2100055f38 pc=0x2e2368
runtime.main()
    /root/riscv-go/src/runtime/proc.go:200 +0x290 fp=0x2100055fd8 sp=0x2100055f98 pc=0x516d0
runtime.goexit()
    /root/riscv-go/src/runtime/asm_riscv.s:469 +0x4 fp=0x2100055fd8 sp=0x2100055fd8 pc=0x9067c

goroutine 2 [force gc (idle)]:
runtime.gopark(0x39aa10, 0x5df380, 0x1410, 0x1)
    /root/riscv-go/src/runtime/proc.go:301 +0x188 fp=0x2100183fb0 sp=0x2100183f88 pc=0x51ce0
runtime.goparkunlock(...)
    /root/riscv-go/src/runtime/proc.go:307
runtime.forcegchelper()
    /root/riscv-go/src/runtime/proc.go:250 +0x118 fp=0x2100183fd8 sp=0x2100183fb0 pc=0x51ab8
runtime.goexit()
    /root/riscv-go/src/runtime/asm_riscv.s:469 +0x4 fp=0x2100183fd8 sp=0x2100183fd8 pc=0x9067c
created by runtime.init.4
    /root/riscv-go/src/runtime/proc.go:239 +0x40

goroutine 17 [GC sweep wait]:
runtime.gopark(0x39aa10, 0x5df780, 0x140c, 0x1)
    /root/riscv-go/src/runtime/proc.go:301 +0x188 fp=0x2100191fa8 sp=0x2100191f80 pc=0x51ce0
runtime.goparkunlock(...)
    /root/riscv-go/src/runtime/proc.go:307
runtime.bgsweep(0x2100184000)
    /root/riscv-go/src/runtime/mgcsweep.go:89 +0x1f4 fp=0x2100191fd0 sp=0x2100191fa8 pc=0x3e5f4
runtime.goexit()
    /root/riscv-go/src/runtime/asm_riscv.s:469 +0x4 fp=0x2100191fd0 sp=0x2100191fd0 pc=0x9067c
created by runtime.gcenable
    /root/riscv-go/src/runtime/mgc.go:208 +0x68

goroutine 3 [finalizer wait]:
runtime.gopark(0x39aa10, 0x5f9290, 0x210750140f, 0x1)
    /root/riscv-go/src/runtime/proc.go:301 +0x188 fp=0x21001a9f50 sp=0x21001a9f28 pc=0x51ce0
runtime.goparkunlock(...)
    /root/riscv-go/src/runtime/proc.go:307
runtime.runfinq()
    /root/riscv-go/src/runtime/mfinal.go:175 +0xe8 fp=0x21001a9fd8 sp=0x21001a9f50 pc=0x313e0
runtime.goexit()
    /root/riscv-go/src/runtime/asm_riscv.s:469 +0x4 fp=0x21001a9fd8 sp=0x21001a9fd8 pc=0x9067c
created by runtime.createfing
    /root/riscv-go/src/runtime/mfinal.go:156 +0x98

goroutine 4 [syscall]:
runtime.notetsleepg(0x5e1300, 0xdf83487a6, 0x1)
    /root/riscv-go/src/runtime/lock_futex.go:227 +0x44 fp=0x2100243f60 sp=0x2100243f38 pc=0x1ca44
runtime.timerproc(0x5e12e0)
    /root/riscv-go/src/runtime/time.go:311 +0x3c8 fp=0x2100243fd0 sp=0x2100243f60 pc=0x7b088
runtime.goexit()
    /root/riscv-go/src/runtime/asm_riscv.s:469 +0x4 fp=0x2100243fd0 sp=0x2100243fd0 pc=0x9067c
created by runtime.(*timersBucket).addtimerLocked
    /root/riscv-go/src/runtime/time.go:169 +0x180

goroutine 36 [syscall]:
runtime.notetsleepg(0x5e1420, 0xdf83a34c2, 0x1414)
    /root/riscv-go/src/runtime/lock_futex.go:227 +0x44 fp=0x2100355f60 sp=0x2100355f38 pc=0x1ca44
runtime.timerproc(0x5e1400)
    /root/riscv-go/src/runtime/time.go:311 +0x3c8 fp=0x2100355fd0 sp=0x2100355f60 pc=0x7b088
runtime.goexit()
    /root/riscv-go/src/runtime/asm_riscv.s:469 +0x4 fp=0x2100355fd0 sp=0x2100355fd0 pc=0x9067c
created by runtime.(*timersBucket).addtimerLocked
    /root/riscv-go/src/runtime/time.go:169 +0x180

goroutine 50 [syscall]:
runtime.notetsleepg(0x5e13c0, 0xdf8429d14, 0x1414)
    /root/riscv-go/src/runtime/lock_futex.go:227 +0x44 fp=0x2100369f60 sp=0x2100369f38 pc=0x1ca44
runtime.timerproc(0x5e13a0)
    /root/riscv-go/src/runtime/time.go:311 +0x3c8 fp=0x2100369fd0 sp=0x2100369f60 pc=0x7b088
runtime.goexit()
    /root/riscv-go/src/runtime/asm_riscv.s:469 +0x4 fp=0x2100369fd0 sp=0x2100369fd0 pc=0x9067c
created by runtime.(*timersBucket).addtimerLocked
    /root/riscv-go/src/runtime/time.go:169 +0x180

goroutine 20 [syscall]:
runtime.notetsleepg(0x5e1360, 0xdf7c53fb2, 0x1414)
    /root/riscv-go/src/runtime/lock_futex.go:227 +0x44 fp=0x2100371f60 sp=0x2100371f38 pc=0x1ca44
runtime.timerproc(0x5e1340)
    /root/riscv-go/src/runtime/time.go:311 +0x3c8 fp=0x2100371fd0 sp=0x2100371f60 pc=0x7b088
runtime.goexit()
    /root/riscv-go/src/runtime/asm_riscv.s:469 +0x4 fp=0x2100371fd0 sp=0x2100371fd0 pc=0x9067c
created by runtime.(*timersBucket).addtimerLocked
    /root/riscv-go/src/runtime/time.go:169 +0x180

goroutine 22572 [chan receive]:
runtime.gopark(0x39aa10, 0x2100192298, 0x210018170d, 0x3)
    /root/riscv-go/src/runtime/proc.go:301 +0x188 fp=0x21081a9a50 sp=0x21081a9a28 pc=0x51ce0
runtime.goparkunlock(...)
    /root/riscv-go/src/runtime/proc.go:307
runtime.chanrecv(0x2100192240, 0x0, 0x140901, 0x210752dc01)
    /root/riscv-go/src/runtime/chan.go:524 +0x374 fp=0x21081a9ad8 sp=0x21081a9a50 pc=0x15bb4
runtime.chanrecv1(0x2100192240, 0x0)
    /root/riscv-go/src/runtime/chan.go:406 +0x2c fp=0x21081a9b00 sp=0x21081a9ad8 pc=0x157f4
testing.(*T).Parallel(0x2108218200)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8 fp=0x21081a9b80 sp=0x21081a9b00 pc=0x1409e0
runtime_test.TestCrashDumpsAllThreads(0x2108218200)
    /root/riscv-go/src/runtime/crash_unix_test.go:54 +0x88 fp=0x21081a9fa8 sp=0x21081a9b80 pc=0x281bd0
testing.tRunner(0x2108218200, 0x39b708)
    /root/riscv-go/src/testing/testing.go:865 +0xf4 fp=0x21081a9fc8 sp=0x21081a9fa8 pc=0x140d04
runtime.goexit()
    /root/riscv-go/src/runtime/asm_riscv.s:469 +0x4 fp=0x21081a9fc8 sp=0x21081a9fc8 pc=0x9067c
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 22539 [chan receive]:
runtime.gopark(0x39aa10, 0x2100192298, 0x210018170d, 0x3)
    /root/riscv-go/src/runtime/proc.go:301 +0x188 fp=0x2108195d48 sp=0x2108195d20 pc=0x51ce0
runtime.goparkunlock(...)
    /root/riscv-go/src/runtime/proc.go:307
runtime.chanrecv(0x2100192240, 0x0, 0x140901, 0x2107510601)
    /root/riscv-go/src/runtime/chan.go:524 +0x374 fp=0x2108195dd0 sp=0x2108195d48 pc=0x15bb4
runtime.chanrecv1(0x2100192240, 0x0)
    /root/riscv-go/src/runtime/chan.go:406 +0x2c fp=0x2108195df8 sp=0x2108195dd0 pc=0x157f4
testing.(*T).Parallel(0x2107517400)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8 fp=0x2108195e78 sp=0x2108195df8 pc=0x1409e0
runtime_test.TestPanicTraceback(0x2107517400)
    /root/riscv-go/src/runtime/crash_test.go:414 +0x38 fp=0x2108195fa8 sp=0x2108195e78 pc=0x27e340
testing.tRunner(0x2107517400, 0x39bc08)
    /root/riscv-go/src/testing/testing.go:865 +0xf4 fp=0x2108195fc8 sp=0x2108195fa8 pc=0x140d04
runtime.goexit()
    /root/riscv-go/src/runtime/asm_riscv.s:469 +0x4 fp=0x2108195fc8 sp=0x2108195fc8 pc=0x9067c
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 22538 [chan receive]:
runtime.gopark(0x39aa10, 0x2100192298, 0x210018170d, 0x3)
    /root/riscv-go/src/runtime/proc.go:301 +0x188 fp=0x21080dbde8 sp=0x21080dbdc0 pc=0x51ce0
runtime.goparkunlock(...)
    /root/riscv-go/src/runtime/proc.go:307
runtime.chanrecv(0x2100192240, 0x0, 0x140901, 0x210000c101)
    /root/riscv-go/src/runtime/chan.go:524 +0x374 fp=0x21080dbe70 sp=0x21080dbde8 pc=0x15bb4
runtime.chanrecv1(0x2100192240, 0x0)
    /root/riscv-go/src/runtime/chan.go:406 +0x2c fp=0x21080dbe98 sp=0x21080dbe70 pc=0x157f4
testing.(*T).Parallel(0x2107517300)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8 fp=0x21080dbf18 sp=0x21080dbe98 pc=0x1409e0
runtime_test.TestNetpollDeadlock(0x2107517300)
    /root/riscv-go/src/runtime/crash_test.go:405 +0x38 fp=0x21080dbfa8 sp=0x21080dbf18 pc=0x27e150
testing.tRunner(0x2107517300, 0x39bb10)
    /root/riscv-go/src/testing/testing.go:865 +0xf4 fp=0x21080dbfc8 sp=0x21080dbfa8 pc=0x140d04
runtime.goexit()
    /root/riscv-go/src/runtime/asm_riscv.s:469 +0x4 fp=0x21080dbfc8 sp=0x21080dbfc8 pc=0x9067c
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 2464 [GC worker (idle)]:
runtime.gopark(0x39a860, 0x21000127c0, 0xffff1417, 0x0)
    /root/riscv-go/src/runtime/proc.go:301 +0x188 fp=0x2100afbf50 sp=0x2100afbf28 pc=0x51ce0
runtime.gcBgMarkWorker(0x2100024a00)
    /root/riscv-go/src/runtime/mgc.go:1836 +0x140 fp=0x2100afbfd0 sp=0x2100afbf50 pc=0x36570
runtime.goexit()
    /root/riscv-go/src/runtime/asm_riscv.s:469 +0x4 fp=0x2100afbfd0 sp=0x2100afbfd0 pc=0x9067c
created by runtime.gcBgMarkStartWorkers
    /root/riscv-go/src/runtime/mgc.go:1784 +0xc0

goroutine 2463 [GC worker (idle)]:
runtime.gopark(0x39a860, 0x21000127b0, 0xffff1417, 0x0)
    /root/riscv-go/src/runtime/proc.go:301 +0x188 fp=0x2100af3f50 sp=0x2100af3f28 pc=0x51ce0
runtime.gcBgMarkWorker(0x2100022500)
    /root/riscv-go/src/runtime/mgc.go:1836 +0x140 fp=0x2100af3fd0 sp=0x2100af3f50 pc=0x36570
runtime.goexit()
    /root/riscv-go/src/runtime/asm_riscv.s:469 +0x4 fp=0x2100af3fd0 sp=0x2100af3fd0 pc=0x9067c
created by runtime.gcBgMarkStartWorkers
    /root/riscv-go/src/runtime/mgc.go:1784 +0xc0

goroutine 2462 [GC worker (idle)]:
runtime.systemstack_switch()
    /root/riscv-go/src/runtime/asm_riscv.s:93 +0x8 fp=0x2100aebf00 sp=0x2100aebef8 pc=0x8e4d0
runtime.gcMarkDone()
    /root/riscv-go/src/runtime/mgc.go:1419 +0xec fp=0x2100aebf50 sp=0x2100aebf00 pc=0x351fc
runtime.gcBgMarkWorker(0x2100020000)
    /root/riscv-go/src/runtime/mgc.go:1963 +0x3b0 fp=0x2100aebfd0 sp=0x2100aebf50 pc=0x367e0
runtime.goexit()
    /root/riscv-go/src/runtime/asm_riscv.s:469 +0x4 fp=0x2100aebfd0 sp=0x2100aebfd0 pc=0x9067c
created by runtime.gcBgMarkStartWorkers
    /root/riscv-go/src/runtime/mgc.go:1784 +0xc0

goroutine 2465 [GC worker (idle)]:
runtime.gopark(0x39a860, 0x21000127d0, 0xffff1417, 0x0)
    /root/riscv-go/src/runtime/proc.go:301 +0x188 fp=0x2100b4ff50 sp=0x2100b4ff28 pc=0x51ce0
runtime.gcBgMarkWorker(0x2100026f00)
    /root/riscv-go/src/runtime/mgc.go:1836 +0x140 fp=0x2100b4ffd0 sp=0x2100b4ff50 pc=0x36570
runtime.goexit()
    /root/riscv-go/src/runtime/asm_riscv.s:469 +0x4 fp=0x2100b4ffd0 sp=0x2100b4ffd0 pc=0x9067c
created by runtime.gcBgMarkStartWorkers
    /root/riscv-go/src/runtime/mgc.go:1784 +0xc0

goroutine 2413 [select]:
runtime.gopark(0x39aa60, 0x0, 0x1809, 0x1)
    /root/riscv-go/src/runtime/proc.go:301 +0x188 fp=0x210083fda0 sp=0x210083fd78 pc=0x51ce0
runtime.selectgo(0x210083ff28, 0x210083fee8, 0x4, 0x2100192420, 0x2c5ed8)
    /root/riscv-go/src/runtime/select.go:313 +0xc80 fp=0x210083feb0 sp=0x210083fda0 pc=0x679c8
runtime_test.TestSelectStackAdjust.func1(0x2100ab01e0, 0x1)
    /root/riscv-go/src/runtime/chan_test.go:684 +0x120 fp=0x210083ffc8 sp=0x210083feb0 pc=0x2c6070
runtime.goexit()
    /root/riscv-go/src/runtime/asm_riscv.s:469 +0x4 fp=0x210083ffc8 sp=0x210083ffc8 pc=0x9067c
created by runtime_test.TestSelectStackAdjust
    /root/riscv-go/src/runtime/chan_test.go:706 +0x21c

goroutine 2412 [select]:
runtime.gopark(0x39aa60, 0x0, 0x1809, 0x1)
    /root/riscv-go/src/runtime/proc.go:301 +0x188 fp=0x2100315da0 sp=0x2100315d78 pc=0x51ce0
runtime.selectgo(0x2100315f28, 0x2100315ee8, 0x4, 0x0, 0x0)
    /root/riscv-go/src/runtime/select.go:313 +0xc80 fp=0x2100315eb0 sp=0x2100315da0 pc=0x679c8
runtime_test.TestSelectStackAdjust.func1(0x2100ab0180, 0x0)
    /root/riscv-go/src/runtime/chan_test.go:684 +0x120 fp=0x2100315fc8 sp=0x2100315eb0 pc=0x2c6070
runtime.goexit()
    /root/riscv-go/src/runtime/asm_riscv.s:469 +0x4 fp=0x2100315fc8 sp=0x2100315fc8 pc=0x9067c
created by runtime_test.TestSelectStackAdjust
    /root/riscv-go/src/runtime/chan_test.go:705 +0x1d8
FAIL    runtime 48.893s
ok      runtime/debug   1.999s
ok      runtime/internal/atomic 1.463s
ok      runtime/internal/math   0.813s
ok      runtime/internal/sys    0.834s
ok      runtime/pprof   14.449s
ok      runtime/pprof/internal/profile  1.022s
ok      runtime/trace   34.347s
ok      sort    3.993s
ok      strconv 7.677s
ok      strings 3.957s
ok      sync    7.690s
ok      sync/atomic 1.379s
ok      syscall 22.719s
ok      testing 5.086s
ok      testing/quick   3.101s
ok      text/scanner    1.294s
ok      text/tabwriter  0.989s
ok      text/template   9.243s
ok      text/template/parse 2.418s
ok      time    9.013s
ok      unicode 1.668s
ok      unicode/utf16   1.291s
ok      unicode/utf8    1.145s
ok      cmd/addr2line   38.848s
ok      cmd/api 1.983s
--- FAIL: TestRISCVEncoder (0.51s)
    endtoend_test.go:156: mismatched output:
        have 00001 (testdata/riscvenc.s:1)  TEXT    asmtest(SB), DUPOK|NOSPLIT, $0
        want 00001 (testdata/riscvenc.s:1)  TEXT    asmtest(SB), 7, $0
    endtoend_test.go:156: mismatched output:
        have 00001 (testdata/riscvfarbranch.s:1)    TEXT    asmtest(SB), DUPOK|NOSPLIT, $0
        want 00001 (testdata/riscvfarbranch.s:1)    TEXT    asmtest(SB), 7, $0
FAIL
FAIL    cmd/asm/internal/asm    21.022s
ok      cmd/asm/internal/lex    0.986s
ok      cmd/compile 5.180s
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
/root/riscv-go/pkg/tool/linux_riscv/vet: fork/exec /root/riscv-go/pkg/tool/linux_riscv/vet: cannot allocate memory
--- FAIL: TestCode (84.57s)
    ssa_test.go:173: Build failed: exit status 2
        # command-line-arguments [command-line-arguments.test]
        testdata/compound_test.go:60:52: internal compiler error: 'testComplex64': bad int32 AuxInt value for v200

        Please file a bug report including a short program that triggers the error.
        https://golang.org/issue/new

FAIL
FAIL    cmd/compile/internal/gc 195.888s
ok      cmd/compile/internal/ssa    20.623s
ok      cmd/compile/internal/syntax 2.405s
ok      cmd/compile/internal/test   1.637s [no tests to run]
ok      cmd/compile/internal/types  1.913s
ok      cmd/cover   114.027s
ok      cmd/doc 7.366s
ok      cmd/fix 215.780s
FAIL    cmd/go [build failed]
ok      cmd/go/internal/cache   13.339s
ok      cmd/go/internal/dirhash 1.118s
ok      cmd/go/internal/generate    2.565s
ok      cmd/go/internal/get 2.486s
ok      cmd/go/internal/imports 1.490s
ok      cmd/go/internal/load    1.890s
FAIL    cmd/go/internal/lockedfile [build failed]
FAIL    cmd/go/internal/lockedfile/internal/filelock [build failed]
ok      cmd/go/internal/modconv 3.236s
ok      cmd/go/internal/modfetch    3.563s
ok      cmd/go/internal/modfetch/codehost   1.439s
ok      cmd/go/internal/modfile 1.789s
ok      cmd/go/internal/modload 3.569s
ok      cmd/go/internal/module  1.119s
ok      cmd/go/internal/mvs 2.143s
ok      cmd/go/internal/par 3.036s
ok      cmd/go/internal/search  2.430s
ok      cmd/go/internal/semver  1.174s
ok      cmd/go/internal/txtar   1.028s
ok      cmd/go/internal/web2    2.378s
ok      cmd/go/internal/work    2.028s
ok      cmd/gofmt   2.932s
ok      cmd/internal/buildid    9.046s
ok      cmd/internal/dwarf  1.323s
ok      cmd/internal/edit   1.038s
ok      cmd/internal/goobj  5.148s
ok      cmd/internal/obj    1.045s
ok      cmd/internal/obj/arm64  2.643s
ok      cmd/internal/obj/x86    66.033s
ok      cmd/internal/objabi 0.828s
ok      cmd/internal/src    1.742s
ok      cmd/internal/test2json  4.906s
ok      cmd/link    17.206s
ok      cmd/link/internal/ld    54.774s
ok      cmd/link/internal/sym   1.223s
ok      cmd/nm  45.902s
--- FAIL: TestDisasm (13.65s)
    objdump_test.go:140: objdump fmthello.exe: exit status 1
        objdump: disassemble /tmp/TestObjDump242091507/hello.exe: unsupported architecture
--- FAIL: TestDisasmCode (4.90s)
    objdump_test.go:140: objdump fmthello.exe: exit status 1
        objdump: disassemble /tmp/TestObjDump242091507/hello.exe: unsupported architecture
--- FAIL: TestDisasmGoobj (1.04s)
    objdump_test.go:233: objdump fmthello.o: exit status 1
        objdump: disassemble /tmp/TestObjDump242091507/hello.o: unsupported architecture
FAIL
FAIL    cmd/objdump 45.296s
ok      cmd/pack    54.359s
ok      cmd/trace   3.013s
ok      cmd/vendor/github.com/google/pprof/internal/binutils    3.816s
ok      cmd/vendor/github.com/google/pprof/internal/driver  11.458s
ok      cmd/vendor/github.com/google/pprof/internal/elfexec 0.978s
ok      cmd/vendor/github.com/google/pprof/internal/graph   1.263s
ok      cmd/vendor/github.com/google/pprof/internal/measurement 11.598s
ok      cmd/vendor/github.com/google/pprof/internal/report  4.032s
ok      cmd/vendor/github.com/google/pprof/internal/symbolizer  2.143s
ok      cmd/vendor/github.com/google/pprof/internal/symbolz 1.985s
ok      cmd/vendor/github.com/google/pprof/profile  4.034s
ok      cmd/vendor/github.com/ianlancetaylor/demangle   1.975s
ok      cmd/vendor/golang.org/x/arch/arm/armasm 1.826s
ok      cmd/vendor/golang.org/x/arch/arm64/arm64asm 6.399s
ok      cmd/vendor/golang.org/x/arch/ppc64/ppc64asm 1.308s
ok      cmd/vendor/golang.org/x/arch/x86/x86asm 8.067s
ok      cmd/vendor/golang.org/x/crypto/ssh/terminal 3.411s
ok      cmd/vendor/golang.org/x/sys/unix    2.612s
panic: test timed out after 9m0s

goroutine 55 [running]:
testing.(*M).startAlarm.func1()
    /root/riscv-go/src/testing/testing.go:1334 +0x104
created by time.goFunc
    /root/riscv-go/src/time/sleep.go:169 +0x54

goroutine 1 [chan receive]:
testing.tRunner.func1(0x2100260300)
    /root/riscv-go/src/testing/testing.go:841 +0x21c
testing.tRunner(0x2100260300, 0x2100055e20)
    /root/riscv-go/src/testing/testing.go:869 +0x104
testing.runTests(0x21001fd0c0, 0x653e80, 0x2, 0x2, 0x0)
    /root/riscv-go/src/testing/testing.go:1155 +0x2e8
testing.(*M).Run(0x2100240500, 0x0)
    /root/riscv-go/src/testing/testing.go:1072 +0x194
cmd/vet_test.TestMain(0x2100240500)
    /root/riscv-go/src/cmd/vet/vet_test.go:31 +0x34
main.main()
    _testmain.go:44 +0x190

goroutine 19 [chan receive]:
testing.tRunner.func1(0x2100260400)
    /root/riscv-go/src/testing/testing.go:841 +0x21c
testing.tRunner(0x2100260400, 0x3f68a8)
    /root/riscv-go/src/testing/testing.go:869 +0x104
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 20 [chan send]:
testing.tRunner.func1(0x2100260500)
    /root/riscv-go/src/testing/testing.go:860 +0x294
testing.tRunner(0x2100260500, 0x3f68a0)
    /root/riscv-go/src/testing/testing.go:869 +0x104
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 21 [chan receive]:
testing.runTests.func1.1(0x2100260300)
    /root/riscv-go/src/testing/testing.go:1162 +0x40
created by testing.runTests.func1
    /root/riscv-go/src/testing/testing.go:1162 +0xc8

goroutine 16 [syscall]:
syscall.Syscall6(0x5f, 0x1, 0x60bc, 0x21003d5bc8, 0x1000004, 0x0, 0x0, 0x1f19a4, 0x21003d5bc0, 0x87380)
    /root/riscv-go/src/syscall/asm_linux_riscv.s:41 +0x14
os.(*Process).blockUntilWaitable(0x21003ca990, 0x21002aac60, 0x0, 0x0)
    /root/riscv-go/src/os/wait_waitid.go:31 +0x8c
os.(*Process).wait(0x21003ca990, 0x3f6eb8, 0x3f6ec0, 0x3f6eb0)
    /root/riscv-go/src/os/exec_unix.go:22 +0x48
os.(*Process).Wait(...)
    /root/riscv-go/src/os/exec.go:125
os/exec.(*Cmd).Wait(0x21003e0580, 0x0, 0x0)
    /root/riscv-go/src/os/exec/exec.go:474 +0x70
os/exec.(*Cmd).Run(0x21003e0580, 0x21003de5a0, 0x10)
    /root/riscv-go/src/os/exec/exec.go:318 +0x74
os/exec.(*Cmd).CombinedOutput(0x21003e0580, 0x8, 0x10, 0x2100388290, 0x155796a3f8, 0x33391c)
    /root/riscv-go/src/os/exec/exec.go:534 +0x16c
cmd/vet_test.errchk(0x21003e0580, 0x2100388290, 0x1, 0x1, 0x21002fac00)
    /root/riscv-go/src/cmd/vet/vet_test.go:146 +0x38
cmd/vet_test.TestVet.func1(0x21002fac00)
    /root/riscv-go/src/cmd/vet/vet_test.go:129 +0x5a0
testing.tRunner(0x21002fac00, 0x210000a360)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 49 [chan send]:
testing.tRunner.func1(0x21002fad00)
    /root/riscv-go/src/testing/testing.go:860 +0x294
testing.tRunner(0x21002fad00, 0x210000a3a0)
    /root/riscv-go/src/testing/testing.go:869 +0x104
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 50 [chan send]:
testing.tRunner.func1(0x21002fae00)
    /root/riscv-go/src/testing/testing.go:860 +0x294
testing.tRunner(0x21002fae00, 0x210000a3e0)
    /root/riscv-go/src/testing/testing.go:869 +0x104
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 51 [chan send]:
testing.tRunner.func1(0x21002fb000)
    /root/riscv-go/src/testing/testing.go:860 +0x294
testing.tRunner(0x21002fb000, 0x210000a420)
    /root/riscv-go/src/testing/testing.go:869 +0x104
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 52 [chan send]:
testing.tRunner.func1(0x21002fb100)
    /root/riscv-go/src/testing/testing.go:860 +0x294
testing.tRunner(0x21002fb100, 0x210000a460)
    /root/riscv-go/src/testing/testing.go:869 +0x104
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 53 [chan send]:
testing.tRunner.func1(0x21002fb200)
    /root/riscv-go/src/testing/testing.go:860 +0x294
testing.tRunner(0x21002fb200, 0x210000a4a0)
    /root/riscv-go/src/testing/testing.go:869 +0x104
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 54 [chan send]:
testing.tRunner.func1(0x21002fb300)
    /root/riscv-go/src/testing/testing.go:860 +0x294
testing.tRunner(0x21002fb300, 0x210000a4e0)
    /root/riscv-go/src/testing/testing.go:869 +0x104
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 68 [IO wait]:
internal/poll.runtime_pollWait(0x15577cdb88, 0x72, 0xffffffffffffffff)
    /root/riscv-go/src/runtime/netpoll.go:182 +0x64
internal/poll.(*pollDesc).wait(0x21002aad38, 0x72, 0x501, 0x54c, 0xffffffffffffffff)
    /root/riscv-go/src/internal/poll/fd_poll_runtime.go:87 +0xd8
internal/poll.(*pollDesc).waitRead(...)
    /root/riscv-go/src/internal/poll/fd_poll_runtime.go:92
internal/poll.(*FD).Read(0x21002aad20, 0x21005452b4, 0x54c, 0x54c, 0x0, 0x0, 0x0)
    /root/riscv-go/src/internal/poll/fd_unix.go:169 +0x1f8
os.(*File).read(...)
    /root/riscv-go/src/os/file_unix.go:263
os.(*File).Read(0x2100404118, 0x21005452b4, 0x54c, 0x54c, 0xb4, 0x0, 0x0)
    /root/riscv-go/src/os/file.go:108 +0x80
bytes.(*Buffer).ReadFrom(0x21003de5a0, 0x44fca0, 0x2100404118, 0x1557969028, 0x21003de5a0, 0x1)
    /root/riscv-go/src/bytes/buffer.go:207 +0xe0
io.copyBuffer(0x44f9c0, 0x21003de5a0, 0x44fca0, 0x2100404118, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
    /root/riscv-go/src/io/io.go:388 +0x310
io.Copy(...)
    /root/riscv-go/src/io/io.go:364
os/exec.(*Cmd).writerDescriptor.func1(0x0, 0x0)
    /root/riscv-go/src/os/exec/exec.go:288 +0x6c
os/exec.(*Cmd).Start.func1(0x21003e0580, 0x21003aa440)
    /root/riscv-go/src/os/exec/exec.go:409 +0x2c
created by os/exec.(*Cmd).Start
    /root/riscv-go/src/os/exec/exec.go:408 +0x47c
FAIL    cmd/vet 543.456s
2019/05/08 17:47:24 Failed: exit status 2

Now will try to look into building some test applications and into these errors.

I edited your comment to put the long log into a "Details" block.

fatal error: cas1
runtime: panic before malloc heap initialized

runtime stack:
runtime.throw(0x187542, 0x4)
    /root/riscv-go/src/runtime/panic.go:617 +0x88 fp=0x3fffdd1030 sp=0x3fffdd1008 pc=0x4aaf8
runtime.check()
    /root/riscv-go/src/runtime/runtime1.go:215 +0x57c fp=0x3fffdd1070 sp=0x3fffdd1030 pc=0x603ac
runtime.rt0_go(0x3fffdd1098, 0xd3868, 0x4, 0x3fffdd1392, 0x3fffdd13ba, 0x3fffdd13f4, 0x3fffdd1405, 0x0, 0x3fffdd1418, 0x3fffdd1428, ...)
    /root/riscv-go/src/runtime/asm_riscv.s:54 +0x90 fp=0x3fffdd1078 sp=0x3fffdd1070 pc=0x82ad0

This failure, which appears elsewhere as well, shows quite clearly that there is something wrong with the implementation of atomic.Cas. As that could easily cause race conditions elsewhere, you need to fix that first.

Following up, for most, maybe all, targets, atomic.Cas is implemented in the compiler itself.

Perhaps https://review.gerrithub.io/c/riscv/riscv-go/+/353663 may help. (And if it does, it is definitely looking at the other as-yet-unmerged CLs in the list I linked to above.)

First of all, awesome!
Second, does the port supports the 32-bit RISC-V variant?

I have a 32-bit linux capable hardware synthesized on an FPGA which I want to try golang on.

No this does not support riscv32.

Joel and I have narrowed this down to locking in QEMU. We have written several smaller test programs to reproduce the bug easily. I am going to write the locking/atomic issues up in the QEMU repo.

If someone has real hardware to test on that would help to see if this is QEMU or not.

When we fix these issues go might be in pretty good shape actually.

I edited your comment to put the long log into a "Details" block.

fatal error: cas1
runtime: panic before malloc heap initialized

runtime stack:
runtime.throw(0x187542, 0x4)
  /root/riscv-go/src/runtime/panic.go:617 +0x88 fp=0x3fffdd1030 sp=0x3fffdd1008 pc=0x4aaf8
runtime.check()
  /root/riscv-go/src/runtime/runtime1.go:215 +0x57c fp=0x3fffdd1070 sp=0x3fffdd1030 pc=0x603ac
runtime.rt0_go(0x3fffdd1098, 0xd3868, 0x4, 0x3fffdd1392, 0x3fffdd13ba, 0x3fffdd13f4, 0x3fffdd1405, 0x0, 0x3fffdd1418, 0x3fffdd1428, ...)
  /root/riscv-go/src/runtime/asm_riscv.s:54 +0x90 fp=0x3fffdd1078 sp=0x3fffdd1070 pc=0x82ad0

This failure, which appears elsewhere as well, shows quite clearly that there is something wrong with the implementation of atomic.Cas. As that could easily cause race conditions elsewhere, you need to fix that first.

This is exactly right.

@marcopeereboom let me know if there are workarounds while building on Qemu and where to follow these reports. I'm about to get a SiFive Unleashed board soon so we will be able to build on real iron to remove these variables.

I have a riscv64 board but not much time, if you give me a shell script I'll run it for you (on Alpine Linux).

Nice work Joel (@4a6f656c I assume?) and @marcopeereboom!

One small note: the reserved GOARCH value for 64-bit RISCV is riscv64. riscv is reserved for 32-bit RISCV, see https://golang.org/cl/106256

I took the liberty to fork Joel's tree and did the rename (plus some other cleanup fixes). You can find the tree at https://github.com/tklauser/riscv-go/commits/riscv64dev. Unfortunately I don't seem to be able to send a PR against Joel's fork, but please feel free to pull any patches you deem useful.

I'll also try to update my riscv branch on https://github.com/tklauser/go/commits/riscv (which tracks gotip) with the changes from your branch and possibly https://review.gerrithub.io/c/riscv/riscv-go/+/353663 plus further patches form this series.

Hey @tklauser Joel had pushed the rename already. We certainly will take your help and if you have additional PRs on top of the current tree let us know. And thanks for doing a current branch, that will prove useful.

I have a riscv64 board but not much time, if you give me a shell script I'll run it for you (on Alpine Linux).

I pretty much pasted the instructions to build it. Building go, unlike userspace and kernels, is trivial.

I merged @tklauser patches into the fork I did from @4a6f656c . Had to adjust some conflicts and also hammer in a change in a function where the dynamic generation used an unavailable syscall. The files are in my fork as a temporary test (https://github.com/carlosedp/riscv-go). I'm currently running the tests and apparently see fewer errors (@josharian those CAS errors are gone).

Will post the test run soon.

And after some more playing with the test code we are convinced that it is either QEMU or the kernel. I am leaning towards the atomic code being preempted and the CPU losing state somehow. I wrote a C threaded app that uses a CAS that is pretty similar to Go's and made it into a poor man's mutex. The critical section just increments a global and at the end of the run the expected value is compared against the actual value.

The results are that when run on linux inside QEMU with enough threads and/or iterations it misses a couple of locks. When run with qemu-riscv without a kernel it runs indefinitely without failure.
Code for this test: https://gist.github.com/marcopeereboom/1a3b62a89f81b2ed341082cedaef4874

More worrisome is that some gcc atomics also fail in a similar test. Code: https://gist.github.com/marcopeereboom/1e40d4baffdcc9a2066310d770f5ac12

We did try adding some extra fences but that had no effect. Code:
https://gist.github.com/marcopeereboom/4357c59b57dc998a58d37817d59f99b0

The disassembly looks correct and when held against the spec it seems like it should work.

I know these snippets won't win the state pageant but they are small enough for quick tests. I am debating where to record these issues. Anyone has any opinion? Linux kernel, QEMU?

Attempted to build your go stuff. Bootstrap went well, but it failed early when doing the full build:

https://paste.sr.ht/~sircmpwn/3a76f2ee0b914eccf2cc70fc6ca6b7a75de547a3

Your smaller test code:

hifive:/tmp$ ./a.out
in thread 10
in thread 11
in thread 12
in thread 27
in thread 28
in thread 14
in thread 23
in thread 24
in thread 26
in thread 25
in thread 19
in thread 13
in thread 15
in thread 29
in thread 20
in thread 17
in thread 18
in thread 22
in thread 21
in thread 16
ok 2000000 2000000

Note, I'm using musl libc for both bootstrapping and on riscv64.

It sometimes works. May have to play with the iterations and threads a bit on your hardware.

Spent a few minutes tweaking it and haven't gotten it to fail yet. If the issue is between kernel and qemu, kernel's looking pretty safe.

This is what I see. This explains the go issues too.

[root@stage4 ~]# ./a.out
in thread 10
in thread 11
in thread 12
in thread 13
in thread 18
in thread 15
in thread 16
in thread 17
in thread 19
in thread 14
in thread 20
in thread 21
in thread 23
in thread 22
in thread 26
in thread 27
in thread 29
in thread 24
in thread 28
in thread 25
womp womp 19999976 20000000

Can you share what qemu and linux kernel you are running?

This is what I see compiling the test code:

[root@fedora-riscv ~]# gcc --version
gcc (GCC) 9.1.1 20190503 (Red Hat 9.1.1-1)
Copyright (C) 2019 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

[root@fedora-riscv ~]#
[root@fedora-riscv ~]# gcc test1.c
test1.c: In function ‘main’:
test1.c:85:41: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
   85 |   pthread_create(&tid[i], NULL, thread, (void *)i+10);
      |                                         ^
/usr/bin/ld: /tmp/cc1fyhzx.o: in function `main':
test1.c:(.text+0x14e): undefined reference to `pthread_create'
/usr/bin/ld: test1.c:(.text+0x188): undefined reference to `pthread_join'
collect2: error: ld returned 1 exit status

I'm running Fedora nightly with Kernel 5.1.0-rc7-00005-g83a50840e72a.

Here are the results of the test run for Go after the merges:

# GOGC=off ./run.bash

##### Building packages and commands.

##### Testing packages.
ok      archive/tar (cached)
ok      archive/zip (cached)
ok      bufio   (cached)
ok      bytes   (cached)
ok      compress/bzip2  (cached)
ok      compress/flate  (cached)
ok      compress/gzip   (cached)
ok      compress/lzw    (cached)
ok      compress/zlib   (cached)
ok      container/heap  (cached)
ok      container/list  (cached)
ok      container/ring  (cached)
ok      context (cached)
ok      crypto  (cached)
ok      crypto/aes  (cached)
ok      crypto/cipher   (cached)
ok      crypto/des  (cached)
ok      crypto/dsa  (cached)
ok      crypto/ecdsa    (cached)
ok      crypto/elliptic (cached)
ok      crypto/hmac (cached)
ok      crypto/internal/subtle  (cached)
ok      crypto/md5  (cached)
ok      crypto/rand (cached)
ok      crypto/rc4  (cached)
ok      crypto/rsa  (cached)
ok      crypto/sha1 (cached)
ok      crypto/sha256   (cached)
ok      crypto/sha512   (cached)
ok      crypto/subtle   (cached)
ok      crypto/tls  (cached)
ok      crypto/x509 23.983s
ok      database/sql    (cached)
ok      database/sql/driver (cached)
ok      debug/dwarf (cached)
ok      debug/elf   (cached)
ok      debug/gosym (cached)
ok      debug/macho (cached)
ok      debug/pe    (cached)
ok      debug/plan9obj  (cached)
ok      encoding/ascii85    (cached)
ok      encoding/asn1   (cached)
ok      encoding/base32 (cached)
ok      encoding/base64 (cached)
ok      encoding/binary (cached)
ok      encoding/csv    (cached)
ok      encoding/gob    (cached)
ok      encoding/hex    (cached)
ok      encoding/json   (cached)
ok      encoding/pem    (cached)
ok      encoding/xml    (cached)
ok      errors  (cached)
ok      expvar  (cached)
ok      flag    (cached)
ok      fmt (cached)
ok      go/ast  (cached)
ok      go/build    6.739s
ok      go/constant (cached)
ok      go/doc  (cached)
ok      go/format   (cached)
ok      go/importer 4.925s
ok      go/internal/gccgoimporter   24.223s
ok      go/internal/gcimporter  8.977s
ok      go/internal/srcimporter (cached)
ok      go/parser   (cached)
ok      go/printer  (cached)
ok      go/scanner  (cached)
ok      go/token    1.067s
ok      go/types    12.343s
ok      hash    (cached)
ok      hash/adler32    (cached)
ok      hash/crc32  (cached)
ok      hash/crc64  (cached)
ok      hash/fnv    (cached)
ok      html    (cached)
ok      html/template   (cached)
ok      image   (cached)
ok      image/color (cached)
ok      image/draw  (cached)
ok      image/gif   (cached)
ok      image/jpeg  (cached)
ok      image/png   (cached)
ok      index/suffixarray   (cached)
ok      internal/cpu    (cached)
ok      internal/fmtsort    (cached)
ok      internal/poll   (cached)
ok      internal/singleflight   (cached)
ok      internal/trace  (cached)
ok      internal/x/crypto/chacha20poly1305  (cached)
ok      internal/x/crypto/cryptobyte    (cached)
ok      internal/x/crypto/curve25519    (cached)
ok      internal/x/crypto/hkdf  (cached)
ok      internal/x/crypto/internal/chacha20 (cached)
ok      internal/x/crypto/poly1305  (cached)
ok      internal/x/net/dns/dnsmessage   (cached)
ok      internal/x/net/http/httpguts    (cached)
ok      internal/x/net/http/httpproxy   (cached)
ok      internal/x/net/http2/hpack  (cached)
ok      internal/x/net/idna (cached)
ok      internal/x/net/nettest  (cached)
ok      internal/x/text/transform   (cached)
ok      internal/x/text/unicode/norm    (cached)
ok      internal/xcoff  (cached)
ok      io  (cached)
ok      io/ioutil   (cached)
ok      log (cached)
ok      log/syslog  (cached)
ok      math    (cached)
ok      math/big    (cached)
ok      math/bits   (cached)
ok      math/cmplx  (cached)
ok      math/rand   (cached)
ok      mime    (cached)
ok      mime/multipart  (cached)
ok      mime/quotedprintable    (cached)
ok      net (cached)
runtime: newstack sp=0x210107a758 stack=[0x210107b000, 0x210107b800]
    morebuf={pc:0x4d7dc4 sp:0x210107a758 lr:0x0}
    sched={pc:0xd8230 sp:0x210107a758 lr:0x4d7dc4 ctxt:0x0}
runtime: gp=0x2100920f00, goid=1200, gp->status=0x2
 runtime: split stack overflow: 0x210107a758 < 0x210107b000
fatal error: runtime: split stack overflow

runtime stack:
runtime.newstack()
    /root/riscv-go/src/runtime/stack.go:995 +0xa18
runtime: unexpected return pc for runtime.newstack called from 0x21004d2480
stack: frame={sp:0x2100587fb0, fp:0x2100588138} stack=[0x2100548000,0x2100588000)
0000002100587eb0:  00000000000004b0  00000000004d7dc4 <net/http_test.testHandlerPanic.func2+156>
0000002100587ec0:  00000000000d8230 <io.(*pipe).Read+24>  0000000000000000
0000002100587ed0:  000000210107a758  00000000004d7dc4 <net/http_test.testHandlerPanic.func2+156>
0000002100587ee0:  000000210107b800  000000210107b000
0000002100587ef0:  0000000000000001  00000021004d2480
0000002100587f00:  0000000000000000  0000000000000000
0000002100587f10:  0000002100920f00  0000000000000000
0000002100587f20:  0000002100920f00  0000002100001080
0000002100587f30:  000000210107a758  00000000004d7dc4 <net/http_test.testHandlerPanic.func2+156>
0000002100587f40:  0000002100920f00  0000000000000000
0000002100587f50:  0000000000000000  0000000000000000
0000002100587f60:  0000000000000000  0000002100920f00
0000002100587f70:  0000000000058500 <runtime.park_m+80>  0000000000a65204
0000002100587f80:  00000000864b8a7e  00000021000002b1
0000002100587f90:  0000002100920f00  010000210109d3d8
0000002100587fa0:  0000002100001080  0000000000089fdc <runtime.mcall+84>
0000002100587fb0: <00000021004d2480  00000015577cdb38
0000002100587fc0:  0000002100a07801  0000002100001080
0000002100587fd0:  0000000000000000  0000000000000000
0000002100587fe0:  000000000008c688 <runtime.clone+120>  0000000000053b98 <runtime.mstart+0>
0000002100587ff0:  0000002100001080  000000210001ee00
runtime.newstack()
    /root/riscv-go/src/runtime/stack.go:995 +0xa18

goroutine 1200 [running]:
io.(*pipe).Read(0x2100fe57c0, 0x210107a7a8, 0x1000, 0x1000, 0x0, 0x0, 0x0)
    /root/riscv-go/src/io/pipe.go:43 +0x18 fp=0x210107a758 sp=0x210107a758 pc=0xd8230
io.(*PipeReader).Read(...)
    /root/riscv-go/src/io/pipe.go:127
net/http_test.testHandlerPanic.func2(0x21005f87d0, 0x2101083800, 0x21012d0150)
    /root/riscv-go/src/net/http/serve_test.go:2784 +0x9c fp=0x210107b7c0 sp=0x210107a758 pc=0x4d7dc4
runtime.goexit()
    /root/riscv-go/src/runtime/asm_riscv64.s:467 +0x4 fp=0x210107b7c0 sp=0x210107b7c0 pc=0x8bf34
created by net/http_test.testHandlerPanic
    /root/riscv-go/src/net/http/serve_test.go:2782 +0x3a4

goroutine 1 [chan receive]:
testing.(*T).Run(0x2101083800, 0x621c16, 0x1f, 0x63e488, 0x13f601)
    /root/riscv-go/src/testing/testing.go:917 +0x3c0
testing.runTests.func1(0x2100243600)
    /root/riscv-go/src/testing/testing.go:1157 +0x88
testing.tRunner(0x2100243600, 0x2100065e30)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
testing.runTests(0x21001ee3e0, 0xa461a0, 0x1e2, 0x1e2, 0x0)
    /root/riscv-go/src/testing/testing.go:1155 +0x2e8
testing.(*M).Run(0x210023e680, 0x0)
    /root/riscv-go/src/testing/testing.go:1072 +0x194
net/http_test.TestMain(0x210023e680)
    /root/riscv-go/src/net/http/main_test.go:23 +0x34
main.main()
    _testmain.go:1062 +0x190

goroutine 18 [syscall]:
os/signal.signal_recv(0x0)
    /root/riscv-go/src/runtime/sigqueue.go:139 +0x234
os/signal.loop()
    /root/riscv-go/src/os/signal/signal_unix.go:23 +0x2c
created by os/signal.init.0
    /root/riscv-go/src/os/signal/signal_unix.go:29 +0x54

goroutine 41 [chan receive]:
testing.(*T).Parallel(0x2100292800)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http.TestCmdGoNoHTTPServer(0x2100292800)
    /root/riscv-go/src/net/http/http_test.go:85 +0x38
testing.tRunner(0x2100292800, 0x63d188)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 396 [chan receive]:
testing.(*T).Parallel(0x2100a64500)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100a64500)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x2100a1c470, 0x63cf58, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2100a64500)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.TestH12_Head_ExplicitLen(0x2100a64500)
    /root/riscv-go/src/net/http/clientserver_test.go:360 +0xcc
testing.tRunner(0x2100a64500, 0x63da60)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 47 [chan receive]:
testing.(*T).Parallel(0x210040e200)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http.TestRequestWriteTransport(0x210040e200)
    /root/riscv-go/src/net/http/requestwrite_test.go:648 +0x38
testing.tRunner(0x210040e200, 0x63d278)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 52 [chan receive]:
testing.(*T).Parallel(0x210040e900)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http.TestReadResponseCloseInMiddle(0x210040e900)
    /root/riscv-go/src/net/http/response_test.go:643 +0x38
testing.tRunner(0x210040e900, 0x63d220)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 4 [chan receive]:
testing.(*T).Parallel(0x21005e2000)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21005e2000)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestClient(0x21005e2000)
    /root/riscv-go/src/net/http/client_test.go:70 +0x38
testing.tRunner(0x21005e2000, 0x63d840)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 176 [chan receive]:
testing.(*T).Parallel(0x21008f2100)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21008f2100)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestClientInsecureTransport(0x21008f2100)
    /root/riscv-go/src/net/http/client_test.go:847 +0x38
testing.tRunner(0x21008f2100, 0x63d748)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 156 [chan receive]:
testing.(*T).Parallel(0x2100813c00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100813c00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestRedirectCookiesJar(0x2100813c00)
    /root/riscv-go/src/net/http/client_test.go:660 +0x34
testing.tRunner(0x2100813c00, 0x63df18)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 309 [chan receive]:
testing.(*T).Parallel(0x21009aad00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21009aad00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testClientTimeout(0x21009aad00, 0xf8a38c4100)
    /root/riscv-go/src/net/http/client_test.go:1204 +0x38
net/http_test.TestClientTimeout_h1(0x21009aad00)
    /root/riscv-go/src/net/http/client_test.go:1200 +0x3c
testing.tRunner(0x21009aad00, 0x63d7f0)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 115 [chan receive]:
testing.(*T).Parallel(0x21005e2600)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21005e2600)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestGetRequestFormat(0x21005e2600)
    /root/riscv-go/src/net/http/client_test.go:116 +0x34
testing.tRunner(0x21005e2600, 0x63d9a8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 153 [chan receive]:
testing.(*T).Parallel(0x2100813300)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100813300)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestClientRedirect308NoLocation(0x2100813300)
    /root/riscv-go/src/net/http/client_test.go:538 +0x34
testing.tRunner(0x2100813300, 0x63d768)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 398 [chan receive]:
testing.(*T).Parallel(0x2100a64700)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100a64700)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x63da18, 0x0, 0x2100a1c4b0, 0x0, 0x0, 0x0, 0x0, 0x2100a64700)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.TestH12_HandlerWritesTooLittle(0x2100a64700)
    /root/riscv-go/src/net/http/clientserver_test.go:394 +0xcc
testing.tRunner(0x2100a64700, 0x63da20)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 118 [chan receive]:
testing.(*T).Parallel(0x21005e2b00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21005e2b00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestClientRedirects(0x21005e2b00)
    /root/riscv-go/src/net/http/client_test.go:203 +0x38
testing.tRunner(0x21005e2b00, 0x63d7b8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 152 [chan receive]:
testing.(*T).Parallel(0x2100813200)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100813200)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestClientRedirectUseResponse(0x2100813200)
    /root/riscv-go/src/net/http/client_test.go:496 +0x38
testing.tRunner(0x2100813200, 0x63d7b0)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 119 [chan receive]:
testing.(*T).Parallel(0x21005e2c00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21005e2c00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestClientRedirectContext(0x21005e2c00)
    /root/riscv-go/src/net/http/client_test.go:302 +0x38
testing.tRunner(0x21005e2c00, 0x63d778)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 395 [chan receive]:
testing.(*T).Parallel(0x2100a64400)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100a64400)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x63da08, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2100a64400)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.TestH12_FlushMidBody(0x2100a64400)
    /root/riscv-go/src/net/http/clientserver_test.go:348 +0x58
testing.tRunner(0x2100a64400, 0x63da10)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 154 [chan receive]:
testing.(*T).Parallel(0x2100813400)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100813400)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestClientRedirect308NoGetBody(0x2100813400)
    /root/riscv-go/src/net/http/client_test.go:561 +0x38
testing.tRunner(0x2100813400, 0x63d758)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 802 [chan receive]:
testing.(*T).Parallel(0x2100ebab00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100ebab00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testWriteHeaderAfterWrite(0x2100ebab00, 0xf912a20100)
    /root/riscv-go/src/net/http/clientserver_test.go:1436 +0x38
net/http_test.TestWriteHeaderNoCodeCheck_h1hijack(0x2100ebab00)
    /root/riscv-go/src/net/http/clientserver_test.go:1433 +0x44
testing.tRunner(0x2100ebab00, 0x63e988)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 311 [chan receive]:
testing.(*T).Parallel(0x21009aaf00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21009aaf00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testClientTimeout_Headers(0x21009aaf00, 0xf8a396bd00)
    /root/riscv-go/src/net/http/client_test.go:1286 +0x38
net/http_test.TestClientTimeout_Headers_h1(0x21009aaf00)
    /root/riscv-go/src/net/http/client_test.go:1281 +0x3c
testing.tRunner(0x21009aaf00, 0x63d7e0)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1113 [chan receive]:
testing.(*T).Parallel(0x2101137e00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2101137e00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestServeMuxHandler(0x2101137e00)
    /root/riscv-go/src/net/http/serve_test.go:364 +0x38
testing.tRunner(0x2101137e00, 0x63e0b0)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 397 [chan receive]:
testing.(*T).Parallel(0x2100a64600)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100a64600)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x2100a1c490, 0x63cf58, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2100a64600)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.TestH12_Head_ImplicitLen(0x2100a64600)
    /root/riscv-go/src/net/http/clientserver_test.go:372 +0xcc
testing.tRunner(0x2100a64600, 0x63da68)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 387 [chan receive]:
testing.(*T).Parallel(0x2100897c00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100897c00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x63da30, 0x63cf58, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2100897c00)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.TestH12_HeadContentLengthLargeBody(0x2100897c00)
    /root/riscv-go/src/net/http/clientserver_test.go:306 +0x64
testing.tRunner(0x2100897c00, 0x63da38)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 386 [chan receive]:
testing.(*T).Parallel(0x2100897b00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100897b00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x63da50, 0x63cf58, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2100897b00)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.TestH12_HeadContentLengthSmallBody(0x2100897b00)
    /root/riscv-go/src/net/http/clientserver_test.go:294 +0x64
testing.tRunner(0x2100897b00, 0x63da58)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 389 [chan receive]:
testing.(*T).Parallel(0x2100897e00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100897e00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x210090fd20, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2100897e00)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.testH12_noBody(0x2100897e00, 0xcc)
    /root/riscv-go/src/net/http/clientserver_test.go:320 +0xa0
net/http_test.TestH2_204NoBody(0x2100897e00)
    /root/riscv-go/src/net/http/clientserver_test.go:313 +0x3c
testing.tRunner(0x2100897e00, 0x63dad8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 286 [chan receive]:
testing.(*T).Parallel(0x21007ebd00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21007ebd00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestEmptyPasswordAuth(0x21007ebd00)
    /root/riscv-go/src/net/http/client_test.go:1057 +0x34
testing.tRunner(0x21007ebd00, 0x63d940)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 394 [chan receive]:
testing.(*T).Parallel(0x2100a64300)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100a64300)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x63d9f8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2100a64300)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.TestH12_FlushBeforeBody(0x2100a64300)
    /root/riscv-go/src/net/http/clientserver_test.go:340 +0x58
testing.tRunner(0x2100a64300, 0x63da00)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 312 [chan receive]:
testing.(*T).Parallel(0x21009ab000)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21009ab000)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testClientTimeout_Headers(0x21009ab000, 0xf8a3a7d401)
    /root/riscv-go/src/net/http/client_test.go:1286 +0x38
net/http_test.TestClientTimeout_Headers_h2(0x21009ab000)
    /root/riscv-go/src/net/http/client_test.go:1282 +0x3c
testing.tRunner(0x21009ab000, 0x63d7e8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 310 [chan receive]:
testing.(*T).Parallel(0x21009aae00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21009aae00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testClientTimeout(0x21009aae00, 0xf8a391f201)
    /root/riscv-go/src/net/http/client_test.go:1204 +0x38
net/http_test.TestClientTimeout_h2(0x21009aae00)
    /root/riscv-go/src/net/http/client_test.go:1201 +0x3c
testing.tRunner(0x21009aae00, 0x63d7f8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 313 [chan receive]:
testing.(*T).Parallel(0x21009ab200)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21009ab200)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestClientTimeoutCancel(0x21009ab200)
    /root/riscv-go/src/net/http/client_test.go:1326 +0x38
testing.tRunner(0x21009ab200, 0x63d7c8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 314 [chan receive]:
testing.(*T).Parallel(0x21009ab300)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21009ab300)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testClientRedirectEatsBody(0x21009ab300, 0xf8a3b3fd00)
    /root/riscv-go/src/net/http/client_test.go:1356 +0x38
net/http_test.TestClientRedirectEatsBody_h1(0x21009ab300)
    /root/riscv-go/src/net/http/client_test.go:1353 +0x3c
testing.tRunner(0x21009ab300, 0x63d780)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 315 [chan receive]:
testing.(*T).Parallel(0x21009ab400)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21009ab400)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testClientRedirectEatsBody(0x21009ab400, 0xf8a3bcbb01)
    /root/riscv-go/src/net/http/client_test.go:1356 +0x38
net/http_test.TestClientRedirectEatsBody_h2(0x21009ab400)
    /root/riscv-go/src/net/http/client_test.go:1354 +0x3c
testing.tRunner(0x21009ab400, 0x63d788)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 354 [chan receive]:
testing.(*T).Parallel(0x2100895a00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100895a00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestClientRedirectTypes(0x2100895a00)
    /root/riscv-go/src/net/http/client_test.go:1734 +0x54
testing.tRunner(0x2100895a00, 0x63d7a8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 385 [chan receive]:
testing.(*T).Parallel(0x2100897a00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100897a00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x63da40, 0x63cf58, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2100897a00)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.TestH12_HeadContentLengthNoBody(0x2100897a00)
    /root/riscv-go/src/net/http/clientserver_test.go:285 +0x64
testing.tRunner(0x2100897a00, 0x63da48)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1197 [chan receive]:
testing.(*T).Parallel(0x2101083700)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2101083700)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestTimeoutHandlerEmptyResponse(0x2101083700)
    /root/riscv-go/src/net/http/serve_test.go:2533 +0x34
testing.tRunner(0x2101083700, 0x63e478)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 393 [chan receive]:
testing.(*T).Parallel(0x2100a64200)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100a64200)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x63d9e8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2100a64200)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.TestH12_ExplicitContentLength(0x2100a64200)
    /root/riscv-go/src/net/http/clientserver_test.go:333 +0x58
testing.tRunner(0x2100a64200, 0x63d9f0)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1199 [IO wait]:
internal/poll.runtime_pollWait(0x15577cd9e8, 0x72, 0x0)
    /root/riscv-go/src/runtime/netpoll.go:182 +0x64
internal/poll.(*pollDesc).wait(0x2101020a18, 0x72, 0x0, 0x0, 0x60f863)
    /root/riscv-go/src/internal/poll/fd_poll_runtime.go:87 +0xd8
internal/poll.(*pollDesc).waitRead(...)
    /root/riscv-go/src/internal/poll/fd_poll_runtime.go:92
internal/poll.(*FD).Accept(0x2101020a00, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
    /root/riscv-go/src/internal/poll/fd_unix.go:384 +0x22c
net.(*netFD).accept(0x2101020a00, 0x0, 0x2101369e60, 0x3b3efc)
    /root/riscv-go/src/net/fd_unix.go:238 +0x3c
net.(*TCPListener).accept(0x21005f87e0, 0x1b94232003b3f00, 0x210109d2c0, 0x5a358)
    /root/riscv-go/src/net/tcpsock_posix.go:139 +0x38
net.(*TCPListener).Accept(0x21005f87e0, 0x2101369ef0, 0x18, 0x2100801e00, 0x3b9e90)
    /root/riscv-go/src/net/tcpsock.go:260 +0x58
net/http.(*Server).Serve(0x2100d07450, 0x6e6560, 0x21005f87e0, 0x0, 0x0)
    /root/riscv-go/src/net/http/server.go:2859 +0x270
net/http/httptest.(*Server).goServe.func1(0x210109d2c0)
    /root/riscv-go/src/net/http/httptest/server.go:298 +0x7c
created by net/http/httptest.(*Server).goServe
    /root/riscv-go/src/net/http/httptest/server.go:296 +0x6c

goroutine 1004 [chan receive]:
testing.(*T).Parallel(0x2101082700)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2101082700)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testAutomaticHTTP2_Serve(0x2101082700, 0x0, 0xf965e45101)
    /root/riscv-go/src/net/http/serve_test.go:1599 +0x34
net/http_test.TestAutomaticHTTP2_Serve_NoTLSConfig(0x2101082700)
    /root/riscv-go/src/net/http/serve_test.go:1587 +0x44
testing.tRunner(0x2101082700, 0x63d638)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 355 [chan receive]:
testing.(*T).Parallel(0x2100895b00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100895b00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestTransportBodyReadError(0x2100895b00)
    /root/riscv-go/src/net/http/client_test.go:1842 +0x38
testing.tRunner(0x2100895b00, 0x63e590)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 392 [chan receive]:
testing.(*T).Parallel(0x2100a64100)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100a64100)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x63dab0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2100a64100)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.TestH12_SmallBody(0x2100a64100)
    /root/riscv-go/src/net/http/clientserver_test.go:326 +0x58
testing.tRunner(0x2100a64100, 0x63dab8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 434 [chan receive]:
testing.(*T).Parallel(0x2100a16600)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100a16600)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x63ea20, 0x21007e99f0, 0x21007e1940, 0x0, 0x0, 0x0, 0x0, 0x2100a16600)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.h12requestContentLength(0x2100a16600, 0x63da70, 0x4)
    /root/riscv-go/src/net/http/clientserver_test.go:515 +0x128
net/http_test.TestH12_RequestContentLength_Known_NonZero(0x2100a16600)
    /root/riscv-go/src/net/http/clientserver_test.go:490 +0x48
testing.tRunner(0x2100a16600, 0x63da78)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 391 [chan receive]:
testing.(*T).Parallel(0x2100a64000)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100a64000)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x210090fd60, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2100a64000)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.testH12_noBody(0x2100a64000, 0x194)
    /root/riscv-go/src/net/http/clientserver_test.go:320 +0xa0
net/http_test.TestH2_404NoBody(0x2100a64000)
    /root/riscv-go/src/net/http/clientserver_test.go:315 +0x3c
testing.tRunner(0x2100a64000, 0x63dae8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 649 [chan receive]:
testing.(*T).Parallel(0x2100dc2600)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100dc2600)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestTransportDiscardsUnneededConns(0x2100dc2600)
    /root/riscv-go/src/net/http/clientserver_test.go:964 +0x38
testing.tRunner(0x2100dc2600, 0x63e678)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 388 [chan receive]:
testing.(*T).Parallel(0x2100897d00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100897d00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x63d9b0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2100897d00)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.TestH12_200NoBody(0x2100897d00)
    /root/riscv-go/src/net/http/clientserver_test.go:310 +0x58
testing.tRunner(0x2100897d00, 0x63d9b8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 390 [chan receive]:
testing.(*T).Parallel(0x2100897f00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100897f00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x210090fd40, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2100897f00)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.testH12_noBody(0x2100897f00, 0x130)
    /root/riscv-go/src/net/http/clientserver_test.go:320 +0xa0
net/http_test.TestH2_304NoBody(0x2100897f00)
    /root/riscv-go/src/net/http/clientserver_test.go:314 +0x3c
testing.tRunner(0x2100897f00, 0x63dae0)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 399 [chan receive]:
testing.(*T).Parallel(0x2100a64800)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100a64800)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x2100a1c4d0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2100a64800)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.TestH12_HandlerWritesTooMuch(0x2100a64800)
    /root/riscv-go/src/net/http/clientserver_test.go:415 +0xc0
testing.tRunner(0x2100a64800, 0x63da28)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 400 [chan receive]:
testing.(*T).Parallel(0x2100a64900)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100a64900)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x2100a1c4f0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2100a64900)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.TestH12_AutoGzip(0x2100a64900)
    /root/riscv-go/src/net/http/clientserver_test.go:431 +0xc0
testing.tRunner(0x2100a64900, 0x63d9e0)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 401 [chan receive]:
testing.(*T).Parallel(0x2100a64a00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100a64a00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x2100a1c520, 0x0, 0x0, 0x0, 0x2100a1c510, 0x1, 0x1, 0x2100a64a00)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.TestH12_AutoGzip_Disabled(0x2100a64a00)
    /root/riscv-go/src/net/http/clientserver_test.go:445 +0x124
testing.tRunner(0x2100a64a00, 0x63d9d8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 433 [chan receive]:
testing.(*T).Parallel(0x2100a16500)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100a16500)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x63daa0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2100a16500)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.TestH12_ServerEmptyContentLength(0x2100a16500)
    /root/riscv-go/src/net/http/clientserver_test.go:486 +0x58
testing.tRunner(0x2100a16500, 0x63daa8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1155 [chan receive]:
testing.(*T).Parallel(0x21010d0600)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21010d0600)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testHeadResponses(0x21010d0600, 0xf95db9dc00)
    /root/riscv-go/src/net/http/serve_test.go:1388 +0x38
net/http_test.TestHeadResponses_h1(0x21010d0600)
    /root/riscv-go/src/net/http/serve_test.go:1384 +0x3c
testing.tRunner(0x21010d0600, 0x63dbe0)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 436 [chan receive]:
testing.(*T).Parallel(0x2100a16800)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100a16800)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x63ea20, 0x21007e9a30, 0x21007e1980, 0x0, 0x0, 0x0, 0x0, 0x2100a16800)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.h12requestContentLength(0x2100a16800, 0x63da90, 0xffffffffffffffff)
    /root/riscv-go/src/net/http/clientserver_test.go:515 +0x128
net/http_test.TestH12_RequestContentLength_Unknown(0x2100a16800)
    /root/riscv-go/src/net/http/clientserver_test.go:498 +0x48
testing.tRunner(0x2100a16800, 0x63da98)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 435 [chan receive]:
testing.(*T).Parallel(0x2100a16700)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100a16700)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x63ea20, 0x21007e9a10, 0x21007e1960, 0x0, 0x0, 0x0, 0x0, 0x2100a16700)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.h12requestContentLength(0x2100a16700, 0x63da80, 0x0)
    /root/riscv-go/src/net/http/clientserver_test.go:515 +0x128
net/http_test.TestH12_RequestContentLength_Known_Zero(0x2100a16700)
    /root/riscv-go/src/net/http/clientserver_test.go:494 +0x48
testing.tRunner(0x2100a16700, 0x63da88)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1198 [select]:
net/http.(*persistConn).roundTrip(0x210109b200, 0x2101085050, 0x0, 0x0, 0x0)
    /root/riscv-go/src/net/http/transport.go:2174 +0x49c
net/http.(*Transport).roundTrip(0x210109aea0, 0x2101083900, 0x0, 0x2100000001, 0x4)
    /root/riscv-go/src/net/http/transport.go:481 +0xaf4
net/http.(*Transport).RoundTrip(0x210109aea0, 0x2101083900, 0x210109aea0, 0x0, 0x0)
    /root/riscv-go/src/net/http/roundtrip.go:17 +0x3c
net/http.send(0x2101083900, 0x6dc400, 0x210109aea0, 0x0, 0x0, 0x0, 0x0, 0x21005f8800, 0x2101084f30, 0x1)
    /root/riscv-go/src/net/http/client.go:250 +0x268
net/http.(*Client).send(0x2101084e10, 0x2101083900, 0x0, 0x0, 0x0, 0x21005f8800, 0x0, 0x1, 0x1555559460)
    /root/riscv-go/src/net/http/client.go:174 +0x118
net/http.(*Client).do(0x2101084e10, 0x2101083900, 0x0, 0x0, 0x0)
    /root/riscv-go/src/net/http/client.go:641 +0x2bc
net/http.(*Client).Do(...)
    /root/riscv-go/src/net/http/client.go:509
net/http.(*Client).Get(0x2101084e10, 0x2100cd9c40, 0x16, 0x2101083800, 0x21012d0150, 0x0)
    /root/riscv-go/src/net/http/client.go:398 +0xb4
net/http_test.testHandlerPanic(0x2101083800, 0x130000, 0x63e480, 0x568b00, 0x6d1180)
    /root/riscv-go/src/net/http/serve_test.go:2792 +0x3d0
net/http_test.TestTimeoutHandlerPanicRecovery(0x2101083800)
    /root/riscv-go/src/net/http/serve_test.go:2559 +0x64
testing.tRunner(0x2101083800, 0x63e488)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 650 [chan receive]:
testing.(*T).Parallel(0x2100dc2700)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100dc2700)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testTransportGCRequest(0x2100dc2700, 0xf9004d0100)
    /root/riscv-go/src/net/http/clientserver_test.go:1049 +0x38
net/http_test.TestTransportGCRequest_Body_h1(0x2100dc2700)
    /root/riscv-go/src/net/http/clientserver_test.go:1044 +0x44
testing.tRunner(0x2100dc2700, 0x63e6e8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1188 [chan receive]:
testing.(*T).Parallel(0x2101082e00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2101082e00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestRequestBodyReadErrorClosesConnection(0x2101082e00)
    /root/riscv-go/src/net/http/serve_test.go:2110 +0x38
testing.tRunner(0x2101082e00, 0x63df78)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 651 [chan receive]:
testing.(*T).Parallel(0x2100dc2800)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100dc2800)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testTransportGCRequest(0x2100dc2800, 0xf9006b0101)
    /root/riscv-go/src/net/http/clientserver_test.go:1049 +0x38
net/http_test.TestTransportGCRequest_Body_h2(0x2100dc2800)
    /root/riscv-go/src/net/http/clientserver_test.go:1045 +0x40
testing.tRunner(0x2100dc2800, 0x63e6f0)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1194 [chan receive]:
testing.(*T).Parallel(0x2101083400)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2101083400)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestTimeoutHandlerRaceHeader(0x2101083400)
    /root/riscv-go/src/net/http/serve_test.go:2411 +0x34
testing.tRunner(0x2101083400, 0x63e4c8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1195 [chan receive]:
testing.(*T).Parallel(0x2101083500)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2101083500)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestTimeoutHandlerRaceHeaderTimeout(0x2101083500)
    /root/riscv-go/src/net/http/serve_test.go:2449 +0x38
testing.tRunner(0x2101083500, 0x63e4c0)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 652 [chan receive]:
testing.(*T).Parallel(0x2100dc2900)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100dc2900)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testTransportGCRequest(0x2100dc2900, 0xf900760000)
    /root/riscv-go/src/net/http/clientserver_test.go:1049 +0x38
net/http_test.TestTransportGCRequest_NoBody_h1(0x2100dc2900)
    /root/riscv-go/src/net/http/clientserver_test.go:1046 +0x40
testing.tRunner(0x2100dc2900, 0x63e6f8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 653 [chan receive]:
testing.(*T).Parallel(0x2100dc2a00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100dc2a00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testTransportGCRequest(0x2100dc2a00, 0xf9007c0001)
    /root/riscv-go/src/net/http/clientserver_test.go:1049 +0x38
net/http_test.TestTransportGCRequest_NoBody_h2(0x2100dc2a00)
    /root/riscv-go/src/net/http/clientserver_test.go:1047 +0x44
testing.tRunner(0x2100dc2a00, 0x63e700)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 654 [chan receive]:
testing.(*T).Parallel(0x2100dc2b00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100dc2b00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testTransportRejectsInvalidHeaders(0x2100dc2b00, 0xf900825000)
    /root/riscv-go/src/net/http/clientserver_test.go:1096 +0x38
net/http_test.TestTransportRejectsInvalidHeaders_h1(0x2100dc2b00)
    /root/riscv-go/src/net/http/clientserver_test.go:1090 +0x3c
testing.tRunner(0x2100dc2b00, 0x63e878)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 655 [chan receive]:
testing.(*T).Parallel(0x2100dc2c00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100dc2c00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testTransportRejectsInvalidHeaders(0x2100dc2c00, 0xf90087b701)
    /root/riscv-go/src/net/http/clientserver_test.go:1096 +0x38
net/http_test.TestTransportRejectsInvalidHeaders_h2(0x2100dc2c00)
    /root/riscv-go/src/net/http/clientserver_test.go:1093 +0x3c
testing.tRunner(0x2100dc2c00, 0x63e880)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 656 [chan receive]:
testing.(*T).Parallel(0x2100dc2d00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100dc2d00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testInterruptWithPanic(0x2100dc2d00, 0x5cd4c600, 0x568b00, 0x6d1e60)
    /root/riscv-go/src/net/http/clientserver_test.go:1158 +0x38
net/http_test.TestInterruptWithPanic_h1(0x2100dc2d00)
    /root/riscv-go/src/net/http/clientserver_test.go:1147 +0x54
testing.tRunner(0x2100dc2d00, 0x63dcf0)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 721 [chan receive]:
testing.(*T).Parallel(0x2100dc2e00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100dc2e00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testInterruptWithPanic(0x2100dc2e00, 0x5cd4c601, 0x568b00, 0x6d1ea0)
    /root/riscv-go/src/net/http/clientserver_test.go:1158 +0x38
net/http_test.TestInterruptWithPanic_h2(0x2100dc2e00)
    /root/riscv-go/src/net/http/clientserver_test.go:1148 +0x54
testing.tRunner(0x2100dc2e00, 0x63dcf8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 722 [chan receive]:
testing.(*T).Parallel(0x2100dc2f00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100dc2f00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testInterruptWithPanic(0x2100dc2f00, 0x5cd4c600, 0x0, 0x0)
    /root/riscv-go/src/net/http/clientserver_test.go:1158 +0x38
net/http_test.TestInterruptWithPanic_nil_h1(0x2100dc2f00)
    /root/riscv-go/src/net/http/clientserver_test.go:1149 +0x4c
testing.tRunner(0x2100dc2f00, 0x63dd00)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 723 [chan receive]:
testing.(*T).Parallel(0x2100dc3000)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100dc3000)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testInterruptWithPanic(0x2100dc3000, 0x5cd4c601, 0x0, 0x0)
    /root/riscv-go/src/net/http/clientserver_test.go:1158 +0x38
net/http_test.TestInterruptWithPanic_nil_h2(0x2100dc3000)
    /root/riscv-go/src/net/http/clientserver_test.go:1150 +0x4c
testing.tRunner(0x2100dc3000, 0x63dd08)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 724 [chan receive]:
testing.(*T).Parallel(0x2100dc3100)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100dc3100)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testInterruptWithPanic(0x2100dc3100, 0x5cd4c600, 0x589480, 0x21001c89c0)
    /root/riscv-go/src/net/http/clientserver_test.go:1158 +0x38
net/http_test.TestInterruptWithPanic_ErrAbortHandler_h1(0x2100dc3100)
    /root/riscv-go/src/net/http/clientserver_test.go:1152 +0x68
testing.tRunner(0x2100dc3100, 0x63dce0)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 725 [chan receive]:
testing.(*T).Parallel(0x2100dc3200)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100dc3200)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testInterruptWithPanic(0x2100dc3200, 0x5cd4c601, 0x589480, 0x21001c89c0)
    /root/riscv-go/src/net/http/clientserver_test.go:1158 +0x38
net/http_test.TestInterruptWithPanic_ErrAbortHandler_h2(0x2100dc3200)
    /root/riscv-go/src/net/http/clientserver_test.go:1155 +0x68
testing.tRunner(0x2100dc3200, 0x63dce8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 726 [chan receive]:
testing.(*T).Parallel(0x2100dc3300)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100dc3300)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x63d9c0, 0x0, 0x0, 0x2100b53f80, 0x0, 0x0, 0x0, 0x2100dc3300)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.TestH12_AutoGzipWithDumpResponse(0x2100dc3300)
    /root/riscv-go/src/net/http/clientserver_test.go:1256 +0xcc
testing.tRunner(0x2100dc3300, 0x63d9c8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 727 [chan receive]:
testing.(*T).Parallel(0x2100dc3400)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100dc3400)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testCloseIdleConnections(0x2100dc3400, 0xf900f5ab00)
    /root/riscv-go/src/net/http/clientserver_test.go:1263 +0x34
net/http_test.TestCloseIdleConnections_h1(0x2100dc3400)
    /root/riscv-go/src/net/http/clientserver_test.go:1260 +0x3c
testing.tRunner(0x2100dc3400, 0x63d848)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 728 [chan receive]:
testing.(*T).Parallel(0x2100dc3500)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100dc3500)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testCloseIdleConnections(0x2100dc3500, 0xf900fe5e01)
    /root/riscv-go/src/net/http/clientserver_test.go:1263 +0x34
net/http_test.TestCloseIdleConnections_h2(0x2100dc3500)
    /root/riscv-go/src/net/http/clientserver_test.go:1261 +0x3c
testing.tRunner(0x2100dc3500, 0x63d850)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 801 [chan receive]:
testing.(*T).Parallel(0x2100ebaa00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100ebaa00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testWriteHeaderAfterWrite(0x2100ebaa00, 0xf9129b0000)
    /root/riscv-go/src/net/http/clientserver_test.go:1436 +0x38
net/http_test.TestWriteHeaderNoCodeCheck_h1(0x2100ebaa00)
    /root/riscv-go/src/net/http/clientserver_test.go:1432 +0x40
testing.tRunner(0x2100ebaa00, 0x63e990)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1112 [chan receive]:
testing.(*T).Parallel(0x2101137d00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2101137d00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestHostHandlers(0x2101137d00)
    /root/riscv-go/src/net/http/serve_test.go:246 +0x38
testing.tRunner(0x2101137d00, 0x63dca8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1157 [chan receive]:
testing.(*T).Parallel(0x21010d0800)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21010d0800)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestTLSHandshakeTimeout(0x21010d0800)
    /root/riscv-go/src/net/http/serve_test.go:1426 +0x38
testing.tRunner(0x21010d0800, 0x63e438)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1144 [runnable]:
context.(*cancelCtx).Done(0x21011ba700, 0x0)
    /root/riscv-go/src/context/context.go:327 +0xa8
context.propagateCancel(0x6e74e0, 0x21011ba700, 0x6df0a0, 0x2101157560)
    /root/riscv-go/src/context/context.go:242 +0x34
context.WithDeadline(0x6e74e0, 0x21011ba700, 0xbf2d4f9b01d3fa0c, 0x1b3aefc85, 0xa4ae80, 0x0, 0x0, 0x0)
    /root/riscv-go/src/context/context.go:392 +0x164
context.WithTimeout(0x6e74e0, 0x21011ba700, 0x3b9aca00, 0xa54cc, 0xa4a4c8, 0x6)
    /root/riscv-go/src/context/context.go:451 +0x74
net/http.(*timeoutHandler).ServeHTTP(0x2100b1db00, 0x6e6860, 0x2100e1bdc0, 0x2101213a00)
    /root/riscv-go/src/net/http/server.go:3172 +0x79c
net/http.serverHandler.ServeHTTP(0x2100d07450, 0x6e6860, 0x2100e1bdc0, 0x2101213a00)
    /root/riscv-go/src/net/http/server.go:2774 +0xac
net/http.(*conn).serve(0x21013060a0, 0x6e74e0, 0x21011ba680)
    /root/riscv-go/src/net/http/server.go:1878 +0xb50
created by net/http.(*Server).Serve
    /root/riscv-go/src/net/http/server.go:2884 +0x368

goroutine 803 [chan receive]:
testing.(*T).Parallel(0x2100ebac00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100ebac00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testWriteHeaderAfterWrite(0x2100ebac00, 0xf912a60001)
    /root/riscv-go/src/net/http/clientserver_test.go:1436 +0x38
net/http_test.TestWriteHeaderNoCodeCheck_h2(0x2100ebac00)
    /root/riscv-go/src/net/http/clientserver_test.go:1434 +0x44
testing.tRunner(0x2100ebac00, 0x63e998)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 804 [chan receive]:
testing.(*T).Parallel(0x2100ebad00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100ebad00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestBidiStreamReverseProxy(0x2100ebad00)
    /root/riscv-go/src/net/http/clientserver_test.go:1487 +0x38
testing.tRunner(0x2100ebad00, 0x63d678)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 805 [chan receive]:
testing.(*T).Parallel(0x2100ebae00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100ebae00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.h12Compare.run(0x63dac0, 0x63dac8, 0x0, 0x2100eb95a0, 0x0, 0x0, 0x0, 0x2100ebae00)
    /root/riscv-go/src/net/http/clientserver_test.go:195 +0x38
net/http_test.TestH12_WebSocketUpgrade(0x2100ebae00)
    /root/riscv-go/src/net/http/clientserver_test.go:1569 +0xd8
testing.tRunner(0x2100ebae00, 0x63dad0)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 806 [chan receive]:
testing.(*T).Parallel(0x2100ebaf00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2100ebaf00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestServeFile(0x2100ebaf00)
    /root/riscv-go/src/net/http/fs_test.go:71 +0x38
testing.tRunner(0x2100ebaf00, 0x63e078)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1029 [chan receive]:
testing.(*T).Parallel(0x2101023f00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2101023f00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestLinuxSendfile(0x2101023f00)
    /root/riscv-go/src/net/http/fs_test.go:1094 +0x38
testing.tRunner(0x2101023f00, 0x63dda8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1145 [runnable]:
net/http.(*connReader).backgroundRead(0x2101133380)
    /root/riscv-go/src/net/http/server.go:676
created by net/http.(*connReader).startBackgroundRead
    /root/riscv-go/src/net/http/server.go:673 +0xf0

goroutine 1111 [chan receive]:
testing.(*T).Parallel(0x2101137c00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.TestConsumingBodyOnNextConn(0x2101137c00)
    /root/riscv-go/src/net/http/serve_test.go:164 +0x38
testing.tRunner(0x2101137c00, 0x63d8d8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1005 [chan receive]:
testing.(*T).Parallel(0x2101082800)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2101082800)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testAutomaticHTTP2_Serve(0x2101082800, 0x21012dc180, 0xf965f75400)
    /root/riscv-go/src/net/http/serve_test.go:1599 +0x34
net/http_test.TestAutomaticHTTP2_Serve_NonH2TLSConfig(0x2101082800)
    /root/riscv-go/src/net/http/serve_test.go:1591 +0x54
testing.tRunner(0x2101082800, 0x63d640)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1192 [chan receive]:
testing.(*T).Parallel(0x2101083200)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2101083200)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testTimeoutHandler(0x2101083200, 0xf97b510001)
    /root/riscv-go/src/net/http/serve_test.go:2310 +0x38
net/http_test.TestTimeoutHandler_h2(0x2101083200)
    /root/riscv-go/src/net/http/serve_test.go:2308 +0x3c
testing.tRunner(0x2101083200, 0x63e4f0)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1187 [chan receive]:
testing.(*T).Parallel(0x2101082d00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2101082d00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestHandlerBodyClose(0x2101082d00)
    /root/riscv-go/src/net/http/serve_test.go:2030 +0x38
testing.tRunner(0x2101082d00, 0x63db58)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1191 [chan receive]:
testing.(*T).Parallel(0x2101083100)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2101083100)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testTimeoutHandler(0x2101083100, 0xf97b4ade00)
    /root/riscv-go/src/net/http/serve_test.go:2310 +0x38
net/http_test.TestTimeoutHandler_h1(0x2101083100)
    /root/riscv-go/src/net/http/serve_test.go:2307 +0x3c
testing.tRunner(0x2101083100, 0x63e4e8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1156 [chan receive]:
testing.(*T).Parallel(0x21010d0700)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21010d0700)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testHeadResponses(0x21010d0700, 0xf95ecd3401)
    /root/riscv-go/src/net/http/serve_test.go:1388 +0x38
net/http_test.TestHeadResponses_h2(0x21010d0700)
    /root/riscv-go/src/net/http/serve_test.go:1385 +0x3c
testing.tRunner(0x21010d0700, 0x63dbe8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1193 [chan receive]:
testing.(*T).Parallel(0x2101083300)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2101083300)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestTimeoutHandlerRace(0x2101083300)
    /root/riscv-go/src/net/http/serve_test.go:2367 +0x34
testing.tRunner(0x2101083300, 0x63e4d0)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1058 [chan receive]:
testing.(*T).Parallel(0x210103a600)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x210103a600)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestNextProtoUpgrade(0x210103a600)
    /root/riscv-go/src/net/http/npn_test.go:22 +0x38
testing.tRunner(0x210103a600, 0x63de28)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1185 [chan receive]:
testing.(*T).Parallel(0x2101082b00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2101082b00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestServerUnreadRequestBodyLittle(0x2101082b00)
    /root/riscv-go/src/net/http/serve_test.go:1855 +0x38
testing.tRunner(0x2101082b00, 0x63e330)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1158 [chan receive]:
testing.(*T).Parallel(0x21010d0900)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21010d0900)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestTLSServer(0x21010d0900)
    /root/riscv-go/src/net/http/serve_test.go:1457 +0x38
testing.tRunner(0x21010d0900, 0x63e468)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1114 [chan receive]:
testing.(*T).Parallel(0x2101137f00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2101137f00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestServeMuxHandleFuncWithNilHandler(0x2101137f00)
    /root/riscv-go/src/net/http/serve_test.go:389 +0x34
testing.tRunner(0x2101137f00, 0x63e0a0)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1115 [chan receive]:
testing.(*T).Parallel(0x2101212000)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2101212000)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestServeMuxHandlerRedirects(0x2101212000)
    /root/riscv-go/src/net/http/serve_test.go:414 +0x38
testing.tRunner(0x2101212000, 0x63e0a8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1116 [chan receive]:
testing.(*T).Parallel(0x2101212100)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2101212100)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestMuxRedirectLeadingSlashes(0x2101212100)
    /root/riscv-go/src/net/http/serve_test.go:457 +0x38
testing.tRunner(0x2101212100, 0x63de00)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1117 [chan receive]:
testing.(*T).Parallel(0x2101212200)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2101212200)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestServeWithSlashRedirectKeepsQueryString(0x2101212200)
    /root/riscv-go/src/net/http/serve_test.go:486 +0x38
testing.tRunner(0x2101212200, 0x63e0e8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1118 [chan receive]:
testing.(*T).Parallel(0x2101212300)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2101212300)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestServeWithSlashRedirectForHostPatterns(0x2101212300)
    /root/riscv-go/src/net/http/serve_test.go:544 +0x38
testing.tRunner(0x2101212300, 0x63e0d0)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1119 [chan receive]:
testing.(*T).Parallel(0x2101212400)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2101212400)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestShouldRedirectConcurrency(0x2101212400)
    /root/riscv-go/src/net/http/serve_test.go:602 +0x34
testing.tRunner(0x2101212400, 0x63e390)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1120 [chan receive]:
testing.(*T).Parallel(0x2101212500)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2101212500)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestServerTimeouts(0x2101212500)
    /root/riscv-go/src/net/http/serve_test.go:656 +0x38
testing.tRunner(0x2101212500, 0x63e310)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1124 [chan receive]:
testing.(*T).Parallel(0x2101212900)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2101212900)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestOnlyWriteTimeout(0x2101212900)
    /root/riscv-go/src/net/http/serve_test.go:918 +0x38
testing.tRunner(0x2101212900, 0x63de80)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1125 [chan receive]:
testing.(*T).Parallel(0x2101212a00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2101212a00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestIdentityResponse(0x2101212a00)
    /root/riscv-go/src/net/http/serve_test.go:992 +0x38
testing.tRunner(0x2101212a00, 0x63dcc0)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1126 [chan receive]:
testing.(*T).Parallel(0x2101212b00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2101212b00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testTCPConnectionCloses(0x2101212b00, 0x615c57, 0x12, 0x6dd000, 0x63e080)
    /root/riscv-go/src/net/http/serve_test.go:1071 +0x38
net/http_test.TestServeHTTP10Close(0x2101212b00)
    /root/riscv-go/src/net/http/serve_test.go:1142 +0x60
testing.tRunner(0x2101212b00, 0x63e088)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1127 [chan receive]:
testing.(*T).Parallel(0x2101212c00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2101212c00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testTCPConnectionCloses(0x2101212c00, 0x62df2c, 0x30, 0x6dd000, 0x63d6f0)
    /root/riscv-go/src/net/http/serve_test.go:1071 +0x38
net/http_test.TestClientCanClose(0x2101212c00)
    /root/riscv-go/src/net/http/serve_test.go:1149 +0x60
testing.tRunner(0x2101212c00, 0x63d6f8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1128 [chan receive]:
testing.(*T).Parallel(0x2101212d00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2101212d00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testTCPConnectionCloses(0x2101212d00, 0x62175d, 0x1f, 0x6dd000, 0x63dbd0)
    /root/riscv-go/src/net/http/serve_test.go:1071 +0x38
net/http_test.TestHandlersCanSetConnectionClose11(0x2101212d00)
    /root/riscv-go/src/net/http/serve_test.go:1157 +0x60
testing.tRunner(0x2101212d00, 0x63dbd8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1129 [chan receive]:
testing.(*T).Parallel(0x2101212e00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2101212e00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testTCPConnectionCloses(0x2101212e00, 0x62a9d7, 0x2a, 0x6dd000, 0x63dbc0)
    /root/riscv-go/src/net/http/serve_test.go:1071 +0x38
net/http_test.TestHandlersCanSetConnectionClose10(0x2101212e00)
    /root/riscv-go/src/net/http/serve_test.go:1163 +0x60
testing.tRunner(0x2101212e00, 0x63dbc8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1130 [chan receive]:
testing.(*T).Parallel(0x2101212f00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2101212f00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testTCPConnectionCloses(0x2101212f00, 0x61b089, 0x18, 0x6dd000, 0x63db20)
    /root/riscv-go/src/net/http/serve_test.go:1071 +0x38
net/http_test.TestHTTP2UpgradeClosesConnection(0x2101212f00)
    /root/riscv-go/src/net/http/serve_test.go:1169 +0x60
testing.tRunner(0x2101212f00, 0x63db28)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1131 [chan receive]:
testing.(*T).Parallel(0x2101213000)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2101213000)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testTCPConnectionStaysOpen(0x2101213000, 0x62a9d7, 0x2a, 0x6dd000, 0x63ea38)
    /root/riscv-go/src/net/http/serve_test.go:1115 +0x38
net/http_test.TestHTTP10KeepAlive204Response(0x2101213000)
    /root/riscv-go/src/net/http/serve_test.go:1180 +0x60
testing.tRunner(0x2101213000, 0x63db00)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1132 [chan receive]:
testing.(*T).Parallel(0x2101213100)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2101213100)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testTCPConnectionStaysOpen(0x2101213100, 0x61f5f8, 0x1d, 0x6dd000, 0x63ea38)
    /root/riscv-go/src/net/http/serve_test.go:1115 +0x38
net/http_test.TestHTTP11KeepAlive204Response(0x2101213100)
    /root/riscv-go/src/net/http/serve_test.go:1184 +0x60
testing.tRunner(0x2101213100, 0x63db10)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1133 [chan receive]:
testing.(*T).Parallel(0x2101213200)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2101213200)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testTCPConnectionStaysOpen(0x2101213200, 0x635f51, 0x5c, 0x6dd000, 0x63ea40)
    /root/riscv-go/src/net/http/serve_test.go:1115 +0x38
net/http_test.TestHTTP10KeepAlive304Response(0x2101213200)
    /root/riscv-go/src/net/http/serve_test.go:1188 +0x60
testing.tRunner(0x2101213200, 0x63db08)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1134 [chan receive]:
testing.(*T).Parallel(0x2101213300)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2101213300)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestKeepAliveFinalChunkWithEOF(0x2101213300)
    /root/riscv-go/src/net/http/serve_test.go:1195 +0x38
testing.tRunner(0x2101213300, 0x63dd90)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1135 [chan receive]:
testing.(*T).Parallel(0x2101213400)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2101213400)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testSetsRemoteAddr(0x2101213400, 0xf9574bd100)
    /root/riscv-go/src/net/http/serve_test.go:1228 +0x38
net/http_test.TestSetsRemoteAddr_h1(0x2101213400)
    /root/riscv-go/src/net/http/serve_test.go:1224 +0x3c
testing.tRunner(0x2101213400, 0x63e370)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1136 [chan receive]:
testing.(*T).Parallel(0x2101213500)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2101213500)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testSetsRemoteAddr(0x2101213500, 0xf957548301)
    /root/riscv-go/src/net/http/serve_test.go:1228 +0x38
net/http_test.TestSetsRemoteAddr_h2(0x2101213500)
    /root/riscv-go/src/net/http/serve_test.go:1225 +0x3c
testing.tRunner(0x2101213500, 0x63e378)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1168 [IO wait]:
internal/poll.runtime_pollWait(0x15577cdab8, 0x72, 0xffffffffffffffff)
    /root/riscv-go/src/runtime/netpoll.go:182 +0x64
internal/poll.(*pollDesc).wait(0x2101020b98, 0x72, 0x1000, 0x1000, 0xffffffffffffffff)
    /root/riscv-go/src/internal/poll/fd_poll_runtime.go:87 +0xd8
internal/poll.(*pollDesc).waitRead(...)
    /root/riscv-go/src/internal/poll/fd_poll_runtime.go:92
internal/poll.(*FD).Read(0x2101020b80, 0x21013c8000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
    /root/riscv-go/src/internal/poll/fd_unix.go:169 +0x1f8
net.(*netFD).Read(0x2101020b80, 0x21013c8000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
    /root/riscv-go/src/net/fd_unix.go:202 +0x50
net.(*conn).Read(0x2100294cb0, 0x21013c8000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
    /root/riscv-go/src/net/net.go:177 +0x74
net/http.(*persistConn).Read(0x210109b200, 0x21013c8000, 0x1000, 0x1000, 0x0, 0x3d3484, 0x21001ca3b0)
    /root/riscv-go/src/net/http/transport.go:1524 +0x194
bufio.(*Reader).fill(0x2101348540)
    /root/riscv-go/src/bufio/bufio.go:100 +0x178
bufio.(*Reader).Peek(0x2101348540, 0x1, 0x21012fb3e0, 0x21013d1d90, 0x0, 0x0, 0x0)
    /root/riscv-go/src/bufio/bufio.go:138 +0x54
net/http.(*persistConn).readLoop(0x210109b200)
    /root/riscv-go/src/net/http/transport.go:1677 +0x1b8
created by net/http.(*Transport).dialConn
    /root/riscv-go/src/net/http/transport.go:1357 +0xe80

goroutine 1186 [chan receive]:
testing.(*T).Parallel(0x2101082c00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2101082c00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestServerUnreadRequestBodyLarge(0x2101082c00)
    /root/riscv-go/src/net/http/serve_test.go:1896 +0x38
testing.tRunner(0x2101082c00, 0x63e328)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1006 [chan receive]:
testing.(*T).Parallel(0x2101082900)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2101082900)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.testAutomaticHTTP2_Serve(0x2101082900, 0x21012dc300, 0x27962701)
    /root/riscv-go/src/net/http/serve_test.go:1599 +0x34
net/http_test.TestAutomaticHTTP2_Serve_H2TLSConfig(0x2101082900)
    /root/riscv-go/src/net/http/serve_test.go:1595 +0xe4
testing.tRunner(0x2101082900, 0x63d630)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1189 [chan receive]:
testing.(*T).Parallel(0x2101082f00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2101082f00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestInvalidTrailerClosesConnection(0x2101082f00)
    /root/riscv-go/src/net/http/serve_test.go:2141 +0x38
testing.tRunner(0x2101082f00, 0x63dd10)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1003 [chan receive]:
testing.(*T).Parallel(0x2101082600)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2101082600)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestTLSServerRejectHTTPRequests(0x2101082600)
    /root/riscv-go/src/net/http/serve_test.go:1561 +0x38
testing.tRunner(0x2101082600, 0x63e460)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1162 [chan receive]:
testing.(*T).Parallel(0x21010d0b00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x21010d0b00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestAutomaticHTTP2_Serve_WithTLSConfig(0x21010d0b00)
    /root/riscv-go/src/net/http/serve_test.go:1615 +0x34
testing.tRunner(0x21010d0b00, 0x63d648)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1008 [chan receive]:
testing.(*T).Parallel(0x2101082a00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8
net/http_test.setParallel(0x2101082a00)
    /root/riscv-go/src/net/http/main_test.go:94 +0x54
net/http_test.TestServerExpect(0x2101082a00)
    /root/riscv-go/src/net/http/serve_test.go:1761 +0x38
testing.tRunner(0x2101082a00, 0x63e1e0)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1217 [select]:
net/http.(*persistConn).writeLoop(0x210109b200)
    /root/riscv-go/src/net/http/transport.go:1958 +0xd8
created by net/http.(*Transport).dialConn
    /root/riscv-go/src/net/http/transport.go:1358 +0xea8
FAIL    net/http    7.810s
ok      net/http/cgi    5.351s
ok      net/http/cookiejar  (cached)
ok      net/http/fcgi   (cached)
ok      net/http/httptest   (cached)
ok      net/http/httptrace  (cached)
ok      net/http/httputil   (cached)
ok      net/http/internal   (cached)
ok      net/http/pprof  (cached)
ok      net/internal/socktest   (cached)
ok      net/mail    (cached)
ok      net/rpc (cached)
ok      net/rpc/jsonrpc (cached)
ok      net/smtp    (cached)
ok      net/textproto   (cached)
ok      net/url (cached)
ok      os  4.240s
ok      os/exec 5.261s
ok      os/signal   (cached)
ok      os/user (cached)
ok      path    (cached)
ok      path/filepath   (cached)
ok      plugin  (cached)
ok      reflect (cached)
ok      regexp  (cached)
ok      regexp/syntax   (cached)
--- FAIL: TestSelectStackAdjust (1.23s)
    chan_test.go:723: failed to trigger concurrent GC
--- FAIL: TestSignalIgnoreSIGTRAP (9.63s)
    crash_test.go:95: testprognet SignalIgnoreSIGTRAP exit status: exit status 2
    crash_unix_test.go:268: want OK
        , got fatal error: cas1
        runtime: panic before malloc heap initialized

        runtime stack:
        runtime.throw(0x176e97, 0x4)
            /root/riscv-go/src/runtime/panic.go:617 +0x88 fp=0x3ffffb5050 sp=0x3ffffb5028 pc=0x4ac30
        runtime.check()
            /root/riscv-go/src/runtime/runtime1.go:215 +0x57c fp=0x3ffffb5090 sp=0x3ffffb5050 pc=0x5f71c
        runtime.rt0_go(0x3ffffb50b8, 0xdd580, 0x2, 0x3ffffb53a8, 0x3ffffb53cf, 0x0, 0x3ffffb53e3, 0x3ffffb53f3, 0x3ffffb540a, 0x3ffffb5420, ...)
            /root/riscv-go/src/runtime/asm_riscv64.s:52 +0x90 fp=0x3ffffb5098 sp=0x3ffffb5090 pc=0x82c58

unexpected fault address 0x8001b0f68
fatal error: fault
[signal SIGSEGV: segmentation violation code=0x1 addr=0x8001b0f68 pc=0x2379c]

goroutine 22629 [running]:
runtime.throw(0x385f44, 0x5)
    /root/riscv-go/src/runtime/panic.go:617 +0x88 fp=0x21080dcd18 sp=0x21080dccf0 pc=0x4f550
runtime.sigpanic()
    /root/riscv-go/src/runtime/signal_unix.go:397 +0x504 fp=0x21080dcd48 sp=0x21080dcd18 pc=0x6d41c
runtime.evacuate(0x333020, 0x21080ddee8, 0x1b)
    /root/riscv-go/src/runtime/map.go:1173 +0x224 fp=0x21080dce18 sp=0x21080dcd50 pc=0x2379c
runtime.growWork(0x333020, 0x21080ddee8, 0x1b)
    /root/riscv-go/src/runtime/map.go:1115 +0xa8 fp=0x21080dce38 sp=0x21080dce18 pc=0x23520
runtime.mapassign(0x333020, 0x21080ddee8, 0x21080dd6e8, 0x21003f5000)
    /root/riscv-go/src/runtime/map.go:606 +0x818 fp=0x21080dceb8 sp=0x21080dce38 pc=0x218c0
runtime_test.TestGcMapIndirection(0x210035a000)
    /root/riscv-go/src/runtime/gc_test.go:63 +0x190 fp=0x21080ddfa8 sp=0x21080dceb8 pc=0x285610
testing.tRunner(0x210035a000, 0x39b948)
    /root/riscv-go/src/testing/testing.go:865 +0xf4 fp=0x21080ddfc8 sp=0x21080ddfa8 pc=0x140d04
runtime.goexit()
    /root/riscv-go/src/runtime/asm_riscv64.s:467 +0x4 fp=0x21080ddfc8 sp=0x21080ddfc8 pc=0x9067c
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 1 [chan receive, locked to thread]:
runtime.gopark(0x39ab00, 0x2100192358, 0x122000019170d, 0x3)
    /root/riscv-go/src/runtime/proc.go:301 +0x188 fp=0x2100057bb0 sp=0x2100057b88 pc=0x51ce0
runtime.goparkunlock(...)
    /root/riscv-go/src/runtime/proc.go:307
runtime.chanrecv(0x2100192300, 0x2100057cbf, 0x2100000101, 0x141118)
    /root/riscv-go/src/runtime/chan.go:524 +0x374 fp=0x2100057c38 sp=0x2100057bb0 pc=0x15bb4
runtime.chanrecv1(0x2100192300, 0x2100057cbf)
    /root/riscv-go/src/runtime/chan.go:406 +0x2c fp=0x2100057c60 sp=0x2100057c38 pc=0x157f4
testing.(*T).Run(0x210035a000, 0x38bfaa, 0x14, 0x39b948, 0x140c01)
    /root/riscv-go/src/testing/testing.go:917 +0x3c0 fp=0x2100057d08 sp=0x2100057c60 pc=0x141140
testing.runTests.func1(0x2100212100)
    /root/riscv-go/src/testing/testing.go:1157 +0x88 fp=0x2100057d50 sp=0x2100057d08 pc=0x1454e0
testing.tRunner(0x2100212100, 0x2100057e08)
    /root/riscv-go/src/testing/testing.go:865 +0xf4 fp=0x2100057d70 sp=0x2100057d50 pc=0x140d04
testing.runTests(0x210019e220, 0x5dce40, 0xef, 0xef, 0x0)
    /root/riscv-go/src/testing/testing.go:1155 +0x2e8 fp=0x2100057e28 sp=0x2100057d70 pc=0x142630
testing.(*M).Run(0x21001f6200, 0x0)
    /root/riscv-go/src/testing/testing.go:1072 +0x194 fp=0x2100057ef0 sp=0x2100057e28 pc=0x1415fc
runtime_test.TestMain(0x21001f6200)
    /root/riscv-go/src/runtime/crash_test.go:28 +0x34 fp=0x2100057f38 sp=0x2100057ef0 pc=0x27b04c
main.main()
    _testmain.go:980 +0x190 fp=0x2100057f98 sp=0x2100057f38 pc=0x2e2480
runtime.main()
    /root/riscv-go/src/runtime/proc.go:200 +0x290 fp=0x2100057fd8 sp=0x2100057f98 pc=0x516d0
runtime.goexit()
    /root/riscv-go/src/runtime/asm_riscv64.s:467 +0x4 fp=0x2100057fd8 sp=0x2100057fd8 pc=0x9067c

goroutine 2 [force gc (idle)]:
runtime.gopark(0x39ab00, 0x5df380, 0x1410, 0x1)
    /root/riscv-go/src/runtime/proc.go:301 +0x188 fp=0x2100189fb0 sp=0x2100189f88 pc=0x51ce0
runtime.goparkunlock(...)
    /root/riscv-go/src/runtime/proc.go:307
runtime.forcegchelper()
    /root/riscv-go/src/runtime/proc.go:250 +0x118 fp=0x2100189fd8 sp=0x2100189fb0 pc=0x51ab8
runtime.goexit()
    /root/riscv-go/src/runtime/asm_riscv64.s:467 +0x4 fp=0x2100189fd8 sp=0x2100189fd8 pc=0x9067c
created by runtime.init.4
    /root/riscv-go/src/runtime/proc.go:239 +0x40

goroutine 3 [GC sweep wait]:
runtime.gopark(0x39ab00, 0x5df780, 0x140c, 0x1)
    /root/riscv-go/src/runtime/proc.go:301 +0x188 fp=0x2100191fa8 sp=0x2100191f80 pc=0x51ce0
runtime.goparkunlock(...)
    /root/riscv-go/src/runtime/proc.go:307
runtime.bgsweep(0x21000ea000)
    /root/riscv-go/src/runtime/mgcsweep.go:89 +0x1f4 fp=0x2100191fd0 sp=0x2100191fa8 pc=0x3e5f4
runtime.goexit()
    /root/riscv-go/src/runtime/asm_riscv64.s:467 +0x4 fp=0x2100191fd0 sp=0x2100191fd0 pc=0x9067c
created by runtime.gcenable
    /root/riscv-go/src/runtime/mgc.go:208 +0x68

goroutine 17 [finalizer wait]:
runtime.gopark(0x39ab00, 0x5f9290, 0x210001140f, 0x1)
    /root/riscv-go/src/runtime/proc.go:301 +0x188 fp=0x21001cbf50 sp=0x21001cbf28 pc=0x51ce0
runtime.goparkunlock(...)
    /root/riscv-go/src/runtime/proc.go:307
runtime.runfinq()
    /root/riscv-go/src/runtime/mfinal.go:175 +0xe8 fp=0x21001cbfd8 sp=0x21001cbf50 pc=0x313e0
runtime.goexit()
    /root/riscv-go/src/runtime/asm_riscv64.s:467 +0x4 fp=0x21001cbfd8 sp=0x21001cbfd8 pc=0x9067c
created by runtime.createfing
    /root/riscv-go/src/runtime/mfinal.go:156 +0x98

goroutine 18 [syscall]:
runtime.notetsleepg(0x5e1360, 0x7cb7cce6cd, 0x0)
    /root/riscv-go/src/runtime/lock_futex.go:227 +0x44 fp=0x210026ff60 sp=0x210026ff38 pc=0x1ca44
runtime.timerproc(0x5e1340)
    /root/riscv-go/src/runtime/time.go:311 +0x3c8 fp=0x210026ffd0 sp=0x210026ff60 pc=0x7b088
runtime.goexit()
    /root/riscv-go/src/runtime/asm_riscv64.s:467 +0x4 fp=0x210026ffd0 sp=0x210026ffd0 pc=0x9067c
created by runtime.(*timersBucket).addtimerLocked
    /root/riscv-go/src/runtime/time.go:169 +0x180

goroutine 22560 [chan receive]:
runtime.gopark(0x39ab00, 0x2100192298, 0x21000e170d, 0x3)
    /root/riscv-go/src/runtime/proc.go:301 +0x188 fp=0x21080fbde8 sp=0x21080fbdc0 pc=0x51ce0
runtime.goparkunlock(...)
    /root/riscv-go/src/runtime/proc.go:307
runtime.chanrecv(0x2100192240, 0x0, 0x140901, 0x210000c101)
    /root/riscv-go/src/runtime/chan.go:524 +0x374 fp=0x21080fbe70 sp=0x21080fbde8 pc=0x15bb4
runtime.chanrecv1(0x2100192240, 0x0)
    /root/riscv-go/src/runtime/chan.go:406 +0x2c fp=0x21080fbe98 sp=0x21080fbe70 pc=0x157f4
testing.(*T).Parallel(0x21080c4f00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8 fp=0x21080fbf18 sp=0x21080fbe98 pc=0x1409e0
runtime_test.TestNetpollDeadlock(0x21080c4f00)
    /root/riscv-go/src/runtime/crash_test.go:405 +0x38 fp=0x21080fbfa8 sp=0x21080fbf18 pc=0x27e268
testing.tRunner(0x21080c4f00, 0x39bc00)
    /root/riscv-go/src/testing/testing.go:865 +0xf4 fp=0x21080fbfc8 sp=0x21080fbfa8 pc=0x140d04
runtime.goexit()
    /root/riscv-go/src/runtime/asm_riscv64.s:467 +0x4 fp=0x21080fbfc8 sp=0x21080fbfc8 pc=0x9067c
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 37 [timer goroutine (idle)]:
runtime.gopark(0x39ab00, 0x5e13a0, 0x1414, 0x1)
    /root/riscv-go/src/runtime/proc.go:301 +0x188 fp=0x21002f5f60 sp=0x21002f5f38 pc=0x51ce0
runtime.goparkunlock(...)
    /root/riscv-go/src/runtime/proc.go:307
runtime.timerproc(0x5e13a0)
    /root/riscv-go/src/runtime/time.go:303 +0x32c fp=0x21002f5fd0 sp=0x21002f5f60 pc=0x7afec
runtime.goexit()
    /root/riscv-go/src/runtime/asm_riscv64.s:467 +0x4 fp=0x21002f5fd0 sp=0x21002f5fd0 pc=0x9067c
created by runtime.(*timersBucket).addtimerLocked
    /root/riscv-go/src/runtime/time.go:169 +0x180

goroutine 5 [syscall]:
runtime.notetsleepg(0x5e1300, 0xdf842089f, 0x1414)
    /root/riscv-go/src/runtime/lock_futex.go:227 +0x44 fp=0x2100359f60 sp=0x2100359f38 pc=0x1ca44
runtime.timerproc(0x5e12e0)
    /root/riscv-go/src/runtime/time.go:311 +0x3c8 fp=0x2100359fd0 sp=0x2100359f60 pc=0x7b088
runtime.goexit()
    /root/riscv-go/src/runtime/asm_riscv64.s:467 +0x4 fp=0x2100359fd0 sp=0x2100359fd0 pc=0x9067c
created by runtime.(*timersBucket).addtimerLocked
    /root/riscv-go/src/runtime/time.go:169 +0x180

goroutine 51 [syscall]:
runtime.notetsleepg(0x5e1420, 0xdf78a1e81, 0x1414)
    /root/riscv-go/src/runtime/lock_futex.go:227 +0x44 fp=0x21003b3f60 sp=0x21003b3f38 pc=0x1ca44
runtime.timerproc(0x5e1400)
    /root/riscv-go/src/runtime/time.go:311 +0x3c8 fp=0x21003b3fd0 sp=0x21003b3f60 pc=0x7b088
runtime.goexit()
    /root/riscv-go/src/runtime/asm_riscv64.s:467 +0x4 fp=0x21003b3fd0 sp=0x21003b3fd0 pc=0x9067c
created by runtime.(*timersBucket).addtimerLocked
    /root/riscv-go/src/runtime/time.go:169 +0x180

goroutine 2422 [GC worker (idle)]:
runtime.gopark(0x39a950, 0x2100344060, 0xffff1417, 0x0)
    /root/riscv-go/src/runtime/proc.go:301 +0x188 fp=0x2100c59f50 sp=0x2100c59f28 pc=0x51ce0
runtime.gcBgMarkWorker(0x2100024500)
    /root/riscv-go/src/runtime/mgc.go:1836 +0x140 fp=0x2100c59fd0 sp=0x2100c59f50 pc=0x36570
runtime.goexit()
    /root/riscv-go/src/runtime/asm_riscv64.s:467 +0x4 fp=0x2100c59fd0 sp=0x2100c59fd0 pc=0x9067c
created by runtime.gcBgMarkStartWorkers
    /root/riscv-go/src/runtime/mgc.go:1784 +0xc0

goroutine 2452 [GC worker (idle)]:
runtime.gopark(0x39a950, 0x21001a6630, 0xffff1417, 0x0)
    /root/riscv-go/src/runtime/proc.go:301 +0x188 fp=0x2100bc9f50 sp=0x2100bc9f28 pc=0x51ce0
runtime.gcBgMarkWorker(0x2100028f00)
    /root/riscv-go/src/runtime/mgc.go:1836 +0x140 fp=0x2100bc9fd0 sp=0x2100bc9f50 pc=0x36570
runtime.goexit()
    /root/riscv-go/src/runtime/asm_riscv64.s:467 +0x4 fp=0x2100bc9fd0 sp=0x2100bc9fd0 pc=0x9067c
created by runtime.gcBgMarkStartWorkers
    /root/riscv-go/src/runtime/mgc.go:1784 +0xc0

goroutine 22564 [chan receive]:
runtime.gopark(0x39ab00, 0x2100192298, 0x21000e170d, 0x3)
    /root/riscv-go/src/runtime/proc.go:301 +0x188 fp=0x2108195d48 sp=0x2108195d20 pc=0x51ce0
runtime.goparkunlock(...)
    /root/riscv-go/src/runtime/proc.go:307
runtime.chanrecv(0x2100192240, 0x0, 0x140901, 0x2100b36301)
    /root/riscv-go/src/runtime/chan.go:524 +0x374 fp=0x2108195dd0 sp=0x2108195d48 pc=0x15bb4
runtime.chanrecv1(0x2100192240, 0x0)
    /root/riscv-go/src/runtime/chan.go:406 +0x2c fp=0x2108195df8 sp=0x2108195dd0 pc=0x157f4
testing.(*T).Parallel(0x210035ad00)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8 fp=0x2108195e78 sp=0x2108195df8 pc=0x1409e0
runtime_test.TestPanicTraceback(0x210035ad00)
    /root/riscv-go/src/runtime/crash_test.go:414 +0x38 fp=0x2108195fa8 sp=0x2108195e78 pc=0x27e458
testing.tRunner(0x210035ad00, 0x39bcf8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4 fp=0x2108195fc8 sp=0x2108195fa8 pc=0x140d04
runtime.goexit()
    /root/riscv-go/src/runtime/asm_riscv64.s:467 +0x4 fp=0x2108195fc8 sp=0x2108195fc8 pc=0x9067c
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 2381 [semacquire]:
runtime.gopark(0x39ab00, 0x5e2ba0, 0x21000e1911, 0x4)
    /root/riscv-go/src/runtime/proc.go:301 +0x188 fp=0x2100c51eb0 sp=0x2100c51e88 pc=0x51ce0
runtime.goparkunlock(...)
    /root/riscv-go/src/runtime/proc.go:307
runtime.semacquire1(0x5e00d4, 0xbfad8b04a7b6e800, 0x0)
    /root/riscv-go/src/runtime/sema.go:144 +0x244 fp=0x2100c51f00 sp=0x2100c51eb0 pc=0x68d54
runtime.semacquire(...)
    /root/riscv-go/src/runtime/sema.go:95
runtime.gcMarkDone()
    /root/riscv-go/src/runtime/mgc.go:1403 +0x4c fp=0x2100c51f50 sp=0x2100c51f00 pc=0x3515c
runtime.gcBgMarkWorker(0x2100022000)
    /root/riscv-go/src/runtime/mgc.go:1963 +0x3b0 fp=0x2100c51fd0 sp=0x2100c51f50 pc=0x367e0
runtime.goexit()
    /root/riscv-go/src/runtime/asm_riscv64.s:467 +0x4 fp=0x2100c51fd0 sp=0x2100c51fd0 pc=0x9067c
created by runtime.gcBgMarkStartWorkers
    /root/riscv-go/src/runtime/mgc.go:1784 +0xc0

goroutine 2497 [select]:
runtime.gopark(0x39ab50, 0x0, 0x1809, 0x1)
    /root/riscv-go/src/runtime/proc.go:301 +0x188 fp=0x21003a3da0 sp=0x21003a3d78 pc=0x51ce0
runtime.selectgo(0x21003a3f28, 0x21003a3ee8, 0x4, 0x2100192420, 0x2c5ff0)
    /root/riscv-go/src/runtime/select.go:313 +0xc80 fp=0x21003a3eb0 sp=0x21003a3da0 pc=0x679c8
runtime_test.TestSelectStackAdjust.func1(0x2100192600, 0x0)
    /root/riscv-go/src/runtime/chan_test.go:684 +0x120 fp=0x21003a3fc8 sp=0x21003a3eb0 pc=0x2c6188
runtime.goexit()
    /root/riscv-go/src/runtime/asm_riscv64.s:467 +0x4 fp=0x21003a3fc8 sp=0x21003a3fc8 pc=0x9067c
created by runtime_test.TestSelectStackAdjust
    /root/riscv-go/src/runtime/chan_test.go:705 +0x1d8

goroutine 2423 [running]:
    goroutine running on other thread; stack unavailable
created by runtime.gcBgMarkStartWorkers
    /root/riscv-go/src/runtime/mgc.go:1784 +0xc0

goroutine 22618 [chan receive]:
runtime.gopark(0x39ab00, 0x2100192298, 0x21000e170d, 0x3)
    /root/riscv-go/src/runtime/proc.go:301 +0x188 fp=0x21081f5a50 sp=0x21081f5a28 pc=0x51ce0
runtime.goparkunlock(...)
    /root/riscv-go/src/runtime/proc.go:307
runtime.chanrecv(0x2100192240, 0x0, 0x140901, 0x210819c101)
    /root/riscv-go/src/runtime/chan.go:524 +0x374 fp=0x21081f5ad8 sp=0x21081f5a50 pc=0x15bb4
runtime.chanrecv1(0x2100192240, 0x0)
    /root/riscv-go/src/runtime/chan.go:406 +0x2c fp=0x21081f5b00 sp=0x21081f5ad8 pc=0x157f4
testing.(*T).Parallel(0x21080c5800)
    /root/riscv-go/src/testing/testing.go:770 +0x1f8 fp=0x21081f5b80 sp=0x21081f5b00 pc=0x1409e0
runtime_test.TestCrashDumpsAllThreads(0x21080c5800)
    /root/riscv-go/src/runtime/crash_unix_test.go:54 +0x88 fp=0x21081f5fa8 sp=0x21081f5b80 pc=0x281ce8
testing.tRunner(0x21080c5800, 0x39b7f8)
    /root/riscv-go/src/testing/testing.go:865 +0xf4 fp=0x21081f5fc8 sp=0x21081f5fa8 pc=0x140d04
runtime.goexit()
    /root/riscv-go/src/runtime/asm_riscv64.s:467 +0x4 fp=0x21081f5fc8 sp=0x21081f5fc8 pc=0x9067c
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 2453 [GC worker (idle)]:
runtime.gopark(0x39a950, 0x21001a6640, 0xffff1417, 0x0)
    /root/riscv-go/src/runtime/proc.go:301 +0x188 fp=0x2100bd1f50 sp=0x2100bd1f28 pc=0x51ce0
runtime.gcBgMarkWorker(0x210002b400)
    /root/riscv-go/src/runtime/mgc.go:1836 +0x140 fp=0x2100bd1fd0 sp=0x2100bd1f50 pc=0x36570
runtime.goexit()
    /root/riscv-go/src/runtime/asm_riscv64.s:467 +0x4 fp=0x2100bd1fd0 sp=0x2100bd1fd0 pc=0x9067c
created by runtime.gcBgMarkStartWorkers
    /root/riscv-go/src/runtime/mgc.go:1784 +0xc0

goroutine 2454 [GC worker (idle)]:
runtime.gopark(0x39a950, 0x21001a6650, 0xffff1417, 0x0)
    /root/riscv-go/src/runtime/proc.go:301 +0x188 fp=0x2100bd9f50 sp=0x2100bd9f28 pc=0x51ce0
runtime.gcBgMarkWorker(0x210002d900)
    /root/riscv-go/src/runtime/mgc.go:1836 +0x140 fp=0x2100bd9fd0 sp=0x2100bd9f50 pc=0x36570
runtime.goexit()
    /root/riscv-go/src/runtime/asm_riscv64.s:467 +0x4 fp=0x2100bd9fd0 sp=0x2100bd9fd0 pc=0x9067c
created by runtime.gcBgMarkStartWorkers
    /root/riscv-go/src/runtime/mgc.go:1784 +0xc0

goroutine 2498 [select]:
runtime.gopark(0x39ab50, 0x0, 0x1809, 0x1)
    /root/riscv-go/src/runtime/proc.go:301 +0x188 fp=0x2100c49da0 sp=0x2100c49d78 pc=0x51ce0
runtime.selectgo(0x2100c49f28, 0x2100c49ee8, 0x4, 0x0, 0x0)
    /root/riscv-go/src/runtime/select.go:313 +0xc80 fp=0x2100c49eb0 sp=0x2100c49da0 pc=0x679c8
runtime_test.TestSelectStackAdjust.func1(0x2100192660, 0x1)
    /root/riscv-go/src/runtime/chan_test.go:684 +0x120 fp=0x2100c49fc8 sp=0x2100c49eb0 pc=0x2c6188
runtime.goexit()
    /root/riscv-go/src/runtime/asm_riscv64.s:467 +0x4 fp=0x2100c49fc8 sp=0x2100c49fc8 pc=0x9067c
created by runtime_test.TestSelectStackAdjust
    /root/riscv-go/src/runtime/chan_test.go:706 +0x21c

goroutine 22379 [syscall]:
runtime.notetsleepg(0x5e14e0, 0xdf8392b16, 0x0)
    /root/riscv-go/src/runtime/lock_futex.go:227 +0x44 fp=0x2108121f60 sp=0x2108121f38 pc=0x1ca44
runtime.timerproc(0x5e14c0)
    /root/riscv-go/src/runtime/time.go:311 +0x3c8 fp=0x2108121fd0 sp=0x2108121f60 pc=0x7b088
runtime.goexit()
    /root/riscv-go/src/runtime/asm_riscv64.s:467 +0x4 fp=0x2108121fd0 sp=0x2108121fd0 pc=0x9067c
created by runtime.(*timersBucket).addtimerLocked
    /root/riscv-go/src/runtime/time.go:169 +0x180
FAIL    runtime 38.224s
ok      runtime/debug   (cached)
ok      runtime/internal/atomic (cached)
ok      runtime/internal/math   (cached)
ok      runtime/internal/sys    (cached)
ok      runtime/pprof   (cached)
ok      runtime/pprof/internal/profile  (cached)
ok      runtime/trace   (cached)
ok      sort    (cached)
ok      strconv (cached)
ok      strings (cached)
ok      sync    (cached)
ok      sync/atomic (cached)
ok      syscall 18.040s
ok      testing (cached)
ok      testing/quick   (cached)
ok      text/scanner    (cached)
ok      text/tabwriter  (cached)
ok      text/template   (cached)
ok      text/template/parse (cached)
ok      time    (cached)
ok      unicode (cached)
ok      unicode/utf16   (cached)
ok      unicode/utf8    (cached)
fatal error: cas1
runtime: panic before malloc heap initialized

runtime stack:
runtime.throw(0x216819, 0x4)
    /root/riscv-go/src/runtime/panic.go:617 +0x88 fp=0x3fff9d9000 sp=0x3fff9d8fd8 pc=0x4b020
runtime.check()
    /root/riscv-go/src/runtime/runtime1.go:215 +0x57c fp=0x3fff9d9040 sp=0x3fff9d9000 pc=0x60b2c
runtime.rt0_go(0x3fff9d9068, 0xd3868, 0x4, 0x3fff9d9362, 0x3fff9d938e, 0x3fff9d93c9, 0x3fff9d93da, 0x0, 0x3fff9d93ed, 0x3fff9d93fd, ...)
    /root/riscv-go/src/runtime/asm_riscv64.s:52 +0x90 fp=0x3fff9d9048 sp=0x3fff9d9040 pc=0x852d8
FAIL    cmd/addr2line   0.513s
ok      cmd/api (cached)
--- FAIL: TestRISCVEncoder (0.34s)
    endtoend_test.go:156: mismatched output:
        have 00001 (testdata/riscvenc.s:1)  TEXT    asmtest(SB), DUPOK|NOSPLIT, $0
        want 00001 (testdata/riscvenc.s:1)  TEXT    asmtest(SB), 7, $0
    endtoend_test.go:156: mismatched output:
        have 00001 (testdata/riscvfarbranch.s:1)    TEXT    asmtest(SB), DUPOK|NOSPLIT, $0
        want 00001 (testdata/riscvfarbranch.s:1)    TEXT    asmtest(SB), 7, $0
FAIL
FAIL    cmd/asm/internal/asm    15.828s
ok      cmd/asm/internal/lex    (cached)
ok      cmd/compile (cached)
--- FAIL: TestCode (62.30s)
    ssa_test.go:173: Build failed: exit status 2
        # command-line-arguments [command-line-arguments.test]
        testdata/compound_test.go:60:52: internal compiler error: 'testComplex64': bad int32 AuxInt value for v200

        Please file a bug report including a short program that triggers the error.
        https://golang.org/issue/new

FAIL
FAIL    cmd/compile/internal/gc 109.752s
ok      cmd/compile/internal/ssa    14.628s
ok      cmd/compile/internal/syntax (cached)
ok      cmd/compile/internal/test   (cached) [no tests to run]
ok      cmd/compile/internal/types  (cached)
ok      cmd/cover   35.576s
ok      cmd/doc (cached)
ok      cmd/fix 117.264s
# cmd/vendor/golang.org/x/sys/unix.test
cmd/vendor/golang.org/x/sys/unix.Faccessat: relocation target cmd/vendor/golang.org/x/sys/unix.RawSyscallNoError not defined
cmd/vendor/golang.org/x/sys/unix_test.TestFaccessat: relocation target cmd/vendor/golang.org/x/sys/unix.RawSyscallNoError not defined
--- FAIL: TestLocalImportsEasySub (2.64s)
    go_test.go:1021: running testgo [build -o ./easysub testdata/local/easysub/main.go]
    go_test.go:1021: standard error:
    go_test.go:1021: fatal error: exitsyscall: syscall frame is no longer valid

        goroutine 37 [running]:
        runtime.throw(0x6d49d5, 0x2d)
            /root/riscv-go/src/runtime/panic.go:617 +0x88 fp=0x2100bd2ef0 sp=0x2100bd2ec8 pc=0x4c2e8
        runtime.exitsyscall()
            /root/riscv-go/src/runtime/proc.go:2945 +0x338 fp=0x2100bd2f18 sp=0x2100bd2ef0 pc=0x57d18
        syscall.Syscall(0x3f, 0x1c, 0x2100e24000, 0x8000, 0x8000, 0x2100e24000, 0x0)
            /root/riscv-go/src/syscall/asm_linux_riscv64.s:28 +0x5c fp=0x2100bd2f20 sp=0x2100bd2f18 pc=0xddd84
        syscall.read(0x1c, 0x2100e24000, 0x8000, 0x8000, 0x0, 0xa6aee22c2588ab90, 0xd16c306e4d073321)
            /root/riscv-go/src/syscall/zsyscall_linux_riscv64.go:747 +0x5c fp=0x2100bd2f70 sp=0x2100bd2f20 pc=0xdb1a4
        syscall.Read(...)
            /root/riscv-go/src/syscall/syscall_unix.go:172
        internal/poll.(*FD).Read(0x2100aef260, 0x2100e24000, 0x8000, 0x8000, 0x0, 0x0, 0x0)
            /root/riscv-go/src/internal/poll/fd_unix.go:165 +0x168 fp=0x2100bd2fc0 sp=0x2100bd2f70 pc=0xf95a0
        os.(*File).read(...)
            /root/riscv-go/src/os/file_unix.go:263
        os.(*File).Read(0x210095d880, 0x2100e24000, 0x8000, 0x8000, 0x8000, 0x0, 0x0)
            /root/riscv-go/src/os/file.go:108 +0x80 fp=0x2100bd3028 sp=0x2100bd2fc0 pc=0x102348
        io.copyBuffer(0x1557835ac0, 0x2100d1f100, 0x7a7ae0, 0x210095d880, 0x2100e24000, 0x8000, 0x8000, 0x60c820, 0x13739c, 0x2100b22d50)
            /root/riscv-go/src/io/io.go:402 +0xf4 fp=0x2100bd3098 sp=0x2100bd3028 pc=0xd025c
        io.Copy(...)
            /root/riscv-go/src/io/io.go:364
        cmd/go/internal/cache.FileHash(0x2100b22d50, 0x24, 0x0, 0x0, 0x0, 0x0, 0x24, 0x2100b22d50)
            /root/riscv-go/src/cmd/go/internal/cache/hash.go:149 +0x328 fp=0x2100bd3198 sp=0x2100bd3098 pc=0x228d38
        cmd/go/internal/work.(*Builder).fileHash(0x21003a9360, 0x2100b22d50, 0x24, 0x2100b22d50, 0x24)
            /root/riscv-go/src/cmd/go/internal/work/buildid.go:398 +0x3c fp=0x2100bd3200 sp=0x2100bd3198 pc=0x4d94c4
        cmd/go/internal/work.(*Builder).buildActionID(0x21003a9360, 0x2100b0ac80, 0x0, 0x0, 0x0, 0x0)
            /root/riscv-go/src/cmd/go/internal/work/exec.go:292 +0xaa4 fp=0x2100bd3630 sp=0x2100bd3200 pc=0x4dd1e4
        cmd/go/internal/work.(*Builder).build(0x21003a9360, 0x2100b0ac80, 0x0, 0x0)
            /root/riscv-go/src/cmd/go/internal/work/exec.go:373 +0x6094 fp=0x2100bd3ea0 sp=0x2100bd3630 pc=0x4e4cc4
        cmd/go/internal/work.(*Builder).Do.func1(0x2100b0ac80)
            /root/riscv-go/src/cmd/go/internal/work/exec.go:107 +0x6c fp=0x2100bd3f28 sp=0x2100bd3ea0 pc=0x51a8cc
        cmd/go/internal/work.(*Builder).Do.func2(0x2100b1c630, 0x21003a9360, 0x2100b24160)
            /root/riscv-go/src/cmd/go/internal/work/exec.go:165 +0x80 fp=0x2100bd3fc0 sp=0x2100bd3f28 pc=0x51ac08
        runtime.goexit()
            /root/riscv-go/src/runtime/asm_riscv64.s:467 +0x4 fp=0x2100bd3fc0 sp=0x2100bd3fc0 pc=0x865ec
        created by cmd/go/internal/work.(*Builder).Do
            /root/riscv-go/src/cmd/go/internal/work/exec.go:152 +0x310

        goroutine 1 [semacquire]:
        sync.runtime_Semacquire(0x2100b1c638)
            /root/riscv-go/src/runtime/sema.go:56 +0x44
        sync.(*WaitGroup).Wait(0x2100b1c630)
            /root/riscv-go/src/sync/waitgroup.go:130 +0xdc
        cmd/go/internal/work.(*Builder).Do(0x21003a9360, 0x2100a77180)
            /root/riscv-go/src/cmd/go/internal/work/exec.go:174 +0x33c
        cmd/go/internal/work.runBuild(0xb38b20, 0x21001bc040, 0x1, 0x1)
            /root/riscv-go/src/cmd/go/internal/work/build.go:330 +0x6a0
        main.main()
            /root/riscv-go/src/cmd/go/main.go:219 +0xdac

        goroutine 18 [syscall]:
        os/signal.signal_recv(0x0)
            /root/riscv-go/src/runtime/sigqueue.go:139 +0x234
        os/signal.loop()
            /root/riscv-go/src/os/signal/signal_unix.go:23 +0x2c
        created by os/signal.init.0
            /root/riscv-go/src/os/signal/signal_unix.go:29 +0x54

        goroutine 33 [runnable]:
        runtime.SetFinalizer(0x68e3c0, 0x2100024b40, 0x61b720, 0x6fe358)
            /root/riscv-go/src/runtime/mfinal.go:309 +0x18
        os.newProcess(...)
            /root/riscv-go/src/os/exec.go:26
        os.startProcess(0x2100bd82a0, 0x29, 0x2100be21e0, 0x2, 0x2, 0x2100b56f90, 0x0, 0x0, 0x0)
            /root/riscv-go/src/os/exec_posix.go:51 +0x358
        os.StartProcess(0x2100bd82a0, 0x29, 0x2100be21e0, 0x2, 0x2, 0x2100b56f90, 0x35, 0x0, 0x1555558d98)
            /root/riscv-go/src/os/exec.go:102 +0x78
        os/exec.(*Cmd).Start(0x2100be4160, 0x2100b57101, 0x2100bb0150)
            /root/riscv-go/src/os/exec/exec.go:392 +0x354
        os/exec.(*Cmd).Run(0x2100be4160, 0x2100bb0150, 0x1)
            /root/riscv-go/src/os/exec/exec.go:315 +0x34
        cmd/go/internal/work.(*Builder).toolID(0x21003a9360, 0x6bc3b0, 0x3, 0x11, 0x2100b574d0)
            /root/riscv-go/src/cmd/go/internal/work/buildid.go:193 +0x4ac
        cmd/go/internal/work.(*Builder).buildActionID(0x21003a9360, 0x2100b0a280, 0x0, 0x0, 0x0, 0x0)
            /root/riscv-go/src/cmd/go/internal/work/exec.go:225 +0x1798
        cmd/go/internal/work.(*Builder).build(0x21003a9360, 0x2100b0a280, 0x0, 0x0)
            /root/riscv-go/src/cmd/go/internal/work/exec.go:373 +0x6094
        cmd/go/internal/work.(*Builder).Do.func1(0x2100b0a280)
            /root/riscv-go/src/cmd/go/internal/work/exec.go:107 +0x6c
        cmd/go/internal/work.(*Builder).Do.func2(0x2100b1c630, 0x21003a9360, 0x2100b24160)
            /root/riscv-go/src/cmd/go/internal/work/exec.go:165 +0x80
        created by cmd/go/internal/work.(*Builder).Do
            /root/riscv-go/src/cmd/go/internal/work/exec.go:152 +0x310

        goroutine 34 [runnable]:
        sync.(*Mutex).Unlock(0x21003a93e8)
            /root/riscv-go/src/sync/mutex.go:175 +0x14
        cmd/go/internal/work.(*Builder).toolID(0x21003a9360, 0x6be03b, 0x7, 0x2c, 0x2100c1d500)
            /root/riscv-go/src/cmd/go/internal/work/buildid.go:212 +0x96c
        cmd/go/internal/work.(*Builder).buildActionID(0x21003a9360, 0x2100b0a780, 0x0, 0x0, 0x0, 0x0)
            /root/riscv-go/src/cmd/go/internal/work/exec.go:223 +0xfd0
        cmd/go/internal/work.(*Builder).build(0x21003a9360, 0x2100b0a780, 0x0, 0x0)
            /root/riscv-go/src/cmd/go/internal/work/exec.go:373 +0x6094
        cmd/go/internal/work.(*Builder).Do.func1(0x2100b0a780)
            /root/riscv-go/src/cmd/go/internal/work/exec.go:107 +0x6c
        cmd/go/internal/work.(*Builder).Do.func2(0x2100b1c630, 0x21003a9360, 0x2100b24160)
            /root/riscv-go/src/cmd/go/internal/work/exec.go:165 +0x80
        created by cmd/go/internal/work.(*Builder).Do
            /root/riscv-go/src/cmd/go/internal/work/exec.go:152 +0x310

        goroutine 35 [runnable]:
        syscall.Syscall(0x3f, 0xa, 0x2100b42ce0, 0x8, 0x0, 0x2100b42ce0, 0x0)
            /root/riscv-go/src/syscall/asm_linux_riscv64.s:13 +0x14
        syscall.readlen(0xa, 0x2100b42ce0, 0x8, 0x3, 0x2100c361c0, 0x36)
            /root/riscv-go/src/syscall/zsyscall_linux_riscv64.go:1041 +0x54
        syscall.forkExec(0x2100bee3c0, 0x29, 0x2100bf2200, 0x2, 0x2, 0x2100b42df8, 0x2, 0x4, 0x2100c2ee00)
            /root/riscv-go/src/syscall/exec_unix.go:203 +0x374
        syscall.StartProcess(...)
            /root/riscv-go/src/syscall/exec_unix.go:241
        os.startProcess(0x2100bee3c0, 0x29, 0x2100bf2200, 0x2, 0x2, 0x2100b42f90, 0x0, 0x0, 0x0)
            /root/riscv-go/src/os/exec_posix.go:47 +0x190
        os.StartProcess(0x2100bee3c0, 0x29, 0x2100bf2200, 0x2, 0x2, 0x2100b42f90, 0x35, 0x0, 0x1555559b28)
            /root/riscv-go/src/os/exec.go:102 +0x78
        os/exec.(*Cmd).Start(0x2100bf4160, 0x2100b43101, 0x2100bdc180)
            /root/riscv-go/src/os/exec/exec.go:392 +0x354
        os/exec.(*Cmd).Run(0x2100bf4160, 0x2100bdc180, 0x1)
            /root/riscv-go/src/os/exec/exec.go:315 +0x34
        cmd/go/internal/work.(*Builder).toolID(0x21003a9360, 0x6bc3b0, 0x3, 0x11, 0x2100b434d0)
            /root/riscv-go/src/cmd/go/internal/work/buildid.go:193 +0x4ac
        cmd/go/internal/work.(*Builder).buildActionID(0x21003a9360, 0x2100a77a40, 0x0, 0x0, 0x0, 0x0)
            /root/riscv-go/src/cmd/go/internal/work/exec.go:225 +0x1798
        cmd/go/internal/work.(*Builder).build(0x21003a9360, 0x2100a77a40, 0x0, 0x0)
            /root/riscv-go/src/cmd/go/internal/work/exec.go:373 +0x6094
        cmd/go/internal/work.(*Builder).Do.func1(0x2100a77a40)
            /root/riscv-go/src/cmd/go/internal/work/exec.go:107 +0x6c
        cmd/go/internal/work.(*Builder).Do.func2(0x2100b1c630, 0x21003a9360, 0x2100b24160)
            /root/riscv-go/src/cmd/go/internal/work/exec.go:165 +0x80
        created by cmd/go/internal/work.(*Builder).Do
            /root/riscv-go/src/cmd/go/internal/work/exec.go:152 +0x310

        goroutine 36 [runnable]:
        syscall.Syscall6(0x5f, 0x1, 0x234a, 0x2100b4ae68, 0x1000004, 0x0, 0x0, 0x0, 0x234a, 0x0)
            /root/riscv-go/src/syscall/asm_linux_riscv64.s:41 +0x14
        os.(*Process).blockUntilWaitable(0x2100024b10, 0x210000a220, 0x1f814c, 0x1)
            /root/riscv-go/src/os/wait_waitid.go:31 +0x8c
        os.(*Process).wait(0x2100024b10, 0x6fe3a0, 0x6fe3a8, 0x6fe398)
            /root/riscv-go/src/os/exec_unix.go:22 +0x48
        os.(*Process).Wait(...)
            /root/riscv-go/src/os/exec.go:125
        os/exec.(*Cmd).Wait(0x2100bde160, 0x0, 0x0)
            /root/riscv-go/src/os/exec/exec.go:474 +0x70
        os/exec.(*Cmd).Run(0x2100bde160, 0x210002e1e0, 0x1)
            /root/riscv-go/src/os/exec/exec.go:318 +0x74
        cmd/go/internal/work.(*Builder).toolID(0x21003a9360, 0x6bc3b0, 0x3, 0x11, 0x2100b4b4d0)
            /root/riscv-go/src/cmd/go/internal/work/buildid.go:193 +0x4ac
        cmd/go/internal/work.(*Builder).buildActionID(0x21003a9360, 0x2100b0a000, 0x0, 0x0, 0x0, 0x0)
            /root/riscv-go/src/cmd/go/internal/work/exec.go:225 +0x1798
        cmd/go/internal/work.(*Builder).build(0x21003a9360, 0x2100b0a000, 0x0, 0x0)
            /root/riscv-go/src/cmd/go/internal/work/exec.go:373 +0x6094
        cmd/go/internal/work.(*Builder).Do.func1(0x2100b0a000)
            /root/riscv-go/src/cmd/go/internal/work/exec.go:107 +0x6c
        cmd/go/internal/work.(*Builder).Do.func2(0x2100b1c630, 0x21003a9360, 0x2100b24160)
            /root/riscv-go/src/cmd/go/internal/work/exec.go:165 +0x80
        created by cmd/go/internal/work.(*Builder).Do
            /root/riscv-go/src/cmd/go/internal/work/exec.go:152 +0x310

        goroutine 38 [runnable]:
        syscall.Syscall(0x3f, 0x7, 0x2100b34ce0, 0x8, 0x0, 0x2100b34ce0, 0x0)
            /root/riscv-go/src/syscall/asm_linux_riscv64.s:13 +0x14
        syscall.readlen(0x7, 0x2100b34ce0, 0x8, 0x3, 0x2100c12380, 0x36)
            /root/riscv-go/src/syscall/zsyscall_linux_riscv64.go:1041 +0x54
        syscall.forkExec(0x21000248d0, 0x29, 0x210000a3a0, 0x2, 0x2, 0x2100b34df8, 0x2, 0x4, 0x2100c04e00)
            /root/riscv-go/src/syscall/exec_unix.go:203 +0x374
        syscall.StartProcess(...)
            /root/riscv-go/src/syscall/exec_unix.go:241
        os.startProcess(0x21000248d0, 0x29, 0x210000a3a0, 0x2, 0x2, 0x2100b34f90, 0x0, 0x0, 0x0)
            /root/riscv-go/src/os/exec_posix.go:47 +0x190
        os.StartProcess(0x21000248d0, 0x29, 0x210000a3a0, 0x2, 0x2, 0x2100b34f90, 0x35, 0x0, 0x1555558008)
            /root/riscv-go/src/os/exec.go:102 +0x78
        os/exec.(*Cmd).Start(0x2100bde2c0, 0x2100b35101, 0x210002e2d0)
            /root/riscv-go/src/os/exec/exec.go:392 +0x354
        os/exec.(*Cmd).Run(0x2100bde2c0, 0x210002e2d0, 0x1)
            /root/riscv-go/src/os/exec/exec.go:315 +0x34
        cmd/go/internal/work.(*Builder).toolID(0x21003a9360, 0x6bc3b0, 0x3, 0x11, 0x2100b354d0)
            /root/riscv-go/src/cmd/go/internal/work/buildid.go:193 +0x4ac
        cmd/go/internal/work.(*Builder).buildActionID(0x21003a9360, 0x2100b0ab40, 0x0, 0x0, 0x0, 0x0)
            /root/riscv-go/src/cmd/go/internal/work/exec.go:225 +0x1798
        cmd/go/internal/work.(*Builder).build(0x21003a9360, 0x2100b0ab40, 0x0, 0x0)
            /root/riscv-go/src/cmd/go/internal/work/exec.go:373 +0x6094
        cmd/go/internal/work.(*Builder).Do.func1(0x2100b0ab40)
            /root/riscv-go/src/cmd/go/internal/work/exec.go:107 +0x6c
        cmd/go/internal/work.(*Builder).Do.func2(0x2100b1c630, 0x21003a9360, 0x2100b24160)
            /root/riscv-go/src/cmd/go/internal/work/exec.go:165 +0x80
        created by cmd/go/internal/work.(*Builder).Do
            /root/riscv-go/src/cmd/go/internal/work/exec.go:152 +0x310

        goroutine 4 [runnable]:
        internal/poll.runtime_pollWait(0x1557815a28, 0x72, 0xffffffffffffffff)
            /root/riscv-go/src/runtime/netpoll.go:182 +0x64
        internal/poll.(*pollDesc).wait(0x21000fc438, 0x72, 0x201, 0x200, 0xffffffffffffffff)
            /root/riscv-go/src/internal/poll/fd_poll_runtime.go:87 +0xd8
        internal/poll.(*pollDesc).waitRead(...)
            /root/riscv-go/src/internal/poll/fd_poll_runtime.go:92
        internal/poll.(*FD).Read(0x21000fc420, 0x2100d1c400, 0x200, 0x200, 0x0, 0x0, 0x0)
            /root/riscv-go/src/internal/poll/fd_unix.go:169 +0x1f8
        os.(*File).read(...)
            /root/riscv-go/src/os/file_unix.go:263
        os.(*File).Read(0x210000c078, 0x2100d1c400, 0x200, 0x200, 0x0, 0x0, 0x0)
            /root/riscv-go/src/os/file.go:108 +0x80
        bytes.(*Buffer).ReadFrom(0x210002e1b0, 0x7a7ae0, 0x210000c078, 0x15579e9028, 0x210002e1b0, 0x1)
            /root/riscv-go/src/bytes/buffer.go:207 +0xe0
        io.copyBuffer(0x7a70c0, 0x210002e1b0, 0x7a7ae0, 0x210000c078, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
            /root/riscv-go/src/io/io.go:388 +0x310
        io.Copy(...)
            /root/riscv-go/src/io/io.go:364
        os/exec.(*Cmd).writerDescriptor.func1(0x0, 0x0)
            /root/riscv-go/src/os/exec/exec.go:288 +0x6c
        os/exec.(*Cmd).Start.func1(0x2100bde160, 0x210000a260)
            /root/riscv-go/src/os/exec/exec.go:409 +0x2c
        created by os/exec.(*Cmd).Start
            /root/riscv-go/src/os/exec/exec.go:408 +0x47c

        goroutine 5 [IO wait]:
        internal/poll.runtime_pollWait(0x15578156e8, 0x72, 0xffffffffffffffff)
            /root/riscv-go/src/runtime/netpoll.go:182 +0x64
        internal/poll.(*pollDesc).wait(0x21000fc4f8, 0x72, 0x201, 0x200, 0xffffffffffffffff)
            /root/riscv-go/src/internal/poll/fd_poll_runtime.go:87 +0xd8
        internal/poll.(*pollDesc).waitRead(...)
            /root/riscv-go/src/internal/poll/fd_poll_runtime.go:92
        internal/poll.(*FD).Read(0x21000fc4e0, 0x2100d76e00, 0x200, 0x200, 0x0, 0x0, 0x0)
            /root/riscv-go/src/internal/poll/fd_unix.go:169 +0x1f8
        os.(*File).read(...)
            /root/riscv-go/src/os/file_unix.go:263
        os.(*File).Read(0x210000c090, 0x2100d76e00, 0x200, 0x200, 0x0, 0x0, 0x0)
            /root/riscv-go/src/os/file.go:108 +0x80
        bytes.(*Buffer).ReadFrom(0x210002e1e0, 0x7a7ae0, 0x210000c090, 0x15579e9028, 0x210002e1e0, 0x1)
            /root/riscv-go/src/bytes/buffer.go:207 +0xe0
        io.copyBuffer(0x7a70c0, 0x210002e1e0, 0x7a7ae0, 0x210000c090, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
            /root/riscv-go/src/io/io.go:388 +0x310
        io.Copy(...)
            /root/riscv-go/src/io/io.go:364
        os/exec.(*Cmd).writerDescriptor.func1(0x0, 0x0)
            /root/riscv-go/src/os/exec/exec.go:288 +0x6c
        os/exec.(*Cmd).Start.func1(0x2100bde160, 0x210000a2a0)
            /root/riscv-go/src/os/exec/exec.go:409 +0x2c
        created by os/exec.(*Cmd).Start
            /root/riscv-go/src/os/exec/exec.go:408 +0x47c

    go_test.go:1021: go [build -o ./easysub testdata/local/easysub/main.go] failed unexpectedly in /root/riscv-go/src/cmd/go: exit status 2
panic: test timed out after 9m0s

goroutine 42 [running]:
testing.(*M).startAlarm.func1()
    /root/riscv-go/src/testing/testing.go:1334 +0x104
created by time.goFunc
    /root/riscv-go/src/time/sleep.go:169 +0x54

goroutine 1 [chan receive]:
testing.(*T).Run(0x21004e2000, 0x7b51c7, 0x14, 0x7fa208, 0x148800)
    /root/riscv-go/src/testing/testing.go:917 +0x3c0
testing.runTests.func1(0x21004d0000)
    /root/riscv-go/src/testing/testing.go:1157 +0x88
testing.tRunner(0x21004d0000, 0x2100065c28)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
testing.runTests(0x21004a20a0, 0xcd1620, 0x10d, 0x10d, 0x7fb3a8)
    /root/riscv-go/src/testing/testing.go:1155 +0x2e8
testing.(*M).Run(0x2100232e80, 0x0)
    /root/riscv-go/src/testing/testing.go:1072 +0x194
cmd/go_test.TestMain(0x2100232e80)
    /root/riscv-go/src/cmd/go/go_test.go:256 +0x3b0
main.main()
    _testmain.go:578 +0x190

goroutine 5 [syscall]:
os/signal.signal_recv(0x0)
    /root/riscv-go/src/runtime/sigqueue.go:139 +0x234
os/signal.loop()
    /root/riscv-go/src/os/signal/signal_unix.go:23 +0x2c
created by os/signal.init.0
    /root/riscv-go/src/os/signal/signal_unix.go:29 +0x54

goroutine 38 [syscall]:
syscall.Syscall6(0x5f, 0x1, 0x2365, 0x21005b3c30, 0x1000004, 0x0, 0x0, 0x1bdd1c, 0x21005b3c28, 0x89160)
    /root/riscv-go/src/syscall/asm_linux_riscv64.s:41 +0x14
os.(*Process).blockUntilWaitable(0x210029a780, 0x148, 0x21003d6580, 0x1)
    /root/riscv-go/src/os/wait_waitid.go:31 +0x8c
os.(*Process).wait(0x210029a780, 0x7faea8, 0x7faeb0, 0x7faea0)
    /root/riscv-go/src/os/exec_unix.go:22 +0x48
os.(*Process).Wait(...)
    /root/riscv-go/src/os/exec.go:125
os/exec.(*Cmd).Wait(0x21003d6580, 0x0, 0x0)
    /root/riscv-go/src/os/exec/exec.go:474 +0x70
os/exec.(*Cmd).Run(0x21003d6580, 0x25, 0x210028e340)
    /root/riscv-go/src/os/exec/exec.go:318 +0x74
cmd/go_test.(*testgoData).doRun(0x210055c300, 0x210028e340, 0x4, 0x4, 0x0, 0x210014c000)
    /root/riscv-go/src/cmd/go/go_test.go:445 +0x304
cmd/go_test.(*testgoData).run(0x210055c300, 0x210028e340, 0x4, 0x4)
    /root/riscv-go/src/cmd/go/go_test.go:461 +0x6c
cmd/go_test.testLocalHard(0x210055c300, 0x7a99c2, 0x5)
    /root/riscv-go/src/cmd/go/go_test.go:1003 +0x1f8
cmd/go_test.TestLocalImportsHard(0x21004e2000)
    /root/riscv-go/src/cmd/go/go_test.go:1027 +0x8c
testing.tRunner(0x21004e2000, 0x7fa208)
    /root/riscv-go/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /root/riscv-go/src/testing/testing.go:916 +0x398

goroutine 39 [IO wait]:
internal/poll.runtime_pollWait(0x15578160b0, 0x72, 0xffffffffffffffff)
    /root/riscv-go/src/runtime/netpoll.go:182 +0x64
internal/poll.(*pollDesc).wait(0x2100294918, 0x72, 0x201, 0x200, 0xffffffffffffffff)
    /root/riscv-go/src/internal/poll/fd_poll_runtime.go:87 +0xd8
internal/poll.(*pollDesc).waitRead(...)
    /root/riscv-go/src/internal/poll/fd_poll_runtime.go:92
internal/poll.(*FD).Read(0x2100294900, 0x21004e6000, 0x200, 0x200, 0x0, 0x0, 0x0)
    /root/riscv-go/src/internal/poll/fd_unix.go:169 +0x1f8
os.(*File).read(...)
    /root/riscv-go/src/os/file_unix.go:263
os.(*File).Read(0x21002980d8, 0x21004e6000, 0x200, 0x200, 0x0, 0x0, 0x0)
    /root/riscv-go/src/os/file.go:108 +0x80
bytes.(*Buffer).ReadFrom(0x210055c360, 0x8bcf20, 0x21002980d8, 0x15579a9028, 0x210055c360, 0x1)
    /root/riscv-go/src/bytes/buffer.go:207 +0xe0
io.copyBuffer(0x8bc3e0, 0x210055c360, 0x8bcf20, 0x21002980d8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
    /root/riscv-go/src/io/io.go:388 +0x310
io.Copy(...)
    /root/riscv-go/src/io/io.go:364
os/exec.(*Cmd).writerDescriptor.func1(0x0, 0x0)
    /root/riscv-go/src/os/exec/exec.go:288 +0x6c
os/exec.(*Cmd).Start.func1(0x21003d6580, 0x21002904e0)
    /root/riscv-go/src/os/exec/exec.go:409 +0x2c
created by os/exec.(*Cmd).Start
    /root/riscv-go/src/os/exec/exec.go:408 +0x47c

goroutine 40 [IO wait]:
internal/poll.runtime_pollWait(0x1557815f10, 0x72, 0xffffffffffffffff)
    /root/riscv-go/src/runtime/netpoll.go:182 +0x64
internal/poll.(*pollDesc).wait(0x21002949d8, 0x72, 0x201, 0x200, 0xffffffffffffffff)
    /root/riscv-go/src/internal/poll/fd_poll_runtime.go:87 +0xd8
internal/poll.(*pollDesc).waitRead(...)
    /root/riscv-go/src/internal/poll/fd_poll_runtime.go:92
internal/poll.(*FD).Read(0x21002949c0, 0x21001f0c00, 0x200, 0x200, 0x0, 0x0, 0x0)
    /root/riscv-go/src/internal/poll/fd_unix.go:169 +0x1f8
os.(*File).read(...)
    /root/riscv-go/src/os/file_unix.go:263
os.(*File).Read(0x21002980f0, 0x21001f0c00, 0x200, 0x200, 0x0, 0x0, 0x0)
    /root/riscv-go/src/os/file.go:108 +0x80
bytes.(*Buffer).ReadFrom(0x210055c388, 0x8bcf20, 0x21002980f0, 0x15579a9028, 0x210055c388, 0x1)
    /root/riscv-go/src/bytes/buffer.go:207 +0xe0
io.copyBuffer(0x8bc3e0, 0x210055c388, 0x8bcf20, 0x21002980f0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
    /root/riscv-go/src/io/io.go:388 +0x310
io.Copy(...)
    /root/riscv-go/src/io/io.go:364
os/exec.(*Cmd).writerDescriptor.func1(0x0, 0x0)
    /root/riscv-go/src/os/exec/exec.go:288 +0x6c
os/exec.(*Cmd).Start.func1(0x21003d6580, 0x2100290520)
    /root/riscv-go/src/os/exec/exec.go:409 +0x2c
created by os/exec.(*Cmd).Start
    /root/riscv-go/src/os/exec/exec.go:408 +0x47c
FAIL    cmd/go  574.369s
ok      cmd/go/internal/cache   (cached)
ok      cmd/go/internal/dirhash (cached)
ok      cmd/go/internal/generate    (cached)
ok      cmd/go/internal/get (cached)
ok      cmd/go/internal/imports (cached)
ok      cmd/go/internal/load    (cached)
ok      cmd/go/internal/lockedfile  (cached)
ok      cmd/go/internal/lockedfile/internal/filelock    (cached)
ok      cmd/go/internal/modconv (cached)
ok      cmd/go/internal/modfetch    (cached)
ok      cmd/go/internal/modfetch/codehost   (cached)
ok      cmd/go/internal/modfile (cached)
ok      cmd/go/internal/modload (cached)
ok      cmd/go/internal/module  (cached)
ok      cmd/go/internal/mvs (cached)
ok      cmd/go/internal/par (cached)
ok      cmd/go/internal/search  (cached)
ok      cmd/go/internal/semver  (cached)
ok      cmd/go/internal/txtar   (cached)
ok      cmd/go/internal/web2    (cached)
ok      cmd/go/internal/work    (cached)
ok      cmd/gofmt   1.440s
ok      cmd/internal/buildid    (cached)
ok      cmd/internal/dwarf  (cached)
ok      cmd/internal/edit   (cached)
ok      cmd/internal/goobj  (cached)
ok      cmd/internal/obj    (cached)
ok      cmd/internal/obj/arm64  1.061s
ok      cmd/internal/obj/x86    6.921s
ok      cmd/internal/objabi (cached)
ok      cmd/internal/src    (cached)
ok      cmd/internal/test2json  (cached)
ok      cmd/link    10.491s
ok      cmd/link/internal/ld    21.059s
ok      cmd/link/internal/sym   (cached)
ok      cmd/nm  19.805s
--- FAIL: TestDisasm (7.42s)
    objdump_test.go:140: objdump fmthello.exe: exit status 1
        objdump: disassemble /tmp/TestObjDump746219507/hello.exe: unsupported architecture
--- FAIL: TestDisasmCode (2.53s)
    objdump_test.go:140: objdump fmthello.exe: exit status 1
        objdump: disassemble /tmp/TestObjDump746219507/hello.exe: unsupported architecture
--- FAIL: TestDisasmGoobj (0.61s)
    objdump_test.go:233: objdump fmthello.o: exit status 1
        objdump: disassemble /tmp/TestObjDump746219507/hello.o: unsupported architecture
FAIL
FAIL    cmd/objdump 22.063s
ok      cmd/pack    29.818s
ok      cmd/trace   (cached)
ok      cmd/vendor/github.com/google/pprof/internal/binutils    1.294s
ok      cmd/vendor/github.com/google/pprof/internal/driver  5.419s
ok      cmd/vendor/github.com/google/pprof/internal/elfexec (cached)
ok      cmd/vendor/github.com/google/pprof/internal/graph   (cached)
ok      cmd/vendor/github.com/google/pprof/internal/measurement (cached)
ok      cmd/vendor/github.com/google/pprof/internal/report  (cached)
ok      cmd/vendor/github.com/google/pprof/internal/symbolizer  (cached)
ok      cmd/vendor/github.com/google/pprof/internal/symbolz (cached)
ok      cmd/vendor/github.com/google/pprof/profile  (cached)
ok      cmd/vendor/github.com/ianlancetaylor/demangle   (cached)
ok      cmd/vendor/golang.org/x/arch/arm/armasm (cached)
ok      cmd/vendor/golang.org/x/arch/arm64/arm64asm (cached)
ok      cmd/vendor/golang.org/x/arch/ppc64/ppc64asm (cached)
ok      cmd/vendor/golang.org/x/arch/x86/x86asm (cached)
ok      cmd/vendor/golang.org/x/crypto/ssh/terminal (cached)
FAIL    cmd/vendor/golang.org/x/sys/unix [build failed]
--- FAIL: TestTags (10.65s)
    --- FAIL: TestTags/testtag (3.93s)
        vet_test.go:173: -tags=testtag
        vet_test.go:182: testtag: file1.go was excluded, should be included
        vet_test.go:188: err=exit status 1, output=<</root/riscv-go/src/cmd/vet/testvet.exe: exit status 2
            fatal error: cas5
            runtime: panic before malloc heap initialized

            runtime stack:
            runtime.throw(0x3f3f70, 0x4)
                /root/riscv-go/src/runtime/panic.go:617 +0x88 fp=0x3fffc39040 sp=0x3fffc39018 pc=0x4b758
            runtime.check()
                /root/riscv-go/src/runtime/runtime1.go:231 +0x4ec fp=0x3fffc39080 sp=0x3fffc39040 pc=0x6006c
            runtime.rt0_go(0x3fffc390a8, 0xd3868, 0x2, 0x3fffc393a0, 0x3fffc393c7, 0x0, 0x3fffc393cf, 0x3fffc393df, 0x3fffc393f6, 0x3fffc3940c, ...)
                /root/riscv-go/src/runtime/asm_riscv64.s:52 +0x90 fp=0x3fffc39088 sp=0x3fffc39080 pc=0x81f98
            >>
FAIL
FAIL    cmd/vet 30.639s
2019/05/09 20:44:53 Failed: exit status 2

@carlosedp Run gcc -pthread test1.c.

This is what I see compiling the test code:

[root@fedora-riscv ~]# gcc --version
gcc (GCC) 9.1.1 20190503 (Red Hat 9.1.1-1)
Copyright (C) 2019 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

[root@fedora-riscv ~]#
[root@fedora-riscv ~]# gcc test1.c
test1.c: In function ‘main’:
test1.c:85:41: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
   85 |   pthread_create(&tid[i], NULL, thread, (void *)i+10);
      |                                         ^
/usr/bin/ld: /tmp/cc1fyhzx.o: in function `main':
test1.c:(.text+0x14e): undefined reference to `pthread_create'
/usr/bin/ld: test1.c:(.text+0x188): undefined reference to `pthread_join'
collect2: error: ld returned 1 exit status

I'm running Fedora nightly with Kernel 5.1.0-rc7-00005-g83a50840e72a.

Here are the results of the test run for Go after the merges:

Do something like: gcc x.c -pthread. The warning is because of a terrible hack.

See the link here:

https://paste.sr.ht/~sircmpwn/3a76f2ee0b914eccf2cc70fc6ca6b7a75de547a3

I'm on a real riscv64 board, HiFive Unleashed. Kernel is 4.20-rc4 plus this patch:

esmil/linux@870b04e

And this config:

https://paste.sr.ht/~sircmpwn/88c5f57715b904896c5cbe57c5d6674f738d0e51

Ah, real hardware. Let me lift the exact CAS code from go (it does some extra looping in asm) and give you a new thing to test. Also, can you make threads like 100 and add one or two zeroes to the iterations? Real hardware may have to be beaten harder.

Can you try the other 2 tests as well that I linked earlier?

@marcopeereboom On Qemu 4.0.0:

Test1:

# ./a.out
in thread 10
in thread 11
in thread 17
in thread 12
in thread 19
in thread 14
in thread 24
in thread 21
in thread 15
in thread 16
in thread 18
in thread 13
in thread 20
in thread 27
in thread 25
in thread 22
in thread 23
in thread 29
in thread 28
in thread 26
womp womp 1999992 2000000

Test2:

# ./a.out
ok 400000 400000

Test3:

# ./a.out
ok 400000 400000

@marcopeereboom On Qemu 4.0.0:

Test1:

# ./a.out
in thread 10
in thread 11
in thread 17
in thread 12
in thread 19
in thread 14
in thread 24
in thread 21
in thread 15
in thread 16
in thread 18
in thread 13
in thread 20
in thread 27
in thread 25
in thread 22
in thread 23
in thread 29
in thread 28
in thread 26
womp womp 1999992 2000000

Test2:

# ./a.out
ok 400000 400000

Test3:

# ./a.out
ok 400000 400000

Do run it several times or even in a tight loop. Also, play with the #defines a bit.

Also, can you make threads like 100 and add one or two zeroes to the iterations?

I gave you 50 threads and an extra zero, this hardware isn't the fastest and I am not made of cycles :wink:

ok 50000000 50000000

https://gist.github.com/marcopeereboom/1e40d4baffdcc9a2066310d770f5ac12

https://gist.github.com/marcopeereboom/4357c59b57dc998a58d37817d59f99b0

Your includes are missing the headers you're trying to include here

Would you like shell access to this machine?

@marcopeereboom ssh -p 24169 [email protected]

Would you like shell access to this machine?

Yes, please!

Mail me marco @ peereboom.us and I'll reply with an ssh pubkey?

Mail me marco @ peereboom.us and I'll reply with an ssh pubkey?

Try connecting -- maybe he already got your pubkeys through GitHub.

@marcopeereboom Yep, lots of womp womps with more threads in Qemu 4.0.0 on Test2:

womp womp 2251433 2500000
womp womp 2357934 2500000
womp womp 1890639 2500000
womp womp 1926171 2500000
womp womp 1886507 2500000
womp womp 1948392 2500000
womp womp 2338358 2500000
womp womp 2363039 2500000
womp womp 2066714 2500000
womp womp 2315551 2500000
womp womp 1704307 2500000
womp womp 1901324 2500000
womp womp 1656480 2500000
womp womp 2085709 2500000
womp womp 2257562 2500000
womp womp 2347022 2500000
womp womp 2187506 2500000
womp womp 2172819 2500000
womp womp 1957879 2500000

Also fails with test 3 with 40 threads.

All goes fine in my real boards, both x64 and ARM.

Try connecting -- maybe he already got your pubkeys through GitHub.

Yep - you should be all set @marcopeereboom

I've successfully built gojsontoyaml project for testing Go 1.12 on Risc-V Qemu. On some actions like go get . I had to run with GOGC=off or I would get errors (listed below).

[root@fedora-riscv gojsontoyaml]# go version
go version go1.12 linux/riscv64
[root@fedora-riscv gojsontoyaml]#
[root@fedora-riscv gojsontoyaml]# which go
/root/riscv-go/bin/go

If I just do go get ., I get the following error:

[root@fedora-riscv gojsontoyaml]# go get .
go: finding github.com/ghodss/yaml v1.0.0
go: finding gopkg.in/yaml.v2 v2.1.1
go: finding gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405
unexpected fault address 0xd50097f148
fatal error: fault
[signal SIGSEGV: segmentation violation code=0x1 addr=0xd50097f148 pc=0x127794]

goroutine 1 [running]:
runtime.throw(0x6bcf57, 0x5)
    /root/riscv-go/src/runtime/panic.go:617 +0x88 fp=0x2100061e38 sp=0x2100061e10 pc=0x4c2e8
runtime.sigpanic()
    /root/riscv-go/src/runtime/signal_unix.go:397 +0x504 fp=0x2100061e68 sp=0x2100061e38 pc=0x69624
strings.Fields(0x210097f11f, 0x3b, 0xa, 0x0, 0x2)
    /root/riscv-go/src/strings/strings.go:363 +0x22c fp=0x2100061eb0 sp=0x2100061e70 pc=0x127794
cmd/go/internal/modfetch/codehost.(*gitRepo).loadRefs(0x21002e2370)
    /root/riscv-go/src/cmd/go/internal/modfetch/codehost/git.go:178 +0x21c fp=0x2100062058 sp=0x2100061eb0 pc=0x271fbc
cmd/go/internal/modfetch/codehost.(*gitRepo).loadRefs-fm()
    /root/riscv-go/src/cmd/go/internal/modfetch/codehost/git.go:161 +0x34 fp=0x2100062068 sp=0x2100062058 pc=0x281b24
sync.(*Once).Do(0x21002e23d8, 0x2100062228)
    /root/riscv-go/src/sync/once.go:44 +0x118 fp=0x2100062098 sp=0x2100062068 pc=0x9f350
cmd/go/internal/modfetch/codehost.(*gitRepo).stat(0x21002e2370, 0x21007722b6, 0xc, 0x0, 0x0, 0x0)
    /root/riscv-go/src/cmd/go/internal/modfetch/codehost/git.go:281 +0x140 fp=0x2100062358 sp=0x2100062098 pc=0x272f50
cmd/go/internal/modfetch/codehost.(*gitRepo).Stat.func1(0x21007d2500, 0x0)
    /root/riscv-go/src/cmd/go/internal/modfetch/codehost/git.go:460 +0x44 fp=0x21000623a8 sp=0x2100062358 pc=0x27f694
cmd/go/internal/par.(*Cache).Do(0x21002e23b0, 0x60c560, 0x2100720450, 0x2100062438, 0x21004d0080, 0x41)
    /root/riscv-go/src/cmd/go/internal/par/work.go:128 +0x130 fp=0x2100062400 sp=0x21000623a8 pc=0x24ee28
cmd/go/internal/modfetch/codehost.(*gitRepo).Stat(0x21002e2370, 0x21007722b6, 0xc, 0x0, 0x0, 0x0)
    /root/riscv-go/src/cmd/go/internal/modfetch/codehost/git.go:459 +0x168 fp=0x2100062458 sp=0x2100062400 pc=0x2751e8
cmd/go/internal/modfetch.(*codeRepo).Stat(0x21002be200, 0x21007722a0, 0x22, 0x12, 0x21000625e0, 0x2)
    /root/riscv-go/src/cmd/go/internal/modfetch/coderepo.go:155 +0x16c fp=0x21000624f8 sp=0x2100062458 pc=0x53a44c
cmd/go/internal/modfetch.(*cachingRepo).Stat.func1(0x21007d24e0, 0x0)
    /root/riscv-go/src/cmd/go/internal/modfetch/cache.go:166 +0xbc fp=0x2100062600 sp=0x21000624f8 pc=0x54958c
cmd/go/internal/par.(*Cache).Do(0x2100546150, 0x60c560, 0x21007203c0, 0x21000626a8, 0x22, 0x21006092f0)
    /root/riscv-go/src/cmd/go/internal/par/work.go:128 +0x130 fp=0x2100062658 sp=0x2100062600 pc=0x24ee28
cmd/go/internal/modfetch.(*cachingRepo).Stat(0x2100546140, 0x21007722a0, 0x22, 0x22, 0x210014ecc0, 0x5b)
    /root/riscv-go/src/cmd/go/internal/modfetch/cache.go:157 +0xec fp=0x21000626c8 sp=0x2100062658 pc=0x536464
cmd/go/internal/modfetch.(*cachingRepo).GoMod.func1(0x21007d24c0, 0x0)
    /root/riscv-go/src/cmd/go/internal/modfetch/cache.go:232 +0xb8 fp=0x21000627a8 sp=0x21000626c8 pc=0x549d60
cmd/go/internal/par.(*Cache).Do(0x2100546150, 0x60c560, 0x2100720380, 0x2100062868, 0x22, 0x2100609290)
    /root/riscv-go/src/cmd/go/internal/par/work.go:128 +0x130 fp=0x2100062800 sp=0x21000627a8 pc=0x24ee28
cmd/go/internal/modfetch.(*cachingRepo).GoMod(0x2100546140, 0x21007722a0, 0x22, 0x2100546140, 0x0, 0x0, 0x0, 0x0)
    /root/riscv-go/src/cmd/go/internal/modfetch/cache.go:223 +0xe0 fp=0x21000628d0 sp=0x2100062800 pc=0x536808
cmd/go/internal/modfetch.GoMod(0x2100728521, 0x11, 0x21007722a0, 0x22, 0x21007722a3, 0x1, 0x21007722a5, 0x1, 0x0)
    /root/riscv-go/src/cmd/go/internal/modfetch/cache.go:311 +0x120 fp=0x2100062960 sp=0x21000628d0 pc=0x536eb0
cmd/go/internal/modload.(*mvsReqs).required(0x21003c7960, 0x2100728521, 0x11, 0x21007722a0, 0x22, 0x2100062ca0, 0x10, 0x8, 0x52ef6bbb8f63bf, 0x9de2c)
    /root/riscv-go/src/cmd/go/internal/modload/load.go:971 +0x47c fp=0x2100062b48 sp=0x2100062960 pc=0x5699e4
cmd/go/internal/modload.(*mvsReqs).Required.func1(0x21007a61a0, 0x0)
    /root/riscv-go/src/cmd/go/internal/modload/load.go:855 +0x60 fp=0x2100062cb0 sp=0x2100062b48 pc=0x570810
cmd/go/internal/par.(*Cache).Do(0x21003c7978, 0x655ce0, 0x21007a6180, 0x2100062db0, 0x9cf74, 0x21002b4360)
    /root/riscv-go/src/cmd/go/internal/par/work.go:128 +0x130 fp=0x2100062d08 sp=0x2100062cb0 pc=0x24ee28
cmd/go/internal/modload.(*mvsReqs).Required(0x21003c7960, 0x2100728521, 0x11, 0x21007722a0, 0x22, 0x21007a6100, 0x1, 0x1, 0x0, 0x0)
    /root/riscv-go/src/cmd/go/internal/modload/load.go:854 +0xd4 fp=0x2100062de0 sp=0x2100062d08 pc=0x569294
cmd/go/internal/mvs.buildList.func1(0x655ce0, 0x21007a6160)
    /root/riscv-go/src/cmd/go/internal/mvs/mvs.go:88 +0xdc fp=0x2100062f00 sp=0x2100062de0 pc=0x55375c
cmd/go/internal/par.(*Work).runner(0x210018ae80)
    /root/riscv-go/src/cmd/go/internal/par/work.go:101 +0x1b4 fp=0x2100062f38 sp=0x2100062f00 pc=0x24ec8c
cmd/go/internal/par.(*Work).Do(0x210018ae80, 0xa, 0x21003d18c0)
    /root/riscv-go/src/cmd/go/internal/par/work.go:69 +0x104 fp=0x2100062f60 sp=0x2100062f38 pc=0x24ea44
cmd/go/internal/mvs.buildList(0x21003e7080, 0x1e, 0x0, 0x0, 0x7b31e0, 0x21003c7960, 0x0, 0x10, 0x6fd878, 0x1daa4, ...)
    /root/riscv-go/src/cmd/go/internal/mvs/mvs.go:86 +0x1f8 fp=0x21000631a8 sp=0x2100062f60 pc=0x5514a0
cmd/go/internal/mvs.BuildList(...)
    /root/riscv-go/src/cmd/go/internal/mvs/mvs.go:73
cmd/go/internal/modload.(*loader).load(0x21003b43c0, 0x6fd900)
    /root/riscv-go/src/cmd/go/internal/modload/load.go:491 +0xe8 fp=0x2100063508 sp=0x21000631a8 pc=0x566670
cmd/go/internal/modload.ReloadBuildList(0x449bc, 0x15577b9000, 0x20)
    /root/riscv-go/src/cmd/go/internal/modload/load.go:288 +0x70 fp=0x2100063520 sp=0x2100063508 pc=0x565e30
cmd/go/internal/modload.LoadBuildList(0x2a524, 0x2b9e8, 0x15575b7300)
    /root/riscv-go/src/cmd/go/internal/modload/load.go:281 +0x38 fp=0x2100063540 sp=0x2100063520 pc=0x565d80
cmd/go/internal/modget.runGet(0xb37320, 0x210001c1d0, 0x1, 0x1)
    /root/riscv-go/src/cmd/go/internal/modget/get.go:218 +0x1a4 fp=0x2100063db8 sp=0x2100063540 pc=0x58f874
main.main()
    /root/riscv-go/src/cmd/go/main.go:219 +0xdac fp=0x2100063f98 sp=0x2100063db8 pc=0x5b04fc
runtime.main()
    /root/riscv-go/src/runtime/proc.go:200 +0x290 fp=0x2100063fd8 sp=0x2100063f98 pc=0x4e468
runtime.goexit()
    /root/riscv-go/src/runtime/asm_riscv64.s:467 +0x4 fp=0x2100063fd8 sp=0x2100063fd8 pc=0x865ec

goroutine 5 [syscall]:
os/signal.signal_recv(0x0)
    /root/riscv-go/src/runtime/sigqueue.go:139 +0x234
os/signal.loop()
    /root/riscv-go/src/os/signal/signal_unix.go:23 +0x2c
created by os/signal.init.0
    /root/riscv-go/src/os/signal/signal_unix.go:29 +0x54

goroutine 6 [sync.Cond.Wait]:
runtime.goparkunlock(...)
    /root/riscv-go/src/runtime/proc.go:307
sync.runtime_notifyListWait(0x210018aec8, 0x5)
    /root/riscv-go/src/runtime/sema.go:510 +0x168
sync.(*Cond).Wait(0x210018aeb8)
    /root/riscv-go/src/sync/cond.go:56 +0x94
cmd/go/internal/par.(*Work).runner(0x210018ae80)
    /root/riscv-go/src/cmd/go/internal/par/work.go:87 +0x38
created by cmd/go/internal/par.(*Work).Do
    /root/riscv-go/src/cmd/go/internal/par/work.go:67 +0xd0

goroutine 7 [sync.Cond.Wait]:
runtime.goparkunlock(...)
    /root/riscv-go/src/runtime/proc.go:307
sync.runtime_notifyListWait(0x210018aec8, 0x1)
    /root/riscv-go/src/runtime/sema.go:510 +0x168
sync.(*Cond).Wait(0x210018aeb8)
    /root/riscv-go/src/sync/cond.go:56 +0x94
cmd/go/internal/par.(*Work).runner(0x210018ae80)
    /root/riscv-go/src/cmd/go/internal/par/work.go:87 +0x38
created by cmd/go/internal/par.(*Work).Do
    /root/riscv-go/src/cmd/go/internal/par/work.go:67 +0xd0

goroutine 8 [sync.Cond.Wait]:
runtime.goparkunlock(...)
    /root/riscv-go/src/runtime/proc.go:307
sync.runtime_notifyListWait(0x210018aec8, 0x8)
    /root/riscv-go/src/runtime/sema.go:510 +0x168
sync.(*Cond).Wait(0x210018aeb8)
    /root/riscv-go/src/sync/cond.go:56 +0x94
cmd/go/internal/par.(*Work).runner(0x210018ae80)
    /root/riscv-go/src/cmd/go/internal/par/work.go:87 +0x38
created by cmd/go/internal/par.(*Work).Do
    /root/riscv-go/src/cmd/go/internal/par/work.go:67 +0xd0

goroutine 9 [sync.Cond.Wait]:
runtime.goparkunlock(...)
    /root/riscv-go/src/runtime/proc.go:307
sync.runtime_notifyListWait(0x210018aec8, 0x4)
    /root/riscv-go/src/runtime/sema.go:510 +0x168
sync.(*Cond).Wait(0x210018aeb8)
    /root/riscv-go/src/sync/cond.go:56 +0x94
cmd/go/internal/par.(*Work).runner(0x210018ae80)
    /root/riscv-go/src/cmd/go/internal/par/work.go:87 +0x38
created by cmd/go/internal/par.(*Work).Do
    /root/riscv-go/src/cmd/go/internal/par/work.go:67 +0xd0

goroutine 10 [sync.Cond.Wait]:
runtime.goparkunlock(...)
    /root/riscv-go/src/runtime/proc.go:307
sync.runtime_notifyListWait(0x210018aec8, 0x2)
    /root/riscv-go/src/runtime/sema.go:510 +0x168
sync.(*Cond).Wait(0x210018aeb8)
    /root/riscv-go/src/sync/cond.go:56 +0x94
cmd/go/internal/par.(*Work).runner(0x210018ae80)
    /root/riscv-go/src/cmd/go/internal/par/work.go:87 +0x38
created by cmd/go/internal/par.(*Work).Do
    /root/riscv-go/src/cmd/go/internal/par/work.go:67 +0xd0

goroutine 11 [syscall]:
syscall.Syscall6(0x5f, 0x1, 0x3375, 0x2100414c70, 0x1000004, 0x0, 0x0, 0x149b34, 0x2100414c68, 0x83510)
    /root/riscv-go/src/syscall/asm_linux_riscv64.s:41 +0x14
os.(*Process).blockUntilWaitable(0x210002a9f0, 0x0, 0xc, 0x1)
    /root/riscv-go/src/os/wait_waitid.go:31 +0x8c
os.(*Process).wait(0x210002a9f0, 0x6fe390, 0x6fe398, 0x6fe388)
    /root/riscv-go/src/os/exec_unix.go:22 +0x48
os.(*Process).Wait(...)
    /root/riscv-go/src/os/exec.go:125
os/exec.(*Cmd).Wait(0x2100169340, 0x0, 0x0)
    /root/riscv-go/src/os/exec/exec.go:474 +0x70
os/exec.(*Cmd).Run(0x2100169340, 0x3, 0x21003d1b90)
    /root/riscv-go/src/os/exec/exec.go:318 +0x74
cmd/go/internal/modfetch/codehost.RunWithStdin(0x21001f20c0, 0x5b, 0x0, 0x0, 0x2100415050, 0x4, 0x4, 0x0, 0x0, 0x0, ...)
    /root/riscv-go/src/cmd/go/internal/modfetch/codehost/codehost.go:285 +0x80c
cmd/go/internal/modfetch/codehost.Run(...)
    /root/riscv-go/src/cmd/go/internal/modfetch/codehost/codehost.go:225
cmd/go/internal/modfetch/codehost.(*gitRepo).loadRefs(0x21004a80b0)
    /root/riscv-go/src/cmd/go/internal/modfetch/codehost/git.go:165 +0xec
sync.(*Once).Do(0x21004a8118, 0x21004152c0)
    /root/riscv-go/src/sync/once.go:44 +0x118
cmd/go/internal/modfetch/codehost.(*gitRepo).stat(0x21004a80b0, 0x21003e0908, 0x6, 0x0, 0x0, 0x0)
    /root/riscv-go/src/cmd/go/internal/modfetch/codehost/git.go:281 +0x140
cmd/go/internal/modfetch/codehost.(*gitRepo).Stat.func1(0x2100365900, 0x0)
    /root/riscv-go/src/cmd/go/internal/modfetch/codehost/git.go:460 +0x44
cmd/go/internal/par.(*Cache).Do(0x21004a80f0, 0x60c560, 0x210035f140, 0x21004154d0, 0x1, 0x21003e090d)
    /root/riscv-go/src/cmd/go/internal/par/work.go:128 +0x130
cmd/go/internal/modfetch/codehost.(*gitRepo).Stat(0x21004a80b0, 0x21003e0908, 0x6, 0x1, 0x21003e090b, 0x1)
    /root/riscv-go/src/cmd/go/internal/modfetch/codehost/git.go:459 +0x168
cmd/go/internal/modfetch.(*codeRepo).Stat(0x210018b280, 0x21003e0908, 0x6, 0x12, 0x2100415678, 0x2)
    /root/riscv-go/src/cmd/go/internal/modfetch/coderepo.go:155 +0x16c
cmd/go/internal/modfetch.(*cachingRepo).Stat.func1(0x21003658e0, 0x0)
    /root/riscv-go/src/cmd/go/internal/modfetch/cache.go:166 +0xbc
cmd/go/internal/par.(*Cache).Do(0x2100359690, 0x60c560, 0x210035f0e0, 0x2100415740, 0x6, 0x21003e0d90)
    /root/riscv-go/src/cmd/go/internal/par/work.go:128 +0x130
cmd/go/internal/modfetch.(*cachingRepo).Stat(0x2100359680, 0x21003e0908, 0x6, 0x6, 0x21002d2230, 0x44)
    /root/riscv-go/src/cmd/go/internal/modfetch/cache.go:157 +0xec
cmd/go/internal/modfetch.(*cachingRepo).GoMod.func1(0x21003658c0, 0x0)
    /root/riscv-go/src/cmd/go/internal/modfetch/cache.go:232 +0xb8
cmd/go/internal/par.(*Cache).Do(0x2100359690, 0x60c560, 0x210035f0b0, 0x2100415900, 0x6, 0x21003e0d70)
    /root/riscv-go/src/cmd/go/internal/par/work.go:128 +0x130
cmd/go/internal/modfetch.(*cachingRepo).GoMod(0x2100359680, 0x21003e0908, 0x6, 0x2100359680, 0x0, 0x0, 0x0, 0x0)
    /root/riscv-go/src/cmd/go/internal/modfetch/cache.go:223 +0xe0
cmd/go/internal/modfetch.GoMod(0x21003e70a0, 0x16, 0x21003e0908, 0x6, 0x21003e090b, 0x1, 0x21003e090d, 0x1, 0x0)
    /root/riscv-go/src/cmd/go/internal/modfetch/cache.go:311 +0x120
cmd/go/internal/modload.(*mvsReqs).required(0x21003c7960, 0x21003e70a0, 0x16, 0x21003e0908, 0x6, 0x2100415d38, 0x10, 0x8, 0x52ef6bbb8f63bf, 0x9de2c)
    /root/riscv-go/src/cmd/go/internal/modload/load.go:971 +0x47c
cmd/go/internal/modload.(*mvsReqs).Required.func1(0x210025e240, 0x0)
    /root/riscv-go/src/cmd/go/internal/modload/load.go:855 +0x60
cmd/go/internal/par.(*Cache).Do(0x21003c7978, 0x655ce0, 0x210025e220, 0x2100415e48, 0x0, 0x0)
    /root/riscv-go/src/cmd/go/internal/par/work.go:128 +0x130
cmd/go/internal/modload.(*mvsReqs).Required(0x21003c7960, 0x21003e70a0, 0x16, 0x21003e0908, 0x6, 0x0, 0x0, 0x0, 0x0, 0x0)
    /root/riscv-go/src/cmd/go/internal/modload/load.go:854 +0xd4
cmd/go/internal/mvs.buildList.func1(0x655ce0, 0x21003654e0)
    /root/riscv-go/src/cmd/go/internal/mvs/mvs.go:88 +0xdc
cmd/go/internal/par.(*Work).runner(0x210018ae80)
    /root/riscv-go/src/cmd/go/internal/par/work.go:101 +0x1b4
created by cmd/go/internal/par.(*Work).Do
    /root/riscv-go/src/cmd/go/internal/par/work.go:67 +0xd0

goroutine 12 [sync.Cond.Wait]:
runtime.goparkunlock(...)
    /root/riscv-go/src/runtime/proc.go:307
sync.runtime_notifyListWait(0x210018aec8, 0x6)
    /root/riscv-go/src/runtime/sema.go:510 +0x168
sync.(*Cond).Wait(0x210018aeb8)
    /root/riscv-go/src/sync/cond.go:56 +0x94
cmd/go/internal/par.(*Work).runner(0x210018ae80)
    /root/riscv-go/src/cmd/go/internal/par/work.go:87 +0x38
created by cmd/go/internal/par.(*Work).Do
    /root/riscv-go/src/cmd/go/internal/par/work.go:67 +0xd0

goroutine 13 [sync.Cond.Wait]:
runtime.goparkunlock(...)
    /root/riscv-go/src/runtime/proc.go:307
sync.runtime_notifyListWait(0x210018aec8, 0x3)
    /root/riscv-go/src/runtime/sema.go:510 +0x168
sync.(*Cond).Wait(0x210018aeb8)
    /root/riscv-go/src/sync/cond.go:56 +0x94
cmd/go/internal/par.(*Work).runner(0x210018ae80)
    /root/riscv-go/src/cmd/go/internal/par/work.go:87 +0x38
created by cmd/go/internal/par.(*Work).Do
    /root/riscv-go/src/cmd/go/internal/par/work.go:67 +0xd0

goroutine 14 [sync.Cond.Wait]:
runtime.goparkunlock(...)
    /root/riscv-go/src/runtime/proc.go:307
sync.runtime_notifyListWait(0x210018aec8, 0x7)
    /root/riscv-go/src/runtime/sema.go:510 +0x168
sync.(*Cond).Wait(0x210018aeb8)
    /root/riscv-go/src/sync/cond.go:56 +0x94
cmd/go/internal/par.(*Work).runner(0x210018ae80)
    /root/riscv-go/src/cmd/go/internal/par/work.go:87 +0x38
created by cmd/go/internal/par.(*Work).Do
    /root/riscv-go/src/cmd/go/internal/par/work.go:67 +0xd0

goroutine 40 [IO wait]:
internal/poll.runtime_pollWait(0x15577d1f08, 0x72, 0xffffffffffffffff)
    /root/riscv-go/src/runtime/netpoll.go:182 +0x64
internal/poll.(*pollDesc).wait(0x21003b4eb8, 0x72, 0x201, 0x200, 0xffffffffffffffff)
    /root/riscv-go/src/internal/poll/fd_poll_runtime.go:87 +0xd8
internal/poll.(*pollDesc).waitRead(...)
    /root/riscv-go/src/internal/poll/fd_poll_runtime.go:92
internal/poll.(*FD).Read(0x21003b4ea0, 0x2100566400, 0x200, 0x200, 0x0, 0x0, 0x0)
    /root/riscv-go/src/internal/poll/fd_unix.go:169 +0x1f8
os.(*File).read(...)
    /root/riscv-go/src/os/file_unix.go:263
os.(*File).Read(0x210000c720, 0x2100566400, 0x200, 0x200, 0x0, 0x0, 0x0)
    /root/riscv-go/src/os/file.go:108 +0x80
bytes.(*Buffer).ReadFrom(0x21005b6000, 0x7a7ae0, 0x210000c720, 0x1557849078, 0x21005b6000, 0x1)
    /root/riscv-go/src/bytes/buffer.go:207 +0xe0
io.copyBuffer(0x7a70c0, 0x21005b6000, 0x7a7ae0, 0x210000c720, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
    /root/riscv-go/src/io/io.go:388 +0x310
io.Copy(...)
    /root/riscv-go/src/io/io.go:364
os/exec.(*Cmd).writerDescriptor.func1(0x0, 0x0)
    /root/riscv-go/src/os/exec/exec.go:288 +0x6c
os/exec.(*Cmd).Start.func1(0x2100169340, 0x2100365a80)
    /root/riscv-go/src/os/exec/exec.go:409 +0x2c
created by os/exec.(*Cmd).Start
    /root/riscv-go/src/os/exec/exec.go:408 +0x47c

goroutine 41 [IO wait]:
internal/poll.runtime_pollWait(0x15577d1d68, 0x72, 0xffffffffffffffff)
    /root/riscv-go/src/runtime/netpoll.go:182 +0x64
internal/poll.(*pollDesc).wait(0x21003b4f78, 0x72, 0x201, 0x200, 0xffffffffffffffff)
    /root/riscv-go/src/internal/poll/fd_poll_runtime.go:87 +0xd8
internal/poll.(*pollDesc).waitRead(...)
    /root/riscv-go/src/internal/poll/fd_poll_runtime.go:92
internal/poll.(*FD).Read(0x21003b4f60, 0x2100562200, 0x200, 0x200, 0x0, 0x0, 0x0)
    /root/riscv-go/src/internal/poll/fd_unix.go:169 +0x1f8
os.(*File).read(...)
    /root/riscv-go/src/os/file_unix.go:263
os.(*File).Read(0x210000c738, 0x2100562200, 0x200, 0x200, 0x0, 0x0, 0x0)
    /root/riscv-go/src/os/file.go:108 +0x80
bytes.(*Buffer).ReadFrom(0x21003affb0, 0x7a7ae0, 0x210000c738, 0x1557849078, 0x21003affb0, 0x1)
    /root/riscv-go/src/bytes/buffer.go:207 +0xe0
io.copyBuffer(0x7a70c0, 0x21003affb0, 0x7a7ae0, 0x210000c738, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
    /root/riscv-go/src/io/io.go:388 +0x310
io.Copy(...)
    /root/riscv-go/src/io/io.go:364
os/exec.(*Cmd).writerDescriptor.func1(0x0, 0x0)
    /root/riscv-go/src/os/exec/exec.go:288 +0x6c
os/exec.(*Cmd).Start.func1(0x2100169340, 0x2100365ac0)
    /root/riscv-go/src/os/exec/exec.go:409 +0x2c
created by os/exec.(*Cmd).Start
    /root/riscv-go/src/os/exec/exec.go:408 +0x47c

goroutine 47 [IO wait]:
internal/poll.runtime_pollWait(0x15577d1bc8, 0x72, 0xffffffffffffffff)
    /root/riscv-go/src/runtime/netpoll.go:182 +0x64
internal/poll.(*pollDesc).wait(0x21001fc318, 0x72, 0xe00, 0xe37, 0xffffffffffffffff)
    /root/riscv-go/src/internal/poll/fd_poll_runtime.go:87 +0xd8
internal/poll.(*pollDesc).waitRead(...)
    /root/riscv-go/src/internal/poll/fd_poll_runtime.go:92
internal/poll.(*FD).Read(0x21001fc300, 0x210066e000, 0xe37, 0xe37, 0x0, 0x0, 0x0)
    /root/riscv-go/src/internal/poll/fd_unix.go:169 +0x1f8
net.(*netFD).Read(0x21001fc300, 0x210066e000, 0xe37, 0xe37, 0x210066e046, 0x8, 0xdf1)
    /root/riscv-go/src/net/fd_unix.go:202 +0x50
net.(*conn).Read(0x2100548010, 0x210066e000, 0xe37, 0xe37, 0x0, 0x0, 0x0)
    /root/riscv-go/src/net/net.go:177 +0x74
crypto/tls.(*atLeastReader).Read(0x21007c2400, 0x210066e000, 0xe37, 0xe37, 0x3ff, 0x1, 0x177)
    /root/riscv-go/src/crypto/tls/conn.go:761 +0x64
bytes.(*Buffer).ReadFrom(0x2100522258, 0x7a7360, 0x21007c2400, 0x3af348, 0x63e7e0, 0x6a3f40)
    /root/riscv-go/src/bytes/buffer.go:207 +0xe0
crypto/tls.(*Conn).readFromUntil(0x2100522000, 0x7a7860, 0x2100548010, 0x5, 0x2100548010, 0x1d360)
    /root/riscv-go/src/crypto/tls/conn.go:783 +0x128
crypto/tls.(*Conn).readRecordOrCCS(0x2100522000, 0x6fe700, 0x2100522138, 0x21007a6260)
    /root/riscv-go/src/crypto/tls/conn.go:590 +0x14c
crypto/tls.(*Conn).readRecord(...)
    /root/riscv-go/src/crypto/tls/conn.go:558
crypto/tls.(*Conn).Read(0x2100522000, 0x210066f000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
    /root/riscv-go/src/crypto/tls/conn.go:1236 +0x18c
bufio.(*Reader).Read(0x2100144c60, 0x210005b378, 0x9, 0x9, 0x21ffffffff, 0x456d70, 0x21004a6360)
    /root/riscv-go/src/bufio/bufio.go:223 +0x2dc
io.ReadAtLeast(0x7a7060, 0x2100144c60, 0x210005b378, 0x9, 0x9, 0x9, 0x2100348100, 0x7a75c0, 0x21006fc340)
    /root/riscv-go/src/io/io.go:310 +0x90
io.ReadFull(...)
    /root/riscv-go/src/io/io.go:329
net/http.http2readFrameHeader(0x210005b378, 0x9, 0x9, 0x7a7060, 0x2100144c60, 0x0, 0x0, 0x210053a930, 0x0)
    /root/riscv-go/src/net/http/h2_bundle.go:1476 +0x80
net/http.(*http2Framer).ReadFrame(0x210005b340, 0x210053a930, 0x0, 0x0, 0x0)
    /root/riscv-go/src/net/http/h2_bundle.go:1734 +0xa8
net/http.(*http2clientConnReadLoop).run(0x2100927fc0, 0x6fe1e8, 0x2100927fc0)
    /root/riscv-go/src/net/http/h2_bundle.go:8102 +0x8c
net/http.(*http2ClientConn).readLoop(0x2100001080)
    /root/riscv-go/src/net/http/h2_bundle.go:8030 +0x7c
created by net/http.(*http2Transport).newClientConn
    /root/riscv-go/src/net/http/h2_bundle.go:7093 +0x740

But disabling GC:

[root@fedora-riscv gojsontoyaml]# GOGC=off go get .
go: finding github.com/ghodss/yaml v1.0.0
go: finding gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405
go: downloading github.com/ghodss/yaml v1.0.0
go: extracting github.com/ghodss/yaml v1.0.0
go: downloading gopkg.in/yaml.v2 v2.1.1
go: extracting gopkg.in/yaml.v2 v2.1.1
[root@fedora-riscv gojsontoyaml]# go build .
[root@fedora-riscv gojsontoyaml]# ls
gojsontoyaml  go.mod  Gopkg.lock  Gopkg.toml  go.sum  LICENSE  main.go  README.md  vendor

And it runs fine:

[root@fedora-riscv gojsontoyaml]# echo "{a: 1, b: {b1: 1, b2: 2}}" | ./gojsontoyaml
a: 1
b:
  b1: 1
  b2: 2

Try connecting -- maybe he already got your pubkeys through GitHub.

Yep - you should be all set @marcopeereboom

Still asks for a password.

I am using this key:
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIL1c5HWmHG/Ne4tBuVb8POnlAbm/gZKD6lb7GPS0hMAi

Try again now.

Still asks for a password. I added an ssh config to explicitly only use that identity.

Are you on irc or keybase so that we don't pollute this issue with this anymore?

Oh, sorry, my sshd doesn't have ed25519 support. Do you have an RSA key? I'm ddevault on freenode.

CC @palmer-dabbelt @jim-wilson @alistair23

If there are issues with QEMU, kernel, glibc or toolchain these people (i.e. maintainers) are the best persons help out.

Yeah, let me know if you see an issue with RISC-V QEMU and I can investigate.

@alistair23 try running the following under RISC-V QEMU:

https://gist.github.com/4a6f656c/8433032a3f70893a278259f8108aad90

https://gist.github.com/4a6f656c/d883091f5ca811822720213be343a75a

They may need to be run a few times, but seem to eventually fail under qemu, yet I'm told they work correctly under real hardware.

I tried this, and wasn't able to reproduce the problem. I tried hardware, system qemu, and user qemu, and they all worked. But maybe you have a different version of something, or used different compiler options, etc.

@jim-wilson did you use bbl or opensbi?

Can you also paste the versions of various things you tried?

I used a Fedora Core 30 system running on hardware to compile the two testcases. I tried the binaries on hardware and they worked. I tried them with both user and system qemu, using both a riscv-qemu and an upstream qemu.org qemu, and it worked for me in all four cases.

FC30 uses bbl.

@jim-wilson have you tried increasing the TCOUNT variable for more threads? Sometimes on Qemu with 4 threads it work but with something like 40 threads it eats up data. On hardware it should work perfectly.

Nothing in this bug report mentions TCOUNT. I did try increasing it to 40, and now it is failing using system qemu with both an old riscv-qemu and a top of tree qemu.org. It still works on my HiFive Unleashed board though. And it works with a user mode qemu, both old and new, though this is using an older glibc.

So maybe a linux kernel bug or a system qemu bug, and I'm not an expert with either one of those.

@marcopeereboom mentioned up there to play with threads and iterations, that's what TCOUNT does. It's apparently a Qemu bug. I'm just clearing some stuff up and will post this into Qemu mailing list so @alistair23 and @palmer-dabbelt can help checking this out.

Yeah we are really leaning toward a qemu-system bug. I'll try to write up an issue but they use a silly bug tracker.

@marcopeereboom, Palmer pointed out to write to the mailing list at [email protected] (https://lists.nongnu.org/mailman/listinfo/qemu-riscv) describing the bug.

We seem to have liftoff 🚀Couple of failing tests but nothing of real interest and it seems relatively simple to fix.

Latest commits seem to fix the majority of the problems and I am running relatively large go programs in qemu-system-riscv.

Can you guys test and provide some feedback?

I still see some problems related to GC, now on the Unleashed board. I rebuilt my bootstrap on my Mac, transferred it to the board and checked-out the latest tree.

I tried to build go-jsonnet and got this error:

root@buildroot:~/go-jsonnet# git clone https://github.com/google/go-jsonnet --depth=1
root@buildroot:~/go-jsonnet# cd go-jsonnet

root@buildroot:~/go-jsonnet# go build ./cmd/jsonnet/
go: finding github.com/mattn/go-isatty v0.0.7
go: finding github.com/fatih/color v1.7.0
go: finding github.com/sergi/go-diff v1.0.0
go: finding github.com/stretchr/testify v1.3.0
go: finding github.com/mattn/go-colorable v0.1.1
go: finding github.com/mattn/go-isatty v0.0.5
go: finding golang.org/x/sys v0.0.0-20190222072716-a9d3bda3a223
go: finding github.com/pmezard/go-difflib v1.0.0
go: finding github.com/stretchr/objx v0.1.0
go: finding github.com/davecgh/go-spew v1.1.0
go: downloading github.com/fatih/color v1.7.0
go: extracting github.com/fatih/color v1.7.0
go: downloading github.com/mattn/go-isatty v0.0.7
go: downloading github.com/mattn/go-colorable v0.1.1
go: extracting github.com/mattn/go-isatty v0.0.7
go: downloading golang.org/x/sys v0.0.0-20190222072716-a9d3bda3a223
go: extracting github.com/mattn/go-colorable v0.1.1
go: extracting golang.org/x/sys v0.0.0-20190222072716-a9d3bda3a223
# golang.org/x/sys/unix
../go/pkg/mod/golang.org/x/[email protected]/unix/syscall_linux_gc.go:10:6: missing function body
../go/pkg/mod/golang.org/x/[email protected]/unix/syscall_linux_gc.go:14:6: missing function body
../go/pkg/mod/golang.org/x/[email protected]/unix/syscall_unix_gc.go:12:6: missing function body
../go/pkg/mod/golang.org/x/[email protected]/unix/syscall_unix_gc.go:13:6: missing function body
../go/pkg/mod/golang.org/x/[email protected]/unix/syscall_unix_gc.go:14:6: missing function body
../go/pkg/mod/golang.org/x/[email protected]/unix/syscall_unix_gc.go:15:6: missing function body
root@buildroot:~/go-jsonnet#
root@buildroot:~/go-jsonnet# uname -a
Linux buildroot 4.15.0-00044-g2b0aa1d #1 SMP Tue Mar 20 12:18:35 PDT 2018 riscv64 GNU/Linux
root@buildroot:~/go-jsonnet#
root@buildroot:~/go-jsonnet# go version
go version go1.12 linux/riscv64

Same error happened building echo.

I'm using a Debian rootfs. Go was built with:

root@buildroot:~/riscv-go# export GOROOT_BOOTSTRAP=/root/go-linux-riscv64-bootstrap
root@buildroot:~/riscv-go# export PATH="$(pwd)/misc/riscv:$(pwd)/bin:$PATH"
root@buildroot:~/riscv-go# cd src/
root@buildroot:~/riscv-go/src# ./make.bash
Building Go cmd/dist using /root/go-linux-riscv64-bootstrap.
Building Go toolchain1 using /root/go-linux-riscv64-bootstrap.
Building Go bootstrap cmd/go (go_bootstrap) using Go toolchain1.
Building Go toolchain2 using go_bootstrap and Go toolchain1.
Building Go toolchain3 using go_bootstrap and Go toolchain2.
Building packages and commands for linux/riscv64.
---
Installed Go for linux/riscv64 in /root/riscv-go
Installed commands in /root/riscv-go/bin

So that error is outside of go. I saw it on bolt db. That tree is not locked so we'll try to get that updated sooner rather than later.

Quick status update.

There are a couple of compiler/SSA issues that still need to be tracked down and maybe some additional polish but that is about it. We should be pretty healthy here in the next few weeks and therefore the second the tree opens we can create a pull request.

What this code does NOT do is 32 bit riscv. The code differences should be pretty trivial but someone has to do the work. So if you want to help and care about 32 bit, that is the next task at hand.

Quick status update.

I'm very excited about this work. Thanks for doing it.

There are a couple of compiler/SSA issues that still need to be tracked down and maybe some additional polish but that is about it. We should be pretty healthy here in the next few weeks and therefore the second the tree opens we can create a pull request.

Please do create a pull request as soon as the port is ready so it can be reviewed and ready to merge when the tree opens. Review of a new port takes considerable time and will probably result in changes that have to be integrated before merging.

```go: extracting golang.org/x/sys v0.0.0-20190222072716-a9d3bda3a223

golang.org/x/sys/unix

../go/pkg/mod/golang.org/x/[email protected]/unix/syscall_linux_gc.go:10:6: missing function body
../go/pkg/mod/golang.org/x/[email protected]/unix/syscall_linux_gc.go:14:6: missing function body
../go/pkg/mod/golang.org/x/[email protected]/unix/syscall_unix_gc.go:12:6: missing function body
../go/pkg/mod/golang.org/x/[email protected]/unix/syscall_unix_gc.go:13:6: missing function body
../go/pkg/mod/golang.org/x/[email protected]/unix/syscall_unix_gc.go:14:6: missing function body
../go/pkg/mod/golang.org/x/[email protected]/unix/syscall_unix_gc.go:15:6: missing function body```

This is due to missing assembly syscall wrappers for linux/riscv64 in x/sys/unix. We didn't add these yet because the assembly syntax for riscv64 is not yet considered final, please see the discussion on https://golang.org/cl/157901. I abandoned the CL for the time being, but once the riscv64 port is submitted for review and the assembly syntax deemed stable we can resurrect said CL.

That repo is open so if you feel inclined :-)

That code uses mod.

@marcopeereboom What do you mean by "mod"?

@carlosedp The code that you are building, that fails, is using modules, which means that it is downloading the golang.org/x/sys/unix package to build from the Internet or from some module cache. It is not using your riscv64-specific variant of golang.org/x/sys/unix.

I've build the most recent x/sys package with Risc-V ASM instructions, replaced it on my repo and it successfully tested and build the application I was seeing the GC problems previously.

The merge is on https://github.com/carlosedp/sys/tree/riscv64

I've cloned it into my $GOPATH/src/golang.org/x/sys and copied it over to '$GOPATH/pkg/mod/golang.org/x/sys....' where go modules are downloaded now.

$ GOOS=linux GOARCH=riscv64 go test
PASS
ok      golang.org/x/sys/unix   0.658s

An application like Go-Jsonnet that was previously failing, now builds and runs:

$ go build ./cmd/jsonnet/

$ cd cmd/jsonnet
$ go test
PASS
ok      github.com/google/go-jsonnet/cmd/jsonnet    0.015s

$ ./jsonnet -e "local a = [1,2]; {a: a}"
{
   "a": [
      1,
      2
   ]
}

This is on the Unleashed with these specs:

carlosedp@HiFiveU:~/work $ cat /etc/os-release
PRETTY_NAME="Debian GNU/Linux 10 (buster)"
NAME="Debian GNU/Linux"
VERSION_ID="10"
VERSION="10 (buster)"
VERSION_CODENAME=buster
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"
carlosedp@HiFiveU:~/work $ uname -a
Linux HiFiveU 4.19.0-sifive-1+ #9 SMP Thu May 16 12:46:59 -03 2019 riscv64 GNU/Linux

Change https://golang.org/cl/177799 mentions this issue: unix: provide linux/riscv64 assembly for syscalls

I've successfully built Prometheus on Unleashed.

Had to add support to x/net module. Already submitted to Gerrit on: https://go-review.googlesource.com/c/net/+/177997

The Prometheus change is on my repo (https://github.com/carlosedp/prometheus/tree/riscv64). I also had to link to the RiscV x/sys package.

Other than that, it built fine.

All tests should now pass.

Change https://golang.org/cl/177997 mentions this issue: ipv4, ipv6, internal/socket: add riscv64 support

I'm still seeing failed tests on runtime. cmd/go is failing with timeout, even increasing it, it fails. Details as seen below:

Test run:

carlosedp@HiFiveU:~/work/riscv-go-new/src $ ./run.bash

##### Building packages and commands.

##### Testing packages.
ok      archive/tar 1.221s
ok      archive/zip 280.659s
ok      bufio   1.032s
ok      bytes   5.210s
ok      compress/bzip2  1.190s
ok      compress/flate  12.867s
ok      compress/gzip   0.541s
ok      compress/lzw    0.165s
ok      compress/zlib   0.333s
ok      container/heap  0.218s
ok      container/list  0.067s
ok      container/ring  0.368s
ok      context 1.193s
ok      crypto  0.058s
ok      crypto/aes  0.202s
ok      crypto/cipher   1.523s
ok      crypto/des  0.081s
ok      crypto/dsa  0.205s
ok      crypto/ecdsa    4.356s
ok      crypto/elliptic 0.684s
ok      crypto/hmac 0.053s
ok      crypto/internal/subtle  0.038s
ok      crypto/md5  0.069s
ok      crypto/rand 0.724s
ok      crypto/rc4  0.554s
ok      crypto/rsa  2.163s
ok      crypto/sha1 0.238s
ok      crypto/sha256   0.202s
ok      crypto/sha512   0.086s
ok      crypto/subtle   0.105s
ok      crypto/tls  39.399s
ok      crypto/x509 42.224s
ok      database/sql    2.853s
ok      database/sql/driver 0.047s
ok      debug/dwarf 0.279s
ok      debug/elf   0.499s
ok      debug/gosym 0.116s
ok      debug/macho 0.118s
ok      debug/pe    0.173s
ok      debug/plan9obj  0.100s
ok      encoding/ascii85    0.124s
ok      encoding/asn1   0.104s
ok      encoding/base32 0.563s
ok      encoding/base64 0.194s
ok      encoding/binary 0.121s
ok      encoding/csv    0.188s
ok      encoding/gob    0.539s
ok      encoding/hex    0.170s
ok      encoding/json   9.944s
ok      encoding/pem    0.269s
ok      encoding/xml    0.346s
ok      errors  0.143s
ok      expvar  0.082s
ok      flag    0.144s
ok      fmt 3.973s
ok      go/ast  0.102s
ok      go/build    13.555s
ok      go/constant 0.051s
ok      go/doc  1.349s
ok      go/format   0.167s
ok      go/importer 5.556s
ok      go/internal/gccgoimporter   0.348s
ok      go/internal/gcimporter  5.299s
ok      go/internal/srcimporter 44.684s
ok      go/parser   0.517s
ok      go/printer  4.350s
ok      go/scanner  0.146s
ok      go/token    2.023s
ok      go/types    19.314s
ok      hash    0.122s
ok      hash/adler32    0.149s
ok      hash/crc32  0.138s
ok      hash/crc64  0.056s
ok      hash/fnv    0.065s
ok      html    0.055s
ok      html/template   0.600s
ok      image   1.363s
ok      image/color 0.237s
ok      image/draw  0.645s
ok      image/gif   7.717s
ok      image/jpeg  3.084s
ok      image/png   0.957s
ok      index/suffixarray   0.154s
ok      internal/cpu    0.111s
ok      internal/fmtsort    0.072s
ok      internal/poll   0.423s
ok      internal/singleflight   0.111s
ok      internal/trace  27.444s
ok      internal/x/crypto/chacha20poly1305  1.846s
ok      internal/x/crypto/cryptobyte    0.090s
ok      internal/x/crypto/curve25519    0.549s
ok      internal/x/crypto/hkdf  0.058s
ok      internal/x/crypto/internal/chacha20 1.238s
ok      internal/x/crypto/poly1305  0.942s
ok      internal/x/net/dns/dnsmessage   0.452s
ok      internal/x/net/http/httpguts    0.138s
ok      internal/x/net/http/httpproxy   0.144s
ok      internal/x/net/http2/hpack  0.226s
ok      internal/x/net/idna 0.152s
ok      internal/x/net/nettest  3.912s
ok      internal/x/text/transform   0.040s
ok      internal/x/text/unicode/norm    0.120s
ok      internal/xcoff  0.178s
ok      io  0.262s
ok      io/ioutil   0.597s
ok      log 0.130s
ok      log/syslog  1.475s
ok      math    0.103s
ok      math/big    37.941s
ok      math/bits   0.155s
ok      math/cmplx  0.103s
ok      math/rand   3.191s
ok      mime    0.116s
ok      mime/multipart  11.246s
ok      mime/quotedprintable    2.732s
ok      net 45.325s
ok      net/http    35.456s
ok      net/http/cgi    4.918s
ok      net/http/cookiejar  0.220s
ok      net/http/fcgi   0.099s
ok      net/http/httptest   0.919s
ok      net/http/httptrace  0.076s
ok      net/http/httputil   1.005s
ok      net/http/internal   0.038s
ok      net/http/pprof  2.170s
ok      net/internal/socktest   0.076s
ok      net/mail    0.119s
ok      net/rpc 0.352s
ok      net/rpc/jsonrpc 0.081s
ok      net/smtp    0.236s
ok      net/textproto   0.062s
ok      net/url 0.172s
ok      os  2.472s
ok      os/exec 4.545s
ok      os/signal   8.526s
ok      os/user 0.069s
ok      path    0.056s
ok      path/filepath   0.930s
ok      plugin  0.061s
ok      reflect 3.565s
ok      regexp  2.426s
ok      regexp/syntax   6.032s
--- FAIL: TestNetpollDeadlock (60.17s)
    crash_test.go:95: testprognet NetpollDeadlock exit status: exit status 2
    crash_test.go:409: output does not start with "done\n":
        dialing
        SIGQUIT: quit
        PC=0x85534 m=0 sigcode=0

        goroutine 0 [idle]:
        runtime.futex(0x2682e8, 0x80, 0x0, 0x0, 0x0, 0x2678d0, 0x0, 0x0, 0x5305c, 0x2682e8, ...)
            /home/carlosedp/work/riscv-go-new/src/runtime/sys_linux_riscv64.s:339 +0x1c
        runtime.futexsleep(0x2682e8, 0x2100000000, 0xffffffffffffffff)
            /home/carlosedp/work/riscv-go-new/src/runtime/os_linux.go:46 +0x58
        runtime.notesleep(0x2682e8)
            /home/carlosedp/work/riscv-go-new/src/runtime/lock_futex.go:151 +0xe4
        runtime.stoplockedm()
            /home/carlosedp/work/riscv-go-new/src/runtime/proc.go:2076 +0xa4
        runtime.schedule()
            /home/carlosedp/work/riscv-go-new/src/runtime/proc.go:2477 +0x564
        runtime.park_m(0x2100000180)
            /home/carlosedp/work/riscv-go-new/src/runtime/proc.go:2605 +0xb8
        runtime.mcall(0x2100000180)
            /home/carlosedp/work/riscv-go-new/src/runtime/asm_riscv64.s:317 +0x54

        goroutine 1 [select, locked to thread]:
        net.(*sysDialer).dialParallel(0x21000ac100, 0x19cfc0, 0x21000100f0, 0x2100048560, 0x1, 0x1, 0x2100048570, 0x1, 0x1, 0x0, ...)
            /home/carlosedp/work/riscv-go-new/src/net/dial.go:482 +0x2f8
        net.(*Dialer).DialContext(0x2100078ef0, 0x19cfc0, 0x21000100f0, 0x176dc4, 0x3, 0x1789f7, 0xf, 0x0, 0x0, 0x0, ...)
            /home/carlosedp/work/riscv-go-new/src/net/dial.go:415 +0x604
        net.(*Dialer).Dial(...)
            /home/carlosedp/work/riscv-go-new/src/net/dial.go:340
        net.Dial(...)
            /home/carlosedp/work/riscv-go-new/src/net/dial.go:311
        main.NetpollDeadlockInit()
            /work/riscv-go-new/src/runtime/testdata/testprognet/net.go:19 +0x100
        main.registerInit(...)
            /work/riscv-go-new/src/runtime/testdata/testprognet/main.go:20
        main.init.0()
            /work/riscv-go-new/src/runtime/testdata/testprognet/net.go:13 +0x180

        goroutine 5 [syscall]:
        os/signal.signal_recv(0x0)
            /home/carlosedp/work/riscv-go-new/src/runtime/sigqueue.go:139 +0x234
        os/signal.loop()
            /home/carlosedp/work/riscv-go-new/src/os/signal/signal_unix.go:23 +0x2c
        created by os/signal.init.0
            /home/carlosedp/work/riscv-go-new/src/os/signal/signal_unix.go:29 +0x54

        goroutine 19 [IO wait]:
        internal/poll.runtime_pollWait(0x2002277f08, 0x77, 0x21000c8300)
            /home/carlosedp/work/riscv-go-new/src/runtime/netpoll.go:182 +0x64
        internal/poll.(*pollDesc).wait(0x21000d4098, 0x77, 0x19cf00, 0x21000e2000, 0x21000d4080)
            /home/carlosedp/work/riscv-go-new/src/internal/poll/fd_poll_runtime.go:87 +0xd8
        internal/poll.(*pollDesc).waitWrite(...)
            /home/carlosedp/work/riscv-go-new/src/internal/poll/fd_poll_runtime.go:96
        internal/poll.(*FD).WaitWrite(...)
            /home/carlosedp/work/riscv-go-new/src/internal/poll/fd_unix.go:498
        net.(*netFD).connect(0x21000d4080, 0x19cf80, 0x21000e2000, 0x0, 0x0, 0x19bc20, 0x21000e8000, 0x0, 0x0, 0x0, ...)
            /home/carlosedp/work/riscv-go-new/src/net/fd_unix.go:152 +0x2ec
        net.(*netFD).dial(0x21000d4080, 0x19cf80, 0x21000e2000, 0x19d460, 0x0, 0x19d460, 0x2100062ab0, 0x0, 0x1, 0x107eb8)
            /home/carlosedp/work/riscv-go-new/src/net/sock_posix.go:149 +0xe0
        net.socket(0x19cf80, 0x21000e2000, 0x176dc4, 0x3, 0xa, 0x1, 0x0, 0x0, 0x19d460, 0x0, ...)
            /home/carlosedp/work/riscv-go-new/src/net/sock_posix.go:70 +0x1a8
        net.internetSocket(0x19cf80, 0x21000e2000, 0x176dc4, 0x3, 0x19d460, 0x0, 0x19d460, 0x2100062ab0, 0x1, 0x0, ...)
            /home/carlosedp/work/riscv-go-new/src/net/ipsock_posix.go:141 +0xe4
        net.(*sysDialer).doDialTCP(0x21000ac100, 0x19cf80, 0x21000e2000, 0x0, 0x2100062ab0, 0x151560, 0x2804f8, 0x0)
            /home/carlosedp/work/riscv-go-new/src/net/tcpsock_posix.go:65 +0xa0
        net.(*sysDialer).dialTCP(0x21000ac100, 0x19cf80, 0x21000e2000, 0x0, 0x2100062ab0, 0x9e6b4, 0xf38e0, 0x1e6eee3b)
            /home/carlosedp/work/riscv-go-new/src/net/tcpsock_posix.go:61 +0xcc
        net.(*sysDialer).dialSingle(0x21000ac100, 0x19cf80, 0x21000e2000, 0x19bf00, 0x2100062ab0, 0x0, 0x0, 0x0, 0x0)
            /home/carlosedp/work/riscv-go-new/src/net/dial.go:571 +0x414
        net.(*sysDialer).dialSerial(0x21000ac100, 0x19cf80, 0x21000e2000, 0x2100048570, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0)
            /home/carlosedp/work/riscv-go-new/src/net/dial.go:539 +0x1d4
        net.(*sysDialer).dialParallel.func1(0x19cf80, 0x21000e2000, 0x21000e4000)
            /home/carlosedp/work/riscv-go-new/src/net/dial.go:460 +0x78
        created by net.(*sysDialer).dialParallel
            /home/carlosedp/work/riscv-go-new/src/net/dial.go:486 +0x504

        goroutine 20 [select]:
        net.(*netFD).connect.func2(0x19cf80, 0x21000e2000, 0x21000d4080, 0x21000d21e0, 0x21000d2180)
            /home/carlosedp/work/riscv-go-new/src/net/fd_unix.go:129 +0x98
        created by net.(*netFD).connect
            /home/carlosedp/work/riscv-go-new/src/net/fd_unix.go:128 +0x2b8

        ra  0x47d10 sp  0x3ffff48370
        gp  0x0 tp  0x267ba0
        t0  0xffffffffffffffff  t1  0x2682e8
        t2  0x1 s0  0xffffffffffffffff
        s1  0x1 a0  0x2682e8
        a1  0x80    a2  0x0
        a3  0x0 a4  0x0
        a5  0x0 a6  0x2100000208
        a7  0x62    s2  0x28
        s3  0x0 s4  0x17f890
        s5  0x1 s6  0x2
        s7  0x2100060120    s8  0x2100078c02
        s9  0x1 s10 0x197ecc
        s11 0x8 t3  0x0
        t4  0x21000c8370    t5  0x21000c8369
        t6  0x85518 pc  0x85534
FAIL
FAIL    runtime 152.248s
ok      runtime/debug   0.787s
ok      runtime/internal/atomic 0.361s
ok      runtime/internal/math   0.184s
ok      runtime/internal/sys    0.061s
ok      runtime/pprof   17.066s
ok      runtime/pprof/internal/profile  0.055s
ok      runtime/trace   60.891s
ok      sort    1.806s
ok      strconv 6.803s
ok      strings 4.886s
ok      sync    2.621s
ok      sync/atomic 0.316s
ok      syscall 0.202s
ok      testing 2.383s
ok      testing/quick   2.742s
ok      text/scanner    0.071s
ok      text/tabwriter  0.060s
ok      text/template   6.844s
ok      text/template/parse 0.477s
ok      time    7.990s
ok      unicode 0.054s
ok      unicode/utf16   0.094s
ok      unicode/utf8    0.134s
ok      cmd/addr2line   43.426s
ok      cmd/api 0.630s
ok      cmd/asm/internal/asm    18.099s
ok      cmd/asm/internal/lex    0.096s
ok      cmd/compile 0.072s
ok      cmd/compile/internal/gc 244.481s
ok      cmd/compile/internal/ssa    8.039s
ok      cmd/compile/internal/syntax 0.195s
ok      cmd/compile/internal/test   0.038s [no tests to run]
ok      cmd/compile/internal/types  0.113s
ok      cmd/cover   73.666s
ok      cmd/doc 1.573s
ok      cmd/fix 70.967s
SIGQUIT: quit
PC=0x8ca34 m=0 sigcode=0

goroutine 0 [idle]:
runtime.epollwait(0x3f00000004, 0x3fffa97b08, 0xffffffff00000080, 0x2000000001, 0xffffffff000000e9, 0x2, 0x0, 0x1, 0x4, 0x20022bc0d0, ...)
    /home/carlosedp/work/riscv-go-new/src/runtime/sys_linux_riscv64.s:463 +0x1c
runtime.netpoll(0xcd6601, 0x0)
    /home/carlosedp/work/riscv-go-new/src/runtime/netpoll_epoll.go:71 +0x210
runtime.findrunnable(0x2100032000, 0x0)
    /home/carlosedp/work/riscv-go-new/src/runtime/proc.go:2380 +0x660
runtime.schedule()
    /home/carlosedp/work/riscv-go-new/src/runtime/proc.go:2525 +0x2fc
runtime.goexit0(0x210046e900)
    /home/carlosedp/work/riscv-go-new/src/runtime/proc.go:2722 +0x220
runtime.mcall(0x210046e900)
    /home/carlosedp/work/riscv-go-new/src/runtime/asm_riscv64.s:317 +0x54

goroutine 1 [chan receive]:
testing.(*T).Run(0x2100284a00, 0x7b28d2, 0x11, 0x7fa088, 0x148801)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:917 +0x3c0
testing.runTests.func1(0x21002aa000)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:1157 +0x88
testing.tRunner(0x21002aa000, 0x210011bc28)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
testing.runTests(0x210000a120, 0xcd1620, 0x10d, 0x10d, 0x7fb3a8)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:1155 +0x2e8
testing.(*M).Run(0x2100108d80, 0x0)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:1072 +0x194
cmd/go_test.TestMain(0x2100108d80)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:256 +0x3b0
main.main()
    _testmain.go:578 +0x190

goroutine 18 [syscall, 7 minutes]:
os/signal.signal_recv(0x0)
    /home/carlosedp/work/riscv-go-new/src/runtime/sigqueue.go:139 +0x234
os/signal.loop()
    /home/carlosedp/work/riscv-go-new/src/os/signal/signal_unix.go:23 +0x2c
created by os/signal.init.0
    /home/carlosedp/work/riscv-go-new/src/os/signal/signal_unix.go:29 +0x54

goroutine 137 [chan receive, 5 minutes]:
testing.(*T).Parallel(0x21000e8200)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21000ea180)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestNonCanonicalImportPaths(0x21000e8200)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:1410 +0x78
testing.tRunner(0x21000e8200, 0x7fa2b8)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 113 [chan receive, 7 minutes]:
testing.(*T).Parallel(0x21002aa300)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21000ea3c0)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestImportCycle(0x21002aa300)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:1233 +0x78
testing.tRunner(0x21002aa300, 0x7fa0b8)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 217 [chan receive, 5 minutes]:
testing.(*T).Parallel(0x21000e9200)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x2100352180)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestUnsuccessfulGoInstallShouldMentionMissingPackage(0x21000e9200)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:1924 +0x78
testing.tRunner(0x21000e9200, 0x7fa3e8)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 214 [chan receive, 5 minutes]:
testing.(*T).Parallel(0x21000e8f00)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21000ebec0)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestGoListTest(0x21000e8f00)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:1829 +0x7c
testing.tRunner(0x21000e8f00, 0x7f9fa0)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 279 [chan receive, 2 minutes]:
testing.(*T).Parallel(0x210010cf00)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x210022a3c0)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestCoverageDashC(0x210010cf00)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:2675 +0x80
testing.tRunner(0x210010cf00, 0x7f9d40)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 216 [chan receive, 5 minutes]:
testing.(*T).Parallel(0x21000e9100)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21003520c0)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestGoListExport(0x21000e9100)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:1902 +0x80
testing.tRunner(0x21000e9100, 0x7f9f88)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 263 [chan receive, 2 minutes]:
testing.(*T).Parallel(0x2100284300)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21003532c0)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestSymlinkWarning(0x2100284300)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:2379 +0x78
testing.tRunner(0x2100284300, 0x7fa368)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 249 [chan receive, 2 minutes]:
testing.(*T).Parallel(0x210010c500)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x210022a0c0)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestCoverageDotImport(0x210010c500)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:2504 +0x7c
testing.tRunner(0x210010c500, 0x7f9d50)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 162 [chan receive, 5 minutes]:
testing.(*T).Parallel(0x2100284100)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21002b0600)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestPackageMainTestCompilerFlags(0x2100284100)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:1542 +0x78
testing.tRunner(0x2100284100, 0x7fa2c8)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 213 [chan receive, 5 minutes]:
testing.(*T).Parallel(0x21000e8e00)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21000ebe00)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestGoListDeps(0x21000e8e00)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:1797 +0x7c
testing.tRunner(0x21000e8e00, 0x7f9f80)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 218 [chan receive, 5 minutes]:
testing.(*T).Parallel(0x21000e9300)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x2100352240)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestGOROOTSearchFailureReporting(0x21000e9300)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:1934 +0x78
testing.tRunner(0x21000e9300, 0x7f9e28)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 215 [chan receive, 5 minutes]:
testing.(*T).Parallel(0x21000e9000)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x2100352000)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestGoListCompiledCgo(0x21000e9000)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:1865 +0x7c
testing.tRunner(0x21000e9000, 0x7f9f70)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 219 [chan receive, 5 minutes]:
testing.(*T).Parallel(0x21000e9400)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x2100352300)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestMultipleGOPATHEntriesReportedSeparately(0x21000e9400)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:1944 +0x7c
testing.tRunner(0x21000e9400, 0x7fa298)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 220 [chan receive, 5 minutes]:
testing.(*T).Parallel(0x21000e9500)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21003523c0)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestMentionGOPATHInFirstGOPATHEntry(0x21000e9500)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:1957 +0x7c
testing.tRunner(0x21000e9500, 0x7fa278)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 221 [chan receive, 5 minutes]:
testing.(*T).Parallel(0x21000e9600)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x2100352480)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestMentionGOPATHNotOnSecondEntry(0x21000e9600)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:1970 +0x7c
testing.tRunner(0x21000e9600, 0x7fa280)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 222 [chan receive, 5 minutes]:
testing.(*T).Parallel(0x21000e9700)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x2100352540)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestDefaultGOPATH(0x21000e9700)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:2004 +0x78
testing.tRunner(0x21000e9700, 0x7f9db8)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 262 [chan receive, 2 minutes]:
testing.(*T).Parallel(0x2100284200)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x2100353200)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestCaseCollisions(0x2100284200)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:2333 +0x7c
testing.tRunner(0x2100284200, 0x7f9cf0)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 332 [chan receive, 2 minutes]:
testing.(*T).Parallel(0x21002aad00)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.TestListTemplateContextFunction(0x21002aad00)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:3007 +0x38
testing.tRunner(0x21002aad00, 0x7fa1e0)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 296 [chan receive]:
testing.(*T).Parallel(0x2100284400)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x2100352780)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestGoGenerateEnv(0x2100284400)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:3238 +0x7c
testing.tRunner(0x2100284400, 0x7f9e98)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 386 [syscall]:
syscall.Syscall6(0x5f, 0x1, 0x133c, 0x2100209cc0, 0x1000004, 0x0, 0x0, 0x1bdd4c, 0x2100209cb8, 0x89130)
    /home/carlosedp/work/riscv-go-new/src/syscall/asm_linux_riscv64.s:41 +0x14
os.(*Process).blockUntilWaitable(0x210010aa20, 0x148, 0x2100188420, 0x1)
    /home/carlosedp/work/riscv-go-new/src/os/wait_waitid.go:31 +0x8c
os.(*Process).wait(0x210010aa20, 0x7faea8, 0x7faeb0, 0x7faea0)
    /home/carlosedp/work/riscv-go-new/src/os/exec_unix.go:22 +0x48
os.(*Process).Wait(...)
    /home/carlosedp/work/riscv-go-new/src/os/exec.go:125
os/exec.(*Cmd).Wait(0x2100188420, 0x0, 0x0)
    /home/carlosedp/work/riscv-go-new/src/os/exec/exec.go:474 +0x70
os/exec.(*Cmd).Run(0x2100188420, 0x25, 0x2100204a40)
    /home/carlosedp/work/riscv-go-new/src/os/exec/exec.go:318 +0x74
cmd/go_test.(*testgoData).doRun(0x2100352e40, 0x2100204a40, 0x4, 0x4, 0x3c, 0x21000fde00)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:445 +0x304
cmd/go_test.(*testgoData).runFail(0x2100352e40, 0x2100204a40, 0x4, 0x4)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:471 +0x68
cmd/go_test.TestGoVetWithTags(0x2100284a00)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:3312 +0x184
testing.tRunner(0x2100284a00, 0x7fa088)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 297 [chan receive]:
testing.(*T).Parallel(0x2100284500)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x2100352840)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestGoGenerateXTestPkgName(0x2100284500)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:3253 +0x7c
testing.tRunner(0x2100284500, 0x7f9ec0)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 387 [IO wait]:
internal/poll.runtime_pollWait(0x20022bc000, 0x72, 0xffffffffffffffff)
    /home/carlosedp/work/riscv-go-new/src/runtime/netpoll.go:182 +0x64
internal/poll.(*pollDesc).wait(0x2100101758, 0x72, 0x201, 0x200, 0xffffffffffffffff)
    /home/carlosedp/work/riscv-go-new/src/internal/poll/fd_poll_runtime.go:87 +0xd8
internal/poll.(*pollDesc).waitRead(...)
    /home/carlosedp/work/riscv-go-new/src/internal/poll/fd_poll_runtime.go:92
internal/poll.(*FD).Read(0x2100101740, 0x210022c400, 0x200, 0x200, 0x0, 0x0, 0x0)
    /home/carlosedp/work/riscv-go-new/src/internal/poll/fd_unix.go:169 +0x1f8
os.(*File).read(...)
    /home/carlosedp/work/riscv-go-new/src/os/file_unix.go:263
os.(*File).Read(0x21000a2170, 0x210022c400, 0x200, 0x200, 0x1481a0, 0x2100284a00, 0x40000000)
    /home/carlosedp/work/riscv-go-new/src/os/file.go:108 +0x80
bytes.(*Buffer).ReadFrom(0x2100352ea0, 0x8bcf00, 0x21000a2170, 0x2002277028, 0x2100352ea0, 0x2100204a01)
    /home/carlosedp/work/riscv-go-new/src/bytes/buffer.go:207 +0xe0
io.copyBuffer(0x8bc3c0, 0x2100352ea0, 0x8bcf00, 0x21000a2170, 0x0, 0x0, 0x0, 0x35, 0x2100352e40, 0x2100204a40)
    /home/carlosedp/work/riscv-go-new/src/io/io.go:388 +0x310
io.Copy(...)
    /home/carlosedp/work/riscv-go-new/src/io/io.go:364
os/exec.(*Cmd).writerDescriptor.func1(0x8c1f4, 0x2100284a00)
    /home/carlosedp/work/riscv-go-new/src/os/exec/exec.go:288 +0x6c
os/exec.(*Cmd).Start.func1(0x2100188420, 0x21000f8c00)
    /home/carlosedp/work/riscv-go-new/src/os/exec/exec.go:409 +0x2c
created by os/exec.(*Cmd).Start
    /home/carlosedp/work/riscv-go-new/src/os/exec/exec.go:408 +0x47c

goroutine 388 [IO wait]:
internal/poll.runtime_pollWait(0x20022bbf30, 0x72, 0xffffffffffffffff)
    /home/carlosedp/work/riscv-go-new/src/runtime/netpoll.go:182 +0x64
internal/poll.(*pollDesc).wait(0x2100101818, 0x72, 0x201, 0x200, 0xffffffffffffffff)
    /home/carlosedp/work/riscv-go-new/src/internal/poll/fd_poll_runtime.go:87 +0xd8
internal/poll.(*pollDesc).waitRead(...)
    /home/carlosedp/work/riscv-go-new/src/internal/poll/fd_poll_runtime.go:92
internal/poll.(*FD).Read(0x2100101800, 0x210022c600, 0x200, 0x200, 0x0, 0x0, 0x0)
    /home/carlosedp/work/riscv-go-new/src/internal/poll/fd_unix.go:169 +0x1f8
os.(*File).read(...)
    /home/carlosedp/work/riscv-go-new/src/os/file_unix.go:263
os.(*File).Read(0x21000a2188, 0x210022c600, 0x200, 0x200, 0x0, 0x0, 0x0)
    /home/carlosedp/work/riscv-go-new/src/os/file.go:108 +0x80
bytes.(*Buffer).ReadFrom(0x2100352ec8, 0x8bcf00, 0x21000a2188, 0x2002277028, 0x2100352ec8, 0x1)
    /home/carlosedp/work/riscv-go-new/src/bytes/buffer.go:207 +0xe0
io.copyBuffer(0x8bc3c0, 0x2100352ec8, 0x8bcf00, 0x21000a2188, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
    /home/carlosedp/work/riscv-go-new/src/io/io.go:388 +0x310
io.Copy(...)
    /home/carlosedp/work/riscv-go-new/src/io/io.go:364
os/exec.(*Cmd).writerDescriptor.func1(0x0, 0x0)
    /home/carlosedp/work/riscv-go-new/src/os/exec/exec.go:288 +0x6c
os/exec.(*Cmd).Start.func1(0x2100188420, 0x21000f8c60)
    /home/carlosedp/work/riscv-go-new/src/os/exec/exec.go:409 +0x2c
created by os/exec.(*Cmd).Start
    /home/carlosedp/work/riscv-go-new/src/os/exec/exec.go:408 +0x47c

ra  0x4af18 sp  0x3fffa97ac0
gp  0x80    tp  0xcd6ae0
t0  0x0 t1  0x1
t2  0x1 s0  0xffffffffffffffff
s1  0x80    a0  0xfffffffffffffffc
a1  0x3fffa97b08    a2  0x80
a3  0xffffffffffffffff  a4  0x0
a5  0x77    a6  0x1c
a7  0x16    s2  0x0
s3  0x47    s4  0x7fb100
s5  0xffffffffffffffff  s6  0x0
s7  0xffffffffffffffff  s8  0x1
s9  0x1 s10 0x8a7c3f
s11 0x8a7c40    t3  0x0
t4  0x21000f8980    t5  0x210042afc8
t6  0x8ca18 pc  0x8ca34
*** Test killed with quit: ran too long (10m0s).
FAIL    cmd/go  600.069s
ok      cmd/go/internal/cache   17.247s
ok      cmd/go/internal/dirhash 0.097s
ok      cmd/go/internal/generate    0.123s
ok      cmd/go/internal/get 3.209s
ok      cmd/go/internal/imports 0.284s
ok      cmd/go/internal/load    0.079s
ok      cmd/go/internal/lockedfile  0.525s
ok      cmd/go/internal/lockedfile/internal/filelock    0.149s
ok      cmd/go/internal/modconv 0.218s
ok      cmd/go/internal/modfetch    0.632s
ok      cmd/go/internal/modfetch/codehost   0.046s
ok      cmd/go/internal/modfile 0.344s
ok      cmd/go/internal/modload 0.133s
ok      cmd/go/internal/module  0.103s
ok      cmd/go/internal/mvs 0.104s
ok      cmd/go/internal/par 0.253s
ok      cmd/go/internal/search  0.095s
ok      cmd/go/internal/semver  0.080s
ok      cmd/go/internal/txtar   0.108s
ok      cmd/go/internal/web2    0.048s
ok      cmd/go/internal/work    0.190s
ok      cmd/gofmt   1.056s
ok      cmd/internal/buildid    9.537s
ok      cmd/internal/dwarf  0.068s
ok      cmd/internal/edit   0.040s
ok      cmd/internal/goobj  1.117s
ok      cmd/internal/obj    0.115s
ok      cmd/internal/obj/arm64  0.154s
ok      cmd/internal/obj/x86    40.259s
ok      cmd/internal/objabi 0.078s
ok      cmd/internal/src    0.040s
ok      cmd/internal/test2json  2.809s
ok      cmd/link    16.082s
ok      cmd/link/internal/ld    43.179s
ok      cmd/link/internal/sym   0.037s
ok      cmd/nm  34.700s
ok      cmd/objdump 21.621s
ok      cmd/pack    45.167s
ok      cmd/trace   0.501s
ok      cmd/vendor/github.com/google/pprof/internal/binutils    0.130s
ok      cmd/vendor/github.com/google/pprof/internal/driver  9.235s
ok      cmd/vendor/github.com/google/pprof/internal/elfexec 1.540s
ok      cmd/vendor/github.com/google/pprof/internal/graph   0.082s
ok      cmd/vendor/github.com/google/pprof/internal/measurement 0.594s
ok      cmd/vendor/github.com/google/pprof/internal/report  0.317s
ok      cmd/vendor/github.com/google/pprof/internal/symbolizer  0.109s
ok      cmd/vendor/github.com/google/pprof/internal/symbolz 0.102s
ok      cmd/vendor/github.com/google/pprof/profile  1.456s
ok      cmd/vendor/github.com/ianlancetaylor/demangle   0.363s
ok      cmd/vendor/golang.org/x/arch/arm/armasm 0.610s
ok      cmd/vendor/golang.org/x/arch/arm64/arm64asm 3.187s
ok      cmd/vendor/golang.org/x/arch/ppc64/ppc64asm 0.102s
ok      cmd/vendor/golang.org/x/arch/x86/x86asm 1.794s
ok      cmd/vendor/golang.org/x/crypto/ssh/terminal 0.085s
ok      cmd/vendor/golang.org/x/sys/unix    0.568s
ok      cmd/vet 149.632s
2019/05/21 14:21:15 Failed: exit status 1

cmd/go test:

carlosedp@HiFiveU:~/work/riscv-go-new/src $ go test -timeout 40m cmd/go
go test proxy starting
go proxy_test: invalid module path encoding "example.com/invalidpath/v1": malformed module path "example.com/invalidpath/v1": invalid version
go test proxy running at GOPROXY=http://127.0.0.1:44579/mod
go proxy: no archive example.com/split/subpkg v1.0.0
go proxy: no archive golang.org/x/text/language 14c0d48
go proxy: no archive golang.org/x/text/language 14c0d48
go proxy: no archive golang.org/x/text/language 14c0d48
go proxy: no archive golang.org/x/text/foo 14c0d48
go proxy: no archive golang.org/x 14c0d48
go proxy: no archive golang.org 14c0d48
go proxy: no archive this.domain.is.invalid/somemodule v1.0.0
go proxy: no archive this.domain.is.invalid/somemodule v1.0.0
go proxy: no archive rsc.io/quote v1.99999999.0-not-a-real-version
go proxy: no archive rsc.io v1.5.0
--- FAIL: TestScript (0.07s)
    --- FAIL: TestScript/cover_atomic_pkgall (295.19s)
        script_test.go:183:
            > [short] skip
            > go test -coverpkg=all -covermode=atomic x
            [stdout]
            FAIL    x [build failed]
            [stderr]
            # x.test
            runtime.inHeapOrStack: nosplit stack overflow
                752 assumed on entry to runtime.deferproc (nosplit)
                696 after runtime.deferproc (nosplit) uses 56
                560 after runtime.newdefer (nosplit) uses 136
                256 after runtime.gcWriteBarrier (nosplit) uses 304
                184 after runtime.wbBufFlush (nosplit) uses 72
                120 after runtime.cgoCheckWriteBarrier (nosplit) uses 64
                24  after runtime.cgoIsGoPointer (nosplit) uses 96
                -16 after runtime.inHeapOrStack (nosplit) uses 40
            runtime.spanOf: nosplit stack overflow
                752 assumed on entry to runtime.newdefer (nosplit)
                616 after runtime.newdefer (nosplit) uses 136
                312 after runtime.gcWriteBarrier (nosplit) uses 304
                240 after runtime.wbBufFlush (nosplit) uses 72
                176 after runtime.cgoCheckWriteBarrier (nosplit) uses 64
                80  after runtime.cgoIsGoPointer (nosplit) uses 96
                40  after runtime.inHeapOrStack (nosplit) uses 40
                -24 after runtime.spanOf (nosplit) uses 64
            runtime.spanOf: nosplit stack overflow
                752 assumed on entry to runtime.freedefer (nosplit)
                616 after runtime.freedefer (nosplit) uses 136
                312 after runtime.gcWriteBarrier (nosplit) uses 304
                240 after runtime.wbBufFlush (nosplit) uses 72
                176 after runtime.cgoCheckWriteBarrier (nosplit) uses 64
                80  after runtime.cgoIsGoPointer (nosplit) uses 96
                40  after runtime.inHeapOrStack (nosplit) uses 40
                -24 after runtime.spanOf (nosplit) uses 64
            runtime.inHeapOrStack: nosplit stack overflow
                752 assumed on entry to runtime.deferreturn (nosplit)
                688 after runtime.deferreturn (nosplit) uses 64
                552 after runtime.freedefer (nosplit) uses 136
                248 after runtime.gcWriteBarrier (nosplit) uses 304
                176 after runtime.wbBufFlush (nosplit) uses 72
                112 after runtime.cgoCheckWriteBarrier (nosplit) uses 64
                16  after runtime.cgoIsGoPointer (nosplit) uses 96
                -24 after runtime.inHeapOrStack (nosplit) uses 40
            runtime.spanOf: nosplit stack overflow
                752 assumed on entry to runtime.acquireSudog (nosplit)
                616 after runtime.acquireSudog (nosplit) uses 136
                312 after runtime.gcWriteBarrier (nosplit) uses 304
                240 after runtime.wbBufFlush (nosplit) uses 72
                176 after runtime.cgoCheckWriteBarrier (nosplit) uses 64
                80  after runtime.cgoIsGoPointer (nosplit) uses 96
                40  after runtime.inHeapOrStack (nosplit) uses 40
                -24 after runtime.spanOf (nosplit) uses 64
            runtime.spanOf: nosplit stack overflow
                752 assumed on entry to runtime.releaseSudog (nosplit)
                624 after runtime.releaseSudog (nosplit) uses 128
                320 after runtime.gcWriteBarrier (nosplit) uses 304
                248 after runtime.wbBufFlush (nosplit) uses 72
                184 after runtime.cgoCheckWriteBarrier (nosplit) uses 64
                88  after runtime.cgoIsGoPointer (nosplit) uses 96
                48  after runtime.inHeapOrStack (nosplit) uses 40
                -16 after runtime.spanOf (nosplit) uses 64
            runtime.spanOf: nosplit stack overflow
                752 guaranteed after split check in runtime.chansend
                760 after runtime.chansend uses -8
                624 after runtime.acquireSudog (nosplit) uses 136
                320 after runtime.gcWriteBarrier (nosplit) uses 304
                248 after runtime.wbBufFlush (nosplit) uses 72
                184 after runtime.cgoCheckWriteBarrier (nosplit) uses 64
                88  after runtime.cgoIsGoPointer (nosplit) uses 96
                48  after runtime.inHeapOrStack (nosplit) uses 40
                -16 after runtime.spanOf (nosplit) uses 64
            runtime.spanOf: nosplit stack overflow
                752 guaranteed after split check in runtime.chanrecv
                760 after runtime.chanrecv uses -8
                624 after runtime.acquireSudog (nosplit) uses 136
                320 after runtime.gcWriteBarrier (nosplit) uses 304
                248 after runtime.wbBufFlush (nosplit) uses 72
                184 after runtime.cgoCheckWriteBarrier (nosplit) uses 64
                88  after runtime.cgoIsGoPointer (nosplit) uses 96
                48  after runtime.inHeapOrStack (nosplit) uses 40
                -16 after runtime.spanOf (nosplit) uses 64
            runtime.spanOf: nosplit stack overflow
                752 guaranteed after split check in runtime.Goexit
                760 after runtime.Goexit uses -8
                624 after runtime.freedefer (nosplit) uses 136
                320 after runtime.gcWriteBarrier (nosplit) uses 304
                248 after runtime.wbBufFlush (nosplit) uses 72
                184 after runtime.cgoCheckWriteBarrier (nosplit) uses 64
                88  after runtime.cgoIsGoPointer (nosplit) uses 96
                48  after runtime.inHeapOrStack (nosplit) uses 40
                -16 after runtime.spanOf (nosplit) uses 64
            runtime.inHeapOrStack: nosplit stack overflow
                752 guaranteed after split check in runtime.preprintpanics
                760 after runtime.preprintpanics uses -8
                704 after runtime.deferproc (nosplit) uses 56
                568 after runtime.newdefer (nosplit) uses 136
                264 after runtime.gcWriteBarrier (nosplit) uses 304
                192 after runtime.wbBufFlush (nosplit) uses 72
                128 after runtime.cgoCheckWriteBarrier (nosplit) uses 64
                32  after runtime.cgoIsGoPointer (nosplit) uses 96
                -8  after runtime.inHeapOrStack (nosplit) uses 40
            runtime.spanOf: nosplit stack overflow
                752 guaranteed after split check in runtime.gopanic
                760 after runtime.gopanic uses -8
                624 after runtime.freedefer (nosplit) uses 136
                320 after runtime.gcWriteBarrier (nosplit) uses 304
                248 after runtime.wbBufFlush (nosplit) uses 72
                184 after runtime.cgoCheckWriteBarrier (nosplit) uses 64
                88  after runtime.cgoIsGoPointer (nosplit) uses 96
                48  after runtime.inHeapOrStack (nosplit) uses 40
                -16 after runtime.spanOf (nosplit) uses 64
            runtime.inHeapOrStack: nosplit stack overflow
                752 guaranteed after split check in runtime.main
                760 after runtime.main uses -8
                704 after runtime.deferproc (nosplit) uses 56
                568 after runtime.newdefer (nosplit) uses 136
                264 after runtime.gcWriteBarrier (nosplit) uses 304
                192 after runtime.wbBufFlush (nosplit) uses 72
                128 after runtime.cgoCheckWriteBarrier (nosplit) uses 64
                32  after runtime.cgoIsGoPointer (nosplit) uses 96
                -8  after runtime.inHeapOrStack (nosplit) uses 40
            runtime.spanOf: nosplit stack overflow
                752 guaranteed after split check in runtime.semacquire1
                760 after runtime.semacquire1 uses -8
                624 after runtime.acquireSudog (nosplit) uses 136
                320 after runtime.gcWriteBarrier (nosplit) uses 304
                248 after runtime.wbBufFlush (nosplit) uses 72
                184 after runtime.cgoCheckWriteBarrier (nosplit) uses 64
                88  after runtime.cgoIsGoPointer (nosplit) uses 96
                48  after runtime.inHeapOrStack (nosplit) uses 40
                -16 after runtime.spanOf (nosplit) uses 64
            runtime.inHeapOrStack: nosplit stack overflow
                752 guaranteed after split check in sync.(*Once).Do
                760 after sync.(*Once).Do uses -8
                704 after runtime.deferproc (nosplit) uses 56
                568 after runtime.newdefer (nosplit) uses 136
                264 after runtime.gcWriteBarrier (nosplit) uses 304
                192 after runtime.wbBufFlush (nosplit) uses 72
                128 after runtime.cgoCheckWriteBarrier (nosplit) uses 64
                32  after runtime.cgoIsGoPointer (nosplit) uses 96
                -8  after runtime.inHeapOrStack (nosplit) uses 40
            runtime.inHeapOrStack: nosplit stack overflow
                752 guaranteed after split check in sync.(*Pool).pinSlow
                760 after sync.(*Pool).pinSlow uses -8
                704 after runtime.deferproc (nosplit) uses 56
                568 after runtime.newdefer (nosplit) uses 136
                264 after runtime.gcWriteBarrier (nosplit) uses 304
                192 after runtime.wbBufFlush (nosplit) uses 72
                128 after runtime.cgoCheckWriteBarrier (nosplit) uses 64
                32  after runtime.cgoIsGoPointer (nosplit) uses 96
                -8  after runtime.inHeapOrStack (nosplit) uses 40
            runtime.inHeapOrStack: nosplit stack overflow
                752 guaranteed after split check in syscall.Getenv
                760 after syscall.Getenv uses -8
                704 after runtime.deferproc (nosplit) uses 56
                568 after runtime.newdefer (nosplit) uses 136
                264 after runtime.gcWriteBarrier (nosplit) uses 304
                192 after runtime.wbBufFlush (nosplit) uses 72
                128 after runtime.cgoCheckWriteBarrier (nosplit) uses 64
                32  after runtime.cgoIsGoPointer (nosplit) uses 96
                -8  after runtime.inHeapOrStack (nosplit) uses 40
            runtime.inHeapOrStack: nosplit stack overflow
                752 guaranteed after split check in time.loadTzinfoFromZip
                760 after time.loadTzinfoFromZip uses -8
                704 after runtime.deferproc (nosplit) uses 56
                568 after runtime.newdefer (nosplit) uses 136
                264 after runtime.gcWriteBarrier (nosplit) uses 304
                192 after runtime.wbBufFlush (nosplit) uses 72
                128 after runtime.cgoCheckWriteBarrier (nosplit) uses 64
                32  after runtime.cgoIsGoPointer (nosplit) uses 96
                -8  after runtime.inHeapOrStack (nosplit) uses 40
            runtime.inHeapOrStack: nosplit stack overflow
                752 guaranteed after split check in time.readFile
                760 after time.readFile uses -8
                704 after runtime.deferproc (nosplit) uses 56
                568 after runtime.newdefer (nosplit) uses 136
                264 after runtime.gcWriteBarrier (nosplit) uses 304
                192 after runtime.wbBufFlush (nosplit) uses 72
                128 after runtime.cgoCheckWriteBarrier (nosplit) uses 64
                32  after runtime.cgoIsGoPointer (nosplit) uses 96
                -8  after runtime.inHeapOrStack (nosplit) uses 40
            runtime.inHeapOrStack: nosplit stack overflow
                752 guaranteed after split check in internal/poll.(*FD).Read
                760 after internal/poll.(*FD).Read uses -8
                704 after runtime.deferproc (nosplit) uses 56
                568 after runtime.newdefer (nosplit) uses 136
                264 after runtime.gcWriteBarrier (nosplit) uses 304
                192 after runtime.wbBufFlush (nosplit) uses 72
                128 after runtime.cgoCheckWriteBarrier (nosplit) uses 64
                32  after runtime.cgoIsGoPointer (nosplit) uses 96
                -8  after runtime.inHeapOrStack (nosplit) uses 40
            runtime.inHeapOrStack: nosplit stack overflow
                752 guaranteed after split check in internal/poll.(*FD).Write
                760 after internal/poll.(*FD).Write uses -8
                704 after runtime.deferproc (nosplit) uses 56
                568 after runtime.newdefer (nosplit) uses 136
                264 after runtime.gcWriteBarrier (nosplit) uses 304
                192 after runtime.wbBufFlush (nosplit) uses 72
                128 after runtime.cgoCheckWriteBarrier (nosplit) uses 64
                32  after runtime.cgoIsGoPointer (nosplit) uses 96
                -8  after runtime.inHeapOrStack (nosplit) uses 40
            runtime.inHeapOrStack: nosplit stack overflow
            /home/carlosedp/work/riscv-go-new/pkg/tool/linux_riscv64/link: too many errors
            [exit status 2]
            FAIL: testdata/script/cover_atomic_pkgall.txt:3: unexpected command failure

    --- FAIL: TestScript/mod_get_pseudo (48.61s)
        script_test.go:183:
            # Testing git->module converter's generation of +incompatible tags; turn off proxy. (0.000s)
            # We can resolve the @master branch without unshallowing the local repository
            # (even with older gits), so try that before we do anything else.
            # (This replicates https://golang.org/issue/26713 with git 2.7.4.) (14.732s)
            # get should include incompatible tags in "latest" calculation. (4.096s)
            # v2.0.1-0.pseudo+incompatible (1.713s)
            # v2.0.0+incompatible by tag+incompatible (1.675s)
            # v2.0.0+incompatible by tag (1.015s)
            # v2.0.0+incompatible by hash (back on master) (0.495s)
            # v1.2.1-0.pseudo (3.084s)
            # v1.2.0 (1.951s)
            # v1.1.0-pre.0.pseudo (2.695s)
            # v1.1.0-pre (no longer on master) (2.566s)
            # v1.0.1-0.pseudo (2.214s)
            # v1.0.0 (12.280s)
            > go get -m ...test@7fff7f3
            [stderr]
            go: finding github.com/rsc/legacytest 7fff7f3
            [signal: interrupt]
            FAIL: testdata/script/mod_get_pseudo.txt:67: test timed out while running command

panic: test timed out after 40m0s

goroutine 4204 [running]:
testing.(*M).startAlarm.func1()
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:1334 +0x104
created by time.goFunc
    /home/carlosedp/work/riscv-go-new/src/time/sleep.go:169 +0x54

goroutine 1 [chan receive]:
testing.(*T).Run(0x2100514600, 0x7b100d, 0xf, 0x7fa480, 0x148801)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:917 +0x3c0
testing.runTests.func1(0x21000be300)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:1157 +0x88
testing.tRunner(0x21000be300, 0x210010fc28)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
testing.runTests(0x21001970c0, 0xcd1620, 0x10d, 0x10d, 0x1f)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:1155 +0x2e8
testing.(*M).Run(0x21000a2f00, 0x0)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:1072 +0x194
cmd/go_test.TestMain(0x21000a2f00)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:256 +0x3b0
main.main()
    _testmain.go:578 +0x190

goroutine 5 [syscall, 39 minutes]:
os/signal.signal_recv(0x0)
    /home/carlosedp/work/riscv-go-new/src/runtime/sigqueue.go:139 +0x234
os/signal.loop()
    /home/carlosedp/work/riscv-go-new/src/os/signal/signal_unix.go:23 +0x2c
created by os/signal.init.0
    /home/carlosedp/work/riscv-go-new/src/os/signal/signal_unix.go:29 +0x54

goroutine 63 [chan receive, 35 minutes]:
testing.(*T).Parallel(0x2100514200)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21004b49c0)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.testMove(0x2100514200, 0x7a8c06, 0x3, 0x7ad588, 0xa, 0x7a8c60, 0x3, 0x7b757d, 0x16)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:1135 +0x9c
cmd/go_test.TestMoveGit(0x2100514200)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:1187 +0x80
testing.tRunner(0x2100514200, 0x7fa288)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 212 [chan receive, 33 minutes]:
testing.(*T).Parallel(0x2100514000)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x210022a0c0)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestGoTestDashCDashOControlsBinaryLocation(0x2100514000)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:2186 +0x90
testing.tRunner(0x2100514000, 0x7f9fc8)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 107 [chan receive, 35 minutes]:
testing.(*T).Parallel(0x21000beb00)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x2100440300)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestIssue11457(0x21000beb00)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:1294 +0xcc
testing.tRunner(0x21000beb00, 0x7fa150)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 221 [chan receive, 32 minutes]:
testing.(*T).Parallel(0x21000bee00)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21002500c0)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestInstallWithTags(0x21000bee00)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:2306 +0x8c
testing.tRunner(0x21000bee00, 0x7fa108)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 274 [chan receive, 33 minutes]:
testing.(*T).Parallel(0x210047e300)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21004b4780)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestLdflagsArgumentsWithSpacesIssue3941(0x210047e300)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:2113 +0x90
testing.tRunner(0x210047e300, 0x7fa1b8)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 231 [chan receive, 33 minutes]:
testing.(*T).Parallel(0x21000be500)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x2100250300)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestGoListHasAConsistentOrder(0x21000be500)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:1747 +0x8c
testing.tRunner(0x21000be500, 0x7f9f90)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 105 [chan receive, 35 minutes]:
testing.(*T).Parallel(0x21000be800)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21000a7680)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestIssue10952(0x21000be800)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:1258 +0xcc
testing.tRunner(0x21000be800, 0x7fa140)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 565 [chan receive, 24 minutes]:
testing.(*T).Parallel(0x2100514a00)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21000c15c0)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestBinaryOnlyPackages(0x2100514a00)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:4169 +0x90
testing.tRunner(0x2100514a00, 0x7f9c98)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 714 [chan receive, 20 minutes]:
testing.(*T).Parallel(0x2100515700)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x2100440780)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestCacheCoverage(0x2100515700)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:5245 +0xf4
testing.tRunner(0x2100515700, 0x7f9cd8)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 104 [chan receive, 35 minutes]:
testing.(*T).Parallel(0x21000be700)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21000a7080)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestImportCycle(0x21000be700)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:1233 +0x78
testing.tRunner(0x21000be700, 0x7fa0b8)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 174 [chan receive, 33 minutes]:
testing.(*T).Parallel(0x210047e100)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x210022bd40)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestInstalls(0x210047e100)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:1650 +0x90
testing.tRunner(0x210047e100, 0x7fa118)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 138 [chan receive, 35 minutes]:
testing.(*T).Parallel(0x2100514700)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21004b5740)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestPackageMainTestImportsArchiveNotBinary(0x2100514700)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:1526 +0x90
testing.tRunner(0x2100514700, 0x7fa2d0)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 106 [chan receive, 35 minutes]:
testing.(*T).Parallel(0x21000be900)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21000a7c80)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestIssue16471(0x21000be900)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:1276 +0xcc
testing.tRunner(0x21000be900, 0x7fa168)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 64 [chan receive, 35 minutes]:
testing.(*T).Parallel(0x2100514300)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21004b4a80)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.testMove(0x2100514300, 0x7a8805, 0x2, 0x7c637c, 0x26, 0x7b1166, 0xf, 0x7cc7fe, 0x2f)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:1135 +0x9c
cmd/go_test.TestMoveHG(0x2100514300)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:1191 +0x84
testing.tRunner(0x2100514300, 0x7fa290)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 108 [chan receive, 35 minutes]:
testing.(*T).Parallel(0x21000bec00)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x2100440900)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestGetGitDefaultBranch(0x21000bec00)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:1321 +0xcc
testing.tRunner(0x21000bec00, 0x7f9e38)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 109 [chan receive, 35 minutes]:
testing.(*T).Parallel(0x21000bed00)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x2100440f00)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestAccidentalGitCheckout(0x21000bed00)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:1349 +0xcc
testing.tRunner(0x21000bed00, 0x7f9c40)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 179 [chan receive, 35 minutes]:
testing.(*T).Parallel(0x2100100800)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21000c0e40)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestNonCanonicalImportPaths(0x2100100800)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:1410 +0x78
testing.tRunner(0x2100100800, 0x7fa2b8)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 139 [chan receive, 35 minutes]:
testing.(*T).Parallel(0x2100514800)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21004b5800)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestPackageMainTestCompilerFlags(0x2100514800)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:1542 +0x78
testing.tRunner(0x2100514800, 0x7fa2c8)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 573 [chan receive, 24 minutes]:
testing.(*T).Parallel(0x2100515000)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21000c1a40)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestMatchesNoTestsDoesNotOverrideBuildFailure(0x2100515000)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:4366 +0x78
testing.tRunner(0x2100515000, 0x7fa238)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 335 [chan receive, 32 minutes]:
testing.(*T).Parallel(0x210047e500)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21002512c0)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestCoverageErrorLine(0x210047e500)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:2616 +0x94
testing.tRunner(0x210047e500, 0x7f9d58)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 187 [chan receive, 32 minutes]:
testing.(*T).Parallel(0x2100100000)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21004b40c0)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestCoverageDotImport(0x2100100000)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:2504 +0x7c
testing.tRunner(0x2100100000, 0x7f9d50)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 230 [chan receive, 33 minutes]:
testing.(*T).Parallel(0x21000be400)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x2100250240)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestGoTestWithPackageListedMultipleTimes(0x21000be400)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:1736 +0x8c
testing.tRunner(0x21000be400, 0x7fa050)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 566 [chan receive, 24 minutes]:
testing.(*T).Parallel(0x2100514b00)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21000c1680)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestAlwaysLinkSysoFiles(0x2100514b00)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:4253 +0x78
testing.tRunner(0x2100514b00, 0x7f9c48)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 321 [chan receive, 32 minutes]:
testing.(*T).Parallel(0x21000bfe00)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21002506c0)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestIssue11307(0x21000bfe00)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:2420 +0x98
testing.tRunner(0x21000bfe00, 0x7fa148)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 224 [chan receive, 32 minutes]:
testing.(*T).Parallel(0x21000bfd00)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x2100250600)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestGoGetDashTIssue8181(0x21000bfd00)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:2406 +0x98
testing.tRunner(0x21000bfd00, 0x7f9ed0)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 468 [chan receive, 28 minutes]:
testing.(*T).Parallel(0x2100100700)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21000a6300)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestGoGenerateEnv(0x2100100700)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:3238 +0x7c
testing.tRunner(0x2100100700, 0x7f9e98)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 790 [chan receive, 18 minutes]:
testing.(*T).Parallel(0x21002ae300)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21004400c0)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestImportPath(0x21002ae300)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:5833 +0x8c
testing.tRunner(0x21002ae300, 0x7fa0d0)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 718 [chan receive, 20 minutes]:
testing.(*T).Parallel(0x2100515b00)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x2100440b40)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestIssue22596(0x2100515b00)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:5331 +0xf8
testing.tRunner(0x2100515b00, 0x7fa188)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 232 [chan receive, 33 minutes]:
testing.(*T).Parallel(0x21000be600)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21002503c0)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestGoListStdDoesNotIncludeCommands(0x21000be600)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:1760 +0x8c
testing.tRunner(0x21000be600, 0x7f9f98)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 222 [chan receive, 32 minutes]:
testing.(*T).Parallel(0x21000bfa00)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x2100250180)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestCaseCollisions(0x21000bfa00)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:2333 +0x7c
testing.tRunner(0x21000bfa00, 0x7f9cf0)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 223 [chan receive, 32 minutes]:
testing.(*T).Parallel(0x21000bfb00)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x2100250540)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestSymlinkWarning(0x21000bfb00)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:2379 +0x78
testing.tRunner(0x21000bfb00, 0x7fa368)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 233 [chan receive, 33 minutes]:
testing.(*T).Parallel(0x21000bea00)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x2100250480)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestGoListCmdOnlyShowsCommands(0x21000bea00)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:1770 +0x94
testing.tRunner(0x21000bea00, 0x7f9f68)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 237 [chan receive, 33 minutes]:
testing.(*T).Parallel(0x21000bef00)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x2100250780)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestGoListDeps(0x21000bef00)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:1797 +0x7c
testing.tRunner(0x21000bef00, 0x7f9f80)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 238 [chan receive, 33 minutes]:
testing.(*T).Parallel(0x21000bf100)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x2100250840)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestGoListTest(0x21000bf100)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:1829 +0x7c
testing.tRunner(0x21000bf100, 0x7f9fa0)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 239 [chan receive, 33 minutes]:
testing.(*T).Parallel(0x21000bf200)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x2100250900)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestGoListCompiledCgo(0x21000bf200)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:1865 +0x7c
testing.tRunner(0x21000bf200, 0x7f9f70)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 240 [chan receive, 33 minutes]:
testing.(*T).Parallel(0x21000bf300)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21002509c0)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestGoListExport(0x21000bf300)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:1902 +0x80
testing.tRunner(0x21000bf300, 0x7f9f88)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 257 [chan receive, 33 minutes]:
testing.(*T).Parallel(0x21000bf400)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x2100250a80)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestUnsuccessfulGoInstallShouldMentionMissingPackage(0x21000bf400)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:1924 +0x78
testing.tRunner(0x21000bf400, 0x7fa3e8)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 258 [chan receive, 33 minutes]:
testing.(*T).Parallel(0x21000bf500)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x2100250b40)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestGOROOTSearchFailureReporting(0x21000bf500)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:1934 +0x78
testing.tRunner(0x21000bf500, 0x7f9e28)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 259 [chan receive, 33 minutes]:
testing.(*T).Parallel(0x21000bf600)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x2100250c00)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestMultipleGOPATHEntriesReportedSeparately(0x21000bf600)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:1944 +0x7c
testing.tRunner(0x21000bf600, 0x7fa298)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 260 [chan receive, 33 minutes]:
testing.(*T).Parallel(0x21000bf700)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x2100250cc0)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestMentionGOPATHInFirstGOPATHEntry(0x21000bf700)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:1957 +0x7c
testing.tRunner(0x21000bf700, 0x7fa278)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 261 [chan receive, 33 minutes]:
testing.(*T).Parallel(0x21000bf800)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x2100250d80)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestMentionGOPATHNotOnSecondEntry(0x21000bf800)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:1970 +0x7c
testing.tRunner(0x21000bf800, 0x7fa280)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 262 [chan receive, 33 minutes]:
testing.(*T).Parallel(0x21000bf900)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x2100250e40)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestDefaultGOPATH(0x21000bf900)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:2004 +0x78
testing.tRunner(0x21000bf900, 0x7f9db8)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 273 [chan receive, 33 minutes]:
testing.(*T).Parallel(0x210047e200)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21004b46c0)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestGoGetIntoGOROOT(0x210047e200)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:2064 +0x98
testing.tRunner(0x210047e200, 0x7f9f10)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 337 [chan receive, 32 minutes]:
testing.(*T).Parallel(0x2100100600)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21004b4480)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestCoverageDepLoop(0x2100100600)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:2576 +0x8c
testing.tRunner(0x2100100600, 0x7f9d48)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 214 [chan receive, 33 minutes]:
testing.(*T).Parallel(0x2100514400)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x210022a240)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestGoTestDashIDashOWritesBinary(0x2100514400)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:2208 +0x90
testing.tRunner(0x2100514400, 0x7f9fd0)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 567 [chan receive, 24 minutes]:
testing.(*T).Parallel(0x2100514c00)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21000c1740)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestGenerateUsesBuildContext(0x2100514c00)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:4279 +0x78
testing.tRunner(0x2100514c00, 0x7f9e30)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 213 [chan receive, 33 minutes]:
testing.(*T).Parallel(0x2100514100)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x210022a180)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestGoTestDashOWritesBinary(0x2100514100)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:2197 +0x90
testing.tRunner(0x2100514100, 0x7f9fd8)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 649 [chan receive, 22 minutes]:
testing.(*T).Parallel(0x2100100f00)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21004b5a40)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestLinkXImportPathEscape(0x2100100f00)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:4508 +0x80
testing.tRunner(0x2100100f00, 0x7fa1d0)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 334 [chan receive, 32 minutes]:
testing.(*T).Parallel(0x210047e400)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x2100251200)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestCoveragePattern(0x210047e400)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:2600 +0x90
testing.tRunner(0x210047e400, 0x7f9d70)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 192 [chan receive, 32 minutes]:
testing.(*T).Parallel(0x2100100500)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21004b43c0)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestCoverageSyncAtomicImport(0x2100100500)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:2567 +0x90
testing.tRunner(0x2100100500, 0x7f9d80)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 336 [chan receive, 32 minutes]:
testing.(*T).Parallel(0x210047e600)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x2100251380)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestTestBuildFailureOutput(0x210047e600)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:2647 +0x8c
testing.tRunner(0x210047e600, 0x7fa390)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 422 [chan receive, 28 minutes]:
testing.(*T).Parallel(0x210047e000)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x210022a3c0)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestGoVetWithOnlyTestFiles(0x210047e000)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:3337 +0x78
testing.tRunner(0x210047e000, 0x7fa080)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 353 [chan receive, 32 minutes]:
testing.(*T).Parallel(0x210047e700)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x2100251440)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestCoverageFunc(0x210047e700)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:2660 +0x94
testing.tRunner(0x210047e700, 0x7f9d60)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 354 [chan receive, 32 minutes]:
testing.(*T).Parallel(0x210047e800)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x2100251500)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestCoverageDashC(0x210047e800)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:2675 +0x80
testing.tRunner(0x210047e800, 0x7f9d40)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 385 [chan receive, 31 minutes]:
testing.(*T).Parallel(0x21000bfc00)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.TestListTemplateContextFunction(0x21000bfc00)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:3007 +0x38
testing.tRunner(0x21000bfc00, 0x7fa1e0)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 585 [chan receive, 24 minutes]:
testing.(*T).Parallel(0x2100100d00)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x210022bbc0)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestIssue17119(0x2100100d00)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:4149 +0x98
testing.tRunner(0x2100100d00, 0x7fa170)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 716 [chan receive, 20 minutes]:
testing.(*T).Parallel(0x2100515900)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21004409c0)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestIssue22588(0x2100515900)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:5284 +0x78
testing.tRunner(0x2100515900, 0x7fa180)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 717 [chan receive, 20 minutes]:
testing.(*T).Parallel(0x2100515a00)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x2100440a80)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestIssue22531(0x2100515a00)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:5302 +0xf8
testing.tRunner(0x2100515a00, 0x7fa178)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 719 [chan receive, 20 minutes]:
testing.(*T).Parallel(0x2100515c00)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x2100440c00)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestTestCache(0x2100515c00)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:5361 +0x100
testing.tRunner(0x2100515c00, 0x7fa3a0)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 313 [chan receive, 31 minutes]:
testing.(*T).Parallel(0x2100514500)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21000a6240)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestBuildDashIInstallsDependencies(0x2100514500)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:3066 +0x8c
testing.tRunner(0x2100514500, 0x7f9ca0)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 430 [chan receive, 27 minutes]:
testing.(*T).Parallel(0x21000bff00)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21000a60c0)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestImportMain(0x21000bff00)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:3391 +0x64
testing.tRunner(0x21000bff00, 0x7fa0c8)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 431 [chan receive, 27 minutes]:
testing.(*T).Parallel(0x2100100300)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21000a6180)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestImportLocal(0x2100100300)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:3481 +0x64
testing.tRunner(0x2100100300, 0x7fa0c0)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 469 [chan receive, 28 minutes]:
testing.(*T).Parallel(0x2100100900)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21000a63c0)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestGoGenerateXTestPkgName(0x2100100900)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:3253 +0x7c
testing.tRunner(0x2100100900, 0x7f9ec0)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 479 [chan receive, 26 minutes]:
testing.(*T).Parallel(0x210047e900)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21000c0540)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestGoInstallPkgdir(0x210047e900)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:3754 +0x68
testing.tRunner(0x210047e900, 0x7f9f58)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 712 [chan receive, 20 minutes]:
testing.(*T).Parallel(0x2100515500)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x2100440540)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestQEMUUserMode(0x2100515500)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:5188 +0xf4
testing.tRunner(0x2100515500, 0x7fa2f8)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 569 [chan receive, 24 minutes]:
testing.(*T).Parallel(0x2100514e00)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21000c18c0)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestGoEnv(0x2100514e00)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:4326 +0x4c
testing.tRunner(0x2100514e00, 0x7f9e88)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 580 [chan receive, 24 minutes]:
testing.(*T).Parallel(0x2100100a00)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x210022b980)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestParallelTest(0x2100100a00)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:4082 +0x60
testing.tRunner(0x2100100a00, 0x7fa2e8)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 568 [chan receive, 24 minutes]:
testing.(*T).Parallel(0x2100514d00)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21000c1800)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestGoGetUpdateWithWildcard(0x2100514d00)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:4301 +0x9c
testing.tRunner(0x2100514d00, 0x7f9f48)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 713 [chan receive, 20 minutes]:
testing.(*T).Parallel(0x2100515600)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21004406c0)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestCacheListStale(0x2100515600)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:5221 +0xf4
testing.tRunner(0x2100515600, 0x7f9ce0)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 650 [chan receive, 22 minutes]:
testing.(*T).Parallel(0x2100101000)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21004b5b00)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestLdBindNow(0x2100101000)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:4527 +0x78
testing.tRunner(0x2100101000, 0x7fa1b0)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 651 [chan receive, 22 minutes]:
testing.(*T).Parallel(0x2100101100)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21004b5bc0)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestConcurrentAsm(0x2100101100)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:4538 +0x7c
testing.tRunner(0x2100101100, 0x7f9d38)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 675 [chan receive, 22 minutes]:
testing.(*T).Parallel(0x210047f200)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x2100315b00)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestNeedVersion(0x210047f200)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:4786 +0x7c
testing.tRunner(0x210047f200, 0x7fa2a0)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 780 [chan receive, 18 minutes]:
testing.(*T).Parallel(0x2100515300)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x2100251c80)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestDontReportRemoveOfEmptyDir(0x2100515300)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:6103 +0x78
testing.tRunner(0x2100515300, 0x7f9dd0)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 715 [chan receive, 20 minutes]:
testing.(*T).Parallel(0x2100515800)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x2100440840)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestCacheVet(0x2100515800)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:5258 +0x7c
testing.tRunner(0x2100515800, 0x7f9ce8)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 720 [chan receive, 20 minutes]:
testing.(*T).Parallel(0x2100515d00)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x2100440cc0)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestTestCacheInputs(0x2100515d00)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:5477 +0x100
testing.tRunner(0x2100515d00, 0x7fa398)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 721 [chan receive, 20 minutes]:
testing.(*T).Parallel(0x2100515e00)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x2100440d80)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestTestVet(0x2100515e00)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:5589 +0x90
testing.tRunner(0x2100515e00, 0x7fa3d8)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 722 [chan receive, 20 minutes]:
testing.(*T).Parallel(0x2100515f00)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x2100440e40)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestTestSkipVetAfterFailedBuild(0x2100515f00)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:5635 +0x78
testing.tRunner(0x2100515f00, 0x7fa3c8)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 723 [chan receive, 20 minutes]:
testing.(*T).Parallel(0x21002ae000)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x2100441080)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestTestVetRebuild(0x21002ae000)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:5650 +0x78
testing.tRunner(0x21002ae000, 0x7fa3d0)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 724 [chan receive, 20 minutes]:
testing.(*T).Parallel(0x21002ae100)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x2100441140)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestInstallDeps(0x21002ae100)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:5690 +0x90
testing.tRunner(0x21002ae100, 0x7fa0d8)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 672 [chan receive, 20 minutes]:
testing.(*T).Parallel(0x2100100c00)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21004b4300)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestGoTestJSON(0x2100100c00)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:5748 +0x94
testing.tRunner(0x2100100c00, 0x7fa000)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 4202 [IO wait]:
internal/poll.runtime_pollWait(0x200227bf98, 0x72, 0xffffffffffffffff)
    /home/carlosedp/work/riscv-go-new/src/runtime/netpoll.go:182 +0x64
internal/poll.(*pollDesc).wait(0x21001cbbd8, 0x72, 0x601, 0x600, 0xffffffffffffffff)
    /home/carlosedp/work/riscv-go-new/src/internal/poll/fd_poll_runtime.go:87 +0xd8
internal/poll.(*pollDesc).waitRead(...)
    /home/carlosedp/work/riscv-go-new/src/internal/poll/fd_poll_runtime.go:92
internal/poll.(*FD).Read(0x21001cbbc0, 0x2100508000, 0x600, 0x600, 0x0, 0x0, 0x0)
    /home/carlosedp/work/riscv-go-new/src/internal/poll/fd_unix.go:169 +0x1f8
os.(*File).read(...)
    /home/carlosedp/work/riscv-go-new/src/os/file_unix.go:263
os.(*File).Read(0x210000c200, 0x2100508000, 0x600, 0x600, 0x1e104, 0x1, 0x0)
    /home/carlosedp/work/riscv-go-new/src/os/file.go:108 +0x80
bytes.(*Buffer).ReadFrom(0x21004401e0, 0x8bcf00, 0x210000c200, 0x20022b3028, 0x21004401e0, 0x2000002601)
    /home/carlosedp/work/riscv-go-new/src/bytes/buffer.go:207 +0xe0
io.copyBuffer(0x8bc3c0, 0x21004401e0, 0x8bcf00, 0x210000c200, 0x0, 0x0, 0x0, 0x395bcf6d, 0x395bcf6d009d7600, 0xf)
    /home/carlosedp/work/riscv-go-new/src/io/io.go:388 +0x310
io.Copy(...)
    /home/carlosedp/work/riscv-go-new/src/io/io.go:364
os/exec.(*Cmd).writerDescriptor.func1(0x8c1f4, 0x2100515100)
    /home/carlosedp/work/riscv-go-new/src/os/exec/exec.go:288 +0x6c
os/exec.(*Cmd).Start.func1(0x210041c840, 0x2100196a20)
    /home/carlosedp/work/riscv-go-new/src/os/exec/exec.go:409 +0x2c
created by os/exec.(*Cmd).Start
    /home/carlosedp/work/riscv-go-new/src/os/exec/exec.go:408 +0x47c

goroutine 4167 [syscall]:
syscall.Syscall6(0x5f, 0x1, 0x51f4, 0x210023bc48, 0x1000004, 0x0, 0x0, 0x1bdd4c, 0x210023bc40, 0x89130)
    /home/carlosedp/work/riscv-go-new/src/syscall/asm_linux_riscv64.s:41 +0x14
os.(*Process).blockUntilWaitable(0x2100486870, 0x148, 0x210041c840, 0x1)
    /home/carlosedp/work/riscv-go-new/src/os/wait_waitid.go:31 +0x8c
os.(*Process).wait(0x2100486870, 0x7faea8, 0x7faeb0, 0x7faea0)
    /home/carlosedp/work/riscv-go-new/src/os/exec_unix.go:22 +0x48
os.(*Process).Wait(...)
    /home/carlosedp/work/riscv-go-new/src/os/exec.go:125
os/exec.(*Cmd).Wait(0x210041c840, 0x0, 0x0)
    /home/carlosedp/work/riscv-go-new/src/os/exec/exec.go:474 +0x70
os/exec.(*Cmd).Run(0x210041c840, 0x25, 0x2100196960)
    /home/carlosedp/work/riscv-go-new/src/os/exec/exec.go:318 +0x74
cmd/go_test.(*testgoData).doRun(0x2100440180, 0x2100196960, 0x2, 0x2, 0x0, 0x21000c7500)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:445 +0x304
cmd/go_test.(*testgoData).run(0x2100440180, 0x2100196960, 0x2, 0x2)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:461 +0x6c
cmd/go_test.TestVendorTest3(0x2100514600)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/vendor_test.go:292 +0x48c
testing.tRunner(0x2100514600, 0x7fa480)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 818 [chan receive, 18 minutes]:
testing.(*T).Parallel(0x2100100b00)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21000c0b40)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestGoTestWithoutTests(0x2100100b00)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:6202 +0x78
testing.tRunner(0x2100100b00, 0x7fa058)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 4203 [IO wait]:
internal/poll.runtime_pollWait(0x200227b368, 0x72, 0xffffffffffffffff)
    /home/carlosedp/work/riscv-go-new/src/runtime/netpoll.go:182 +0x64
internal/poll.(*pollDesc).wait(0x21001cbc98, 0x72, 0x201, 0x200, 0xffffffffffffffff)
    /home/carlosedp/work/riscv-go-new/src/internal/poll/fd_poll_runtime.go:87 +0xd8
internal/poll.(*pollDesc).waitRead(...)
    /home/carlosedp/work/riscv-go-new/src/internal/poll/fd_poll_runtime.go:92
internal/poll.(*FD).Read(0x21001cbc80, 0x21004dc200, 0x200, 0x200, 0x0, 0x0, 0x0)
    /home/carlosedp/work/riscv-go-new/src/internal/poll/fd_unix.go:169 +0x1f8
os.(*File).read(...)
    /home/carlosedp/work/riscv-go-new/src/os/file_unix.go:263
os.(*File).Read(0x210000c218, 0x21004dc200, 0x200, 0x200, 0x1e104, 0x1, 0x0)
    /home/carlosedp/work/riscv-go-new/src/os/file.go:108 +0x80
bytes.(*Buffer).ReadFrom(0x2100440208, 0x8bcf00, 0x210000c218, 0x20022b3028, 0x2100440208, 0x2000002001)
    /home/carlosedp/work/riscv-go-new/src/bytes/buffer.go:207 +0xe0
io.copyBuffer(0x8bc3c0, 0x2100440208, 0x8bcf00, 0x210000c218, 0x0, 0x0, 0x0, 0x37f166a2, 0x37f166a2009d7600, 0x13)
    /home/carlosedp/work/riscv-go-new/src/io/io.go:388 +0x310
io.Copy(...)
    /home/carlosedp/work/riscv-go-new/src/io/io.go:364
os/exec.(*Cmd).writerDescriptor.func1(0x8c1f4, 0x21004c4b00)
    /home/carlosedp/work/riscv-go-new/src/os/exec/exec.go:288 +0x6c
os/exec.(*Cmd).Start.func1(0x210041c840, 0x2100196a60)
    /home/carlosedp/work/riscv-go-new/src/os/exec/exec.go:409 +0x2c
created by os/exec.(*Cmd).Start
    /home/carlosedp/work/riscv-go-new/src/os/exec/exec.go:408 +0x47c

goroutine 819 [chan receive, 18 minutes]:
testing.(*T).Parallel(0x2100101200)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21000c0c00)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestGoBuildDashODevNull(0x2100101200)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:6212 +0x7c
testing.tRunner(0x2100101200, 0x7f9e50)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 820 [chan receive, 18 minutes]:
testing.(*T).Parallel(0x2100101300)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:770 +0x1f8
cmd/go_test.(*testgoData).parallel(0x21000c0cc0)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:344 +0x110
cmd/go_test.TestCoverpkgTestOnly(0x2100101300)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/go_test.go:6224 +0x7c
testing.tRunner(0x2100101300, 0x7f9da0)
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:865 +0xf4
created by testing.(*T).Run
    /home/carlosedp/work/riscv-go-new/src/testing/testing.go:916 +0x398

goroutine 976 [IO wait, 2 minutes]:
internal/poll.runtime_pollWait(0x200227bec8, 0x72, 0x0)
    /home/carlosedp/work/riscv-go-new/src/runtime/netpoll.go:182 +0x64
internal/poll.(*pollDesc).wait(0x21000a2198, 0x72, 0x0, 0x0, 0x7aabc3)
    /home/carlosedp/work/riscv-go-new/src/internal/poll/fd_poll_runtime.go:87 +0xd8
internal/poll.(*pollDesc).waitRead(...)
    /home/carlosedp/work/riscv-go-new/src/internal/poll/fd_poll_runtime.go:92
internal/poll.(*FD).Accept(0x21000a2180, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
    /home/carlosedp/work/riscv-go-new/src/internal/poll/fd_unix.go:384 +0x22c
net.(*netFD).accept(0x21000a2180, 0x79718, 0x13b9d, 0x53e2708)
    /home/carlosedp/work/riscv-go-new/src/net/fd_unix.go:238 +0x3c
net.(*TCPListener).accept(0x21004f8048, 0x166c4389004b4acc, 0x5ce4191e, 0x5a650)
    /home/carlosedp/work/riscv-go-new/src/net/tcpsock_posix.go:139 +0x38
net.(*TCPListener).Accept(0x21004f8048, 0x2100397ed8, 0x18, 0x21000c3080, 0x4ba828)
    /home/carlosedp/work/riscv-go-new/src/net/tcpsock.go:260 +0x58
net/http.(*Server).Serve(0x2100206000, 0x8cb560, 0x21004f8048, 0x0, 0x0)
    /home/carlosedp/work/riscv-go-new/src/net/http/server.go:2859 +0x270
net/http.Serve(...)
    /home/carlosedp/work/riscv-go-new/src/net/http/server.go:2456
cmd/go_test.StartProxy.func1.1(0x8cb560, 0x21004f8048)
    /home/carlosedp/work/riscv-go-new/src/cmd/go/proxy_test.go:59 +0x98
created by cmd/go_test.StartProxy.func1
    /home/carlosedp/work/riscv-go-new/src/cmd/go/proxy_test.go:58 +0x308
FAIL    cmd/go  2424.944s

@carlosedp all of the standard library tests pass here (there are around three in test/ that are still failing), however you'll probably need to bump up GO_TEST_TIMEOUT_SCALE, particularly if you're running on a slow I/O device:

GOROOT_BOOTSTRAP=... GO_TEST_TIMEOUT_SCALE=5 ./all.bash

Thanks for the tip on the variable @4a6f656c . After I adjusted it and fixed my NFS filesystem server (had lock errors), it ran 100% (with the exceptions on test/ like you mentioned.

##### Testing packages.
ok      archive/tar 1.034s
ok      archive/zip 261.885s
ok      bufio   1.457s
ok      bytes   4.786s
ok      compress/bzip2  1.192s
ok      compress/flate  12.639s
ok      compress/gzip   0.350s
ok      compress/lzw    0.146s
ok      compress/zlib   0.467s
ok      container/heap  0.164s
ok      container/list  0.060s
ok      container/ring  1.386s
ok      context 1.241s
ok      crypto  0.072s
ok      crypto/aes  0.182s
ok      crypto/cipher   1.063s
ok      crypto/des  0.152s
ok      crypto/dsa  0.173s
ok      crypto/ecdsa    3.312s
ok      crypto/elliptic 0.614s
ok      crypto/hmac 0.065s
ok      crypto/internal/subtle  0.041s
ok      crypto/md5  0.109s
ok      crypto/rand 0.508s
ok      crypto/rc4  1.960s
ok      crypto/rsa  2.306s
ok      crypto/sha1 0.120s
ok      crypto/sha256   0.053s
ok      crypto/sha512   0.075s
ok      crypto/subtle   0.066s
ok      crypto/tls  35.434s
ok      crypto/x509 39.684s
ok      database/sql    2.137s
ok      database/sql/driver 0.082s
ok      debug/dwarf 0.404s
ok      debug/elf   0.488s
ok      debug/gosym 0.212s
ok      debug/macho 0.120s
ok      debug/pe    0.250s
ok      debug/plan9obj  0.100s
ok      encoding/ascii85    0.123s
ok      encoding/asn1   0.057s
ok      encoding/base32 0.520s
ok      encoding/base64 0.194s
ok      encoding/binary 0.071s
ok      encoding/csv    0.189s
ok      encoding/gob    0.663s
ok      encoding/hex    0.087s
ok      encoding/json   5.923s
ok      encoding/pem    0.304s
ok      encoding/xml    0.373s
ok      errors  0.065s
ok      expvar  0.108s
ok      flag    0.085s
ok      fmt 3.975s
ok      go/ast  0.094s
ok      go/build    14.345s
ok      go/constant 0.068s
ok      go/doc  1.551s
ok      go/format   0.152s
ok      go/importer 4.990s
ok      go/internal/gccgoimporter   0.335s
ok      go/internal/gcimporter  4.792s
ok      go/internal/srcimporter 42.274s
ok      go/parser   0.577s
ok      go/printer  5.322s
ok      go/scanner  0.134s
ok      go/token    0.265s
ok      go/types    19.614s
ok      hash    0.040s
ok      hash/adler32    0.119s
ok      hash/crc32  1.733s
ok      hash/crc64  0.081s
ok      hash/fnv    0.123s
ok      html    0.076s
ok      html/template   1.161s
ok      image   1.191s
ok      image/color 0.277s
ok      image/draw  0.688s
ok      image/gif   6.481s
ok      image/jpeg  3.738s
ok      image/png   0.717s
ok      index/suffixarray   0.125s
ok      internal/cpu    0.056s
ok      internal/fmtsort    0.051s
ok      internal/poll   0.311s
ok      internal/singleflight   0.072s
ok      internal/trace  23.126s
ok      internal/x/crypto/chacha20poly1305  0.878s
ok      internal/x/crypto/cryptobyte    0.097s
ok      internal/x/crypto/curve25519    0.767s
ok      internal/x/crypto/hkdf  0.081s
ok      internal/x/crypto/internal/chacha20 1.589s
ok      internal/x/crypto/poly1305  0.182s
ok      internal/x/net/dns/dnsmessage   0.439s
ok      internal/x/net/http/httpguts    0.070s
ok      internal/x/net/http/httpproxy   0.067s
ok      internal/x/net/http2/hpack  0.066s
ok      internal/x/net/idna 0.114s
ok      internal/x/net/nettest  3.614s
ok      internal/x/text/transform   0.058s
ok      internal/x/text/unicode/norm    2.888s
ok      internal/xcoff  0.176s
ok      io  0.244s
ok      io/ioutil   0.586s
ok      log 0.061s
ok      log/syslog  1.457s
ok      math    0.074s
ok      math/big    32.481s
ok      math/bits   0.078s
ok      math/cmplx  0.104s
ok      math/rand   2.412s
ok      mime    0.102s
ok      mime/multipart  11.405s
ok      mime/quotedprintable    3.275s
ok      net 54.654s
ok      net/http    33.672s
ok      net/http/cgi    4.956s
ok      net/http/cookiejar  0.223s
ok      net/http/fcgi   1.099s
ok      net/http/httptest   0.641s
ok      net/http/httptrace  3.435s
ok      net/http/httputil   0.777s
ok      net/http/internal   0.054s
ok      net/http/pprof  2.782s
ok      net/internal/socktest   0.082s
ok      net/mail    0.054s
ok      net/rpc 0.215s
ok      net/rpc/jsonrpc 0.150s
ok      net/smtp    0.230s
ok      net/textproto   0.051s
ok      net/url 0.184s
ok      os  2.638s
ok      os/exec 2.622s
ok      os/signal   5.264s
ok      os/user 0.098s
ok      path    0.066s
ok      path/filepath   0.800s
ok      plugin  0.045s
ok      reflect 2.633s
ok      regexp  1.926s
ok      regexp/syntax   10.462s
ok      runtime 230.629s
ok      runtime/debug   0.722s
ok      runtime/internal/atomic 0.287s
ok      runtime/internal/math   0.234s
ok      runtime/internal/sys    0.121s
ok      runtime/pprof   18.632s
ok      runtime/pprof/internal/profile  0.043s
ok      runtime/trace   43.593s
ok      sort    0.949s
ok      strconv 6.936s
ok      strings 5.242s
ok      sync    1.809s
ok      sync/atomic 0.439s
ok      syscall 0.199s
ok      testing 2.440s
ok      testing/quick   1.900s
ok      text/scanner    0.118s
ok      text/tabwriter  0.051s
ok      text/template   3.862s
ok      text/template/parse 0.153s
ok      time    6.476s
ok      unicode 0.057s
ok      unicode/utf16   0.046s
ok      unicode/utf8    0.067s
ok      cmd/addr2line   41.284s
ok      cmd/api 0.648s
ok      cmd/asm/internal/asm    18.110s
ok      cmd/asm/internal/lex    0.082s
ok      cmd/compile 0.133s
ok      cmd/compile/internal/gc 244.161s
ok      cmd/compile/internal/ssa    8.055s
ok      cmd/compile/internal/syntax 0.191s
ok      cmd/compile/internal/test   0.041s [no tests to run]
ok      cmd/compile/internal/types  0.074s
ok      cmd/cover   56.901s
ok      cmd/doc 1.537s
ok      cmd/fix 102.192s
ok      cmd/go  1279.497s
ok      cmd/go/internal/cache   19.187s
ok      cmd/go/internal/dirhash 0.064s
ok      cmd/go/internal/generate    0.120s
ok      cmd/go/internal/get 0.290s
ok      cmd/go/internal/imports 0.115s
ok      cmd/go/internal/load    0.100s
ok      cmd/go/internal/lockedfile  0.074s
ok      cmd/go/internal/lockedfile/internal/filelock    0.239s
ok      cmd/go/internal/modconv 0.252s
ok      cmd/go/internal/modfetch    0.597s
ok      cmd/go/internal/modfetch/codehost   0.577s
ok      cmd/go/internal/modfile 0.247s
ok      cmd/go/internal/modload 0.141s
ok      cmd/go/internal/module  0.059s
ok      cmd/go/internal/mvs 0.112s
ok      cmd/go/internal/par 0.235s
ok      cmd/go/internal/search  0.054s
ok      cmd/go/internal/semver  0.090s
ok      cmd/go/internal/txtar   0.053s
ok      cmd/go/internal/web2    0.060s
ok      cmd/go/internal/work    0.153s
ok      cmd/gofmt   1.256s
ok      cmd/internal/buildid    6.312s
ok      cmd/internal/dwarf  0.039s
ok      cmd/internal/edit   0.039s
ok      cmd/internal/goobj  1.182s
ok      cmd/internal/obj    0.078s
ok      cmd/internal/obj/arm64  0.304s
ok      cmd/internal/obj/x86    43.571s
ok      cmd/internal/objabi 0.050s
ok      cmd/internal/src    0.051s
ok      cmd/internal/test2json  3.183s
ok      cmd/link    12.512s
ok      cmd/link/internal/ld    37.054s
ok      cmd/link/internal/sym   0.063s
ok      cmd/nm  35.487s
ok      cmd/objdump 18.989s
ok      cmd/pack    40.376s
ok      cmd/trace   0.195s
ok      cmd/vendor/github.com/google/pprof/internal/binutils    0.156s
ok      cmd/vendor/github.com/google/pprof/internal/driver  8.162s
ok      cmd/vendor/github.com/google/pprof/internal/elfexec 0.040s
ok      cmd/vendor/github.com/google/pprof/internal/graph   0.126s
ok      cmd/vendor/github.com/google/pprof/internal/measurement 0.046s
ok      cmd/vendor/github.com/google/pprof/internal/report  0.274s
ok      cmd/vendor/github.com/google/pprof/internal/symbolizer  0.057s
ok      cmd/vendor/github.com/google/pprof/internal/symbolz 0.067s
ok      cmd/vendor/github.com/google/pprof/profile  1.340s
ok      cmd/vendor/github.com/ianlancetaylor/demangle   0.328s
ok      cmd/vendor/golang.org/x/arch/arm/armasm 0.457s
ok      cmd/vendor/golang.org/x/arch/arm64/arm64asm 1.350s
ok      cmd/vendor/golang.org/x/arch/ppc64/ppc64asm 0.071s
ok      cmd/vendor/golang.org/x/arch/x86/x86asm 2.532s
ok      cmd/vendor/golang.org/x/crypto/ssh/terminal 0.119s
ok      cmd/vendor/golang.org/x/sys/unix    0.581s
ok      cmd/vet 158.208s

##### os/user with tag osusergo
ok      os/user 0.031s

##### GOMAXPROCS=2 runtime -cpu=1,2,4 -quick
ok      runtime 97.968s

##### cmd/go terminal test
PASS
ok      _/work/riscv-go/src/cmd/go/testdata/testterminal18153   0.066s

##### Testing without libgcc.
ok      crypto/x509 18.518s
ok      net 0.065s
ok      os/user 0.046s

##### sync -cpu=10
ok      sync    2.524s

##### ../test/bench/go1
testing: warning: no tests to run
PASS
ok      _/work/riscv-go/test/bench/go1  66.283s

##### ../test
# go run run.go -- live.go

live.go:457: no match for `live at call to mapiterinit: .autotmp_[0-9]+$` in:
    live.go:457: live at call to mapiterinit: .autotmp_5 .autotmp_12
    live.go:457: live at call to mapiternext: .autotmp_5 .autotmp_12
live.go:457: no match for `live at call to mapiternext: .autotmp_[0-9]+$` in:
    live.go:457: live at call to mapiterinit: .autotmp_5 .autotmp_12
    live.go:457: live at call to mapiternext: .autotmp_5 .autotmp_12
live.go:458: no match for `live at call to printstring: .autotmp_[0-9]+$` in:
    live.go:458: live at call to printstring: .autotmp_5 .autotmp_12
Unmatched Errors:
live.go:342: live at call to mapaccess1: .autotmp_2
live.go:354: live at call to mapaccess2: .autotmp_8
live.go:366: live at call to mapassign: .autotmp_4
live.go:392: live at call to print26: .autotmp_11
live.go:445: live at call to printstring: .autotmp_14
live.go:445: live at call to concatstrings: .autotmp_14
live.go:701: live at call to f43: .autotmp_10
live.go:457: live at call to mapiterinit: .autotmp_5 .autotmp_12
live.go:457: live at call to mapiternext: .autotmp_5 .autotmp_12
live.go:458: live at call to printstring: .autotmp_5 .autotmp_12
live.go:700: live at call to f43: .autotmp_10

FAIL    live.go 2.043s
# go run run.go -- fixedbugs/issue10607.go
exit status 1
BUG: linkmode=external exit status 2
# command-line-arguments
2019/05/23 14:53:20 cannot use -linkmode=external with -H 5

exit status 1

FAIL    fixedbugs/issue10607.go 21.914s
# go run run.go -- fixedbugs/issue16249.go
exit status 1
runtime: bad pointer in frame main.A at 0x2100488eb0: 0x1
fatal error: invalid pointer found on stack

runtime stack:
runtime.throw(0xa0a5f, 0x1e)
    /home/carlosedp/work/riscv-go/src/runtime/panic.go:617 +0x88 fp=0x3fffc21b30 sp=0x3fffc21b08 pc=0x40548
runtime.adjustpointers(0x2100488eb0, 0x3fffc21c50, 0x3fffc21ff0, 0xe9f48, 0xf0960)
    /home/carlosedp/work/riscv-go/src/runtime/stack.go:591 +0x3cc fp=0x3fffc21bb0 sp=0x3fffc21b30 pc=0x5d19c
runtime.adjustframe(0x3fffc21f08, 0x3fffc21ff0, 0xf0960)
    /home/carlosedp/work/riscv-go/src/runtime/stack.go:633 +0x3d0 fp=0x3fffc21c70 sp=0x3fffc21bb0 pc=0x5d570
runtime.gentraceback(0xffffffffffffffff, 0xffffffffffffffff, 0x0, 0x2100000180, 0x0, 0x0, 0x7fffffff, 0xa2578, 0x3fffc21ff0, 0x0, ...)
    /home/carlosedp/work/riscv-go/src/runtime/traceback.go:341 +0x1708 fp=0x3fffc21f60 sp=0x3fffc21c70 pc=0x66748
runtime.copystack(0x2100000180, 0x8000, 0xf0900)
    /home/carlosedp/work/riscv-go/src/runtime/stack.go:881 +0x234 fp=0x3fffc22110 sp=0x3fffc21f60 pc=0x5dbdc
runtime.shrinkstack(0x2100000180)
    /home/carlosedp/work/riscv-go/src/runtime/stack.go:1137 +0x200 fp=0x3fffc22130 sp=0x3fffc22110 pc=0x5ef30
runtime.scanstack(0x2100000180, 0x2100025270)
    /home/carlosedp/work/riscv-go/src/runtime/mgcmark.go:690 +0x104 fp=0x3fffc22320 sp=0x3fffc22130 pc=0x2f8d4
runtime.newstack()
    /home/carlosedp/work/riscv-go/src/runtime/stack.go:1019 +0x3d4 fp=0x3fffc224a8 sp=0x3fffc22320 pc=0x5e0cc
runtime.morestack()
    /home/carlosedp/work/riscv-go/src/runtime/asm_riscv64.s:236 +0x88 fp=0x3fffc224a8 sp=0x3fffc224a8 pc=0x70320

goroutine 1 [GC assist wait (scan)]:
runtime.semrelease1(0xf2e30, 0x0)
    /home/carlosedp/work/riscv-go/src/runtime/sema.go:159 +0x14 fp=0x2100488d30 sp=0x2100488d30 pc=0x55994
runtime.semrelease(...)
    /home/carlosedp/work/riscv-go/src/runtime/sema.go:156
runtime.gcStart(0x1, 0x0, 0x0)
    /home/carlosedp/work/riscv-go/src/runtime/mgc.go:1355 +0x494 fp=0x2100488db8 sp=0x2100488d30 pc=0x29b0c
runtime.mallocgc(0x10, 0x8f6e0, 0x3eb01, 0x20023e5968)
    /home/carlosedp/work/riscv-go/src/runtime/malloc.go:1040 +0x4a4 fp=0x2100488e58 sp=0x2100488db8 pc=0x1bca4
runtime.newobject(0x8f6e0, 0x77450)
    /home/carlosedp/work/riscv-go/src/runtime/malloc.go:1076 +0x44 fp=0x2100488e80 sp=0x2100488e58 pc=0x1c52c
main.A(0x33, 0x2, 0x0, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:25 +0x54 fp=0x2100488eb8 sp=0x2100488e80 pc=0x77424
main.A(0x34, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100488ef0 sp=0x2100488eb8 pc=0x774b4
main.A(0x35, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100488f28 sp=0x2100488ef0 pc=0x774b4
main.A(0x36, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100488f60 sp=0x2100488f28 pc=0x774b4
main.A(0x37, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100488f98 sp=0x2100488f60 pc=0x774b4
main.A(0x38, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100488fd0 sp=0x2100488f98 pc=0x774b4
main.A(0x39, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489008 sp=0x2100488fd0 pc=0x774b4
main.A(0x3a, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489040 sp=0x2100489008 pc=0x774b4
main.A(0x3b, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489078 sp=0x2100489040 pc=0x774b4
main.A(0x3c, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x21004890b0 sp=0x2100489078 pc=0x774b4
main.A(0x3d, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x21004890e8 sp=0x21004890b0 pc=0x774b4
main.A(0x3e, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489120 sp=0x21004890e8 pc=0x774b4
main.A(0x3f, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489158 sp=0x2100489120 pc=0x774b4
main.A(0x40, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489190 sp=0x2100489158 pc=0x774b4
main.A(0x41, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x21004891c8 sp=0x2100489190 pc=0x774b4
main.A(0x42, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489200 sp=0x21004891c8 pc=0x774b4
main.A(0x43, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489238 sp=0x2100489200 pc=0x774b4
main.A(0x44, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489270 sp=0x2100489238 pc=0x774b4
main.A(0x45, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x21004892a8 sp=0x2100489270 pc=0x774b4
main.A(0x46, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x21004892e0 sp=0x21004892a8 pc=0x774b4
main.A(0x47, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489318 sp=0x21004892e0 pc=0x774b4
main.A(0x48, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489350 sp=0x2100489318 pc=0x774b4
main.A(0x49, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489388 sp=0x2100489350 pc=0x774b4
main.A(0x4a, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x21004893c0 sp=0x2100489388 pc=0x774b4
main.A(0x4b, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x21004893f8 sp=0x21004893c0 pc=0x774b4
main.A(0x4c, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489430 sp=0x21004893f8 pc=0x774b4
main.A(0x4d, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489468 sp=0x2100489430 pc=0x774b4
main.A(0x4e, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x21004894a0 sp=0x2100489468 pc=0x774b4
main.A(0x4f, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x21004894d8 sp=0x21004894a0 pc=0x774b4
main.A(0x50, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489510 sp=0x21004894d8 pc=0x774b4
main.A(0x51, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489548 sp=0x2100489510 pc=0x774b4
main.A(0x52, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489580 sp=0x2100489548 pc=0x774b4
main.A(0x53, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x21004895b8 sp=0x2100489580 pc=0x774b4
main.A(0x54, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x21004895f0 sp=0x21004895b8 pc=0x774b4
main.A(0x55, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489628 sp=0x21004895f0 pc=0x774b4
main.A(0x56, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489660 sp=0x2100489628 pc=0x774b4
main.A(0x57, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489698 sp=0x2100489660 pc=0x774b4
main.A(0x58, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x21004896d0 sp=0x2100489698 pc=0x774b4
main.A(0x59, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489708 sp=0x21004896d0 pc=0x774b4
main.A(0x5a, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489740 sp=0x2100489708 pc=0x774b4
main.A(0x5b, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489778 sp=0x2100489740 pc=0x774b4
main.A(0x5c, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x21004897b0 sp=0x2100489778 pc=0x774b4
main.A(0x5d, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x21004897e8 sp=0x21004897b0 pc=0x774b4
main.A(0x5e, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489820 sp=0x21004897e8 pc=0x774b4
main.A(0x5f, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489858 sp=0x2100489820 pc=0x774b4
main.A(0x60, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489890 sp=0x2100489858 pc=0x774b4
main.A(0x61, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x21004898c8 sp=0x2100489890 pc=0x774b4
main.A(0x62, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489900 sp=0x21004898c8 pc=0x774b4
main.A(0x63, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489938 sp=0x2100489900 pc=0x774b4
main.A(0x64, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489970 sp=0x2100489938 pc=0x774b4
main.A(0x65, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x21004899a8 sp=0x2100489970 pc=0x774b4
main.A(0x66, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x21004899e0 sp=0x21004899a8 pc=0x774b4
main.A(0x67, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489a18 sp=0x21004899e0 pc=0x774b4
main.A(0x68, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489a50 sp=0x2100489a18 pc=0x774b4
main.A(0x69, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489a88 sp=0x2100489a50 pc=0x774b4
main.A(0x6a, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489ac0 sp=0x2100489a88 pc=0x774b4
main.A(0x6b, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489af8 sp=0x2100489ac0 pc=0x774b4
main.A(0x6c, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489b30 sp=0x2100489af8 pc=0x774b4
main.A(0x6d, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489b68 sp=0x2100489b30 pc=0x774b4
main.A(0x6e, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489ba0 sp=0x2100489b68 pc=0x774b4
main.A(0x6f, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489bd8 sp=0x2100489ba0 pc=0x774b4
main.A(0x70, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489c10 sp=0x2100489bd8 pc=0x774b4
main.A(0x71, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489c48 sp=0x2100489c10 pc=0x774b4
main.A(0x72, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489c80 sp=0x2100489c48 pc=0x774b4
main.A(0x73, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489cb8 sp=0x2100489c80 pc=0x774b4
main.A(0x74, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489cf0 sp=0x2100489cb8 pc=0x774b4
main.A(0x75, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489d28 sp=0x2100489cf0 pc=0x774b4
main.A(0x76, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489d60 sp=0x2100489d28 pc=0x774b4
main.A(0x77, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489d98 sp=0x2100489d60 pc=0x774b4
main.A(0x78, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489dd0 sp=0x2100489d98 pc=0x774b4
main.A(0x79, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489e08 sp=0x2100489dd0 pc=0x774b4
main.A(0x7a, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489e40 sp=0x2100489e08 pc=0x774b4
main.A(0x7b, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489e78 sp=0x2100489e40 pc=0x774b4
main.A(0x7c, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489eb0 sp=0x2100489e78 pc=0x774b4
main.A(0x7d, 0x2, 0x2, 0x77488, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489ee8 sp=0x2100489eb0 pc=0x774b4
main.A(0x7e, 0x2, 0x2, 0x0, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489f20 sp=0x2100489ee8 pc=0x774b4
main.A(0x7f, 0x2, 0x2, 0x0, 0x0)
    /work/riscv-go/test/fixedbugs/issue16249.go:36 +0xe4 fp=0x2100489f58 sp=0x2100489f20 pc=0x774b4
main.main()
    /work/riscv-go/test/fixedbugs/issue16249.go:54 +0x58 fp=0x2100489f98 sp=0x2100489f58 pc=0x77768
runtime.main()
    /home/carlosedp/work/riscv-go/src/runtime/proc.go:200 +0x290 fp=0x2100489fd8 sp=0x2100489f98 pc=0x426c8
runtime.goexit()
    /home/carlosedp/work/riscv-go/src/runtime/asm_riscv64.s:468 +0x4 fp=0x2100489fd8 sp=0x2100489fd8 pc=0x72364

goroutine 2 [force gc (idle)]:
runtime.gopark(0xa2770, 0xf29f0, 0x1410, 0x1)
    /home/carlosedp/work/riscv-go/src/runtime/proc.go:301 +0x188 fp=0x2100036fb0 sp=0x2100036f88 pc=0x42cc8
runtime.goparkunlock(...)
    /home/carlosedp/work/riscv-go/src/runtime/proc.go:307
runtime.forcegchelper()
    /home/carlosedp/work/riscv-go/src/runtime/proc.go:250 +0x118 fp=0x2100036fd8 sp=0x2100036fb0 pc=0x42aa0
runtime.goexit()
    /home/carlosedp/work/riscv-go/src/runtime/asm_riscv64.s:468 +0x4 fp=0x2100036fd8 sp=0x2100036fd8 pc=0x72364
created by runtime.init.4
    /home/carlosedp/work/riscv-go/src/runtime/proc.go:239 +0x40

goroutine 3 [GC sweep wait]:
runtime.gopark(0xa2770, 0xf2ae0, 0x140c, 0x1)
    /home/carlosedp/work/riscv-go/src/runtime/proc.go:301 +0x188 fp=0x21000377a8 sp=0x2100037780 pc=0x42cc8
runtime.goparkunlock(...)
    /home/carlosedp/work/riscv-go/src/runtime/proc.go:307
runtime.bgsweep(0x2100054000)
    /home/carlosedp/work/riscv-go/src/runtime/mgcsweep.go:89 +0x1f4 fp=0x21000377d0 sp=0x21000377a8 pc=0x332d4
runtime.goexit()
    /home/carlosedp/work/riscv-go/src/runtime/asm_riscv64.s:468 +0x4 fp=0x21000377d0 sp=0x21000377d0 pc=0x72364
created by runtime.gcenable
    /home/carlosedp/work/riscv-go/src/runtime/mgc.go:208 +0x68

goroutine 17 [GC worker (idle)]:
runtime.gopark(0xa2630, 0x2100460000, 0xffff1417, 0x0)
    /home/carlosedp/work/riscv-go/src/runtime/proc.go:301 +0x188 fp=0x2100036750 sp=0x2100036728 pc=0x42cc8
runtime.gcBgMarkWorker(0x2100024000)
    /home/carlosedp/work/riscv-go/src/runtime/mgc.go:1836 +0x140 fp=0x21000367d0 sp=0x2100036750 pc=0x2b2c8
runtime.goexit()
    /home/carlosedp/work/riscv-go/src/runtime/asm_riscv64.s:468 +0x4 fp=0x21000367d0 sp=0x21000367d0 pc=0x72364
created by runtime.gcBgMarkStartWorkers
    /home/carlosedp/work/riscv-go/src/runtime/mgc.go:1784 +0xc0

goroutine 18 [GC worker (idle)]:
runtime.gopark(0xa2630, 0x2100460010, 0xffff1417, 0x0)
    /home/carlosedp/work/riscv-go/src/runtime/proc.go:301 +0x188 fp=0x2100032750 sp=0x2100032728 pc=0x42cc8
runtime.gcBgMarkWorker(0x2100026500)
    /home/carlosedp/work/riscv-go/src/runtime/mgc.go:1836 +0x140 fp=0x21000327d0 sp=0x2100032750 pc=0x2b2c8
runtime.goexit()
    /home/carlosedp/work/riscv-go/src/runtime/asm_riscv64.s:468 +0x4 fp=0x21000327d0 sp=0x21000327d0 pc=0x72364
created by runtime.gcBgMarkStartWorkers
    /home/carlosedp/work/riscv-go/src/runtime/mgc.go:1784 +0xc0

goroutine 19 [GC worker (idle)]:
runtime.gopark(0xa2630, 0x2100460020, 0xffff1417, 0x0)
    /home/carlosedp/work/riscv-go/src/runtime/proc.go:301 +0x188 fp=0x2100032f50 sp=0x2100032f28 pc=0x42cc8
runtime.gcBgMarkWorker(0x2100028a00)
    /home/carlosedp/work/riscv-go/src/runtime/mgc.go:1836 +0x140 fp=0x2100032fd0 sp=0x2100032f50 pc=0x2b2c8
runtime.goexit()
    /home/carlosedp/work/riscv-go/src/runtime/asm_riscv64.s:468 +0x4 fp=0x2100032fd0 sp=0x2100032fd0 pc=0x72364
created by runtime.gcBgMarkStartWorkers
    /home/carlosedp/work/riscv-go/src/runtime/mgc.go:1784 +0xc0

goroutine 20 [GC worker (idle)]:
runtime.systemstack_switch()
    /home/carlosedp/work/riscv-go/src/runtime/asm_riscv64.s:91 +0x8 fp=0x2100033750 sp=0x2100033748 pc=0x701c8
runtime.gcBgMarkWorker(0x210002af00)
    /home/carlosedp/work/riscv-go/src/runtime/mgc.go:1890 +0x268 fp=0x21000337d0 sp=0x2100033750 pc=0x2b3f0
runtime.goexit()
    /home/carlosedp/work/riscv-go/src/runtime/asm_riscv64.s:468 +0x4 fp=0x21000337d0 sp=0x21000337d0 pc=0x72364
created by runtime.gcBgMarkStartWorkers
    /home/carlosedp/work/riscv-go/src/runtime/mgc.go:1784 +0xc0
exit status 2

FAIL    fixedbugs/issue16249.go 9.260s
2019/05/23 15:06:55 Failed: exit status 1

##### API check
Go version is "go1.12", ignoring -next /home/carlosedp/work/riscv-go/api/next.txt
2019/05/23 15:07:19 FAILED

One question though, how hard it to implement the required functions for CGO on src/runtime/cgo? A build I tried complained about not finding _cgo_sys_thread_start and it's implemented on the ARCH specific files. Any tips?

One question though, how hard it to implement the required functions for CGO on src/runtime/cgo? A build I tried complained about not finding _cgo_sys_thread_start and it's implemented on the ARCH specific files. Any tips?

You can probably just copy runtime/cgo/gcc_linux_amd64.c to runtime/gcc_linux_riscv64.c. Take a look at it, but I don't see any obvious reason that wouldn't work. (Yes, this should be consolidated somewhat.)

The more interesting issue is runtime/cgo/asm_riscv64.s. That too should be pretty simple, but it will have to be written. See the existing files.

I've just pushed up a branch that is merged to Go tip at 2d7cb295 and contains a variety of fixes. All tests now pass:

$ GOROOT_BOOTSTRAP=~/riscv-go2 GO_TEST_TIMEOUT_SCALE=5 ./all.bash
Building Go cmd/dist using /home/joel/riscv-go2.
Building Go toolchain1 using /home/joel/riscv-go2.
Building Go bootstrap cmd/go (go_bootstrap) using Go toolchain1.
Building Go toolchain2 using go_bootstrap and Go toolchain1.
Building Go toolchain3 using go_bootstrap and Go toolchain2.
Building packages and commands for linux/riscv64.

##### Testing packages.
...
ALL TESTS PASSED
---
Installed Go for linux/riscv64 in /home/joel/riscv-go
Installed commands in /home/joel/riscv-go/bin

Awesome @4a6f656c , I'm working on the CGO support. I believe I'm close.

Can anyone recommend Hardware ? Sorry to ask in this thread but we are building golang based systems for Government, and the RISC-V ISA is perfect because its secure, UNLIKE intel, arm etc.
We want to do some prototype testing and hook it up to CI process with other embedded boards.

Its fantastic btw that the golang team are supporting RISC-V

@gedw99 for now, to run Linux you need the SiFive HiFive Unleashed board. I believe it's still the only hardware available.

I started implementing some files to get CGO support but got stuck on some issues. The files are on a branch in my fork (https://github.com/carlosedp/riscv-go/tree/riscv-cgo), if someone could take a look.

I've set a small example to test CGO:

// cgo.go
package main

import "C"

func test() {
}

// main.go
package main

func main() {
        test()
}

Running CGO_ENABLED=1 go build . on it gives the error:

$ CGO_ENABLED=1 go build .
# _/home/carlosedp/cgo-test
2019/05/24 19:25:31 elfreloc1
type..eqfunc.[134]string: unsupported obj reloc 1 (R_ADDR)/8 to type..eq.[134]string
2019/05/24 19:25:31 elfreloc1
type..eqfunc.[134]struct { runtime.mcentral runtime.mcentral; runtime.pad [8]uint8 }: unsupported obj reloc 1 (R_ADDR)/8 to type..eq.[134]struct { runtime.mcentral runtime.mcentral; runtime.pad [8]uint8 }
2019/05/24 19:25:31 elfreloc1
type..eqfunc.[16]runtime.dbgVar: unsupported obj reloc 1 (R_ADDR)/8 to type..eq.[16]runtime.dbgVar
2019/05/24 19:25:31 elfreloc1
type..eqfunc.[251]struct { runtime.root runtime.semaRoot; runtime.pad [8]uint8 }: unsupported obj reloc 1 (R_ADDR)/8 to type..eq.[251]struct { runtime.root runtime.semaRoot; runtime.pad [8]uint8 }
2019/05/24 19:25:31 elfreloc1
type..eqfunc.[25]string: unsupported obj reloc 1 (R_ADDR)/8 to type..eq.[25]string
2019/05/24 19:25:31 elfreloc1
type..eqfunc.[2]runtime.gcSweepBuf: unsupported obj reloc 1 (R_ADDR)/8 to type..eq.[2]runtime.gcSweepBuf
2019/05/24 19:25:31 elfreloc1
type..eqfunc.[2]string: unsupported obj reloc 1 (R_ADDR)/8 to type..eq.[2]string
2019/05/24 19:25:31 elfreloc1
type..eqfunc.[33]float64: unsupported obj reloc 1 (R_ADDR)/8 to type..eq.[33]float64
2019/05/24 19:25:31 elfreloc1
type..eqfunc.[4]string: unsupported obj reloc 1 (R_ADDR)/8 to type..eq.[4]string
2019/05/24 19:25:31 elfreloc1
type..eqfunc.[65]runtime.sigTabT: unsupported obj reloc 1 (R_ADDR)/8 to type..eq.[65]runtime.sigTabT
2019/05/24 19:25:31 elfreloc1
type..eqfunc.[67]struct { runtime.size uint32; runtime.nmalloc uint64; runtime.nfree uint64 }: unsupported obj reloc 1 (R_ADDR)/8 to type..eq.[67]struct { runtime.size uint32; runtime.nmalloc uint64; runtime.nfree uint64 }
2019/05/24 19:25:31 elfreloc1
type..eqfunc.[6]string: unsupported obj reloc 1 (R_ADDR)/8 to type..eq.[6]string
2019/05/24 19:25:31 elfreloc1
type..eqfunc.[8]string: unsupported obj reloc 1 (R_ADDR)/8 to type..eq.[8]string
2019/05/24 19:25:31 elfreloc1
type..eqfunc.[9]string: unsupported obj reloc 1 (R_ADDR)/8 to type..eq.[9]string
2019/05/24 19:25:31 elfreloc1
type..eqfunc.internal/cpu.CacheLinePad: unsupported obj reloc 1 (R_ADDR)/8 to type..eq.internal/cpu.CacheLinePad
2019/05/24 19:25:31 elfreloc1
type..eqfunc.internal/cpu.arm64: unsupported obj reloc 1 (R_ADDR)/8 to type..eq.internal/cpu.arm64
2019/05/24 19:25:31 elfreloc1
type..eqfunc.internal/cpu.option: unsupported obj reloc 1 (R_ADDR)/8 to type..eq.internal/cpu.option
2019/05/24 19:25:31 elfreloc1
type..eqfunc.internal/cpu.x86: unsupported obj reloc 1 (R_ADDR)/8 to type..eq.internal/cpu.x86
2019/05/24 19:25:31 elfreloc1
type..eqfunc.internal/reflectlite.uncommonType: unsupported obj reloc 1 (R_ADDR)/8 to type..eq.internal/reflectlite.uncommonType
2019/05/24 19:25:31 elfreloc1
type..eqfunc.runtime.TypeAssertionError: unsupported obj reloc 1 (R_ADDR)/8 to type..eq.runtime.TypeAssertionError
2019/05/24 19:25:31 elfreloc1
type..eqfunc.runtime._defer: unsupported obj reloc 1 (R_ADDR)/8 to type..eq.runtime._defer
/home/carlosedp/work/riscv-go/pkg/tool/linux_riscv64/link: too many errors

Thanks!

thanks @carlosedp Will get the HiFive Unleashed.

On Fri, May 24, 2019 at 6:15 AM Carlos Eduardo notifications@github.com
wrote:

One question, why I'm getting these errors:

$ CGO_ENABLED=1 go build .

runtime/cgo

gcc_riscv64.S: Assembler messages:
gcc_riscv64.S:34: Error: unrecognized opcode mov x18,x10' gcc_riscv64.S:35: Error: unrecognized opcodemov x19,x11'
gcc_riscv64.S:36: Error: unrecognized opcode `mov x10,x12'

The RISC-V assembler supports "mv" and "move" but not "mov".

Jim

Ah thanks @jim-wilson I fixed that part but found other problems I don't know how to fix. See my last comment. I also pushed what I did to my fork... if someone could take a look. Maybe there are more functions required by CGO that I haven't considered.

@carlosedp I haven't looked at the source code, but it looks like you need to support the (R_ADDR)/8 relocation in elfreloc1 in (probably) cmd/link/internal/riscv64/asm.go. Although I'm not sure what relocation that is.

@carlosedp there is still linking related work needed before cgo will be possible - elfreloc1 currently amounts to:

func elfreloc1(ctxt *ld.Link, r *sym.Reloc, sectoff int64) bool {
        log.Printf("elfreloc1")
        return false
}

More good news, module x/sys have been upstreamed: https://github.com/golang/sys/commit/4c3a928424d249a1013e789cf5e458d480bcba16

I'm very happy to see all the progress being made on this port!

I'm interested in helping out in getting this into the main Go tree. Here's a list of things I think we need to resolve to make that happen. Do people think we could get this done for 1.14?

  1. Builders. This is issue #30262. I think this might be the most important infrastructure part we need. Details are in that issue, but Brad thinks the best way forward is just to QEMU the builders on x86, building natively and testing with QEMU. I'd love to see the day when we can get riscv native machines in the cloud, but the ecosystem isn't there yet.
  2. Syncing to tip. If we want to get in for 1.14, we should probably have something sync'd and ready to go when the freeze expires.
  3. Code reviews. Send 'em! I'm happy to field them, or delegate them out.
  4. Maintainers. Someone want to volunteer?

This list is basically my distillation of the porting policy.

Let me know if there's anything you need from my end.

Has anyone seen any traction on the QEMU CAS bug? Is that still a problem?

Hi @randall77, I will start looking into https://github.com/golang/build/tree/master/env/linux-arm-qemu to create a builder for Risc-V.

Regarding the Qemu bug, @4a6f656c submitted a patch that fixes the bug testing with the replication programs linked on it. I will try to build and test Go on a Qemu I built with this patch to test.

I've set a tracker for the PR submissions and dependencies here: https://github.com/carlosedp/riscv-bringup

https://go-review.googlesource.com/c/build/+/177918 was my recent attempt at setting up QEMU-based builders. It's not complete, though. It still does too much in the virtualized guest (== it uses too much CPU and is too slow). I need to push the files to the host (x86) instead of the guest (emulated arch), and use qemu's 9p file sharing or something to share the $WORKDIR between host & guess. I'll work on that later.

Hi @4a6f656c, I successfully built Go on Qemu with the atomics patch you submitted but I need to use GOGC=off otherwise I get this error:

$ ./make.bash
Building Go cmd/dist using /home/carlosedp/go-linux-riscv64-bootstrap.
Building Go toolchain1 using /home/carlosedp/go-linux-riscv64-bootstrap.
Building Go bootstrap cmd/go (go_bootstrap) using Go toolchain1.
Building Go toolchain2 using go_bootstrap and Go toolchain1.
Building Go toolchain3 using go_bootstrap and Go toolchain2.
runtime: nelems=512 nalloc=238 previous allocCount=235 nfreed=65533
fatal error: sweep increased allocation count

runtime stack:
runtime.(*mspan).sweep(0x2ede8, 0x78ea80, 0x0)
    /home/carlosedp/riscv-go/src/runtime/mgcsweep.go:328 +0xc40
runtime: unexpected return pc for runtime.(*mspan).sweep called from 0x0
stack: frame={sp:0x2100235e10, fp:0x2100235ee0} stack=[0x2100234000,0x2100236000)
0000002100235d10:  000000000004d968 <runtime.throw+136>  0000002100235d20
0000002100235d20:  00000000000842b8 <runtime.fatalthrow.func1+0>  0000002100444480
0000002100235d30:  000000000004d968 <runtime.throw+136>  0000002100235d40
0000002100235d40:  000000000003f3e8 <runtime.(*mspan).sweep+3136>  0000002100235d50
0000002100235d50:  0000000000084218 <runtime.throw.func1+0>  00000000004b05f7
0000002100235d60:  0000000000000020  000000000002ed4c <runtime.(*mcentral).uncacheSpan+220>
0000002100235d70:  00000000004b05f7  0000000000000020
0000002100235d80:  0000000000000002  0000000000000000
0000002100235d90:  0000000000000000  0000000000000000
0000002100235da0:  fffd010100000004  0000001700000018
0000002100235db0:  0000000000000000  0000000000000010
0000002100235dc0:  0000000000000000  0000000000000000
0000002100235dd0:  00000000000000eb  0000000000000200
0000002100235de0:  00000000000000ee  0000000000000000
0000002100235df0:  0000000000000000  00000015555586d0
0000002100235e00:  0000002100444480  000000000002edcc <runtime.(*mcentral).uncacheSpan+348>
0000002100235e10: <0000000000000000  000000000002ede8 <runtime.(*mcentral).uncacheSpan+376>
0000002100235e20:  000000000078ea80  0000000000000000
0000002100235e30:  0000000000000001  000000000002e414 <runtime.(*mcache).releaseAll+180>
0000002100235e40:  0000001557849cc8  0000001557849c00
0000002100235e50:  00000000000052e2  0100000000000000
0000002100235e60:  fffffffffffffeeb  000000000002e4c0 <runtime.(*mcache).prepareForSweep+112>
0000002100235e70:  000000000078ea80  0000001557849cc8
0000002100235e80:  0000000000000004  0000001555558718
0000002100235e90:  000000000005c4b0 <runtime.procresize+1520>  00000015555586d0
0000002100235ea0:  0000000025561487  0000000000000000
0000002100235eb0:  0000000000053280 <runtime.startTheWorldWithSema+208>  00000015555586d0
0000002100235ec0:  0000000000000000  0000000000000000
0000002100235ed0:  0000000000000000  0000000000000000
0000002100235ee0: >0000000000000000  0000000000000000
0000002100235ef0:  0000000000000000  0000000000000000
0000002100235f00:  0000000000000006  0000000000000000
0000002100235f10:  0000000000000000  0000000000000000
0000002100235f20:  0000000000000006  0000000000000000
0000002100235f30:  0000000000000006  0000000000000001
0000002100235f40:  0000000000000000  0000000000000000
0000002100235f50:  0000000000000000  0000002100444480
0000002100235f60:  0000000000000000  0000000000081e84 <runtime.gcMarkTermination.func3+52>
0000002100235f70:  0000000000000006  0000000000000000
0000002100235f80:  0000000000786a00  0000002100000000
0000002100235f90:  0000002100000001  0000000000081d8c <runtime.gcMarkTermination.func2+204>
0000002100235fa0:  0000000000000000  0000000000000000
0000002100235fb0:  00000021005da380  0000000000085d98 <runtime.systemstack+128>
0000002100235fc0:  0000000000085d98 <runtime.systemstack+128>  0000000000000001
0000002100235fd0:  0000040ecda2abd4  0000000000053510 <runtime.mstart+0>
runtime.(*mspan).sweep(0x0, 0x0, 0x0)
    /home/carlosedp/riscv-go/src/runtime/mgcsweep.go:328 +0xc40

goroutine 84 [running]:
runtime.systemstack_switch()
    /home/carlosedp/riscv-go/src/runtime/asm_riscv64.s:91 +0x8 fp=0x2100034538 sp=0x2100034530 pc=0x85d00
runtime.gcMarkTermination(0x3ff0bd02de3d11f2)
    /home/carlosedp/riscv-go/src/runtime/mgc.go:1696 +0x538 fp=0x2100034700 sp=0x2100034538 pc=0x34328
runtime.gcMarkDone()
    /home/carlosedp/riscv-go/src/runtime/mgc.go:1578 +0x2bc fp=0x2100034750 sp=0x2100034700 pc=0x33d14
runtime.gcBgMarkWorker(0x2100028500)
    /home/carlosedp/riscv-go/src/runtime/mgc.go:1961 +0x390 fp=0x21000347d0 sp=0x2100034750 pc=0x35118
runtime.goexit()
    /home/carlosedp/riscv-go/src/runtime/asm_riscv64.s:440 +0x4 fp=0x21000347d0 sp=0x21000347d0 pc=0x87e9c
created by runtime.gcBgMarkStartWorkers
    /home/carlosedp/riscv-go/src/runtime/mgc.go:1782 +0xb8

goroutine 1 [semacquire]:
sync.runtime_Semacquire(0x21001b4be4)
    /home/carlosedp/riscv-go/src/runtime/sema.go:56 +0x4c
sync.(*WaitGroup).Wait(0x21001b4be4)
    /home/carlosedp/riscv-go/src/sync/waitgroup.go:130 +0xd4
cmd/go/internal/work.(*Builder).Do(0x2100443ea0, 0x21003b48c0)
    /home/carlosedp/riscv-go/src/cmd/go/internal/work/exec.go:186 +0x340
cmd/go/internal/work.InstallPackages(0x210000e100, 0x4, 0x4, 0x21003fdc40, 0x4, 0x4)
    /home/carlosedp/riscv-go/src/cmd/go/internal/work/build.go:563 +0x4cc
cmd/go/internal/work.runInstall(0x77f640, 0x210000e100, 0x4, 0x4)
    /home/carlosedp/riscv-go/src/cmd/go/internal/work/build.go:474 +0x74
main.main()
    /home/carlosedp/riscv-go/src/cmd/go/main.go:188 +0x954

goroutine 6 [syscall]:
os/signal.signal_recv(0x0)
    /home/carlosedp/riscv-go/src/runtime/sigqueue.go:139 +0x230
os/signal.loop()
    /home/carlosedp/riscv-go/src/os/signal/signal_unix.go:23 +0x2c
created by os/signal.init.0
    /home/carlosedp/riscv-go/src/os/signal/signal_unix.go:29 +0x54

goroutine 984 [IO wait]:
internal/poll.runtime_pollWait(0x1557809f08, 0x72, 0xffffffffffffffff)
    /home/carlosedp/riscv-go/src/runtime/netpoll.go:184 +0x60
internal/poll.(*pollDesc).wait(0x210055e318, 0x72, 0x201, 0x200, 0xffffffffffffffff)
    /home/carlosedp/riscv-go/src/internal/poll/fd_poll_runtime.go:87 +0x50
internal/poll.(*pollDesc).waitRead(...)
    /home/carlosedp/riscv-go/src/internal/poll/fd_poll_runtime.go:92
internal/poll.(*FD).Read(0x210055e300, 0x21001fe200, 0x200, 0x200, 0x0, 0x0, 0x0)
    /home/carlosedp/riscv-go/src/internal/poll/fd_unix.go:169 +0x1e4
os.(*File).read(...)
    /home/carlosedp/riscv-go/src/os/file_unix.go:258
os.(*File).Read(0x210000c300, 0x21001fe200, 0x200, 0x200, 0xac, 0x0, 0x0)
    /home/carlosedp/riscv-go/src/os/file.go:112 +0x80
bytes.(*Buffer).ReadFrom(0x2100497140, 0x54b440, 0x210000c300, 0x1557a3d6b0, 0x2100497140, 0x1)
    /home/carlosedp/riscv-go/src/bytes/buffer.go:207 +0xcc
io.copyBuffer(0x54ae00, 0x2100497140, 0x54b440, 0x210000c300, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0)
    /home/carlosedp/riscv-go/src/io/io.go:388 +0x300
io.Copy(...)
    /home/carlosedp/riscv-go/src/io/io.go:364
os/exec.(*Cmd).writerDescriptor.func1(0x0, 0x0)
    /home/carlosedp/riscv-go/src/os/exec/exec.go:311 +0x6c
os/exec.(*Cmd).Start.func1(0x210027cdc0, 0x210037a240)
    /home/carlosedp/riscv-go/src/os/exec/exec.go:435 +0x2c
created by os/exec.(*Cmd).Start
    /home/carlosedp/riscv-go/src/os/exec/exec.go:434 +0x4d0

goroutine 959 [runnable]:
syscall.Syscall6(0x5f, 0x1, 0x2bf4, 0x21003dafc8, 0x1000004, 0x0, 0x0, 0x0, 0x2bf4, 0x0)
    /home/carlosedp/riscv-go/src/syscall/asm_linux_riscv64.s:41 +0x14
os.(*Process).blockUntilWaitable(0x2100392810, 0x0, 0x0, 0x0)
    /home/carlosedp/riscv-go/src/os/wait_waitid.go:31 +0x88
os.(*Process).wait(0x2100392810, 0x4dace0, 0x4dace8, 0x4dacd8)
    /home/carlosedp/riscv-go/src/os/exec_unix.go:22 +0x48
os.(*Process).Wait(...)
    /home/carlosedp/riscv-go/src/os/exec.go:125
os/exec.(*Cmd).Wait(0x210019e9a0, 0x0, 0x0)
    /home/carlosedp/riscv-go/src/os/exec/exec.go:501 +0x6c
os/exec.(*Cmd).Run(0x210019e9a0, 0x98223686, 0x787200)
    /home/carlosedp/riscv-go/src/os/exec/exec.go:341 +0x74
cmd/go/internal/work.(*Builder).runOut(0x2100443ea0, 0x2100653cc0, 0x210001d200, 0x2d, 0x0, 0x0, 0x0, 0x21002d4000, 0x13, 0x1c, ...)
    /home/carlosedp/riscv-go/src/cmd/go/internal/work/exec.go:1951 +0x5ac
cmd/go/internal/work.(*Builder).run(0x2100443ea0, 0x2100653cc0, 0x210001d200, 0x2d, 0x2100282be1, 0x10, 0x0, 0x0, 0x0, 0x21002d4000, ...)
    /home/carlosedp/riscv-go/src/cmd/go/internal/work/exec.go:1876 +0x80
cmd/go/internal/work.gcToolchain.symabis.func1(0x21005c2000, 0x21004e6520, 0x2, 0x2, 0x21005dc060, 0x23, 0x23, 0xbad3fea093c13d7b)
    /home/carlosedp/riscv-go/src/cmd/go/internal/work/gc.go:300 +0x2e8
cmd/go/internal/work.gcToolchain.symabis(0x2100443ea0, 0x2100653cc0, 0x21004e6520, 0x2, 0x2, 0xab, 0x12f, 0x0, 0x0)
    /home/carlosedp/riscv-go/src/cmd/go/internal/work/gc.go:307 +0x9b8
cmd/go/internal/work.(*Builder).build(0x2100443ea0, 0x2100653cc0, 0x0, 0x0)
    /home/carlosedp/riscv-go/src/cmd/go/internal/work/exec.go:635 +0x1290
cmd/go/internal/work.(*Builder).Do.func2(0x2100653cc0)
    /home/carlosedp/riscv-go/src/cmd/go/internal/work/exec.go:117 +0x36c
cmd/go/internal/work.(*Builder).Do.func3(0x21001b4be4, 0x2100443ea0, 0x210034f7c0)
    /home/carlosedp/riscv-go/src/cmd/go/internal/work/exec.go:177 +0x80
created by cmd/go/internal/work.(*Builder).Do
    /home/carlosedp/riscv-go/src/cmd/go/internal/work/exec.go:164 +0x318

goroutine 954 [runnable]:
cmd/go/internal/cache.(*Cache).copyFile(0x210034e020, 0x54dc80, 0x210021d0e0, 0x104cb65ed11ba5c7, 0xaa9c457e543a6613, 0xaffaf64e5d955315, 0xea422662363ca3d0, 0x9, 0x0, 0x0)
    /home/carlosedp/riscv-go/src/cmd/go/internal/cache/cache.go:399 +0x8f0
cmd/go/internal/cache.(*Cache).put(0x210034e020, 0xbce052ce7c310f32, 0xe84ab8ba7144cbb9, 0x93e4107b0ebff065, 0xed786dcaf250c741, 0x54dc80, 0x210021d0e0, 0x1555558d01, 0x0, 0x0, ...)
    /home/carlosedp/riscv-go/src/cmd/go/internal/cache/cache.go:374 +0x22c
cmd/go/internal/cache.(*Cache).Put(...)
    /home/carlosedp/riscv-go/src/cmd/go/internal/cache/cache.go:349
cmd/go/internal/cache.(*Cache).PutBytes(0x210034e020, 0xbce052ce7c310f32, 0xe84ab8ba7144cbb9, 0x93e4107b0ebff065, 0xed786dcaf250c741, 0x21003c4880, 0x9, 0x40, 0x93e4107b0ebff065, 0xed786dcaf250c741)
    /home/carlosedp/riscv-go/src/cmd/go/internal/cache/cache.go:384 +0xf8
cmd/go/internal/work.(*Builder).cacheSrcFiles(0x2100443ea0, 0x21000afb80, 0x210034c220, 0x1, 0x1)
    /home/carlosedp/riscv-go/src/cmd/go/internal/work/exec.go:848 +0x28c
cmd/go/internal/work.(*Builder).build(0x2100443ea0, 0x21000afb80, 0x0, 0x0)
    /home/carlosedp/riscv-go/src/cmd/go/internal/work/exec.go:608 +0x11b4
cmd/go/internal/work.(*Builder).Do.func2(0x21000afb80)
    /home/carlosedp/riscv-go/src/cmd/go/internal/work/exec.go:117 +0x36c
cmd/go/internal/work.(*Builder).Do.func3(0x21001b4be4, 0x2100443ea0, 0x210034f7c0)
    /home/carlosedp/riscv-go/src/cmd/go/internal/work/exec.go:177 +0x80
created by cmd/go/internal/work.(*Builder).Do
    /home/carlosedp/riscv-go/src/cmd/go/internal/work/exec.go:164 +0x318

goroutine 956 [runnable]:
syscall.Syscall6(0x38, 0xffffffffffffff9c, 0x21004abf10, 0x80241, 0x1b6, 0x0, 0x0, 0x3, 0x21004abf10, 0x0)
    /home/carlosedp/riscv-go/src/syscall/asm_linux_riscv64.s:41 +0x14
syscall.openat(0xffffffffffffff9c, 0x21004abea0, 0x6f, 0x80241, 0x1b6, 0x3, 0x109734, 0x7860c0)
    /home/carlosedp/riscv-go/src/syscall/zsyscall_linux_riscv64.go:66 +0xc0
syscall.Open(...)
    /home/carlosedp/riscv-go/src/syscall/syscall_linux.go:138
os.openFileNolog(0x21004abea0, 0x6f, 0x241, 0x827e1d2000001b6, 0x7c1696fdcdfd826b, 0xd35078d3a9b2b674, 0x3331cbd24bb8f573)
    /home/carlosedp/riscv-go/src/os/file_unix.go:196 +0xec
os.OpenFile(0x21004abea0, 0x6f, 0x241, 0x21000001b6, 0x2100016088, 0x29, 0x21002e0f88)
    /home/carlosedp/riscv-go/src/os/file.go:296 +0x68
io/ioutil.WriteFile(0x21004abea0, 0x6f, 0x210005ae70, 0xaf, 0xb0, 0x1b6, 0x1, 0x21004abea0)
    /home/carlosedp/riscv-go/src/io/ioutil/ioutil.go:80 +0x4c
cmd/go/internal/cache.(*Cache).putIndexEntry(0x210034e020, 0x827e1d240786441, 0x7c1696fdcdfd826b, 0xd35078d3a9b2b674, 0x3331cbd24bb8f573, 0x3da06df09b39149e, 0x33d6a5f2216697ba, 0xa864150c3b90131d, 0xf559eb3fa3049fc6, 0xe, ...)
    /home/carlosedp/riscv-go/src/cmd/go/internal/cache/cache.go:335 +0x30c
cmd/go/internal/cache.(*Cache).put(0x210034e020, 0x827e1d240786441, 0x7c1696fdcdfd826b, 0xd35078d3a9b2b674, 0x3331cbd24bb8f573, 0x54dc80, 0x2100299c50, 0x1555559b01, 0x0, 0x0, ...)
    /home/carlosedp/riscv-go/src/cmd/go/internal/cache/cache.go:379 +0x30c
cmd/go/internal/cache.(*Cache).Put(...)
    /home/carlosedp/riscv-go/src/cmd/go/internal/cache/cache.go:349
cmd/go/internal/cache.(*Cache).PutBytes(0x210034e020, 0x827e1d240786441, 0x7c1696fdcdfd826b, 0xd35078d3a9b2b674, 0x3331cbd24bb8f573, 0x2100580880, 0xe, 0x40, 0xd35078d3a9b2b674, 0x3331cbd24bb8f573)
    /home/carlosedp/riscv-go/src/cmd/go/internal/cache/cache.go:384 +0xf8
cmd/go/internal/work.(*Builder).cacheSrcFiles(0x2100443ea0, 0x2100376500, 0x2100454810, 0x1, 0x1)
    /home/carlosedp/riscv-go/src/cmd/go/internal/work/exec.go:848 +0x28c
cmd/go/internal/work.(*Builder).build(0x2100443ea0, 0x2100376500, 0x0, 0x0)
    /home/carlosedp/riscv-go/src/cmd/go/internal/work/exec.go:608 +0x11b4
cmd/go/internal/work.(*Builder).Do.func2(0x2100376500)
    /home/carlosedp/riscv-go/src/cmd/go/internal/work/exec.go:117 +0x36c
cmd/go/internal/work.(*Builder).Do.func3(0x21001b4be4, 0x2100443ea0, 0x210034f7c0)
    /home/carlosedp/riscv-go/src/cmd/go/internal/work/exec.go:177 +0x80
created by cmd/go/internal/work.(*Builder).Do
    /home/carlosedp/riscv-go/src/cmd/go/internal/work/exec.go:164 +0x318

goroutine 955 [syscall]:
syscall.Syscall6(0x5f, 0x1, 0x2b9c, 0x21001dafb0, 0x1000004, 0x0, 0x0, 0x14d290, 0x21001dafa8, 0x84ea8)
    /home/carlosedp/riscv-go/src/syscall/asm_linux_riscv64.s:41 +0x14
os.(*Process).blockUntilWaitable(0x210055a4e0, 0x0, 0x0, 0x0)
    /home/carlosedp/riscv-go/src/os/wait_waitid.go:31 +0x88
os.(*Process).wait(0x210055a4e0, 0x4dace0, 0x4dace8, 0x4dacd8)
    /home/carlosedp/riscv-go/src/os/exec_unix.go:22 +0x48
os.(*Process).Wait(...)
    /home/carlosedp/riscv-go/src/os/exec.go:125
os/exec.(*Cmd).Wait(0x210027cdc0, 0x0, 0x0)
    /home/carlosedp/riscv-go/src/os/exec/exec.go:501 +0x6c
os/exec.(*Cmd).Run(0x210027cdc0, 0x4fe97bb7, 0x787200)
    /home/carlosedp/riscv-go/src/os/exec/exec.go:341 +0x74
cmd/go/internal/work.(*Builder).runOut(0x2100443ea0, 0x2100655e00, 0x21001c6990, 0x24, 0x0, 0x0, 0x0, 0x21002e6780, 0x13, 0x14, ...)
    /home/carlosedp/riscv-go/src/cmd/go/internal/work/exec.go:1951 +0x5ac
cmd/go/internal/work.gcToolchain.gc(0x2100443ea0, 0x2100655e00, 0x210055a000, 0x23, 0x2100580680, 0x10, 0x40, 0x0, 0x0, 0x210055a000, ...)
    /home/carlosedp/riscv-go/src/cmd/go/internal/work/gc.go:143 +0x10c4
cmd/go/internal/work.(*Builder).build(0x2100443ea0, 0x2100655e00, 0x0, 0x0)
    /home/carlosedp/riscv-go/src/cmd/go/internal/work/exec.go:671 +0x1530
cmd/go/internal/work.(*Builder).Do.func2(0x2100655e00)
    /home/carlosedp/riscv-go/src/cmd/go/internal/work/exec.go:117 +0x36c
cmd/go/internal/work.(*Builder).Do.func3(0x21001b4be4, 0x2100443ea0, 0x210034f7c0)
    /home/carlosedp/riscv-go/src/cmd/go/internal/work/exec.go:177 +0x80
created by cmd/go/internal/work.(*Builder).Do
    /home/carlosedp/riscv-go/src/cmd/go/internal/work/exec.go:164 +0x318

goroutine 1016 [IO wait]:
internal/poll.runtime_pollWait(0x1557809bc8, 0x72, 0xffffffffffffffff)
    /home/carlosedp/riscv-go/src/runtime/netpoll.go:184 +0x60
internal/poll.(*pollDesc).wait(0x210054e2b8, 0x72, 0x201, 0x200, 0xffffffffffffffff)
    /home/carlosedp/riscv-go/src/internal/poll/fd_poll_runtime.go:87 +0x50
internal/poll.(*pollDesc).waitRead(...)
    /home/carlosedp/riscv-go/src/internal/poll/fd_poll_runtime.go:92
internal/poll.(*FD).Read(0x210054e2a0, 0x21001fe800, 0x200, 0x200, 0x0, 0x0, 0x0)
    /home/carlosedp/riscv-go/src/internal/poll/fd_unix.go:169 +0x1e4
os.(*File).read(...)
    /home/carlosedp/riscv-go/src/os/file_unix.go:258
os.(*File).Read(0x210000c2a0, 0x21001fe800, 0x200, 0x200, 0x2a, 0x2100518d41, 0xd)
    /home/carlosedp/riscv-go/src/os/file.go:112 +0x80
bytes.(*Buffer).ReadFrom(0x2100540510, 0x54b440, 0x210000c2a0, 0x1557a3d6b0, 0x2100540510, 0x1)
    /home/carlosedp/riscv-go/src/bytes/buffer.go:207 +0xcc
io.copyBuffer(0x54ae00, 0x2100540510, 0x54b440, 0x210000c2a0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0)
    /home/carlosedp/riscv-go/src/io/io.go:388 +0x300
io.Copy(...)
    /home/carlosedp/riscv-go/src/io/io.go:364
os/exec.(*Cmd).writerDescriptor.func1(0x0, 0x0)
    /home/carlosedp/riscv-go/src/os/exec/exec.go:311 +0x6c
os/exec.(*Cmd).Start.func1(0x2100469a20, 0x210037a2a0)
    /home/carlosedp/riscv-go/src/os/exec/exec.go:435 +0x2c
created by os/exec.(*Cmd).Start
    /home/carlosedp/riscv-go/src/os/exec/exec.go:434 +0x4d0

goroutine 958 [runnable]:
syscall.Syscall6(0x5f, 0x1, 0x2bd8, 0x21003e0fb0, 0x1000004, 0x0, 0x0, 0x0, 0x2bd8, 0x0)
    /home/carlosedp/riscv-go/src/syscall/asm_linux_riscv64.s:41 +0x14
os.(*Process).blockUntilWaitable(0x21002b4c60, 0x0, 0x0, 0x0)
    /home/carlosedp/riscv-go/src/os/wait_waitid.go:31 +0x88
os.(*Process).wait(0x21002b4c60, 0x4dace0, 0x4dace8, 0x4dacd8)
    /home/carlosedp/riscv-go/src/os/exec_unix.go:22 +0x48
os.(*Process).Wait(...)
    /home/carlosedp/riscv-go/src/os/exec.go:125
os/exec.(*Cmd).Wait(0x21002bc2c0, 0x0, 0x0)
    /home/carlosedp/riscv-go/src/os/exec/exec.go:501 +0x6c
os/exec.(*Cmd).Run(0x21002bc2c0, 0x881f1e19, 0x787200)
    /home/carlosedp/riscv-go/src/os/exec/exec.go:341 +0x74
cmd/go/internal/work.(*Builder).runOut(0x2100443ea0, 0x2100418a00, 0x210019a450, 0x29, 0x0, 0x0, 0x0, 0x21006523c0, 0xf, 0x14, ...)
    /home/carlosedp/riscv-go/src/cmd/go/internal/work/exec.go:1951 +0x5ac
cmd/go/internal/work.gcToolchain.gc(0x2100443ea0, 0x2100418a00, 0x21002b47e0, 0x23, 0x210048d5c0, 0x10, 0x40, 0x0, 0x0, 0x21002b4700, ...)
    /home/carlosedp/riscv-go/src/cmd/go/internal/work/gc.go:143 +0x10c4
cmd/go/internal/work.(*Builder).build(0x2100443ea0, 0x2100418a00, 0x0, 0x0)
    /home/carlosedp/riscv-go/src/cmd/go/internal/work/exec.go:671 +0x1530
cmd/go/internal/work.(*Builder).Do.func2(0x2100418a00)
    /home/carlosedp/riscv-go/src/cmd/go/internal/work/exec.go:117 +0x36c
cmd/go/internal/work.(*Builder).Do.func3(0x21001b4be4, 0x2100443ea0, 0x210034f7c0)
    /home/carlosedp/riscv-go/src/cmd/go/internal/work/exec.go:177 +0x80
created by cmd/go/internal/work.(*Builder).Do
    /home/carlosedp/riscv-go/src/cmd/go/internal/work/exec.go:164 +0x318

goroutine 957 [syscall]:
syscall.Syscall6(0x5f, 0x1, 0x2bf5, 0x2100236fb0, 0x1000004, 0x0, 0x0, 0x14d290, 0x2100236fa8, 0x84ea8)
    /home/carlosedp/riscv-go/src/syscall/asm_linux_riscv64.s:41 +0x14
os.(*Process).blockUntilWaitable(0x210011ced0, 0x210020b200, 0x47ba4, 0x2b57c)
    /home/carlosedp/riscv-go/src/os/wait_waitid.go:31 +0x88
os.(*Process).wait(0x210011ced0, 0x4dace0, 0x4dace8, 0x4dacd8)
    /home/carlosedp/riscv-go/src/os/exec_unix.go:22 +0x48
os.(*Process).Wait(...)
    /home/carlosedp/riscv-go/src/os/exec.go:125
os/exec.(*Cmd).Wait(0x2100469a20, 0x0, 0x0)
    /home/carlosedp/riscv-go/src/os/exec/exec.go:501 +0x6c
os/exec.(*Cmd).Run(0x2100469a20, 0x98ea67d3, 0x787200)
    /home/carlosedp/riscv-go/src/os/exec/exec.go:341 +0x74
cmd/go/internal/work.(*Builder).runOut(0x2100443ea0, 0x2100113040, 0x21002b5ad0, 0x26, 0x0, 0x0, 0x0, 0x2100317a40, 0x11, 0x14, ...)
    /home/carlosedp/riscv-go/src/cmd/go/internal/work/exec.go:1951 +0x5ac
cmd/go/internal/work.gcToolchain.gc(0x2100443ea0, 0x2100113040, 0x21002b58f0, 0x23, 0x2100580240, 0x10, 0x40, 0x0, 0x0, 0x21002b5900, ...)
    /home/carlosedp/riscv-go/src/cmd/go/internal/work/gc.go:143 +0x10c4
cmd/go/internal/work.(*Builder).build(0x2100443ea0, 0x2100113040, 0x0, 0x0)
    /home/carlosedp/riscv-go/src/cmd/go/internal/work/exec.go:671 +0x1530
cmd/go/internal/work.(*Builder).Do.func2(0x2100113040)
    /home/carlosedp/riscv-go/src/cmd/go/internal/work/exec.go:117 +0x36c
cmd/go/internal/work.(*Builder).Do.func3(0x21001b4be4, 0x2100443ea0, 0x210034f7c0)
    /home/carlosedp/riscv-go/src/cmd/go/internal/work/exec.go:177 +0x80
created by cmd/go/internal/work.(*Builder).Do
    /home/carlosedp/riscv-go/src/cmd/go/internal/work/exec.go:164 +0x318

goroutine 971 [IO wait]:
internal/poll.runtime_pollWait(0x15579fae48, 0x72, 0xffffffffffffffff)
    /home/carlosedp/riscv-go/src/runtime/netpoll.go:184 +0x60
internal/poll.(*pollDesc).wait(0x210005cd98, 0x72, 0x201, 0x200, 0xffffffffffffffff)
    /home/carlosedp/riscv-go/src/internal/poll/fd_poll_runtime.go:87 +0x50
internal/poll.(*pollDesc).waitRead(...)
    /home/carlosedp/riscv-go/src/internal/poll/fd_poll_runtime.go:92
internal/poll.(*FD).Read(0x210005cd80, 0x21001f4000, 0x200, 0x200, 0x0, 0x0, 0x0)
    /home/carlosedp/riscv-go/src/internal/poll/fd_unix.go:169 +0x1e4
os.(*File).read(...)
    /home/carlosedp/riscv-go/src/os/file_unix.go:258
os.(*File).Read(0x210010e8a8, 0x21001f4000, 0x200, 0x200, 0x0, 0x0, 0x100128)
    /home/carlosedp/riscv-go/src/os/file.go:112 +0x80
bytes.(*Buffer).ReadFrom(0x21004707b0, 0x54b440, 0x210010e8a8, 0x1557a3d6b0, 0x21004707b0, 0x2100547601)
    /home/carlosedp/riscv-go/src/bytes/buffer.go:207 +0xcc
io.copyBuffer(0x54ae00, 0x21004707b0, 0x54b440, 0x210010e8a8, 0x0, 0x0, 0x0, 0x1504b4, 0x210054e240, 0x210003b7b8)
    /home/carlosedp/riscv-go/src/io/io.go:388 +0x300
io.Copy(...)
    /home/carlosedp/riscv-go/src/io/io.go:364
os/exec.(*Cmd).writerDescriptor.func1(0x210054e240, 0x210003b7b8)
    /home/carlosedp/riscv-go/src/os/exec/exec.go:311 +0x6c
os/exec.(*Cmd).Start.func1(0x21002bc2c0, 0x210015e340)
    /home/carlosedp/riscv-go/src/os/exec/exec.go:435 +0x2c
created by os/exec.(*Cmd).Start
    /home/carlosedp/riscv-go/src/os/exec/exec.go:434 +0x4d0

goroutine 987 [IO wait]:
internal/poll.runtime_pollWait(0x1557809d68, 0x72, 0xffffffffffffffff)
    /home/carlosedp/riscv-go/src/runtime/netpoll.go:184 +0x60
internal/poll.(*pollDesc).wait(0x210054e0d8, 0x72, 0x201, 0x200, 0xffffffffffffffff)
    /home/carlosedp/riscv-go/src/internal/poll/fd_poll_runtime.go:87 +0x50
internal/poll.(*pollDesc).waitRead(...)
    /home/carlosedp/riscv-go/src/internal/poll/fd_poll_runtime.go:92
internal/poll.(*FD).Read(0x210054e0c0, 0x21001fea00, 0x200, 0x200, 0x0, 0x0, 0x0)
    /home/carlosedp/riscv-go/src/internal/poll/fd_unix.go:169 +0x1e4
os.(*File).read(...)
    /home/carlosedp/riscv-go/src/os/file_unix.go:258
os.(*File).Read(0x210000c120, 0x21001fea00, 0x200, 0x200, 0x0, 0x0, 0x100128)
    /home/carlosedp/riscv-go/src/os/file.go:112 +0x80
bytes.(*Buffer).ReadFrom(0x2100496bd0, 0x54b440, 0x210000c120, 0x1557a3d6b0, 0x2100496bd0, 0x1)
    /home/carlosedp/riscv-go/src/bytes/buffer.go:207 +0xcc
io.copyBuffer(0x54ae00, 0x2100496bd0, 0x54b440, 0x210000c120, 0x0, 0x0, 0x0, 0x1504b4, 0x210005d1a0, 0x21004b7fb8)
    /home/carlosedp/riscv-go/src/io/io.go:388 +0x300
io.Copy(...)
    /home/carlosedp/riscv-go/src/io/io.go:364
os/exec.(*Cmd).writerDescriptor.func1(0x210005d1a0, 0x21004b7fb8)
    /home/carlosedp/riscv-go/src/os/exec/exec.go:311 +0x6c
os/exec.(*Cmd).Start.func1(0x210019e9a0, 0x210037a180)
    /home/carlosedp/riscv-go/src/os/exec/exec.go:435 +0x2c
created by os/exec.(*Cmd).Start
    /home/carlosedp/riscv-go/src/os/exec/exec.go:434 +0x4d0
go tool dist: FAILED: /home/carlosedp/riscv-go/pkg/tool/linux_riscv64/go_bootstrap install -gcflags=all= -ldflags=all= -a -i cmd/asm cmd/cgo cmd/compile cmd/link: exit status 2

When building like this, it goes fine:

$ GOGC=off ./make.bash
Building Go cmd/dist using /home/carlosedp/go-linux-riscv64-bootstrap.
Building Go toolchain1 using /home/carlosedp/go-linux-riscv64-bootstrap.
Building Go bootstrap cmd/go (go_bootstrap) using Go toolchain1.
Building Go toolchain2 using go_bootstrap and Go toolchain1.
Building Go toolchain3 using go_bootstrap and Go toolchain2.
Building packages and commands for linux/riscv64.
---
Installed Go for linux/riscv64 in /home/carlosedp/riscv-go
Installed commands in /home/carlosedp/riscv-go/bin

When running the tests, only runtime fails:

➜ GOGC=off GO_TEST_TIMEOUT_SCALE=10 ./run.bash

##### Building packages and commands.

##### Testing packages.
ok      archive/tar (cached)
ok      archive/zip (cached)
ok      bufio   (cached)
ok      bytes   (cached)
ok      compress/bzip2  (cached)
ok      compress/flate  (cached)
ok      compress/gzip   (cached)
ok      compress/lzw    (cached)
ok      compress/zlib   (cached)
ok      container/heap  (cached)
ok      container/list  (cached)
ok      container/ring  (cached)
ok      context (cached)
ok      crypto  (cached)
ok      crypto/aes  (cached)
ok      crypto/cipher   (cached)
ok      crypto/des  (cached)
ok      crypto/dsa  (cached)
ok      crypto/ecdsa    (cached)
ok      crypto/ed25519  (cached)
ok      crypto/elliptic (cached)
ok      crypto/hmac (cached)
ok      crypto/internal/subtle  (cached)
ok      crypto/md5  (cached)
ok      crypto/rand (cached)
ok      crypto/rc4  (cached)
ok      crypto/rsa  (cached)
ok      crypto/sha1 (cached)
ok      crypto/sha256   (cached)
ok      crypto/sha512   (cached)
ok      crypto/subtle   (cached)
ok      crypto/tls  (cached)
ok      crypto/x509 15.361s
ok      database/sql    (cached)
ok      database/sql/driver (cached)
ok      debug/dwarf (cached)
ok      debug/elf   (cached)
ok      debug/gosym (cached)
ok      debug/macho (cached)
ok      debug/pe    (cached)
ok      debug/plan9obj  (cached)
ok      encoding/ascii85    (cached)
ok      encoding/asn1   (cached)
ok      encoding/base32 (cached)
ok      encoding/base64 (cached)
ok      encoding/binary (cached)
ok      encoding/csv    (cached)
ok      encoding/gob    (cached)
ok      encoding/hex    (cached)
ok      encoding/json   (cached)
ok      encoding/pem    (cached)
ok      encoding/xml    (cached)
ok      errors  (cached)
ok      expvar  (cached)
ok      flag    (cached)
ok      fmt (cached)
ok      go/ast  (cached)
ok      go/build    3.052s
ok      go/constant (cached)
ok      go/doc  (cached)
ok      go/format   (cached)
ok      go/importer 1.894s
ok      go/internal/gccgoimporter   (cached)
ok      go/internal/gcimporter  4.757s
ok      go/internal/srcimporter (cached)
ok      go/parser   (cached)
ok      go/printer  (cached)
ok      go/scanner  (cached)
ok      go/token    (cached)
ok      go/types    8.174s
ok      hash    (cached)
ok      hash/adler32    (cached)
ok      hash/crc32  (cached)
ok      hash/crc64  (cached)
ok      hash/fnv    (cached)
ok      html    (cached)
ok      html/template   (cached)
ok      image   (cached)
ok      image/color (cached)
ok      image/draw  (cached)
ok      image/gif   (cached)
ok      image/jpeg  (cached)
ok      image/png   (cached)
ok      index/suffixarray   (cached)
ok      internal/cpu    (cached)
ok      internal/fmtsort    (cached)
ok      internal/oserror    (cached)
ok      internal/poll   (cached)
ok      internal/reflectlite    (cached)
ok      internal/singleflight   (cached)
ok      internal/trace  (cached)
ok      internal/xcoff  (cached)
ok      io  (cached)
ok      io/ioutil   (cached)
ok      log (cached)
ok      log/syslog  (cached)
ok      math    (cached)
ok      math/big    (cached)
ok      math/bits   (cached)
ok      math/cmplx  (cached)
ok      math/rand   (cached)
ok      mime    (cached)
ok      mime/multipart  (cached)
ok      mime/quotedprintable    (cached)
ok      net (cached)
ok      net/http    22.168s
ok      net/http/cgi    (cached)
ok      net/http/cookiejar  (cached)
ok      net/http/fcgi   (cached)
ok      net/http/httptest   (cached)
ok      net/http/httptrace  (cached)
ok      net/http/httputil   (cached)
ok      net/http/internal   (cached)
ok      net/http/pprof  (cached)
ok      net/internal/socktest   (cached)
ok      net/mail    (cached)
ok      net/rpc (cached)
ok      net/rpc/jsonrpc (cached)
ok      net/smtp    (cached)
ok      net/textproto   (cached)
ok      net/url (cached)
ok      os  3.199s
ok      os/exec (cached)
ok      os/signal   (cached)
ok      os/user (cached)
ok      path    (cached)
ok      path/filepath   (cached)
ok      plugin  (cached)
ok      reflect (cached)
ok      regexp  (cached)
ok      regexp/syntax   (cached)
--- FAIL: TestSelectStackAdjust (0.08s)
    chan_test.go:723: failed to trigger concurrent GC
--- FAIL: TestPeriodicGC (1.81s)
    gc_test.go:195: no periodic GC: got 0 GCs, want >= 2
--- FAIL: TestMemStats (0.03s)
    malloc_test.go:91: NextGC = 18446744073709551615: insanely high value (overflow?); want <= 1e+10
FAIL
FAIL    runtime 58.186s
ok      runtime/debug   (cached)
ok      runtime/internal/atomic (cached)
ok      runtime/internal/math   (cached)
ok      runtime/internal/sys    (cached)
ok      runtime/pprof   (cached)
ok      runtime/pprof/internal/profile  (cached)
ok      runtime/trace   (cached)
ok      sort    (cached)
ok      strconv (cached)
ok      strings (cached)
ok      sync    (cached)
ok      sync/atomic (cached)
ok      syscall (cached)
ok      testing (cached)
ok      testing/quick   (cached)
ok      text/scanner    (cached)
ok      text/tabwriter  (cached)
ok      text/template   (cached)
ok      text/template/parse (cached)
ok      time    (cached)
ok      unicode (cached)
ok      unicode/utf16   (cached)
ok      unicode/utf8    (cached)
ok      cmd/addr2line   16.507s
ok      cmd/api (cached)
ok      cmd/asm/internal/asm    (cached)
ok      cmd/asm/internal/lex    (cached)
ok      cmd/compile (cached)
ok      cmd/compile/internal/gc 34.709s
ok      cmd/compile/internal/ssa    6.617s
ok      cmd/compile/internal/syntax (cached)
ok      cmd/compile/internal/test   (cached) [no tests to run]
ok      cmd/compile/internal/types  (cached)
ok      cmd/cover   27.924s
ok      cmd/doc (cached)
ok      cmd/fix (cached)
ok      cmd/go  444.425s
ok      cmd/go/internal/auth    0.581s
ok      cmd/go/internal/cache   5.988s
ok      cmd/go/internal/dirhash 0.459s
ok      cmd/go/internal/generate    1.495s
ok      cmd/go/internal/get 1.959s
ok      cmd/go/internal/imports 0.586s
ok      cmd/go/internal/load    0.678s
ok      cmd/go/internal/lockedfile  0.452s
ok      cmd/go/internal/lockedfile/internal/filelock    0.597s
ok      cmd/go/internal/modconv 1.202s
ok      cmd/go/internal/modfetch    1.501s
ok      cmd/go/internal/modfetch/codehost   0.597s
ok      cmd/go/internal/modfile 0.584s
ok      cmd/go/internal/modload 1.297s
ok      cmd/go/internal/module  0.421s
ok      cmd/go/internal/mvs 0.524s
ok      cmd/go/internal/note    0.976s
ok      cmd/go/internal/par 1.200s
ok      cmd/go/internal/renameio    0.521s
ok      cmd/go/internal/search  0.574s
ok      cmd/go/internal/semver  0.468s
ok      cmd/go/internal/sumweb  0.862s
ok      cmd/go/internal/tlog    20.240s
ok      cmd/go/internal/txtar   0.601s
ok      cmd/go/internal/work    0.860s
ok      cmd/gofmt   1.095s
ok      cmd/internal/buildid    3.813s
ok      cmd/internal/dwarf  0.502s
ok      cmd/internal/edit   0.569s
ok      cmd/internal/goobj  1.474s
ok      cmd/internal/obj    0.414s
ok      cmd/internal/obj/arm64  0.764s
ok      cmd/internal/obj/x86    53.809s
ok      cmd/internal/objabi 0.389s
ok      cmd/internal/src    0.886s
ok      cmd/internal/test2json  1.949s
ok      cmd/link    49.261s
ok      cmd/link/internal/ld    30.358s
ok      cmd/link/internal/sym   1.040s
ok      cmd/nm  16.996s
ok      cmd/objdump 10.588s
ok      cmd/pack    23.179s
ok      cmd/trace   1.204s
ok      cmd/vet 52.037s
FAIL
2019/06/04 22:56:35 Failed: exit status 1

My Qemu env is (with this patch applied:

➜ uname -a
Darwin cdepaula-mac-2.local 18.6.0 Darwin Kernel Version 18.6.0: Thu Apr 25 23:16:27 PDT 2019; root:xnu-4903.261.4~2/RELEASE_X86_64 x86_64

➜ qemu-system-riscv64 --version
QEMU emulator version 4.0.0
Copyright (c) 2003-2019 Fabrice Bellard and the QEMU Project developers

carlosedp@debian-riscv:~/riscv-go/src $ uname -a
Linux debian-riscv 5.1.0-rc7-00005-g83a50840e72a #2 SMP Mon Apr 29 19:07:37 -03 2019 riscv64 GNU/Linux
carlosedp@debian-riscv:~/riscv-go/src $ cat /etc/os-release
PRETTY_NAME="Debian GNU/Linux 10 (buster)"
NAME="Debian GNU/Linux"
VERSION_ID="10"
VERSION="10 (buster)"
VERSION_CODENAME=buster
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"

On the Unleashed, it tests 100%.

I'm interested in helping out in getting this into the main Go tree. Here's a list of things I think we need to resolve to make that happen. Do people think we could get this done for 1.14?

easily.

  1. Builders. This is issue #30262. I think this might be the most important infrastructure part we need. Details are in that issue, but Brad thinks the best way forward is just to QEMU the builders on x86, building natively and testing with QEMU. I'd love to see the day when we can get riscv native machines in the cloud, but the ecosystem isn't there yet.

QEMU is the way to go if we can get traction from the QEMU folks which seems to be not happening.

Does anyone know a QEMU person willing to run with this? http://lists.nongnu.org/archive/html/qemu-riscv/2019-05/msg00134.html

  1. Syncing to tip. If we want to get in for 1.14, we should probably have something sync'd and ready to go when the freeze expires.

@4a6f656c has a tip branch as well.

  1. Code reviews. Send 'em! I'm happy to field them, or delegate them out.

I volunteer.

  1. Maintainers. Someone want to volunteer?

On Wed, Jun 5, 2019 at 3:55 AM Marco Peereboom notifications@github.com
wrote:

Does anyone know a QEMU person willing to run with this?
http://lists.nongnu.org/archive/html/qemu-riscv/2019-05/msg00134.html

Did you send the patch to qemu-devel? All patches being submitted must be
sent to this list. qemu-riscv is an optional list for RISC-V specific qemu
discussions, but is not a replacement for qemu-devel. It is OK to submit a
patch to qemu-devel and cc qemu-riscv. Quite a few people are doing that.

We unfortunately don't have a dedicated RISC-V qemu developer at the
moment. Alistair Francis of WDC cares about RISC-V, and is a qemu
maintainer that can approve patches. If he sees your patch, he will likely
review the patch. He only reads qemu-devel, but you need to send the patch
there anyways if you haven't already. If he doesn't respond after a week
or two, you can try pinging him for a review.

Palmer Dabbelt is the default maintainer for RISC-V qemu, and will commit
the patch if Alistair Francis approves it. Palmer is the default
maintainer for a few dozen packages though, so it may be a while before he
has time for your patch, and if it is a non-trivial patch it might end up
queued behind other patches.

Jim

Hey, I was on holidays for the last week and a half so I haven't been watching it.

I have not seen the patch on the QEMU list (as Jim mentioned if needs to be sent to qemu-devel). Joel did forward the patch to me though, I have added some comments. Overall I think the patch looks fine and we can merge it :)

Just for future reference it is always best to send all patches to qemu-devel and CC maintainers (returned by the get_maintainters script). That way it won't be lost.

Just for future reference it is always best to send all patches to qemu-devel and CC maintainers (returned by the get_maintainters script). That way it won't be lost.

The diff was sent to qemu-riscv@ and I had intended to CC qemu-devel@, although apparently this did not actually happen. FWIW I sent a revised version of the diff out to both lists last week:

https://lists.nongnu.org/archive/html/qemu-devel/2019-06/msg03381.html

https://lists.nongnu.org/archive/html/qemu-riscv/2019-06/msg00053.html

Hi all, how can we coordinate the patch submission to consider the next merge window (1.14)?

@bradfitz do you need help on setting up the builder?

I also can volunteer maintaining to the limit of my knowledge of Go innings :)

/cc @ianlancetaylor @randall77 and @rsc perhaps since Brad is on leave.

The first step, per https://golang.org/wiki/PortingPolicy, is to get a builder running.

Next, it should be possible to separate the patches into changes that touch existing files and changes that add new files. The changes that touch existing files should be sent first. All substantial changes should be grouped by top-level directory (e.g., runtime, cmd/compile, etc.). Minor changes like adding riscv64 build tags can be sent as a single change. Let's try to get the bulk of those shared changes in first, along with new files required to keep everything building.

Then the other new files can be added at leisure.

I don't really think much coordination will be required. I think the hard part will be the reviews.

I've added to the golang builder fork here https://github.com/carlosedp/build/tree/riscv64 the cross-builder for riscv64.

I've successfully built the fork on the generated Docker container (running make docker on env/linux-riscv64-cross. After this, I transferred the built Go to the Unleashed board and built some projects with it.

This is based on @bradfitz CL https://go-review.googlesource.com/c/build/+/177918.

Change https://golang.org/cl/187637 mentions this issue: add riscv64 to endian_little

Change https://golang.org/cl/188501 mentions this issue: all: add riscv64 cross builder

Change https://golang.org/cl/188777 mentions this issue: text: bump x/tools

I just tested latest merge @4a6f656c did on his branch up to yesterday commits and it worked 100%:

❯ go version                                                                                                                                                                               
go version devel +0c72bd386b Fri Aug 9 17:52:39 2019 +1000 linux/riscv64

❯ GO_TEST_TIMEOUT_SCALE=10 ./run.bash                                                                                                                                                      

##### Building packages and commands.

##### Testing packages.
ok      archive/tar     0.548s
ok      archive/zip     0.918s
ok      bufio   0.797s
ok      bytes   5.040s
ok      compress/bzip2  0.767s
ok      compress/flate  7.161s
ok      compress/gzip   0.198s
ok      compress/lzw    0.169s
ok      crypto  0.065s
ok      crypto/aes      0.188s
ok      crypto/cipher   0.041s
ok      crypto/des      0.090s
ok      crypto/dsa      0.098s
ok      crypto/ecdsa    3.370s
ok      crypto/ed25519  0.820s
ok      crypto/elliptic 0.443s
ok      crypto/hmac     0.064s
ok      crypto/internal/subtle  0.025s
ok      crypto/md5      0.044s
ok      crypto/rand     0.188s
ok      crypto/rc4      0.485s
ok      crypto/rsa      2.156s
ok      crypto/sha1     0.045s
ok      crypto/sha256   0.051s
ok      crypto/sha512   0.086s
ok      crypto/subtle   0.048s
ok      crypto/tls      24.367s
ok      crypto/x509     17.952s
ok      database/sql    1.446s
ok      database/sql/driver     0.062s
ok      debug/dwarf     0.277s
ok      debug/elf       0.373s
ok      debug/gosym     0.105s
ok      debug/macho     0.079s
ok      debug/pe        0.085s
ok      debug/plan9obj  0.059s
ok      encoding/ascii85        0.080s
ok      encoding/asn1   0.037s
ok      encoding/base32 0.241s
ok      encoding/base64 0.053s
ok      encoding/binary 0.089s
ok      encoding/csv    0.165s
ok      encoding/gob    0.223s
ok      encoding/hex    0.047s
ok      encoding/json   0.816s
ok      encoding/pem    0.178s
ok      encoding/xml    0.173s
ok      errors  0.054s
ok      expvar  0.052s
ok      flag    0.030s
ok      fmt     1.272s
ok      go/ast  0.047s
ok      go/build        17.641s
ok      go/constant     0.039s
ok      go/doc  1.939s
ok      go/format       0.089s
ok      go/importer     7.778s
ok      go/internal/gccgoimporter       18.491s
ok      go/internal/gcimporter  3.115s
ok      go/internal/srcimporter 29.464s
ok      go/parser       0.344s
ok      go/printer      2.818s
ok      go/scanner      0.051s
ok      go/token        0.292s
ok      go/types        17.042s
ok      hash    0.083s
ok      hash/adler32    0.148s
ok      hash/crc32      0.061s
ok      hash/crc64      0.039s
ok      hash/fnv        0.029s
ok      html    0.047s
ok      html/template   0.369s
ok      image   1.424s
ok      image/color     0.310s
ok      image/draw      0.651s
ok      image/gif       5.401s
ok      image/jpeg      3.378s
ok      image/png       0.851s
ok      index/suffixarray       39.603s
ok      internal/cpu    0.083s
ok      internal/fmtsort        0.054s
ok      internal/poll   0.510s
ok      internal/reflectlite    0.042s
ok      internal/singleflight   0.061s
ok      internal/trace  0.735s
ok      internal/xcoff  0.114s
ok      io      0.129s
ok      io/ioutil       0.053s
ok      log     0.094s
ok      log/syslog      1.398s
ok      math    0.047s
ok      math/big        11.466s
ok      math/bits       0.172s
ok      math/cmplx      0.048s
ok      math/rand       1.565s
ok      mime    0.108s
ok      mime/multipart  2.476s
ok      mime/quotedprintable    0.197s
ok      net     147.782s
ok      net/http        33.446s
ok      net/http/cgi    2.555s
ok      net/http/cookiejar      0.145s
ok      net/http/fcgi   0.094s
ok      net/http/httptest       0.485s
ok      net/http/httptrace      0.070s
ok      net/http/httputil       0.728s
ok      net/http/internal       0.059s
ok      net/http/pprof  2.069s
ok      net/internal/socktest   0.075s
ok      net/mail        0.041s
ok      net/rpc 0.133s
ok      net/rpc/jsonrpc 0.138s
ok      net/smtp        0.252s
ok      net/textproto   0.067s
ok      net/url 0.095s
ok      os      1.848s
ok      os/exec 1.560s
ok      os/signal       5.346s
ok      os/user 0.038s
ok      path    0.043s
ok      path/filepath   1.079s
ok      plugin  0.023s
ok      reflect 2.695s
ok      regexp  0.832s
ok      regexp/syntax   12.113s
ok      runtime 98.538s
ok      runtime/debug   0.733s
ok      runtime/internal/atomic 0.083s
ok      runtime/internal/math   0.025s
ok      runtime/internal/sys    0.048s
ok      runtime/pprof   16.862s
ok      runtime/pprof/internal/profile  0.055s
ok      runtime/trace   8.830s
ok      sort    0.675s
ok      strconv 7.085s
ok      strings 2.570s
ok      sync    1.797s
ok      sync/atomic     0.357s
ok      syscall 0.110s
ok      testing 0.689s
ok      testing/quick   0.611s
ok      text/scanner    0.111s
ok      text/tabwriter  0.065s
ok      text/template   0.672s
ok      text/template/parse     0.114s
ok      time    5.167s
ok      unicode 0.033s
ok      unicode/utf16   0.063s
ok      unicode/utf8    0.049s
ok      cmd/addr2line   57.598s
ok      cmd/api 2.350s
ok      cmd/asm/internal/asm    11.222s
ok      cmd/asm/internal/lex    0.044s
ok      cmd/compile     0.101s
ok      cmd/compile/internal/gc 252.914s
ok      cmd/compile/internal/ssa        11.291s
ok      cmd/compile/internal/syntax     0.282s
ok      cmd/compile/internal/test       0.074s [no tests to run]
ok      cmd/compile/internal/types      0.052s
ok      cmd/cover       124.197s
ok      cmd/doc 4.386s
ok      cmd/fix 0.444s
ok      cmd/go  1743.219s
ok      cmd/go/internal/auth    0.082s
ok      cmd/go/internal/cache   0.621s
ok      cmd/go/internal/dirhash 0.079s
ok      cmd/go/internal/generate        0.313s
ok      cmd/go/internal/get     0.126s
ok      cmd/go/internal/imports 0.324s
ok      cmd/go/internal/load    0.092s
ok      cmd/go/internal/lockedfile      0.092s
ok      cmd/go/internal/lockedfile/internal/filelock    0.138s
ok      cmd/go/internal/modconv 0.237s
ok      cmd/go/internal/modfetch        0.115s
ok      cmd/go/internal/modfetch/codehost       0.049s
ok      cmd/go/internal/modfile 0.307s
ok      cmd/go/internal/modload 0.142s
ok      cmd/go/internal/module  0.044s
ok      cmd/go/internal/mvs     0.052s
ok      cmd/go/internal/note    0.303s
ok      cmd/go/internal/renameio        0.278s
ok      cmd/go/internal/search  0.125s
ok      cmd/go/internal/semver  0.040s
ok      cmd/go/internal/sumweb  0.219s
ok      cmd/go/internal/tlog    52.099s
ok      cmd/go/internal/txtar   0.071s
ok      cmd/go/internal/web     0.071s
ok      cmd/go/internal/work    0.113s
ok      cmd/gofmt       1.353s
ok      cmd/internal/buildid    6.914s
ok      cmd/internal/dwarf      0.028s
ok      cmd/internal/edit       0.022s
ok      cmd/internal/goobj      0.590s
ok      cmd/internal/obj        0.050s
ok      cmd/internal/obj/arm64  0.079s
ok      cmd/internal/obj/x86    30.316s
ok      cmd/internal/objabi     0.023s
ok      cmd/internal/src        0.025s
ok      cmd/internal/test2json  1.876s
ok      cmd/link        47.310s
ok      cmd/link/internal/ld    99.458s
ok      cmd/link/internal/sym   0.052s
ok      cmd/nm  96.471s
ok      cmd/objdump     50.622s
ok      cmd/pack        31.972s
ok      cmd/trace       0.144s
ok      cmd/vet 212.223s

##### os/user with tag osusergo
ok      os/user 0.021s

##### GOMAXPROCS=2 runtime -cpu=1,2,4 -quick
ok      runtime 29.701s

##### cmd/go terminal test
PASS
ok      cmd/go/testdata/testterminal18153       0.013s

##### Testing without libgcc.
ok      crypto/x509     13.485s
ok      net     0.060s
ok      os/user 0.022s

##### sync -cpu=10
ok      sync    1.735s

##### ../test/bench/go1

##### ../test


##### API check

ALL TESTS PASSED

Joel, do you need help on building and submitting the patches targeting Go 1.14?

@necrose99 unfortunately the K210 does not have a working mmu implementation and with only 8MB it’s not possible to run Linux on it. There are projects to expand RAM and I saw a video as a poc but not feasible now.

I have dropped the ball on this. Is Joel's riscv branch being merged into golang?

I believe the 1.14 freeze starts in November so we are in time. Do you guys think it's too much work start submitting the CLs so be reviewed? Do they need to be split somehow? Thoughts @4a6f656c ?

The first step is a builder. Is there a builder running?

Hi @ianlancetaylor , I've submitted a CL based on @bradfitz work here: https://golang.org/cl/188501

@ianlancetaylor assuming the builder is working what else do you need us to do?

IIRC the riscv branch has been updated to work with 1.13 and I am going to verify that.

@4a6f656c are there any outstanding issues that you know of?

Once the builder is working is fine to start sending in patches as mentioned above (https://github.com/golang/go/issues/27532#issuecomment-509360354). Thanks.

The latest commits on @4a6f656c tree works and tests 100% as I posted some days ago. @ianlancetaylor any chance of getting a review of the builder CL I've submitted?

I pinged the builder CL. I haven't worked on the builders myself.

Change https://golang.org/cl/192077 mentions this issue: syscall: move Renameat to syscall_linux_$GOARCH.go

Change https://golang.org/cl/193677 mentions this issue: cmd/internal/obj: instructions and registers for RISC-V

Change https://golang.org/cl/193678 mentions this issue: cmd/internal/sys: provide archtecture definition for riscv64

Change https://golang.org/cl/194117 mentions this issue: cmd/asm,cmd/internal/obj: initial support for riscv64 assembler

Change https://golang.org/cl/195079 mentions this issue: cmd/asm,cmd/internal/obj/riscv: implement integer computational instructions

Change https://golang.org/cl/195917 mentions this issue: Load, store and multiplication instructions.

Change https://golang.org/cl/195918 mentions this issue: cmd/internal/obj/riscv: environment call/breakpoint and base counter/timer instructions

Change https://golang.org/cl/196838 mentions this issue: cmd/internal/obj/riscv: implement RV64I integer computational instructions

Change https://golang.org/cl/196839 mentions this issue: cmd/internal/obj/riscv: implement floating point instructions

Change https://golang.org/cl/196841 mentions this issue: cmd/internal/obj/riscv: implement control transfer instructions

Change https://golang.org/cl/196840 mentions this issue: cmd/internal/obj/riscv: implement AUIPC and LUI instructions

Change https://golang.org/cl/196842 mentions this issue: cmd/internal/obj/riscv: require memory targets for load and store instructions

Change https://golang.org/cl/198677 mentions this issue: cmd/internal/obj/riscv: implement MOV pseudo-instructions

Change https://golang.org/cl/204660 mentions this issue: internal/syscall/unix: add support for linux/riscv64

Change https://golang.org/cl/204659 mentions this issue: syscall: add support for linux/riscv64

Today is the last day of development before the Go 1.14 freeze begins.

What's the status here? Will this make it all in today?

Today is the last day of development before the Go 1.14 freeze begins.

What's the status here? Will this make it all in today?

Only speaking for myself: apart from https://golang.org/cl/204659 and https://golang.org/cl/204660, I have no CLs which are in a state ready to be reviewed before the freeze begins.

Change https://golang.org/cl/204624 mentions this issue: cmd/internal/objabi,cmd/link: initial linker support for riscv64

Change https://golang.org/cl/204625 mentions this issue: cmd/link,cmd/internal/obj/riscv: implement archreloc for riscv64

Change https://golang.org/cl/204630 mentions this issue: cmd/internal/obj/riscv: implement prologue and epilogue

Change https://golang.org/cl/204628 mentions this issue: cmd/internal/obj/riscv: handle FEQ/FNEG/SEQZ/SNEZ

Change https://golang.org/cl/204627 mentions this issue: cmd/internal/obj/riscv: handle call, jmp and branch

Change https://golang.org/cl/204629 mentions this issue: cmd/internal/obj/riscv: handle AGETCALLERPC

Change https://golang.org/cl/204626 mentions this issue: cmd/internal/obj/riscv: split immediates larger than 12-bits

Change https://golang.org/cl/204632 mentions this issue: runtime: add support for linux/riscv64

Change https://golang.org/cl/204631 mentions this issue: cmd/compile: implement compiler for riscv64

Change https://golang.org/cl/204633 mentions this issue: math: add support for riscv64

Change https://golang.org/cl/204635 mentions this issue: internal/cpu,internal/bytealg: add support for riscv64

Change https://golang.org/cl/204634 mentions this issue: reflect: add support for riscv64

Change https://golang.org/cl/206639 mentions this issue: dashboard: add linux-riscv64 builder

Change https://golang.org/cl/206860 mentions this issue: cpu: add basic support for GOARCH=riscv64

Hi @4a6f656c, I'm building Kubernetes with latest commit from riscvdev and while testing with the following command, I get an error:

go test -c -gcflags ' -trimpath=/home/carlosedp/kubernetes' -asmflags -trimpath=/home/carlosedp/kubernetes -ldflags '-s -w -X '\''k8s.io/kubernetes/vendor/k8s.io/client-go/pkg/version.buildDate=2019-11-28T19:00:55Z'\'' -X '\''k8s.io/kubernetes/vendor/k8s.io/component-base/version.buildDate=2019-11-28T19:00:55Z'\'' -X '\''k8s.io/kubernetes/vendor/k8s.io/client-go/pkg/version.gitCommit=1d343c8a0ce3e4d4845f7c34d06a1e2f25c975b7'\'' -X '\''k8s.io/kubernetes/vendor/k8s.io/component-base/version.gitCommit=1d343c8a0ce3e4d4845f7c34d06a1e2f25c975b7'\'' -X '\''k8s.io/kubernetes/vendor/k8s.io/client-go/pkg/version.gitTreeState=dirty'\'' -X '\''k8s.io/kubernetes/vendor/k8s.io/component-base/version.gitTreeState=dirty'\'' -X '\''k8s.io/kubernetes/vendor/k8s.io/client-go/pkg/version.gitVersion=v1.18.0-alpha.0.1289+1d343c8a0ce3e4-dirty'\'' -X '\''k8s.io/kubernetes/vendor/k8s.io/component-base/version.gitVersion=v1.18.0-alpha.0.1289+1d343c8a0ce3e4-dirty'\'' -X '\''k8s.io/kubernetes/vendor/k8s.io/client-go/pkg/version.gitMajor=1'\'' -X '\''k8s.io/kubernetes/vendor/k8s.io/component-base/version.gitMajor=1'\'' -X '\''k8s.io/kubernetes/vendor/k8s.io/client-go/pkg/version.gitMinor=18+'\'' -X '\''k8s.io/kubernetes/vendor/k8s.io/component-base/version.gitMinor=18+'\''' -o /home/carlosedp/kubernetes/_output/local/go/bin/linux_riscv64/e2e.test k8s.io/kubernetes/test/e2e
# k8s.io/kubernetes/test/e2e/scheduling
panic: signed immediate 7464 in {0 0 0 TYPE_CONST 0 0 7464 <nil> <nil>} cannot fit in 12 bits

goroutine 23 [running]:
cmd/internal/obj/riscv.immI(0x4000000000000, 0x0, 0x1d28, 0x0, 0x0, 0x0, 0xc, 0x200)
    /home/carlosedp/riscv-go/src/cmd/internal/obj/riscv/obj.go:1326 +0x1e3
cmd/internal/obj/riscv.encodeI(0xc0001bd508, 0x0, 0x0)
    /home/carlosedp/riscv-go/src/cmd/internal/obj/riscv/obj.go:1549 +0x71
cmd/internal/obj/riscv.encodeIF(0xc0001bd508, 0xe5e088)
    /home/carlosedp/riscv-go/src/cmd/internal/obj/riscv/obj.go:1564 +0x89
cmd/internal/obj/riscv.assemble(0xc0002b0160, 0xc004c6e150, 0xc001986b80)
    /home/carlosedp/riscv-go/src/cmd/internal/obj/riscv/obj.go:1944 +0x1d3
cmd/internal/obj.Flushplist(0xc0002b0160, 0xc002cd1e88, 0xc001986b80, 0x7ffdd8728743, 0x25)
    /home/carlosedp/riscv-go/src/cmd/internal/obj/plist.go:107 +0x760
cmd/compile/internal/gc.(*Progs).Flush(0xc0066c40e0)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/gsubr.go:93 +0xbc
cmd/compile/internal/gc.compileSSA(0xc000879ce0, 0x2)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/pgen.go:323 +0x69d
cmd/compile/internal/gc.compileFunctions.func2(0xc0043d8420, 0xc0050b7900, 0x2)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/pgen.go:363 +0x49
created by cmd/compile/internal/gc.compileFunctions
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/pgen.go:361 +0x128

If building for arm64 architecture for example, it completes with no error (using the same Go).

Any idea @tklauser @bradfitz @josharian ?

Maybe a little more interesting (and noisy), I've built the riscvdev-wip branch from @4a6f656c and got this stacktrace:

❯ CGO_ENABLED=0  GOOS=linux GOARCH=riscv64 go test -mod vendor -v -c -gcflags '-e -N -l -trimpath=/home/carlosedp/repos/kubernetes' -asmflags -trimpath=/home/carlosedp/repos/kubernetes -ldflags '-s -w -X '\''k8s.io/kubernetes/vendor/k8s.io/client-go/pkg/version.buildDate=2019-12-06T17:52:02Z'\'' -X '\''k8s.io/kubernetes/vendor/k8s.io/component-base/version.buildDate=2019-12-06T17:52:02Z'\'' -X '\''k8s.io/kubernetes/vendor/k8s.io/client-go/pkg/version.gitCommit=616fce7839b16dc61c9079cbae3b0ce1e47060f7'\'' -X '\''k8s.io/kubernetes/vendor/k8s.io/component-base/version.gitCommit=616fce7839b16dc61c9079cbae3b0ce1e47060f7'\'' -X '\''k8s.io/kubernetes/vendor/k8s.io/client-go/pkg/version.gitTreeState=dirty'\'' -X '\''k8s.io/kubernetes/vendor/k8s.io/component-base/version.gitTreeState=dirty'\'' -X '\''k8s.io/kubernetes/vendor/k8s.io/client-go/pkg/version.gitVersion=v1.18.0-alpha.0.1512+616fce7839b16d-dirty'\'' -X '\''k8s.io/kubernetes/vendor/k8s.io/component-base/version.gitVersion=v1.18.0-alpha.0.1512+616fce7839b16d-dirty'\'' -X '\''k8s.io/kubernetes/vendor/k8s.io/client-go/pkg/version.gitMajor=1'\'' -X '\''k8s.io/kubernetes/vendor/k8s.io/component-base/version.gitMajor=1'\'' -X '\''k8s.io/kubernetes/vendor/k8s.io/client-go/pkg/version.gitMinor=18+'\'' -X '\''k8s.io/kubernetes/vendor/k8s.io/component-base/version.gitMinor=18+'\''' -o /home/carlosedp/repos/kubernetes/_output/local/go/bin/linux_riscv64/e2e.test k8s.io/kubernetes/test/e2e
# internal/cpu
../../riscv-go/src/internal/cpu/cpu.go:217:14: internal compiler error: 'processOptions': nil register for value: v447 = MOVaddr <*option> {.autotmp_23} v2
processOptions func(string)
  b2:
    v495 = Arg <*uint8> {env} : env[*uint8] (env[*uint8])
    v509 = Arg <int> {env} [8] : env+8[int] (env+8[int])
    v1 = InitMem <mem>
    v3 = SB <uintptr> : SB
    v2 = SP <uintptr> : SP
    v440 = LoadReg <int> v509 : X3
    v438 = LoadReg <*uint8> v495 : X5
    Plain -> b3
  b5: <- b16 b42 b81 b99 b119 b111 b7 b31 b27 b23
    v603 = Phi <mem> v19 v141 v263 v558 v420 v434 v19 v19 v19 v19
    v396 = Copy <*uint8> v385 : X5
    v554 = Copy <int> v411 : X3
    Plain -> b3
  b3: <- b2 b5
    v490 = Phi <int> v440 v554 : X3 (env+8[int], field.len[int])
    v510 = Phi <*uint8> v438 v396 : X5 (env[*uint8], field.ptr[*uint8])
    v602 = Phi <mem> v1 v603
    v497 = MOVDconst <int> [0] : X6
    v498 = SUB <int> v490 v497 : X7
    v9 = SNEZ <bool> v498 : X7
    BNE v9 -> b4 b6 (likely)
  b4: <- b3
    v484 = StoreReg <int> v490 : field.len[int]
    v533 = StoreReg <*uint8> v510 : field.ptr[*uint8]
    v238 = MOVDstore <mem> [8] v2 v510 v602
    v15 = MOVDstore <mem> [16] v2 v490 v238
    v514 = MOVBconst <byte> [44] : X6
    v18 = MOVBstore <mem> [24] v2 v514 v15
    v19 = CALLstatic <mem> {"".indexByte} [32] v18
    v21 = MOVDload <int> [32] v2 v19 : X3 (field.len[int], i[int])
    v491 = MOVDconst <int> [0] : X5
    v22 = SLT <bool> v21 v491 : X6
    BNE v22 -> b8 b9
  b8: <- b4
    v7 = MOVDconst <*uint8> [0] : X3
    v292 = MOVDconst <int> [0] : X6
    v296 = LoadReg <int> v484 : X7
    Plain -> b7
  b7: <- b8 b14
    v385 = Phi <*uint8> v7 v471 : X3 (env[*uint8])
    v411 = Phi <int> v292 v45 : X6 (env+8[int])
    v458 = Phi <int> v296 v487 : X7 (field.len[int])
    v530 = MOVDconst <int> [4] : X8
    v55 = SLT <bool> v458 v530 : X9
    BNE v55 -> b5 b23
  b23: <- b7
    v537 = LoadReg <*uint8> v533 : X9
    v77 = MOVBUload <uint8> v537 v19 : X10
    v472 = MOVBconst <byte> [99] : X11
    v109 = SUB <byte> v472 v77 : X10
    v35 = SLLI <uint64> [56] v109 : X10
    v372 = SRLI <uint64> [56] v35 : X10
    v79 = SNEZ <bool> v372 : X10
    BNE v79 -> b5 b27
  b27: <- b23
    v89 = MOVBUload <uint8> [1] v537 v19 : X10
    v463 = MOVBconst <byte> [112] : X12
    v363 = SUB <byte> v463 v89 : X10
    v621 = SLLI <uint64> [56] v363 : X10
    v111 = SRLI <uint64> [56] v621 : X10
    v91 = SNEZ <bool> v111 : X10
    BNE v91 -> b5 b31
  b31: <- b27
    v102 = MOVBUload <uint8> [2] v537 v19 : X10
    v459 = MOVBconst <byte> [117] : X13
    v382 = SUB <byte> v459 v102 : X10
    v52 = SLLI <uint64> [56] v382 : X10
    v542 = SRLI <uint64> [56] v52 : X10
    v104 = SNEZ <bool> v542 : X10
    BNE v104 -> b5 b16
  b16: <- b31
    v115 = MOVBUload <uint8> [3] v537 v19 : X10
    v455 = MOVBconst <byte> [46] : X14
    v397 = SUB <byte> v455 v115 : X10
    v512 = SLLI <uint64> [56] v397 : X10
    v67 = SRLI <uint64> [56] v512 : X10
    v117 = SNEZ <bool> v67 : X10
    BNE v117 -> b5 b38 (likely)
  b38: <- b16
    v405 = StoreReg <*uint8> v385 : .autotmp_32[*uint8]
    v68 = StoreReg <int> v411 : .autotmp_33[int]
    v419 = StoreReg <int> v458 : field.len[int]
    v196 = MOVDstore <mem> [8] v2 v537 v19
    v124 = MOVDstore <mem> [16] v2 v458 v196
    v454 = MOVBconst <byte> [61] : X3
    v126 = MOVBstore <mem> [24] v2 v454 v124
    v127 = CALLstatic <mem> {"".indexByte} [32] v126
    v128 = MOVDload <int> [32] v2 v127 : X3 (i[int])
    v418 = MOVDconst <int> [0] : X5
    v129 = SLT <bool> v128 v418 : X6
    BNE v129 -> b42 b41 (unlikely)
  b41: <- b38
    v71 = LoadReg <int> v419 : X6
    v209 = SLTU <bool> v71 v128 : X7
    v146 = XORI <bool> [1] v209 : X7
    BNE v146 -> b43 b44 (likely)
  b43: <- b41
    v85 = MOVDconst <int> [4] : X7
    v211 = SLTU <bool> v128 v85 : X8
    v149 = XORI <bool> [1] v211 : X8
    BNE v149 -> b45 b46 (likely)
  b45: <- b43
    v152 = ADDI <int> [-4] v128 : X8 (key.len[int])
    v96 = MOVDconst <uint64> [1] : X9
    v375 = SUB <int> v152 v96 : X10
    v108 = MOVDconst <uint64> [63] : X11
    v610 = SRA <int> v375 v108 : X10
    v153 = MOVDconst <uint64> [-1] : X12
    v154 = XOR <int> v610 v153 : X10
    v155 = AND <int> v154 v85 : X10
    v334 = LoadReg <*uint8> v533 : X13
    v156 = ADD <*uint8> v334 v155 : X10 (key.ptr[*uint8])
    v159 = ADDI <int> [1] v128 : X14
    v437 = SLTU <bool> v71 v159 : X15
    v163 = XORI <bool> [1] v437 : X15
    BNE v163 -> b47 b48 (likely)
  b47: <- b45
    v227 = StoreReg <int> v152 : key.len[int]
    v197 = StoreReg <*uint8> v156 : key.ptr[*uint8]
    v166 = SUB <int> v71 v159 : X6 (value.len[int])
    v379 = StoreReg <int> v166 : value.len[int]
    v295 = SUB <int> v166 v96 : X9
    v313 = SRA <int> v295 v108 : X9
    v168 = XOR <int> v313 v153 : X9
    v169 = AND <int> v168 v159 : X9
    v170 = ADD <*uint8> v334 v169 : X9 (value.ptr[*uint8])
    v388 = StoreReg <*uint8> v170 : value.ptr[*uint8]
    v366 = MOVDconst <int> [2] : X11
    v281 = SUB <int> v366 v166 : X12
    v175 = SEQZ <bool> v281 : X12
    BNE v175 -> b56 b52
  b56: <- b47
    v187 = MOVBUload <uint8> v170 v127 : X12
    v553 = MOVBconst <byte> [111] : X13
    v338 = SUB <byte> v553 v187 : X12
    v6 = SLLI <uint64> [56] v338 : X12
    v324 = SRLI <uint64> [56] v6 : X12
    v189 = SEQZ <bool> v324 : X12
    BNE v189 -> b60 b65 (likely)
  b60: <- b56
    v199 = MOVBUload <uint8> [1] v170 v127 : X12
    v320 = MOVBconst <byte> [110] : X14
    v305 = SUB <byte> v320 v199 : X12
    v445 = SLLI <uint64> [56] v305 : X12
    v395 = SRLI <uint64> [56] v445 : X12
    v201 = SEQZ <bool> v395 : X12
    BNE v201 -> b63 b81 (likely)
  b63: <- b60
    v335 = MOVBconst <bool> [1] : X6
    Plain -> b49
  b49: <- b63 b80
    v545 = Phi <bool> v335 v619 : X6 (enable[bool])
    v348 = MOVDconst <int> [7] : X9
    v271 = SUB <int> v348 v128 : X3
    v266 = SEQZ <bool> v271 : X3
    BNE v266 -> b85 b79
  b85: <- b49
    v275 = MOVBUload <uint8> v156 v127 : X3
    v488 = MOVBconst <byte> [97] : X9
    v223 = SUB <byte> v488 v275 : X3
    v475 = SLLI <uint64> [56] v223 : X3
    v225 = SRLI <uint64> [56] v475 : X3
    v277 = SEQZ <bool> v225 : X3
    BNE v277 -> b89 b87
  b89: <- b85
    v287 = MOVBUload <uint8> [1] v156 v127 : X3
    v297 = MOVBconst <byte> [108] : X12
    v212 = SUB <byte> v297 v287 : X3
    v425 = SLLI <uint64> [56] v212 : X3
    v214 = SRLI <uint64> [56] v425 : X3
    v289 = SEQZ <bool> v214 : X3
    BNE v289 -> b93 b82
  b93: <- b89
    v299 = MOVBUload <uint8> [2] v156 v127 : X3
    v193 = SUB <byte> v297 v299 : X3
    v260 = SLLI <uint64> [56] v193 : X3
    v195 = SRLI <uint64> [56] v260 : X3
    v300 = SEQZ <bool> v195 : X3
    BNE v300 -> b83 b82
  b83: <- b93
    v361 = MOVDload <int> {"".options} [8] v3 v127 : X3
    v559 = MOVDconst <int> [0] : X8
    Plain -> b96
  b98: <- b102
    v347 = ADD <*option> v406 v524 : X16
    v350 = MOVBstore <mem> [25] v347 v337 v322
    v352 = ADDI <int> [1] v307 : X8
    Plain -> b96
  b96: <- b83 b98
    v307 = Phi <int> v559 v352 : X8 (i[int])
    v558 = Phi <mem> v127 v350
    v309 = SLT <bool> v307 v361 : X10
    BNE v309 -> b97 b99 (likely)
  b97: <- b96
    v138 = MOVDload <int> {"".options} [8] v3 v558 : X10
    v311 = MOVDload <*option> {"".options} v3 v558 : X15
    v315 = SLTU <bool> v307 v138 : X16
    BNE v315 -> b100 b101 (likely)
  b100: <- b97
    v285 = MOVDconst <uint64> [5] : X10
    v171 = SLTIU <int> [64] v285 : X16
    v353 = MOVDconst <uint64> [0] : X17
    v181 = SUB <int> v353 v171 : X16
    v183 = SLL <int> v307 v285 : X17
    v406 = AND <int> v183 v181 : X16
    v319 = ADD <*option> v406 v311 : X15
    v435 = MOVBconst <bool> [1] : X17
    v322 = MOVBstore <mem> [24] v319 v435 v558
    BNE v545 -> b75 b103
  b75: <- b100
    v557 = MOVBconst <bool> [1] : X15
    Plain -> b102
  b102: <- b75 b104
    v337 = Phi <bool> v557 v336 : X15
    v374 = MOVDload <int> {"".options} [8] v3 v322 : X18
    v524 = MOVDload <*option> {"".options} v3 v322 : X19
    v343 = SLTU <bool> v307 v374 : X20
    BNE v343 -> b98 b107 (likely)
  b103: <- b100
    v377 = MOVDload <*option> {"".options} v3 v322 : X15
    v398 = MOVDload <int> {"".options} [8] v3 v322 : X18
    v329 = SLTU <bool> v307 v398 : X19
    BNE v329 -> b104 b105 (likely)
  b104: <- b103
    v333 = ADD <*option> v406 v377 : X18
    v336 = MOVBUload <bool> [26] v333 v322 : X15
    Plain -> b102
  b99: <- b96
    v423 = LoadReg <*uint8> v405 : X3
    v421 = LoadReg <int> v68 : X6
    v362 = MOVDconst <int> [4] : X8
    Plain -> b5
  b82: <- b93 b89 b87 b79
    v86 = StoreReg <bool> v545 : enable[bool]
    v243 = MOVDload <int> {"".options} [8] v3 v127 : X3
    v239 = StoreReg <int> v243 : .autotmp_34[int]
    v316 = MOVDconst <int> [0] : X15
    Plain -> b108
  b110: <- b112 b62
    v552 = Phi <mem> v551 v392
    v422 = ADDI <int> [1] v357 : X15
    Plain -> b108
  b108: <- b82 b110
    v357 = Phi <int> v316 v422 : X15 (i[int])
    v551 = Phi <mem> v127 v552
    v359 = SLT <bool> v357 v243 : X16
    BNE v359 -> b109 b111 (likely)
  b109: <- b108
    v390 = MOVDload <*option> {"".options} v3 v551 : X16
    v408 = MOVDload <int> {"".options} [8] v3 v551 : X17
    v365 = SLTU <bool> v357 v408 : X18
    BNE v365 -> b112 b113 (likely)
  b112: <- b109
    v40 = MOVDconst <uint64> [5] : X17
    v66 = SLTIU <int> [64] v40 : X18
    v112 = MOVDconst <uint64> [0] : X19
    v157 = SUB <int> v112 v66 : X18
    v496 = SLL <int> v357 v40 : X19
    v380 = AND <int> v496 v157 : X18
    v369 = ADD <*option> v390 v380 : X16
    v73 = MOVDload <int> [8] v369 v551 : X19
    v82 = MOVDload <*uint8> v369 v551 : X16
    v513 = SUB <int> v73 v152 : X20
    v378 = SEQZ <bool> v513 : X20
    BNE v378 -> b116 b110 (unlikely)
  b116: <- b112
    v161 = StoreReg <int> v357 : i[int]
    v144 = StoreReg <int> v380 : .autotmp_35[int]
    v383 = MOVDstore <mem> [8] v2 v82 v551
    v387 = MOVDstore <mem> [16] v2 v156 v383
    v391 = MOVDstore <mem> [24] v2 v73 v387
    v392 = CALLstatic <mem> {runtime.memequal} [32] v391
    v394 = MOVBUload <bool> [32] v2 v392 : X3
    BNE v394 -> b115 b62 (unlikely)
  b62: <- b116
    v323 = LoadReg <int> v239 : X3
    v321 = MOVDconst <int> [0] : X5
    v351 = LoadReg <bool> v86 : X6
    v312 = MOVDconst <int> [4] : X7
    v310 = LoadReg <int> v227 : X8
    v607 = MOVBconst <byte> [97] : X9
    v555 = LoadReg <*uint8> v197 : X10
    v308 = MOVDconst <int> [2] : X11
    v294 = MOVBconst <byte> [108] : X12
    v298 = MOVBconst <byte> [111] : X13
    v609 = MOVBconst <byte> [110] : X14
    v568 = LoadReg <int> v161 : X15
    v547 = MOVDconst <uint64> [5] : X17
    Plain -> b110
  b115: <- b116
    v64 = MOVDload <int> {"".options} [8] v3 v392 : X3
    v70 = MOVDload <*option> {"".options} v3 v392 : X5
    v177 = LoadReg <int> v161 : X6
    v400 = SLTU <bool> v177 v64 : X7
    BNE v400 -> b117 b118 (likely)
  b117: <- b115
    v205 = LoadReg <int> v144 : X3
    v404 = ADD <*option> v205 v70 : X5
    v192 = MOVBconst <bool> [1] : X7
    v407 = MOVBstore <mem> [24] v404 v192 v392
    v33 = MOVDload <int> {"".options} [8] v3 v407 : X5
    v62 = MOVDload <*option> {"".options} v3 v407 : X8
    v413 = SLTU <bool> v177 v33 : X9
    BNE v413 -> b119 b120 (likely)
  b119: <- b117
    v417 = ADD <*option> v205 v62 : X9
    v208 = LoadReg <bool> v86 : X10
    v420 = MOVBstore <mem> [25] v417 v208 v407
    v360 = LoadReg <*uint8> v405 : X3
    v608 = MOVDconst <int> [0] : X5
    v546 = LoadReg <int> v68 : X6
    v540 = MOVDconst <int> [4] : X8
    Plain -> b5
  b111: <- b108
    v424 = CALLstatic <mem> {runtime.printlock} v551
    v100 = MOVaddr <*uint8> {go.string."GODEBUG: unknown cpu feature \""} v3 : X3
    v98 = MOVDstore <mem> [8] v2 v100 v424
    v87 = MOVDconst <int> [30] : X5
    v426 = MOVDstore <mem> [16] v2 v87 v98
    v427 = CALLstatic <mem> {runtime.printstring} [16] v426
    v113 = LoadReg <*uint8> v197 : X3
    v95 = MOVDstore <mem> [8] v2 v113 v427
    v222 = LoadReg <int> v227 : X3
    v429 = MOVDstore <mem> [16] v2 v222 v95
    v430 = CALLstatic <mem> {runtime.printstring} [16] v429
    v268 = MOVaddr <*uint8> {go.string."\"\n"} v3 : X3
    v83 = MOVDstore <mem> [8] v2 v268 v430
    v401 = MOVDconst <int> [2] : X5
    v432 = MOVDstore <mem> [16] v2 v401 v83
    v433 = CALLstatic <mem> {runtime.printstring} [16] v432
    v434 = CALLstatic <mem> {runtime.printunlock} v433
    v358 = LoadReg <*uint8> v405 : X3
    v344 = MOVDconst <int> [0] : X5
    v349 = LoadReg <int> v68 : X6
    v330 = MOVDconst <int> [4] : X8
    Plain -> b5
  b87: <- b85
    v556 = MOVBconst <byte> [108] : X12
    Plain -> b82
  b79: <- b49
    v341 = MOVBconst <byte> [97] : X9
    v339 = MOVBconst <byte> [108] : X12
    Plain -> b82
  b81: <- b60 b59 b65 b77 b73 b17
    v247 = CALLstatic <mem> {runtime.printlock} v127
    v525 = MOVaddr <*uint8> {go.string."GODEBUG: value \""} v3 : X3
    v145 = MOVDstore <mem> [8] v2 v525 v247
    v393 = MOVDconst <int> [16] : X5
    v249 = MOVDstore <mem> [16] v2 v393 v145
    v250 = CALLstatic <mem> {runtime.printstring} [16] v249
    v384 = LoadReg <*uint8> v388 : X3
    v99 = MOVDstore <mem> [8] v2 v384 v250
    v303 = LoadReg <int> v379 : X3
    v252 = MOVDstore <mem> [16] v2 v303 v99
    v253 = CALLstatic <mem> {runtime.printstring} [16] v252
    v37 = MOVaddr <*uint8> {go.string."\" not supported for cpu option \""} v3 : X3
    v58 = MOVDstore <mem> [8] v2 v37 v253
    v20 = MOVDconst <int> [32] : X5
    v255 = MOVDstore <mem> [16] v2 v20 v58
    v256 = CALLstatic <mem> {runtime.printstring} [16] v255
    v16 = LoadReg <*uint8> v197 : X3
    v41 = MOVDstore <mem> [8] v2 v16 v256
    v12 = LoadReg <int> v227 : X3
    v258 = MOVDstore <mem> [16] v2 v12 v41
    v259 = CALLstatic <mem> {runtime.printstring} [16] v258
    v370 = MOVaddr <*uint8> {go.string."\"\n"} v3 : X3
    v27 = MOVDstore <mem> [8] v2 v370 v259
    v132 = MOVDconst <int> [2] : X5
    v261 = MOVDstore <mem> [16] v2 v132 v27
    v262 = CALLstatic <mem> {runtime.printstring} [16] v261
    v263 = CALLstatic <mem> {runtime.printunlock} v262
    v34 = LoadReg <*uint8> v405 : X3
    v441 = MOVDconst <int> [0] : X5
    v371 = LoadReg <int> v68 : X6
    v428 = MOVDconst <int> [4] : X8
    Plain -> b5
  b65: <- b56
    v541 = MOVBconst <byte> [110] : X14
    Plain -> b81
  b52: <- b47
    v11 = MOVDconst <int> [3] : X12
    v269 = SUB <int> v11 v166 : X13
    v206 = SEQZ <bool> v269 : X13
    BNE v206 -> b69 b59 (likely)
  b69: <- b52
    v218 = MOVBUload <uint8> v170 v127 : X13
    v5 = MOVBconst <byte> [111] : X14
    v431 = SUB <byte> v5 v218 : X13
    v505 = SLLI <uint64> [56] v431 : X13
    v409 = SRLI <uint64> [56] v505 : X13
    v219 = SEQZ <bool> v409 : X13
    BNE v219 -> b73 b17 (likely)
  b73: <- b69
    v229 = MOVBUload <uint8> [1] v170 v127 : X13
    v412 = MOVBconst <byte> [102] : X15
    v355 = SUB <byte> v412 v229 : X13
    v500 = SLLI <uint64> [56] v355 : X13
    v494 = SRLI <uint64> [56] v500 : X13
    v231 = SEQZ <bool> v494 : X13
    BNE v231 -> b77 b81 (likely)
  b77: <- b73
    v241 = MOVBUload <uint8> [2] v170 v127 : X13
    v235 = SUB <byte> v412 v241 : X13
    v480 = SLLI <uint64> [56] v235 : X13
    v237 = SRLI <uint64> [56] v480 : X13
    v242 = SEQZ <bool> v237 : X13
    BNE v242 -> b80 b81 (likely)
  b80: <- b77
    v327 = MOVBconst <byte> [111] : X13
    v325 = MOVBconst <byte> [110] : X14
    v619 = MOVBconst <bool> [0] : X6
    Plain -> b49
  b17: <- b69
    v302 = MOVBconst <byte> [102] : X15
    Plain -> b81
  b59: <- b52
    v291 = MOVBconst <byte> [111] : X14
    v282 = MOVBconst <byte> [102] : X15
    Plain -> b81
  b42: <- b38
    v131 = CALLstatic <mem> {runtime.printlock} v127
    v403 = MOVaddr <*uint8> {go.string."GODEBUG: no value specified for \""} v3 : X3
    v180 = MOVDstore <mem> [8] v2 v403 v131
    v386 = MOVDconst <int> [33] : X5
    v133 = MOVDstore <mem> [16] v2 v386 v180
    v134 = CALLstatic <mem> {runtime.printstring} [16] v133
    v381 = LoadReg <*uint8> v533 : X3
    v178 = MOVDstore <mem> [8] v2 v381 v134
    v399 = LoadReg <int> v419 : X3
    v136 = MOVDstore <mem> [16] v2 v399 v178
    v137 = CALLstatic <mem> {runtime.printstring} [16] v136
    v373 = MOVaddr <*uint8> {go.string."\"\n"} v3 : X3
    v162 = MOVDstore <mem> [8] v2 v373 v137
    v368 = MOVDconst <int> [2] : X5
    v139 = MOVDstore <mem> [16] v2 v368 v162
    v140 = CALLstatic <mem> {runtime.printstring} [16] v139
    v141 = CALLstatic <mem> {runtime.printunlock} v140
    v185 = LoadReg <*uint8> v405 : X3
    v167 = MOVDconst <int> [0] : X5
    v75 = LoadReg <int> v68 : X6
    v46 = MOVDconst <int> [4] : X8
    Plain -> b5
  b9: <- b4
    v364 = LoadReg <int> v484 : X6
    v50 = SLTU <bool> v364 v21 : X7
    v28 = XORI <bool> [1] v50 : X7
    BNE v28 -> b12 b11 (likely)
  b12: <- b9
    v38 = ADDI <int> [1] v21 : X7
    v511 = SLTU <bool> v364 v38 : X8
    v42 = XORI <bool> [1] v511 : X8
    BNE v42 -> b14 b15 (likely)
  b14: <- b12
    v45 = SUB <int> v364 v38 : X6 (env+8[int])
    v332 = MOVDconst <uint64> [1] : X8
    v31 = SUB <int> v45 v332 : X8
    v328 = MOVDconst <uint64> [63] : X9
    v414 = SRA <int> v31 v328 : X8
    v342 = MOVDconst <uint64> [-1] : X9
    v47 = XOR <int> v414 v342 : X8
    v48 = AND <int> v47 v38 : X8
    v318 = LoadReg <*uint8> v533 : X9
    v49 = ADD <*uint8> v318 v48 : X8 (env[*uint8])
    v487 = Copy <int> v21 : X7
    v471 = Copy <*uint8> v49 : X3
    Plain -> b7
  b6: <- b3
    v226 = MOVDload <int> {"".options} [8] v3 v602 : X3
    v234 = MOVDload <*option> {"".options} v3 v602 : X5
    v442 = SLT <bool> v497 v226 : X6
    BNE v442 -> b122 b121 (likely)
  b122: <- b6
    v57 = StoreReg <int> v226 : .autotmp_33[int]
    v286 = MOVDconst <int> [0] : X6
    Plain -> b124
  b123: <- b125
    v527 = ADDI <*option> [32] v443 : X5
    Plain -> b124
  b124: <- b122 b123
    v443 = Phi <*option> v234 v527 : X5
    v444 = Phi <mem> v602 v536
    v449 = Phi <int> v286 v519 : X6
    v446 = VarDef <mem> {.autotmp_23} v444
    v61 = ADDI <*option> [24] v443 : X7
    v448 = LoweredMove <mem> [8] v447 v443 v61 v446
    v451 = VarDef <mem> {o} v448
    v346 = MOVaddr <*option> {.autotmp_23} [24] v2 : X7
    v453 = LoweredMove <mem> [8] v452 v447 v346 v451
    v456 = MOVBUload <bool> {o} [24] v2 v453 : X7
    BNE v456 -> b127 b125
  b127: <- b124
    v74 = StoreReg <*option> v443 : .autotmp_36[*option]
    v280 = StoreReg <int> v449 : .autotmp_34[int]
    v460 = MOVBUload <bool> {o} [25] v2 v453 : X7
    BNE v460 -> b129 b131
  b129: <- b127
    v464 = MOVDload <*bool> {o} [16] v2 v453 : X8
    v466 = MOVBUload <bool> v464 v453 : X8
    BNE v466 -> b131 b132 (likely)
  b131: <- b129 b127
    BNE v460 -> b136 b134
  b136: <- b134 b131
    v515 = MOVDload <*bool> {o} [16] v2 v453 : X8
    v517 = MOVBstore <mem> v515 v460 v453
    Plain -> b125
  b125: <- b124 b132 b137 b136
    v536 = Phi <mem> v453 v483 v508 v517
    v519 = ADDI <int> [1] v449 : X6
    v521 = SLT <bool> v519 v226 : X7
    BNE v521 -> b123 b121 (likely)
  b121: <- b6 b125
    v528 = Phi <mem> v602 v536
    Ret v528
  b134: <- b131
    v492 = MOVBUload <bool> {o} [26] v2 v453 : X8
    BNE v492 -> b137 b136 (unlikely)
  b137: <- b134
    v80 = MOVDload <int> {o} [8] v2 v453 : X3
    v215 = StoreReg <int> v80 : .autotmp_35[int]
    v489 = MOVDload <*uint8> {o} v2 v453 : X5
    v306 = StoreReg <*uint8> v489 : .autotmp_32[*uint8]
    v499 = CALLstatic <mem> {runtime.printlock} v453
    v314 = MOVaddr <*uint8> {go.string."GODEBUG: can not disable \""} v3 : X3
    v232 = MOVDstore <mem> [8] v2 v314 v499
    v272 = MOVDconst <int> [26] : X5
    v501 = MOVDstore <mem> [16] v2 v272 v232
    v502 = CALLstatic <mem> {runtime.printstring} [16] v501
    v356 = LoadReg <*uint8> v306 : X3
    v468 = MOVDstore <mem> [8] v2 v356 v502
    v184 = LoadReg <int> v215 : X3
    v503 = MOVDstore <mem> [16] v2 v184 v468
    v504 = CALLstatic <mem> {runtime.printstring} [16] v503
    v265 = MOVaddr <*uint8> {go.string."\", required CPU feature\n"} v3 : X3
    v216 = MOVDstore <mem> [8] v2 v265 v504
    v174 = MOVDconst <int> [24] : X5
    v506 = MOVDstore <mem> [16] v2 v174 v216
    v507 = CALLstatic <mem> {runtime.printstring} [16] v506
    v508 = CALLstatic <mem> {runtime.printunlock} v507
    v543 = LoadReg <int> v57 : X3
    v279 = LoadReg <*option> v74 : X5
    v270 = LoadReg <int> v280 : X6
    Plain -> b125
  b132: <- b129
    v522 = MOVDload <*uint8> {o} v2 v453 : X3
    v389 = StoreReg <*uint8> v522 : .autotmp_32[*uint8]
    v531 = MOVDload <int> {o} [8] v2 v453 : X5
    v462 = StoreReg <int> v531 : .autotmp_35[int]
    v474 = CALLstatic <mem> {runtime.printlock} v453
    v284 = MOVaddr <*uint8> {go.string."GODEBUG: can not enable \""} v3 : X3
    v538 = MOVDstore <mem> [8] v2 v284 v474
    v376 = MOVDconst <int> [25] : X5
    v476 = MOVDstore <mem> [16] v2 v376 v538
    v477 = CALLstatic <mem> {runtime.printstring} [16] v476
    v26 = LoadReg <*uint8> v389 : X3
    v470 = MOVDstore <mem> [8] v2 v26 v477
    v485 = LoadReg <int> v462 : X3
    v478 = MOVDstore <mem> [16] v2 v485 v470
    v479 = CALLstatic <mem> {runtime.printstring} [16] v478
    v486 = MOVaddr <*uint8> {go.string."\", missing CPU support\n"} v3 : X3
    v539 = MOVDstore <mem> [8] v2 v486 v479
    v53 = MOVDconst <int> [23] : X5
    v481 = MOVDstore <mem> [16] v2 v53 v539
    v482 = CALLstatic <mem> {runtime.printstring} [16] v481
    v483 = CALLstatic <mem> {runtime.printunlock} v482
    v611 = LoadReg <int> v57 : X3
    v560 = LoadReg <*option> v74 : X5
    v549 = LoadReg <int> v280 : X6
    Plain -> b125
  b120: <- b117
    v415 = LoweredPanicBoundsC <mem> [0] v357 v33 v407
    Exit v415
  b118: <- b115
    v402 = LoweredPanicBoundsC <mem> [0] v357 v64 v392
    Exit v402
  b113: <- b109
    v367 = LoweredPanicBoundsC <mem> [0] v357 v408 v551
    Exit v367
  b107: <- b102
    v345 = LoweredPanicBoundsC <mem> [0] v307 v374 v322
    Exit v345
  b105: <- b103
    v331 = LoweredPanicBoundsC <mem> [0] v307 v398 v322
    Exit v331
  b101: <- b97
    v317 = LoweredPanicBoundsC <mem> [0] v307 v138 v558
    Exit v317
  b48: <- b45
    v165 = LoweredPanicBoundsC <mem> [6] v159 v458 v127
    Exit v165
  b46: <- b43
    v151 = LoweredPanicBoundsC <mem> [6] v54 v128 v127
    Exit v151
  b44: <- b41
    v148 = LoweredPanicBoundsB <mem> [2] v128 v458 v127
    Exit v148
  b15: <- b12
    v44 = LoweredPanicBoundsC <mem> [6] v38 v490 v19
    Exit v44
  b11: <- b9
    v30 = LoweredPanicBoundsB <mem> [2] v21 v490 v19
    Exit v30
name env[*uint8]: [v495 v510 v493 v49 v385]
name env+8[int]: [v509 v490 v8 v45 v411]
name field.ptr[*uint8]: [v493 v510]
name field.len[int]: [v8 v490 v21 v458]
name i[int]: [v21 v128]
name key.ptr[*uint8]: [v156]
name key.len[int]: [v152]
name value.ptr[*uint8]: [v170]
name value.len[int]: [v166]
name enable[bool]: [v173 v245 v545]
name i[int]: [v307]
name i[int]: [v357]



goroutine 35 [running]:
runtime/debug.Stack(0x10128a0, 0xc00009e008, 0x0)
    /home/carlosedp/riscv-go/src/runtime/debug/stack.go:24 +0x9d
cmd/compile/internal/gc.Fatalf(0xc00001c8a0, 0x24, 0xc0003b8e10, 0x3, 0x3)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/subr.go:193 +0x291
cmd/compile/internal/gc.(*ssafn).Fatalf(0xc000572000, 0xd90e200000002, 0xe6565b, 0x1e, 0xc0003cd440, 0x2, 0x2)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/ssa.go:6808 +0x1b0
cmd/compile/internal/ssa.(*Value).Fatalf(...)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/ssa/value.go:308
cmd/compile/internal/ssa.(*Value).Reg(0xc00042db98, 0xc0004238ef)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/ssa/value.go:320 +0x178
cmd/compile/internal/riscv64.ssaGenValue(0xc000341440, 0xc00042dc08)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/riscv64/ssa.go:391 +0xf9f
cmd/compile/internal/gc.genssa(0xc000574000, 0xc000304540)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/ssa.go:6022 +0x69b
cmd/compile/internal/gc.compileSSA(0xc0000102c0, 0x1)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/pgen.go:308 +0x3a5
cmd/compile/internal/gc.compileFunctions.func2(0xc000385980, 0xc000386470, 0x1)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/pgen.go:363 +0x49
created by cmd/compile/internal/gc.compileFunctions
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/pgen.go:361 +0x128

# github.com/onsi/gomega/matchers/support/goraph/edge
vendor/github.com/onsi/gomega/matchers/support/goraph/edge/edge.go:43:24: internal compiler error: 'EdgeSet.SymmetricDifference': nil register for value: v11 = MOVaddr <*map.hdr[Edge]bool> {.autotmp_15} v2
EdgeSet.SymmetricDifference method(EdgeSet) func(EdgeSet) EdgeSet
  b1:
    v164 = Arg <int> {ec} [8] : ec+8[int] (ec+8[int])
    v182 = Arg <*Edge> {ec} : ec[*Edge] (ec[*Edge])
    v196 = Arg <int> {ec2} [8] : ec2+8[int] (ec2+8[int])
    v198 = Arg <*Edge> {ec2} : ec2[*Edge] (ec2[*Edge])
    v1 = InitMem <mem>
    v10 = VarDef <mem> {.autotmp_15} v1
    v2 = SP <uintptr> : SP
    v16 = MOVaddr <*map.hdr[Edge]bool> {.autotmp_15} [40] v2 : X3
    v12 = LoweredZero <mem> [8] v11 v16 v10
    v13 = VarDef <mem> {.autotmp_16} v12
    v231 = MOVaddr <*map.bucket[Edge]bool> {.autotmp_16} [144] v2 : X3
    v15 = LoweredZero <mem> [8] v14 v231 v13
    v229 = MOVaddr <*map.bucket[Edge]bool> {.autotmp_16} v2 : X3
    v20 = MOVDstore <mem> {.autotmp_15} [16] v2 v229 v15
    v22 = CALLstatic <mem> {runtime.fastrand} [8] v20
    v24 = MOVWUload <uint32> [8] v2 v22 : X3
    v27 = MOVWstore <mem> {.autotmp_15} [12] v2 v24 v22
    v3 = SB <uintptr> : SB
    v71 = MOVDconst <int> [0] : X3
    v29 = LoadReg <int> v164 : X5
    v35 = SLT <bool> v71 v29 : X6
    BNE v35 -> b3 b2
  b3: <- b1
    v44 = LoadReg <*Edge> v182 : X6
    v23 = MOVDconst <int> [0] : X7
    Plain -> b6
  b4: <- b6
    v86 = LoadReg <*Edge> v224 : X8
    v70 = ADDI <*Edge> [16] v86 : X8
    v220 = Copy <*Edge> v70 : X6
    v215 = Copy <int> v62 : X7
    Plain -> b6
  b6: <- b3 b4
    v36 = Phi <*Edge> v44 v220 : X6
    v37 = Phi <mem> v27 v59
    v40 = Phi <int> v23 v215 : X7
    v224 = StoreReg <*Edge> v36 : .autotmp_46[*Edge]
    v141 = StoreReg <int> v40 : .autotmp_47[int]
    v216 = MOVDload <int> [8] v36 v37 : X3
    v214 = MOVDload <int> v36 v37 : X5
    v41 = VarDef <mem> {.autotmp_10} v37
    v114 = MOVDstore <mem> {.autotmp_10} v2 v214 v41
    v43 = MOVDstore <mem> {.autotmp_10} [8] v2 v216 v114
    v228 = MOVaddr <*uint8> {type.map["".Edge]bool} v3 : X3
    v46 = MOVDstore <mem> [8] v2 v228 v43
    v226 = MOVaddr <*map.hdr[Edge]bool> {.autotmp_15} v2 : X5
    v49 = MOVDstore <mem> [16] v2 v226 v46
    v148 = MOVaddr <*Edge> {.autotmp_10} v2 : X8
    v52 = MOVDstore <mem> [24] v2 v148 v49
    v53 = CALLstatic <mem> {runtime.mapassign} [32] v52
    v55 = MOVDload <*bool> [32] v2 v53 : X3
    v142 = MOVBconst <bool> [1] : X5
    v58 = MOVBstore <mem> v55 v142 v53
    v59 = VarKill <mem> {.autotmp_10} v58
    v192 = LoadReg <int> v141 : X3
    v62 = ADDI <int> [1] v192 : X3
    v234 = LoadReg <int> v164 : X6
    v64 = SLT <bool> v62 v234 : X7
    BNE v64 -> b4 b2 (likely)
  b2: <- b1 b6
    v207 = Phi <mem> v27 v59
    v233 = MOVDconst <int> [0] : X3
    v223 = LoadReg <int> v196 : X5
    v76 = SLT <bool> v233 v223 : X3
    BNE v76 -> b9 b14
  b9: <- b2
    v160 = LoadReg <*Edge> v198 : X3
    v159 = MOVDconst <int> [0] : X6
    Plain -> b12
  b10: <- b12
    v6 = LoadReg <*Edge> v17 : X7
    v117 = ADDI <*Edge> [16] v6 : X7
    v158 = Copy <int> v110 : X6
    v147 = Copy <*Edge> v117 : X3
    Plain -> b12
  b12: <- b9 b10
    v77 = Phi <*Edge> v160 v147 : X3
    v78 = Phi <mem> v207 v108
    v81 = Phi <int> v159 v158 : X6
    v17 = StoreReg <*Edge> v77 : .autotmp_48[*Edge]
    v26 = StoreReg <int> v81 : .autotmp_47[int]
    v221 = MOVDload <int> [8] v77 v78 : X5
    v219 = MOVDload <int> v77 v78 : X7
    v82 = VarDef <mem> {.autotmp_10} v78
    v208 = MOVDstore <mem> {.autotmp_10} v2 v219 v82
    v84 = MOVDstore <mem> {.autotmp_10} [8] v2 v221 v208
    v85 = VarDef <mem> {.autotmp_11} v84
    v65 = MOVDstore <mem> {.autotmp_11} v2 v219 v85
    v87 = MOVDstore <mem> {.autotmp_11} [8] v2 v221 v65
    v83 = MOVaddr <*uint8> {type.map["".Edge]bool} v3 : X5
    v89 = MOVDstore <mem> [8] v2 v83 v87
    v222 = MOVaddr <*map.hdr[Edge]bool> {.autotmp_15} v2 : X7
    v91 = MOVDstore <mem> [16] v2 v222 v89
    v232 = MOVaddr <*Edge> {.autotmp_11} v2 : X8
    v93 = MOVDstore <mem> [24] v2 v232 v91
    v94 = CALLstatic <mem> {runtime.mapaccess1} [32] v93
    v95 = MOVDload <*bool> [32] v2 v94 : X3
    v96 = MOVBUload <bool> v95 v94 : X3
    v126 = StoreReg <bool> v96 : .autotmp_49[bool]
    v218 = MOVaddr <*uint8> {type.map["".Edge]bool} v3 : X5
    v99 = MOVDstore <mem> [8] v2 v218 v94
    v42 = MOVaddr <*map.hdr[Edge]bool> {.autotmp_15} v2 : X6
    v100 = MOVDstore <mem> [16] v2 v42 v99
    v217 = MOVaddr <*Edge> {.autotmp_10} v2 : X7
    v102 = MOVDstore <mem> [24] v2 v217 v100
    v103 = CALLstatic <mem> {runtime.mapassign} [32] v102
    v104 = MOVDload <*bool> [32] v2 v103 : X3
    v202 = LoadReg <bool> v126 : X5
    v97 = XORI <bool> [1] v202 : X5
    v106 = MOVBstore <mem> v104 v97 v103
    v107 = VarKill <mem> {.autotmp_11} v106
    v108 = VarKill <mem> {.autotmp_10} v107
    v21 = LoadReg <int> v26 : X3
    v110 = ADDI <int> [1] v21 : X3
    v19 = LoadReg <int> v196 : X5
    v112 = SLT <bool> v110 v19 : X6
    BNE v112 -> b10 b14 (likely)
  b14: <- b2 b12
    v119 = Phi <mem> v207 v108
    v130 = VarDef <mem> {.autotmp_14} v119
    v191 = MOVaddr <*map.iter[Edge]bool> {.autotmp_14} [88] v2 : X3
    v132 = LoweredZero <mem> [8] v131 v191 v130
    v179 = MOVaddr <*uint8> {type.map["".Edge]bool} v3 : X3
    v134 = MOVDstore <mem> [8] v2 v179 v132
    v177 = MOVaddr <*map.hdr[Edge]bool> {.autotmp_15} v2 : X3
    v135 = MOVDstore <mem> [16] v2 v177 v134
    v175 = MOVaddr <*map.iter[Edge]bool> {.autotmp_14} v2 : X3
    v138 = MOVDstore <mem> [24] v2 v175 v135
    v139 = CALLstatic <mem> {runtime.mapiterinit} [24] v138
    v152 = MOVaddr <*[0]Edge> {runtime.zerobase} v3 : X3
    v153 = MOVDconst <int> [0] : X5
    v210 = MOVDconst <int> [0] : X6
    Plain -> b16
  b18: <- b20 b23
    v203 = Phi <mem> v140 v189
    v88 = Phi <int> v120 v185 : X5 (result.cap[int])
    v98 = Phi <int> v31 v184 : X9 (result.len[int])
    v133 = Phi <*uint8> v79 v183 : X3 (result.ptr[*Edge])
    v136 = StoreReg <int> v88 : result.cap[int]
    v166 = StoreReg <int> v98 : result.len[int]
    v68 = StoreReg <*uint8> v133 : .autotmp_50[*uint8]
    v168 = MOVaddr <*map.iter[Edge]bool> {.autotmp_14} v2 : X6
    v194 = MOVDstore <mem> [8] v2 v168 v203
    v195 = CALLstatic <mem> {runtime.mapiternext} [8] v194
    v211 = LoadReg <*uint8> v68 : X3
    v213 = LoadReg <int> v136 : X5
    v154 = LoadReg <int> v166 : X6
    Plain -> b16
  b16: <- b14 b18
    v140 = Phi <mem> v139 v195
    v79 = Phi <*uint8> v152 v211 : X3 (result.ptr[*Edge])
    v120 = Phi <int> v153 v213 : X5 (result.cap[int])
    v155 = Phi <int> v210 v154 : X6 (result.len[int])
    v143 = MOVDload <*Edge> {.autotmp_14} v2 v140 : X7
    v172 = MOVDconst <uint64> [0] : X8
    v5 = SUB <uint64> v172 v143 : X9
    v145 = SNEZ <bool> v5 : X9
    BNE v145 -> b17 b19 (likely)
  b17: <- b16
    v149 = MOVDload <*bool> {.autotmp_14} [8] v2 v140 : X9
    v225 = MOVDload <int> v143 v140 : X10
    v227 = MOVDload <int> [8] v143 v140 : X7
    v151 = MOVBUload <bool> v149 v140 : X9 (include[bool])
    BNE v151 -> b21 b20
  b21: <- b17
    v161 = ADDI <int> [1] v155 : X9
    v162 = SLTU <bool> v120 v161 : X11
    BNE v162 -> b22 b23 (unlikely)
  b23: <- b21 b22
    v183 = Phi <*Edge> v79 v176 : X3 (result.ptr[*Edge])
    v184 = Phi <int> v161 v181 : X9 (result.len[int])
    v185 = Phi <int> v120 v72 : X5 (result.cap[int])
    v188 = Phi <mem> v140 v174
    v170 = MOVDconst <uint64> [4] : X11
    v187 = SLTIU <int> [64] v170 : X12
    v7 = SUB <int> v172 v187 : X8
    v8 = SLL <int> v155 v170 : X6
    v9 = AND <int> v8 v7 : X6
    v186 = ADD <*Edge> v183 v9 : X6
    v212 = MOVDstore <mem> v186 v225 v188
    v189 = MOVDstore <mem> [8] v186 v227 v212
    Plain -> b18
  b22: <- b21
    v54 = StoreReg <int> v155 : .autotmp_51[int]
    v50 = StoreReg <int> v225 : .autotmp_47[int]
    v47 = StoreReg <int> v227 : .autotmp_52[int]
    v61 = MOVaddr <*uint8> {type."".Edge} v3 : X7
    v165 = MOVDstore <mem> [8] v2 v61 v140
    v167 = MOVDstore <mem> [16] v2 v79 v165
    v169 = MOVDstore <mem> [24] v2 v155 v167
    v171 = MOVDstore <mem> [32] v2 v120 v169
    v173 = MOVDstore <mem> [40] v2 v161 v171
    v174 = CALLstatic <mem> {runtime.growslice} [72] v173
    v176 = MOVDload <*Edge> [48] v2 v174 : X3
    v178 = MOVDload <int> [56] v2 v174 : X5
    v180 = MOVDload <int> [64] v2 v174 : X6
    v181 = ADDI <int> [1] v178 : X9
    v18 = LoadReg <int> v47 : X7
    v25 = MOVDconst <uint64> [0] : X8
    v74 = LoadReg <int> v50 : X10
    v72 = Copy <int> v180 : X5
    v33 = LoadReg <int> v54 : X6
    Plain -> b23
  b20: <- b17
    v31 = Copy <int> v155 : X9
    Plain -> b18
  b19: <- b16
    v197 = VarKill <mem> {.autotmp_14} v140
    v199 = VarDef <mem> {~r1} v197
    v73 = MOVDstore <mem> {~r1} v2 v79 v199
    v32 = MOVDstore <mem> {~r1} [8] v2 v155 v73
    v200 = MOVDstore <mem> {~r1} [16] v2 v120 v32
    Ret v200
name ec[*Edge]: [v182]
name ec+8[int]: [v164]
name ec2[*Edge]: [v198]
name ec2+8[int]: [v196]
name result.ptr[*Edge]: [v118 v79 v183 v133]
name result.len[int]: [v30 v155 v184 v98]
name result.cap[int]: [v30 v120 v185 v88]
name include[bool]: [v151]



goroutine 9 [running]:
runtime/debug.Stack(0x10128a0, 0xc0000a0008, 0x0)
    /home/carlosedp/riscv-go/src/runtime/debug/stack.go:24 +0x9d
cmd/compile/internal/gc.Fatalf(0xc00001c4e0, 0x24, 0xc000027890, 0x3, 0x3)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/subr.go:193 +0x291
cmd/compile/internal/gc.(*ssafn).Fatalf(0xc000026240, 0x2b18200000002, 0xe6565b, 0x1e, 0xc00000d7a0, 0x2, 0x2)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/ssa.go:6808 +0x1b0
cmd/compile/internal/ssa.(*Value).Fatalf(...)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/ssa/value.go:308
cmd/compile/internal/ssa.(*Value).Reg(0xc000476ce8, 0xe438ef)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/ssa/value.go:320 +0x178
cmd/compile/internal/riscv64.ssaGenValue(0xc00053b3b0, 0xc000476d58)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/riscv64/ssa.go:357 +0xca3
cmd/compile/internal/gc.genssa(0xc0002cef20, 0xc00005ae00)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/ssa.go:6022 +0x69b
cmd/compile/internal/gc.compileSSA(0xc0002ce6e0, 0x3)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/pgen.go:308 +0x3a5
cmd/compile/internal/gc.compileFunctions.func2(0xc00053f440, 0xc0000173a0, 0x3)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/pgen.go:363 +0x49
created by cmd/compile/internal/gc.compileFunctions
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/pgen.go:361 +0x128

# golang.org/x/crypto/salsa20/salsa
vendor/golang.org/x/crypto/salsa20/salsa/salsa20_ref.go:206:6: internal compiler error: 'genericXORKeyStream': nil register for value: v13 = MOVaddr <*[64]byte> {block} v2
genericXORKeyStream func([]byte, []byte, *[16]byte, *[32]byte)
  b6:
    v10 = Arg <*[16]byte> {counter} : counter[*[16]byte] (counter[*[16]byte])
    v11 = Arg <*[32]byte> {key} : key[*[32]byte] (key[*[32]byte])
    v217 = Arg <int> {out} [16] : out+16[int] (out+16[int])
    v220 = Arg <int> {in} [16] : in+16[int] (in+16[int])
    v223 = Arg <int> {in} [8] : in+8[int] (in+8[int])
    v224 = Arg <*byte> {in} : in[*byte] (in[*byte])
    v227 = Arg <*byte> {out} : out[*byte] (out[*byte])
    v231 = Arg <int> {out} [8] : out+8[int] (out+8[int])
    v1 = InitMem <mem>
    v12 = VarDef <mem> {block} v1
    v2 = SP <uintptr> : SP
    v19 = MOVaddr <*[64]byte> {block} [63] v2 : X3
    v14 = LoweredZero <mem> [1] v13 v19 v12
    v15 = VarDef <mem> {counterCopy} v14
    v82 = MOVaddr <*[16]byte> {counterCopy} [15] v2 : X5
    v17 = LoweredZero <mem> [1] v16 v82 v15
    v73 = LoadReg <*[16]byte> v10 : X5
    v30 = LoweredNilCheck <void> v73 v17
    v70 = MOVaddr <*[16]byte> {counterCopy} v2 : X6
    v173 = SUB <*[16]byte> v70 v73 : X7
    v47 = SNEZ <bool> v173 : X7
    BNE v47 -> b9 b8 (likely)
  b9: <- b6
    v54 = MOVDstore <mem> [8] v2 v70 v17
    v58 = MOVDstore <mem> [16] v2 v73 v54
    v98 = MOVDconst <int> [16] : X3
    v62 = MOVDstore <mem> [24] v2 v98 v58
    v63 = CALLstatic <mem> {runtime.memmove} [24] v62
    Plain -> b8
  b8: <- b6 b9
    v255 = Phi <mem> v17 v63
    v3 = SB <uintptr> : SB
    v44 = LoadReg <int> v220 : X3
    v162 = LoadReg <int> v223 : X5
    v180 = LoadReg <*byte> v224 : X6
    v174 = LoadReg <int> v217 : X7
    v165 = LoadReg <int> v231 : X8
    v178 = LoadReg <*byte> v227 : X9
    Plain -> b10
  b16: <- b18
    v124 = ADDI <*byte> [1] v89 : X8
    Plain -> b20
  b20: <- b15 b16
    v89 = Phi <*byte> v204 v124 : X8
    v90 = Phi <mem> v85 v114
    v93 = Phi <int> v237 v117 : X9 (i[int])
    v92 = MOVBUload <byte> v89 v90 : X10 (x[byte])
    v100 = ADD <*byte> v68 v93 : X11
    v102 = MOVBUload <byte> v100 v90 : X11
    v104 = XOR <byte> v102 v92 : X10
    v108 = SLTU <bool> v93 v116 : X11
    BNE v108 -> b18 b23 (likely)
  b18: <- b20
    v112 = ADD <*byte> v75 v93 : X11
    v114 = MOVBstore <mem> v112 v104 v90
    v117 = ADDI <int> [1] v93 : X9
    v50 = MOVDconst <int> [64] : X10
    v119 = SLT <bool> v117 v50 : X11
    BNE v119 -> b16 b14 (likely)
  b14: <- b18
    v126 = VarKill <mem> {.autotmp_15} v114
    v123 = MOVDconst <int> [8] : X8
    v122 = MOVWconst <uint32> [1] : X9
    Plain -> b24
  b26: <- b24
    v95 = MOVaddr <*[16]byte> {counterCopy} v2 : X12
    v138 = ADD <*byte> v129 v95 : X13
    v140 = MOVBUload <byte> v138 v256 : X14
    v91 = SLLI <uint32> [56] v140 : X14
    v141 = SRLI <uint32> [56] v91 : X14
    v142 = ADD <uint32> v263 v141 : X14 (u[uint32])
    v151 = MOVBstore <mem> v138 v142 v256
    v156 = ADDI <int> [1] v129 : X8 (i[int])
    v225 = SLLI <uint64> [32] v142 : X13
    v190 = SRLI <uint64> [32] v225 : X13
    v149 = MOVDconst <uint> [8] : X14
    v96 = SRL <uint32> v190 v149 : X13
    v64 = SLTIU <uint32> [64] v149 : X15
    v158 = MOVWconst <uint32> [0] : X16
    v244 = SUB <uint32> v158 v64 : X15
    v154 = AND <uint32> v96 v244 : X9 (u[uint32])
    Plain -> b24
  b24: <- b14 b26
    v129 = Phi <int> v123 v156 : X8 (i[int])
    v263 = Phi <uint32> v122 v154 : X9 (u[uint32])
    v256 = Phi <mem> v126 v151
    v143 = MOVDconst <int> [16] : X11
    v130 = SLT <bool> v129 v143 : X12
    BNE v130 -> b26 b36 (likely)
  b36: <- b24
    v177 = LoadReg <int> v59 : X8
    v168 = ADDI <int> [-64] v177 : X8 (in+16[int])
    v160 = MOVDconst <uint64> [1] : X9
    v212 = SUB <int> v168 v160 : X12
    v107 = MOVDconst <uint64> [63] : X13
    v27 = SRA <int> v212 v107 : X12
    v99 = MOVDconst <uint64> [-1] : X14
    v170 = XOR <int> v27 v99 : X12
    v171 = AND <int> v170 v50 : X12
    v172 = ADD <*byte> v68 v171 : X7 (in[*byte])
    v207 = SLTU <bool> v116 v50 : X12
    v181 = XORI <bool> [1] v207 : X12
    BNE v181 -> b12 b39 (likely)
  b12: <- b36
    v111 = LoadReg <int> v55 : X12
    v167 = ADDI <int> [-64] v111 : X12 (in+8[int])
    v147 = LoadReg <int> v60 : X15
    v185 = ADDI <int> [-64] v147 : X15 (out+16[int])
    v137 = SUB <int> v185 v160 : X16
    v148 = SRA <int> v137 v107 : X13
    v187 = XOR <int> v148 v99 : X13
    v188 = AND <int> v187 v50 : X13
    v189 = ADD <*byte> v75 v188 : X9 (out[*byte])
    v184 = ADDI <int> [-64] v116 : X13 (out+8[int])
    v169 = Copy <int> v168 : X3
    v163 = Copy <int> v167 : X5
    v179 = Copy <*byte> v172 : X6
    v161 = Copy <int> v185 : X7
    v194 = Copy <int> v184 : X8
    Plain -> b10
  b10: <- b8 b12
    v175 = Phi <int> v44 v169 : X3 (in+16[int])
    v176 = Phi <int> v162 v163 : X5 (in+8[int])
    v205 = Phi <*uint8> v180 v179 : X6 (in[*byte])
    v254 = Phi <mem> v255 v256
    v52 = Phi <int> v174 v161 : X7 (out+16[int])
    v57 = Phi <int> v165 v194 : X8 (out+8[int])
    v192 = Phi <*uint8> v178 v189 : X9 (out[*byte])
    v247 = StoreReg <int> v57 : out+8[int]
    v55 = StoreReg <int> v176 : in+8[int]
    v78 = StoreReg <*uint8> v192 : out[*byte]
    v72 = StoreReg <*uint8> v205 : in[*byte]
    v135 = MOVDconst <int> [64] : X10
    v166 = SLT <bool> v176 v135 : X11
    v67 = XORI <bool> [1] v166 : X11
    BNE v67 -> b15 b13 (likely)
  b15: <- b10
    v60 = StoreReg <int> v52 : out+16[int]
    v59 = StoreReg <int> v175 : in+16[int]
    v164 = MOVaddr <*[64]byte> {block} v2 : X3
    v71 = MOVDstore <mem> [8] v2 v164 v254
    v18 = MOVaddr <*[16]byte> {counterCopy} v2 : X5
    v74 = MOVDstore <mem> [16] v2 v18 v71
    v86 = LoadReg <*[32]byte> v11 : X6
    v77 = MOVDstore <mem> [24] v2 v86 v74
    v209 = MOVaddr <*[16]byte> {"".Sigma} v3 : X7
    v80 = MOVDstore <mem> [32] v2 v209 v77
    v81 = CALLstatic <mem> {"".core} [32] v80
    v83 = VarDef <mem> {.autotmp_15} v81
    v216 = MOVaddr <*[64]byte> {block} [63] v2 : X3
    v85 = LoweredMove <mem> [1] v84 v13 v216 v83
    v116 = LoadReg <int> v247 : X5
    v75 = LoadReg <*uint8> v78 : X6
    v68 = LoadReg <*uint8> v72 : X7
    v204 = MOVaddr <*byte> {.autotmp_15} v2 : X8
    v237 = MOVDconst <int> [0] : X9
    Plain -> b20
  b13: <- b10
    v239 = MOVDconst <int> [0] : X3
    v193 = SLT <bool> v239 v176 : X3
    BNE v193 -> b44 b40 (likely)
  b44: <- b13
    v240 = MOVaddr <*[64]byte> {block} v2 : X3
    v196 = MOVDstore <mem> [8] v2 v240 v254
    v65 = MOVaddr <*[16]byte> {counterCopy} v2 : X5
    v198 = MOVDstore <mem> [16] v2 v65 v196
    v150 = LoadReg <*[32]byte> v11 : X5
    v200 = MOVDstore <mem> [24] v2 v150 v198
    v145 = MOVaddr <*[16]byte> {"".Sigma} v3 : X5
    v202 = MOVDstore <mem> [32] v2 v145 v200
    v203 = CALLstatic <mem> {"".core} [32] v202
    v201 = LoadReg <*uint8> v78 : X3
    v159 = LoadReg <int> v55 : X5
    v144 = LoadReg <int> v247 : X6
    v146 = LoadReg <*uint8> v72 : X7
    v125 = MOVDconst <int> [0] : X8
    Plain -> b49
  b45: <- b47
    v241 = ADDI <*byte> [1] v210 : X7
    Plain -> b49
  b49: <- b44 b45
    v210 = Phi <*byte> v146 v241 : X7
    v211 = Phi <mem> v203 v232
    v214 = Phi <int> v125 v234 : X8 (i[int])
    v213 = MOVBUload <byte> v210 v211 : X9 (v[byte])
    v46 = MOVaddr <*[64]byte> {block} v2 : X10
    v219 = ADD <*byte> v214 v46 : X11
    v221 = MOVBUload <byte> v219 v211 : X11
    v222 = XOR <byte> v221 v213 : X9
    v226 = SLTU <bool> v214 v144 : X11
    BNE v226 -> b47 b52 (likely)
  b47: <- b49
    v230 = ADD <*byte> v214 v201 : X11
    v232 = MOVBstore <mem> v230 v222 v211
    v234 = ADDI <int> [1] v214 : X8
    v236 = SLT <bool> v234 v159 : X9
    BNE v236 -> b45 b40 (likely)
  b40: <- b47 b13
    v242 = Phi <mem> v232 v254
    Ret v242
  b52: <- b49
    v228 = LoweredPanicBoundsC <mem> [0] v214 v57 v211
    Exit v228
  b39: <- b36
    v183 = LoweredPanicBoundsC <mem> [6] v66 v57 v256
    Exit v183
  b23: <- b20
    v110 = LoweredPanicBoundsC <mem> [0] v93 v57 v90
    Exit v110
name out[*byte]: [v227 v192 v189]
name out+8[int]: [v231 v57 v184]
name out+16[int]: [v217 v52 v185]
name in[*byte]: [v224 v205 v172]
name in+8[int]: [v223 v176 v167]
name in+16[int]: [v220 v175 v168]
name counter[*[16]byte]: [v10]
name key[*[32]byte]: [v11]
name i[int]: [v93]
name x[byte]: [v92]
name u[uint32]: [v127 v263 v142 v154]
name i[int]: [v128 v129 v156]
name i[int]: [v214]
name v[byte]: [v213]



goroutine 21 [running]:
runtime/debug.Stack(0x10128a0, 0xc00000e018, 0x0)
    /home/carlosedp/riscv-go/src/runtime/debug/stack.go:24 +0x9d
cmd/compile/internal/gc.Fatalf(0xc0007581e0, 0x24, 0xc00083d440, 0x3, 0x3)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/subr.go:193 +0x291
cmd/compile/internal/gc.(*ssafn).Fatalf(0xc000025da0, 0xce06000000005, 0xe6565b, 0x1e, 0xc0008f8460, 0x2, 0x2)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/ssa.go:6808 +0x1b0
cmd/compile/internal/ssa.(*Value).Fatalf(...)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/ssa/value.go:308
cmd/compile/internal/ssa.(*Value).Reg(0xc0004665b0, 0xe438f0)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/ssa/value.go:320 +0x178
cmd/compile/internal/riscv64.ssaGenValue(0xc000320900, 0xc000466620)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/riscv64/ssa.go:357 +0xca3
cmd/compile/internal/gc.genssa(0xc0002b49a0, 0xc00075e310)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/ssa.go:6022 +0x69b
cmd/compile/internal/gc.compileSSA(0xc0002b4840, 0x0)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/pgen.go:308 +0x3a5
cmd/compile/internal/gc.compileFunctions.func2(0xc0002bede0, 0xc000450510, 0x0)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/pgen.go:363 +0x49
created by cmd/compile/internal/gc.compileFunctions
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/pgen.go:361 +0x128

# go.opencensus.io/trace/internal
<autogenerated>:1: internal compiler error: 'IDGenerator.NewTraceID': nil register for value: v7 = MOVaddr <*[16]byte> {~r0} v2
IDGenerator.NewTraceID method(IDGenerator) func() [16]byte
  b1:
    v1 = InitMem <mem>
    v6 = VarDef <mem> {~r0} v1
    v2 = SP <uintptr> : SP
    v24 = MOVaddr <*[16]byte> {~r0} [15] v2 : X3
    v8 = LoweredZero <mem> [1] v7 v24 v6
    v5 = MOVDload <uintptr> {.this} v2 v8 : X3
    v3 = MOVDload <*uint8> {.this} [8] v2 v8 : X5
    v14 = MOVDload <uintptr> [32] v5 v8 : X3
    v16 = MOVDstore <mem> [8] v2 v3 v8
    v17 = CALLinter <mem> [24] v14 v16
    v23 = VarDef <mem> {~r0} v17
    v21 = MOVaddr <*[16]byte> [31] v2 : X3
    v25 = LoweredMove <mem> [1] v7 v18 v21 v23
    Ret v25



goroutine 21 [running]:
runtime/debug.Stack(0x10128a0, 0xc00000e018, 0x0)
    /home/carlosedp/riscv-go/src/runtime/debug/stack.go:24 +0x9d
cmd/compile/internal/gc.Fatalf(0xc0004e2300, 0x24, 0xc0004db080, 0x3, 0x3)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/subr.go:193 +0x291
cmd/compile/internal/gc.(*ssafn).Fatalf(0xc0004daa20, 0x100000000001, 0xe6565b, 0x1e, 0xc0004d2ba0, 0x2, 0x2)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/ssa.go:6808 +0x1b0
cmd/compile/internal/ssa.(*Value).Fatalf(...)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/ssa/value.go:308
cmd/compile/internal/ssa.(*Value).Reg(0xc000444b28, 0xe438f0)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/ssa/value.go:320 +0x178
cmd/compile/internal/riscv64.ssaGenValue(0xc0004f23f0, 0xc000444b98)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/riscv64/ssa.go:357 +0xca3
cmd/compile/internal/gc.genssa(0xc0004dc420, 0xc0004e1a40)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/ssa.go:6022 +0x69b
cmd/compile/internal/gc.compileSSA(0xc0002b4580, 0x3)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/pgen.go:308 +0x3a5
cmd/compile/internal/gc.compileFunctions.func2(0xc0004cf1a0, 0xc0004948d0, 0x3)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/pgen.go:363 +0x49
created by cmd/compile/internal/gc.compileFunctions
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/pgen.go:361 +0x128

# unicode
../../riscv-go/src/unicode/letter.go:216:6: internal compiler error: 'to': nil register for value: v47 = MOVaddr <*CaseRange> {cr} v2
to func(int, rune, []CaseRange) (rune, bool)
  b1:
    v9 = Arg <int> {_case} : _case[int] (_case[int])
    v10 = Arg <rune> {r} : r[rune] (r[rune])
    v115 = Arg <int> {caseRange} [8] : caseRange+8[int] (caseRange+8[int])
    v116 = Arg <*CaseRange> {caseRange} : caseRange[*CaseRange] (caseRange[*CaseRange])
    v1 = InitMem <mem>
    v2 = SP <uintptr> : SP
    v76 = LoadReg <int> v9 : X3
    v136 = MOVDconst <int> [0] : X5
    v15 = SLT <bool> v76 v136 : X5
    BNE v15 -> b5 b2 (unlikely)
  b2: <- b1
    v77 = MOVDconst <int> [3] : X5
    v70 = SLT <bool> v76 v77 : X5
    v18 = XORI <bool> [1] v70 : X5
    BNE v18 -> b5 b4 (unlikely)
  b4: <- b2
    v78 = LoadReg <rune> v10 : X5
    v114 = LoadReg <int> v115 : X6
    v113 = LoadReg <*CaseRange> v116 : X7
    v103 = Copy <int> v114 : X8
    v125 = MOVDconst <int> [0] : X9
    Plain -> b7
  b9: <- b15 b24
    v140 = Phi <int> v37 v63 : X10 (hi[int])
    v142 = Phi <int> v29 v117 : X9 (lo[int])
    v124 = Copy <int> v140 : X6
    Plain -> b7
  b7: <- b4 b9
    v29 = Phi <int> v125 v142 : X9 (lo[int])
    v30 = Phi <int> v114 v124 : X6 (hi[int])
    v131 = Phi <mem> v1 v48
    v31 = SLT <bool> v29 v30 : X10
    BNE v31 -> b8 b10 (likely)
  b8: <- b7
    v34 = SUB <int> v30 v29 : X10
    v58 = MOVDconst <uint64> [63] : X11
    v11 = SRL <int> v34 v58 : X12
    v28 = SLTIU <int> [64] v58 : X13
    v50 = MOVDconst <uint64> [0] : X14
    v43 = SUB <int> v50 v28 : X13
    v19 = AND <int> v11 v43 : X12
    v62 = ADD <int> v19 v34 : X10
    v49 = MOVDconst <uint64> [1] : X12
    v138 = SLTIU <uint64> [64] v49 : X13
    v84 = ADDI <uint64> [-1] v138 : X13
    v68 = OR <uint64> v49 v84 : X13
    v36 = SRA <int> v62 v68 : X10
    v37 = ADD <int> v36 v29 : X10 (hi[int], m[int])
    v40 = SLTU <bool> v37 v103 : X13
    BNE v40 -> b11 b12 (likely)
  b11: <- b8
    v46 = VarDef <mem> {cr} v131
    v8 = MOVDconst <int> [20] : X13
    v85 = MUL <int> v37 v8 : X15
    v44 = ADD <*CaseRange> v113 v85 : X15
    v83 = ADDI <*CaseRange> [16] v44 : X16
    v48 = LoweredMove <mem> [4] v47 v44 v83 v46
    v51 = MOVWUload <uint32> {cr} v2 v48 : X15
    v67 = SLLI <int64> [32] v51 : X16
    v39 = SRAI <int64> [32] v67 : X16
    v72 = SLLI <int64> [32] v78 : X17
    v57 = SRAI <int64> [32] v72 : X17
    v82 = SLT <bool> v57 v39 : X16
    v54 = XORI <bool> [1] v82 : X18
    BNE v54 -> b13 b15
  b13: <- b11
    v59 = MOVWUload <uint32> {cr} [4] v2 v48 : X18
    v64 = SLLI <int64> [32] v59 : X18
    v129 = SRAI <int64> [32] v64 : X18
    v79 = SLT <bool> v129 v57 : X17
    v61 = XORI <bool> [1] v79 : X17
    BNE v61 -> b18 b15 (unlikely)
  b15: <- b13 b11
    BNE v82 -> b9 b24
  b24: <- b15
    v117 = ADDI <int> [1] v37 : X9 (lo[int])
    v63 = Copy <int> v30 : X10
    Plain -> b9
  b18: <- b13
    v7 = MOVDconst <uint64> [2] : X6
    v65 = SLL <int> v76 v7 : X7
    v111 = SLTIU <int> [64] v7 : X6
    v112 = SUB <int> v50 v111 : X6
    v80 = AND <int> v65 v112 : X6
    v92 = MOVaddr <*d> {cr} [8] v2 : X7
    v71 = ADD <*rune> v92 v80 : X6
    v73 = MOVWload <rune> v71 v48 : X6 (delta[rune])
    v60 = MOVWconst <rune> [1114111] : X7
    v109 = SLLI <int64> [32] v60 : X7
    v35 = SRAI <int64> [32] v109 : X7
    v108 = SLLI <int64> [32] v73 : X8
    v100 = SRAI <int64> [32] v108 : X8
    v75 = SLT <bool> v35 v100 : X7
    BNE v75 -> b21 b20
  b21: <- b18
    v96 = VarDef <mem> {mappedRune} v48
    v86 = SUB <rune> v78 v51 : X5
    v56 = MOVWconst <rune> [-2] : X6
    v88 = AND <rune> v86 v56 : X5
    v55 = MOVDconst <int> [1] : X6
    v91 = AND <int> v55 v76 : X3
    v93 = OR <rune> v88 v91 : X3
    v94 = ADD <rune> v93 v51 : X3
    v97 = MOVWstore <mem> {mappedRune} v2 v94 v96
    v98 = VarDef <mem> {foundMapping} v97
    v143 = MOVBconst <bool> [1] : X3
    v99 = MOVBstore <mem> {foundMapping} v2 v143 v98
    Ret v99
  b20: <- b18
    v104 = VarDef <mem> {mappedRune} v48
    v102 = ADD <rune> v73 v78 : X3
    v105 = MOVWstore <mem> {mappedRune} v2 v102 v104
    v106 = VarDef <mem> {foundMapping} v105
    v141 = MOVBconst <bool> [1] : X3
    v107 = MOVBstore <mem> {foundMapping} v2 v141 v106
    Ret v107
  b10: <- b7
    v120 = VarDef <mem> {mappedRune} v131
    v121 = MOVWstore <mem> {mappedRune} v2 v78 v120
    v122 = VarDef <mem> {foundMapping} v121
    v139 = MOVBconst <bool> [0] : X3
    v123 = MOVBstore <mem> {foundMapping} v2 v139 v122
    Ret v123
  b5: <- b2 b1
    v23 = VarDef <mem> {mappedRune} v1
    v130 = MOVWconst <rune> [65533] : X3
    v24 = MOVWstore <mem> {mappedRune} v2 v130 v23
    v25 = VarDef <mem> {foundMapping} v24
    v126 = MOVBconst <bool> [0] : X3
    v26 = MOVBstore <mem> {foundMapping} v2 v126 v25
    Ret v26
  b12: <- b8
    v42 = LoweredPanicBoundsC <mem> [0] v37 v115 v131
    Exit v42
name _case[int]: [v9]
name r[rune]: [v10]
name caseRange[*CaseRange]: [v116]
name caseRange+8[int]: [v115]
name lo[int]: [v14 v29 v117 v142]
name hi[int]: [v30 v37 v140]
name m[int]: [v37]
name delta[rune]: [v73]



goroutine 13 [running]:
runtime/debug.Stack(0x10128a0, 0xc00000e018, 0x0)
    /home/carlosedp/riscv-go/src/runtime/debug/stack.go:24 +0x9d
cmd/compile/internal/gc.Fatalf(0xc0003708d0, 0x24, 0xc001492630, 0x3, 0x3)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/subr.go:193 +0x291
cmd/compile/internal/gc.(*ssafn).Fatalf(0xc001423890, 0xd806000000005, 0xe6565b, 0x1e, 0xc0014be5c0, 0x2, 0x2)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/ssa.go:6808 +0x1b0
cmd/compile/internal/ssa.(*Value).Fatalf(...)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/ssa/value.go:308
cmd/compile/internal/ssa.(*Value).Reg(0xc001024c98, 0xc0013938f6)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/ssa/value.go:320 +0x178
cmd/compile/internal/riscv64.ssaGenValue(0xc001435830, 0xc001024d08)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/riscv64/ssa.go:391 +0xf9f
cmd/compile/internal/gc.genssa(0xc001343340, 0xc00148c4d0)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/ssa.go:6022 +0x69b
cmd/compile/internal/gc.compileSSA(0xc0003f82c0, 0x1)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/pgen.go:308 +0x3a5
cmd/compile/internal/gc.compileFunctions.func2(0xc001332180, 0xc0012f3610, 0x1)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/pgen.go:363 +0x49
created by cmd/compile/internal/gc.compileFunctions
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/pgen.go:361 +0x128

# github.com/google/go-cmp/cmp/internal/diff
vendor/github.com/google/go-cmp/cmp/internal/diff/diff.go:170:10: internal compiler error: 'Difference': nil register for value: v30 = MOVaddr <*path> {fwdPath} v2
Difference func(int, int, EqualFunc) EditScript
  b2:
    v8 = Arg <int> {nx} : nx[int] (nx[int])
    v9 = Arg <int> {ny} : ny[int] (ny[int])
    v10 = Arg <EqualFunc> {f} : f[EqualFunc] (f[EqualFunc], f[EqualFunc], ~r5[EqualFunc])
    v1 = InitMem <mem>
    v3 = SB <uintptr> : SB
    v2 = SP <uintptr> : SP
    v1061 = MOVaddr <*uint8> {type."".EditType} v3 : X3
    v17 = MOVDstore <mem> [8] v2 v1061 v1
    v1054 = MOVDconst <int> [0] : X5
    v20 = MOVDstore <mem> [16] v2 v1054 v17
    v1050 = LoadReg <int> v9 : X6
    v1025 = LoadReg <int> v8 : X7
    v12 = ADD <int> v1050 v1025 : X8
    v763 = StoreReg <int> v12 : .autotmp_137[int]
    v1019 = MOVDconst <uint64> [63] : X9
    v795 = SLTIU <int> [64] v1019 : X10
    v1093 = MOVDconst <uint64> [0] : X11
    v965 = SUB <int> v1093 v795 : X10
    v1049 = SRL <int> v12 v1019 : X9
    v170 = AND <int> v1049 v965 : X9
    v348 = ADD <int> v12 v170 : X9
    v1097 = MOVDconst <uint64> [1] : X10
    v1070 = SLTIU <uint64> [64] v1097 : X12
    v1092 = ADDI <uint64> [-1] v1070 : X12
    v1124 = OR <uint64> v1097 v1092 : X10
    v14 = SRA <int> v348 v1124 : X9
    v995 = StoreReg <int> v14 : .autotmp_138[int]
    v22 = MOVDstore <mem> [24] v2 v14 v20
    v23 = CALLstatic <mem> {runtime.makeslice} [32] v22
    v25 = MOVDload <unsafe.Pointer> [32] v2 v23 : X3
    v29 = VarDef <mem> {fwdPath} v23
    v1001 = MOVaddr <*path> {fwdPath} [40] v2 : X5
    v31 = LoweredZero <mem> [8] v30 v1001 v29
    v997 = MOVDconst <int> [1] : X5
    v35 = MOVDstore <mem> {fwdPath} v2 v997 v31
    v419 = MOVDstore <mem> {fwdPath} [24] v2 v25 v35
    v1046 = LoadReg <int> v995 : X3
    v46 = MOVDstore <mem> {fwdPath} [40] v2 v1046 v419
    v964 = MOVaddr <*uint8> {type."".EditType} v3 : X3
    v48 = MOVDstore <mem> [8] v2 v964 v46
    v963 = MOVDconst <int> [0] : X6
    v49 = MOVDstore <mem> [16] v2 v963 v48
    v50 = MOVDstore <mem> [24] v2 v963 v49
    v51 = CALLstatic <mem> {runtime.makeslice} [32] v50
    v52 = MOVDload <unsafe.Pointer> [32] v2 v51 : X3
    v54 = VarDef <mem> {revPath} v51
    v812 = MOVaddr <*path> {revPath} [40] v2 : X5
    v56 = LoweredZero <mem> [8] v55 v812 v54
    v1060 = MOVDconst <int> [-1] : X5
    v60 = MOVDstore <mem> {revPath} v2 v1060 v56
    v631 = LoadReg <int> v8 : X5
    v64 = MOVDstore <mem> {revPath} [8] v2 v631 v60
    v794 = LoadReg <int> v9 : X5
    v68 = MOVDstore <mem> {revPath} [16] v2 v794 v64
    v277 = MOVDstore <mem> {revPath} [24] v2 v52 v68
    v791 = MOVDconst <int> [0] : X3
    v417 = MOVDstore <mem> {revPath} [32] v2 v791 v277
    v71 = MOVDstore <mem> {revPath} [40] v2 v791 v417
    v827 = MOVDload <int> {fwdPath} [8] v2 v71 : X6
    v1260 = MOVDload <int> {fwdPath} [16] v2 v71 : X7
    v1141 = MOVDload <int> {revPath} [8] v2 v71 : X8
    v778 = MOVDconst <uint64> [2] : X9
    v1044 = SLTIU <int> [64] v778 : X10
    v776 = MOVDconst <uint64> [0] : X11
    v982 = SUB <int> v776 v1044 : X10
    v759 = LoadReg <int> v763 : X11
    v984 = SLL <int> v759 v778 : X9
    v80 = AND <int> v984 v982 : X9 (searchBudget[int])
    Plain -> b4
  b16: <- b30 b35 b68 b40
    v1316 = Phi <bool> v1315 v270 v373 v220 : X11 (stop2[bool])
    v1347 = Phi <bool> v501 v107 v422 v218 : X10 (stop1[bool])
    v991 = Phi <int> v1133 v1133 v1202 v215 : X7 (fwdFrontier.Y[int])
    v998 = Phi <int> v1113 v1113 v1364 v197 : X6 (fwdFrontier.X[int])
    v495 = Phi <mem> v1324 v1324 v488 v181
    v1174 = Phi <int> v1172 v1172 v433 v493 : X9 (searchBudget[int])
    v499 = ADDI <int> [1] v1346 : X12 (i[int])
    Plain -> b14
  b14: <- b11 b16
    v107 = Phi <bool> v141 v1347 : X10 (stop1[bool])
    v1315 = Phi <bool> v139 v1316 : X11 (stop2[bool])
    v1346 = Phi <int> v510 v499 : X12 (i[int], x[int])
    v1113 = Phi <int> v1068 v998 : X6 (fwdFrontier.X[int])
    v1133 = Phi <int> v1067 v991 : X7 (fwdFrontier.Y[int])
    v1324 = Phi <mem> v1327 v495
    v1172 = Phi <int> v1190 v1174 : X9 (searchBudget[int])
    BNE v107 -> b18 b20
  b18: <- b14
    BNE v1315 -> b17 b20 (unlikely)
  b20: <- b18 b14
    v112 = SLT <bool> v791 v1172 : X13
    BNE v112 -> b15 b17 (likely)
  b15: <- b20
    v117 = InlMark <void> [69] v1324
    v1367 = MOVDconst <int> [1] : X13
    v118 = AND <int> v1346 v1367 : X14
    v375 = SUB <int> v118 v791 : X14
    v119 = SNEZ <bool> v375 : X14
    BNE v119 -> b23 b176
  b23: <- b15
    v121 = XORI <int> [-1] v1346 : X14 (x[int])
    Plain -> b24
  b24: <- b176 b23
    v122 = Phi <int> v503 v121 : X14 (x[int])
    v1148 = MOVDconst <uint> [1] : X15
    v262 = SLTIU <uint> [64] v1148 : X16
    v206 = ADDI <uint> [-1] v262 : X16
    v258 = OR <uint> v1148 v206 : X16
    v124 = SRA <int> v122 v258 : X14 (z[int], ~r1[int])
    v130 = ADD <int> v124 v1113 : X16 (p.X[int])
    v134 = SUB <int> v1133 v124 : X14 (p.Y[int])
    v142 = MOVDload <int> {revPath} [8] v2 v1324 : X17
    v259 = SLT <bool> v130 v142 : X17
    v143 = XORI <bool> [1] v259 : X17
    BNE v143 -> b30 b26
  b30: <- b26 b24
    v501 = MOVBconst <bool> [1] : X10
    Plain -> b16
  b26: <- b24
    v150 = MOVDload <int> {fwdPath} [16] v2 v1324 : X17
    v151 = SLT <bool> v134 v150 : X17
    BNE v151 -> b30 b28
  b28: <- b26
    v160 = MOVDload <int> {revPath} [16] v2 v1324 : X17
    v273 = SLT <bool> v134 v160 : X17
    v161 = XORI <bool> [1] v273 : X17
    BNE v161 -> b35 b31
  b35: <- b31 b28
    v270 = MOVBconst <bool> [1] : X11
    Plain -> b16
  b31: <- b28
    v168 = MOVDload <int> {fwdPath} [8] v2 v1324 : X17
    v169 = SLT <bool> v130 v168 : X17
    BNE v169 -> b35 b36 (likely)
  b36: <- b31
    v696 = StoreReg <bool> v107 : stop1[bool]
    v753 = StoreReg <int> v130 : p.X[int]
    v818 = StoreReg <int> v134 : p.Y[int]
    v749 = StoreReg <int> v1113 : fwdFrontier.X[int]
    v747 = StoreReg <int> v1133 : fwdFrontier.Y[int]
    v843 = StoreReg <int> v1172 : searchBudget[int]
    v751 = StoreReg <bool> v1315 : stop2[bool]
    v851 = StoreReg <int> v1346 : x[int]
    v177 = MOVDstore <mem> [8] v2 v130 v1324
    v179 = MOVDstore <mem> [16] v2 v134 v177
    v909 = LoadReg <EqualFunc> v10 : X3
    v180 = MOVDload <uintptr> v909 v179 : X5
    v181 = CALLclosure <mem> [32] v180 v10 v179
    v790 = MOVDload <int> [32] v2 v181 : X3
    v184 = InlMark <void> [70] v181
    v858 = MOVDconst <int> [0] : X5
    v957 = SUB <int> v790 v858 : X3
    v186 = SEQZ <bool> v957 : X3 (~r0[bool])
    BNE v186 -> b39 b40 (unlikely)
  b40: <- b36
    v656 = LoadReg <int> v843 : X14
    v493 = ADDI <int> [-1] v656 : X9 (searchBudget[int])
    v1135 = MOVDconst <int> [0] : X3
    v1162 = LoadReg <int> v678 : X5
    v1369 = LoadReg <int> v685 : X8
    v227 = LoadReg <int> v851 : X12
    v225 = MOVDconst <int> [1] : X13
    v223 = MOVDconst <uint> [1] : X15
    v220 = LoadReg <bool> v751 : X11
    v218 = LoadReg <bool> v696 : X10
    v215 = LoadReg <int> v747 : X7
    v197 = LoadReg <int> v749 : X6
    Plain -> b16
  b39: <- b36
    v650 = MOVaddr <*path> {fwdPath} v2 : X3
    v193 = MOVDstore <mem> [8] v2 v650 v181
    v677 = LoadReg <int> v753 : X5
    v756 = MOVDstore <mem> [16] v2 v677 v193
    v684 = LoadReg <int> v818 : X5
    v196 = MOVDstore <mem> [24] v2 v684 v756
    v632 = LoadReg <EqualFunc> v10 : X5
    v199 = MOVDstore <mem> [32] v2 v632 v196
    v200 = CALLstatic <mem> {"".(*path).connect} [32] v199
    v203 = InlMark <void> [71] v200
    v204 = MOVDload <int> {fwdPath} [32] v2 v200 : X3
    v210 = ADDI <int> [1] v204 : X5
    v257 = MOVDload <*EditType> {fwdPath} [24] v2 v200 : X6
    v853 = MOVDload <int> {fwdPath} [40] v2 v200 : X7
    v211 = SLTU <bool> v853 v210 : X8
    BNE v211 -> b41 b64 (unlikely)
  b64: <- b39 b41
    v233 = Phi <int> v204 v226 : X3
    v236 = Phi <mem> v200 v231
    v239 = Phi <*EditType> v257 v224 : X6
    v234 = ADDI <int> [1] v233 : X5
    v237 = MOVDstore <mem> {fwdPath} [32] v2 v234 v236
    v240 = ADD <*EditType> v239 v233 : X3
    v629 = MOVBconst <EditType> [0] : X5
    v242 = MOVBstore <mem> v240 v629 v237
    v265 = InlMark <void> [72] v242
    v261 = MOVDload <int> {fwdPath} v2 v242 : X3 (dy[int])
    v268 = MOVDload <int> {fwdPath} [8] v2 v242 : X6
    v269 = ADD <int> v268 v261 : X6
    v272 = MOVDstore <mem> {fwdPath} [8] v2 v269 v242
    v275 = MOVDload <int> {fwdPath} [16] v2 v272 : X6
    v276 = ADD <int> v275 v261 : X3
    v279 = MOVDstore <mem> {fwdPath} [16] v2 v276 v272
    v597 = LoadReg <EqualFunc> v10 : X3
    Plain -> b65
  b67: <- b72 b74
    v396 = Phi <int> v839 v390 : X3
    v399 = Phi <mem> v363 v394
    v402 = Phi <*EditType> v850 v389 : X8
    v397 = ADDI <int> [1] v396 : X6
    v400 = MOVDstore <mem> {fwdPath} [32] v2 v397 v399
    v403 = ADD <*EditType> v402 v396 : X6
    v579 = MOVBconst <EditType> [0] : X7
    v405 = MOVBstore <mem> v403 v579 v400
    v425 = InlMark <void> [78] v405
    v421 = MOVDload <int> {fwdPath} v2 v405 : X6 (dy[int])
    v428 = MOVDload <int> {fwdPath} [8] v2 v405 : X8
    v429 = ADD <int> v428 v421 : X8
    v432 = MOVDstore <mem> {fwdPath} [8] v2 v429 v405
    v435 = MOVDload <int> {fwdPath} [16] v2 v432 : X8
    v436 = ADD <int> v435 v421 : X6
    v439 = MOVDstore <mem> {fwdPath} [16] v2 v436 v432
    v577 = LoadReg <EqualFunc> v10 : X6
    v190 = Copy <EqualFunc> v577 : X3
    v173 = MOVBconst <EditType> [0] : X5
    Plain -> b65
  b65: <- b64 b67
    v328 = Phi <mem> v279 v439
    v332 = MOVDload <int> {fwdPath} [8] v2 v328 : X6
    v336 = MOVDload <int> {revPath} [8] v2 v328 : X7
    v337 = SLT <bool> v332 v336 : X7
    BNE v337 -> b69 b93 (likely)
  b69: <- b65
    v342 = MOVDload <int> {fwdPath} [16] v2 v328 : X7
    v346 = MOVDload <int> {revPath} [16] v2 v328 : X8
    v347 = SLT <bool> v342 v346 : X7
    BNE v347 -> b71 b93 (likely)
  b71: <- b69
    v356 = MOVDstore <mem> [8] v2 v332 v328
    v360 = MOVDload <int> {fwdPath} [16] v2 v356 : X5
    v361 = MOVDstore <mem> [16] v2 v360 v356
    v362 = MOVDload <uintptr> v597 v361 : X5
    v363 = CALLclosure <mem> [32] v362 v10 v361
    v1366 = MOVDload <int> [32] v2 v363 : X3
    v365 = InlMark <void> [76] v363
    v589 = MOVDconst <int> [0] : X5
    v956 = SUB <int> v1366 v589 : X3
    v367 = SEQZ <bool> v956 : X3 (~r0[bool])
    BNE v367 -> b72 b68 (likely)
  b72: <- b71
    v372 = InlMark <void> [77] v363
    v839 = MOVDload <int> {fwdPath} [32] v2 v363 : X3
    v379 = ADDI <int> [1] v839 : X6
    v837 = MOVDload <int> {fwdPath} [40] v2 v363 : X7
    v850 = MOVDload <*EditType> {fwdPath} [24] v2 v363 : X8
    v380 = SLTU <bool> v837 v379 : X9
    BNE v380 -> b74 b67 (unlikely)
  b74: <- b72
    v572 = MOVaddr <*uint8> {type."".EditType} v3 : X5
    v383 = MOVDstore <mem> [8] v2 v572 v363
    v384 = MOVDstore <mem> [16] v2 v850 v383
    v385 = MOVDstore <mem> [24] v2 v839 v384
    v386 = MOVDstore <mem> [32] v2 v837 v385
    v387 = MOVDstore <mem> [40] v2 v379 v386
    v388 = CALLstatic <mem> {runtime.growslice} [72] v387
    v389 = MOVDload <*EditType> [48] v2 v388 : X8
    v390 = MOVDload <int> [56] v2 v388 : X3
    v391 = MOVDload <int> [64] v2 v388 : X5
    v393 = MOVDstore <mem> {fwdPath} [40] v2 v391 v388
    v394 = MOVDstore <mem> {fwdPath} [24] v2 v389 v393
    v75 = MOVDconst <int> [0] : X5
    Plain -> b67
  b68: <- b93 b71
    v488 = Phi <mem> v328 v363
    v1202 = MOVDload <int> {fwdPath} [16] v2 v488 : X7
    v1364 = MOVDload <int> {fwdPath} [8] v2 v488 : X6
    v1371 = MOVDconst <int> [0] : X3
    v907 = LoadReg <int> v678 : X5
    v955 = LoadReg <int> v685 : X8
    v948 = LoadReg <int> v851 : X12
    v990 = MOVDconst <int> [1] : X13
    v1037 = MOVDconst <uint> [1] : X15
    v373 = MOVBconst <bool> [1] : X11
    v422 = MOVBconst <bool> [1] : X10
    v433 = LoadReg <int> v843 : X9
    Plain -> b16
  b93: <- b69 b65
    v72 = MOVDconst <int> [0] : X5
    Plain -> b68
  b41: <- b39
    v570 = MOVaddr <*uint8> {type."".EditType} v3 : X8
    v214 = MOVDstore <mem> [8] v2 v570 v200
    v216 = MOVDstore <mem> [16] v2 v257 v214
    v217 = MOVDstore <mem> [24] v2 v204 v216
    v219 = MOVDstore <mem> [32] v2 v853 v217
    v221 = MOVDstore <mem> [40] v2 v210 v219
    v222 = CALLstatic <mem> {runtime.growslice} [72] v221
    v224 = MOVDload <*EditType> [48] v2 v222 : X6
    v226 = MOVDload <int> [56] v2 v222 : X3
    v228 = MOVDload <int> [64] v2 v222 : X5
    v230 = MOVDstore <mem> {fwdPath} [40] v2 v228 v222
    v231 = MOVDstore <mem> {fwdPath} [24] v2 v224 v230
    Plain -> b64
  b176: <- b15
    v503 = Copy <int> v1346 : X14
    Plain -> b24
  b17: <- b20 b18
    v504 = MOVDload <int> {revPath} [8] v2 v1324 : X10
    v507 = SUB <int> v504 v1113 : X10
    v511 = MOVDload <int> {revPath} [16] v2 v1324 : X11
    v513 = SUB <int> v511 v1133 : X11
    v418 = SLT <bool> v507 v513 : X10
    v514 = XORI <bool> [1] v418 : X10
    BNE v514 -> b100 b101
  b100: <- b17
    v517 = ADDI <int> [1] v1113 : X6 (fwdFrontier.X[int])
    Plain -> b99
  b99: <- b100 b101
    v966 = Phi <int> v1133 v522 : X7 (fwdFrontier.Y[int])
    v1115 = Phi <int> v517 v1113 : X6 (fwdFrontier.X[int])
    v430 = SLT <bool> v1115 v542 : X10
    v529 = XORI <bool> [1] v430 : X10
    BNE v529 -> b6 b102 (unlikely)
  b102: <- b99
    v437 = SLT <bool> v966 v109 : X10
    v534 = XORI <bool> [1] v437 : X10
    BNE v534 -> b6 b104 (unlikely)
  b104: <- b102
    v1259 = SUB <int> v791 v1172 : X10
    v537 = SEQZ <bool> v1259 : X10
    BNE v537 -> b6 b106 (unlikely)
  b106: <- b104
    v1157 = StoreReg <int> v966 : .autotmp_137[int]
    v1255 = StoreReg <int> v1115 : .autotmp_138[int]
    v70 = MOVBconst <bool> [0] : X10
    v69 = MOVBconst <bool> [0] : X11
    v67 = MOVDconst <int> [0] : X12
    Plain -> b109
  b111: <- b125 b130 b163 b135
    v1240 = Phi <bool> v1239 v61 v24 v977 : X11 (stop2[bool])
    v1270 = Phi <bool> v63 v540 v21 v976 : X10 (stop1[bool])
    v860 = Phi <int> v1226 v1226 v18 v975 : X5 (revFrontier.Y[int])
    v861 = Phi <int> v1328 v1328 v1165 v854 : X8 (revFrontier.X[int])
    v1156 = Phi <int> v1154 v1154 v15 v913 : X9 (searchBudget[int])
    v915 = Phi <mem> v1248 v1248 v908 v614
    v919 = ADDI <int> [1] v1269 : X12 (i[int])
    Plain -> b109
  b109: <- b106 b111
    v540 = Phi <bool> v70 v1270 : X10 (stop1[bool])
    v1239 = Phi <bool> v69 v1240 : X11 (stop2[bool])
    v1269 = Phi <int> v67 v919 : X12 (i[int], x[int])
    v1226 = Phi <int> v109 v860 : X5 (revFrontier.Y[int])
    v1328 = Phi <int> v542 v861 : X8 (revFrontier.X[int])
    v1154 = Phi <int> v1172 v1156 : X9 (searchBudget[int])
    v1248 = Phi <mem> v1324 v915
    BNE v540 -> b113 b115
  b113: <- b109
    BNE v1239 -> b112 b115 (unlikely)
  b115: <- b113 b109
    v545 = SLT <bool> v791 v1154 : X13
    BNE v545 -> b110 b112 (likely)
  b110: <- b115
    v550 = InlMark <void> [83] v1248
    v931 = MOVDconst <int> [1] : X13
    v551 = AND <int> v1269 v931 : X14
    v53 = SUB <int> v551 v791 : X14
    v552 = SNEZ <bool> v53 : X14
    BNE v552 -> b118 b206
  b118: <- b110
    v554 = XORI <int> [-1] v1269 : X14 (x[int])
    Plain -> b119
  b119: <- b206 b118
    v555 = Phi <int> v65 v554 : X14 (x[int])
    v925 = MOVDconst <uint> [1] : X15
    v1005 = SLTIU <uint> [64] v925 : X16
    v1368 = ADDI <uint> [-1] v1005 : X16
    v426 = OR <uint> v925 v1368 : X16
    v556 = SRA <int> v555 v426 : X14 (z[int], ~r1[int])
    v562 = SUB <int> v1328 v556 : X16 (p.X[int])
    v566 = ADD <int> v556 v1226 : X14 (p.Y[int])
    v573 = MOVDload <int> {fwdPath} [8] v2 v1248 : X17
    v1004 = SLT <bool> v573 v562 : X17
    v575 = XORI <bool> [1] v1004 : X17
    BNE v575 -> b125 b121
  b125: <- b121 b119
    v63 = MOVBconst <bool> [1] : X10
    Plain -> b111
  b121: <- b119
    v580 = MOVDload <int> {revPath} [16] v2 v1248 : X17
    v583 = SLT <bool> v580 v566 : X17
    BNE v583 -> b125 b123
  b123: <- b121
    v590 = MOVDload <int> {fwdPath} [16] v2 v1248 : X17
    v1003 = SLT <bool> v590 v566 : X17
    v593 = XORI <bool> [1] v1003 : X17
    BNE v593 -> b130 b126
  b130: <- b126 b123
    v61 = MOVBconst <bool> [1] : X11
    Plain -> b111
  b126: <- b123
    v598 = MOVDload <int> {revPath} [8] v2 v1248 : X17
    v601 = SLT <bool> v598 v562 : X17
    BNE v601 -> b130 b131 (likely)
  b131: <- b126
    v341 = StoreReg <bool> v540 : stop1[bool]
    v371 = StoreReg <int> v562 : p.X[int]
    v374 = StoreReg <int> v566 : p.Y[int]
    v842 = StoreReg <int> v1154 : .autotmp_139[int]
    v345 = StoreReg <int> v1226 : .autotmp_140[int]
    v359 = StoreReg <bool> v1239 : stop2[bool]
    v793 = StoreReg <int> v1269 : x[int]
    v357 = StoreReg <int> v1328 : .autotmp_141[int]
    v607 = ADDI <int> [-1] v562 : X3
    v609 = MOVDstore <mem> [8] v2 v607 v1248
    v611 = ADDI <int> [-1] v566 : X3
    v612 = MOVDstore <mem> [16] v2 v611 v609
    v923 = LoadReg <EqualFunc> v10 : X3
    v613 = MOVDload <uintptr> v923 v612 : X5
    v614 = CALLclosure <mem> [32] v613 v10 v612
    v1264 = MOVDload <int> [32] v2 v614 : X3
    v616 = InlMark <void> [84] v614
    v392 = MOVDconst <int> [0] : X5
    v994 = SUB <int> v1264 v392 : X3
    v618 = SEQZ <bool> v994 : X3 (~r0[bool])
    BNE v618 -> b134 b135 (unlikely)
  b135: <- b131
    v489 = LoadReg <int> v842 : X14
    v913 = ADDI <int> [-1] v489 : X9 (searchBudget[int])
    v7 = MOVDconst <int> [0] : X3
    v1058 = LoadReg <int> v1255 : X6
    v1048 = LoadReg <int> v1157 : X7
    v1047 = LoadReg <int> v793 : X12
    v992 = MOVDconst <int> [1] : X13
    v979 = MOVDconst <uint> [1] : X15
    v977 = LoadReg <bool> v359 : X11
    v976 = LoadReg <bool> v341 : X10
    v975 = LoadReg <int> v345 : X5
    v854 = LoadReg <int> v357 : X8
    Plain -> b111
  b134: <- b131
    v438 = MOVaddr <*path> {revPath} v2 : X3
    v623 = MOVDstore <mem> [8] v2 v438 v614
    v431 = LoadReg <int> v371 : X5
    v674 = MOVDstore <mem> [16] v2 v431 v623
    v423 = LoadReg <int> v374 : X5
    v625 = MOVDstore <mem> [24] v2 v423 v674
    v398 = LoadReg <EqualFunc> v10 : X5
    v627 = MOVDstore <mem> [32] v2 v398 v625
    v628 = CALLstatic <mem> {"".(*path).connect} [32] v627
    v630 = InlMark <void> [85] v628
    v691 = MOVDload <int> {revPath} [32] v2 v628 : X3
    v637 = ADDI <int> [1] v691 : X5
    v688 = MOVDload <int> {revPath} [40] v2 v628 : X6
    v695 = MOVDload <*EditType> {revPath} [24] v2 v628 : X7
    v638 = SLTU <bool> v688 v637 : X8
    BNE v638 -> b136 b159 (unlikely)
  b159: <- b134 b136
    v654 = Phi <int> v691 v648 : X3
    v657 = Phi <mem> v628 v652
    v660 = Phi <*EditType> v695 v647 : X7
    v655 = ADDI <int> [1] v654 : X5
    v658 = MOVDstore <mem> {revPath} [32] v2 v655 v657
    v661 = ADD <*EditType> v660 v654 : X3
    v335 = MOVBconst <EditType> [0] : X5
    v663 = MOVBstore <mem> v661 v335 v658
    v683 = InlMark <void> [86] v663
    v679 = MOVDload <int> {revPath} v2 v663 : X3 (dy[int])
    v686 = MOVDload <int> {revPath} [8] v2 v663 : X6
    v687 = ADD <int> v686 v679 : X6
    v690 = MOVDstore <mem> {revPath} [8] v2 v687 v663
    v693 = MOVDload <int> {revPath} [16] v2 v690 : X6
    v694 = ADD <int> v693 v679 : X3
    v697 = MOVDstore <mem> {revPath} [16] v2 v694 v690
    v333 = LoadReg <EqualFunc> v10 : X3
    Plain -> b160
  b162: <- b167 b169
    v816 = Phi <int> v675 v810 : X3
    v819 = Phi <mem> v783 v814
    v822 = Phi <*EditType> v680 v809 : X7
    v817 = ADDI <int> [1] v816 : X6
    v820 = MOVDstore <mem> {revPath} [32] v2 v817 v819
    v823 = ADD <*EditType> v822 v816 : X6
    v329 = MOVBconst <EditType> [0] : X7
    v825 = MOVBstore <mem> v823 v329 v820
    v845 = InlMark <void> [92] v825
    v844 = MOVDload <int> {revPath} v2 v825 : X6 (dx[int])
    v848 = MOVDload <int> {revPath} [8] v2 v825 : X8
    v849 = ADD <int> v848 v844 : X8
    v852 = MOVDstore <mem> {revPath} [8] v2 v849 v825
    v855 = MOVDload <int> {revPath} [16] v2 v852 : X8
    v856 = ADD <int> v855 v844 : X6
    v859 = MOVDstore <mem> {revPath} [16] v2 v856 v852
    v278 = LoadReg <EqualFunc> v10 : X6
    v847 = Copy <EqualFunc> v278 : X3
    v841 = MOVBconst <EditType> [0] : X5
    Plain -> b160
  b160: <- b159 b162
    v746 = Phi <mem> v697 v859
    v750 = MOVDload <int> {fwdPath} [8] v2 v746 : X6
    v754 = MOVDload <int> {revPath} [8] v2 v746 : X7
    v755 = SLT <bool> v750 v754 : X6
    BNE v755 -> b164 b175 (likely)
  b164: <- b160
    v760 = MOVDload <int> {fwdPath} [16] v2 v746 : X6
    v764 = MOVDload <int> {revPath} [16] v2 v746 : X8
    v765 = SLT <bool> v760 v764 : X6
    BNE v765 -> b166 b175 (likely)
  b166: <- b164
    v774 = ADDI <int> [-1] v754 : X5
    v775 = MOVDstore <mem> [8] v2 v774 v746
    v779 = MOVDload <int> {revPath} [16] v2 v775 : X5
    v780 = ADDI <int> [-1] v779 : X5
    v781 = MOVDstore <mem> [16] v2 v780 v775
    v782 = MOVDload <uintptr> v333 v781 : X5
    v783 = CALLclosure <mem> [32] v782 v10 v781
    v744 = MOVDload <int> [32] v2 v783 : X3
    v785 = InlMark <void> [90] v783
    v331 = MOVDconst <int> [0] : X5
    v981 = SUB <int> v744 v331 : X3
    v787 = SEQZ <bool> v981 : X3 (~r0[bool])
    BNE v787 -> b167 b163 (likely)
  b167: <- b166
    v792 = InlMark <void> [91] v783
    v675 = MOVDload <int> {revPath} [32] v2 v783 : X3
    v799 = ADDI <int> [1] v675 : X6
    v680 = MOVDload <*EditType> {revPath} [24] v2 v783 : X7
    v1064 = MOVDload <int> {revPath} [40] v2 v783 : X8
    v800 = SLTU <bool> v1064 v799 : X9
    BNE v800 -> b169 b162 (unlikely)
  b169: <- b167
    v267 = MOVaddr <*uint8> {type."".EditType} v3 : X5
    v803 = MOVDstore <mem> [8] v2 v267 v783
    v804 = MOVDstore <mem> [16] v2 v680 v803
    v805 = MOVDstore <mem> [24] v2 v675 v804
    v806 = MOVDstore <mem> [32] v2 v1064 v805
    v807 = MOVDstore <mem> [40] v2 v799 v806
    v808 = CALLstatic <mem> {runtime.growslice} [72] v807
    v809 = MOVDload <*EditType> [48] v2 v808 : X7
    v810 = MOVDload <int> [56] v2 v808 : X3
    v811 = MOVDload <int> [64] v2 v808 : X5
    v813 = MOVDstore <mem> {revPath} [40] v2 v811 v808
    v814 = MOVDstore <mem> {revPath} [24] v2 v809 v813
    v840 = MOVDconst <int> [0] : X5
    Plain -> b162
  b163: <- b175 b166
    v908 = Phi <mem> v746 v783
    v1144 = MOVDload <int> {revPath} [16] v2 v908 : X14
    v1165 = MOVDload <int> {revPath} [8] v2 v908 : X8
    v59 = MOVDconst <int> [0] : X3
    v58 = LoadReg <int> v1255 : X6
    v45 = LoadReg <int> v1157 : X7
    v44 = LoadReg <int> v793 : X12
    v34 = MOVDconst <int> [1] : X13
    v33 = MOVDconst <uint> [1] : X15
    v24 = MOVBconst <bool> [1] : X11
    v21 = MOVBconst <bool> [1] : X10
    v18 = Copy <int> v1144 : X5
    v15 = LoadReg <int> v842 : X9
    Plain -> b111
  b175: <- b164 b160
    v1374 = MOVDconst <int> [0] : X5
    Plain -> b163
  b136: <- b134
    v263 = MOVaddr <*uint8> {type."".EditType} v3 : X8
    v641 = MOVDstore <mem> [8] v2 v263 v628
    v642 = MOVDstore <mem> [16] v2 v695 v641
    v643 = MOVDstore <mem> [24] v2 v691 v642
    v644 = MOVDstore <mem> [32] v2 v688 v643
    v645 = MOVDstore <mem> [40] v2 v637 v644
    v646 = CALLstatic <mem> {runtime.growslice} [72] v645
    v647 = MOVDload <*EditType> [48] v2 v646 : X7
    v648 = MOVDload <int> [56] v2 v646 : X3
    v649 = MOVDload <int> [64] v2 v646 : X5
    v651 = MOVDstore <mem> {revPath} [40] v2 v649 v646
    v652 = MOVDstore <mem> {revPath} [24] v2 v647 v651
    Plain -> b159
  b206: <- b110
    v65 = Copy <int> v1269 : X14
    Plain -> b119
  b112: <- b115 b113
    v926 = MOVDload <int> {fwdPath} [8] v2 v1248 : X10
    v927 = SUB <int> v1328 v926 : X10
    v932 = MOVDload <int> {fwdPath} [16] v2 v1248 : X11
    v933 = SUB <int> v1226 v932 : X11
    v28 = SLT <bool> v927 v933 : X10
    v934 = XORI <bool> [1] v28 : X10
    BNE v934 -> b195 b196
  b195: <- b112
    v937 = ADDI <int> [-1] v1328 : X8 (revFrontier.X[int])
    Plain -> b4
  b4: <- b2 b195 b196
    v1067 = Phi <int> v1260 v966 v966 : X7 (fwdFrontier.Y[int])
    v1068 = Phi <int> v827 v1115 v1115 : X6 (fwdFrontier.X[int])
    v109 = Phi <int> v794 v1226 v942 : X5 (revFrontier.Y[int])
    v542 = Phi <int> v1141 v937 v1328 : X8 (revFrontier.X[int])
    v1327 = Phi <mem> v71 v1248 v1248
    v1190 = Phi <int> v80 v1154 v1154 : X9 (searchBudget[int])
    v838 = SLT <bool> v1068 v542 : X10
    v95 = XORI <bool> [1] v838 : X10
    BNE v95 -> b6 b7 (unlikely)
  b7: <- b4
    v676 = SLT <bool> v1067 v109 : X10
    v100 = XORI <bool> [1] v676 : X10
    BNE v100 -> b6 b9 (unlikely)
  b9: <- b7
    v633 = SUB <int> v791 v1190 : X10
    v103 = SEQZ <bool> v633 : X10
    BNE v103 -> b6 b11 (unlikely)
  b11: <- b9
    v678 = StoreReg <int> v109 : revFrontier.Y[int]
    v685 = StoreReg <int> v542 : revFrontier.X[int]
    v141 = MOVBconst <bool> [0] : X10
    v139 = MOVBconst <bool> [0] : X11
    v510 = MOVDconst <int> [0] : X12
    Plain -> b14
  b196: <- b112
    v942 = ADDI <int> [-1] v1226 : X5 (revFrontier.Y[int])
    Plain -> b4
  b6: <- b9 b104 b102 b99 b7 b4
    v945 = Phi <mem> v1327 v1324 v1324 v1324 v1327 v1327
    v235 = MOVaddr <*path> {fwdPath} v2 : X3
    v947 = MOVDstore <mem> [8] v2 v235 v945
    v906 = MOVDload <int> {revPath} [16] v2 v947 : X3
    v1140 = MOVDload <int> {revPath} [8] v2 v947 : X5
    v1164 = MOVDstore <mem> [16] v2 v1140 v947
    v951 = MOVDstore <mem> [24] v2 v906 v1164
    v229 = LoadReg <EqualFunc> v10 : X3
    v953 = MOVDstore <mem> [32] v2 v229 v951
    v954 = CALLstatic <mem> {"".(*path).connect} [32] v953
    v266 = MOVDload <int> {revPath} [32] v2 v954 : X3
    v959 = ADDI <int> [-1] v266 : X3 (i[int])
    Plain -> b197
  b199: <- b210 b226 b227 b228
    v1112 = Phi <mem> v1032 v1066 v1081 v1110
    v1116 = ADDI <int> [-1] v960 : X3 (i[int])
    Plain -> b197
  b197: <- b6 b199
    v960 = Phi <int> v959 v1116 : X3 (i[int])
    v1129 = Phi <mem> v954 v1112
    v846 = MOVDconst <int> [0] : X5
    v971 = SLT <bool> v960 v846 : X6
    v961 = XORI <bool> [1] v971 : X6
    BNE v961 -> b198 b231 (likely)
  b198: <- b197
    v1053 = MOVDload <*EditType> {revPath} [24] v2 v1129 : X6
    v1057 = MOVDload <int> {revPath} [32] v2 v1129 : X7
    v968 = SLTU <bool> v960 v1057 : X8
    BNE v968 -> b205 b202 (likely)
  b205: <- b198
    v972 = ADD <*EditType> v960 v1053 : X6
    v974 = MOVBUload <EditType> v972 v1129 : X6 (t[EditType], t[EditType])
    v996 = MOVDstore <mem> {revPath} [32] v2 v960 v1129
    v999 = InlMark <void> [97] v996
    v1104 = MOVDload <int> {fwdPath} [32] v2 v996 : X7
    v1006 = ADDI <int> [1] v1104 : X8
    v1101 = MOVDload <int> {fwdPath} [40] v2 v996 : X9
    v1108 = MOVDload <*EditType> {fwdPath} [24] v2 v996 : X10
    v1007 = SLTU <bool> v1101 v1006 : X11
    BNE v1007 -> b207 b208 (unlikely)
  b208: <- b205 b207
    v1023 = Phi <int> v1104 v1017 : X7
    v1026 = Phi <mem> v996 v1021
    v1029 = Phi <*EditType> v1108 v1016 : X10
    v1024 = ADDI <int> [1] v1023 : X8
    v1027 = MOVDstore <mem> {fwdPath} [32] v2 v1024 v1026
    v1030 = ADD <*EditType> v1029 v1023 : X7
    v1032 = MOVBstore <mem> v1030 v974 v1027
    v1065 = SLLI <uint64> [56] v974 : X7
    v209 = SRLI <uint64> [56] v1065 : X7
    v857 = MOVBconst <EditType> [1] : X8
    v1080 = SLLI <uint64> [56] v857 : X9
    v376 = SRLI <uint64> [56] v1080 : X9
    v967 = SLTU <bool> v376 v209 : X7
    v1033 = XORI <bool> [1] v967 : X7
    BNE v1033 -> b211 b212
  b211: <- b208
    v205 = MOVBconst <EditType> [0] : X7
    v797 = SUB <EditType> v974 v205 : X6
    v208 = SLLI <uint64> [56] v797 : X6
    v798 = SRLI <uint64> [56] v208 : X6
    v1035 = SEQZ <bool> v798 : X6
    BNE v1035 -> b226 b227
  b226: <- b211 b225
    v1052 = InlMark <void> [98] v1032
    v1051 = MOVDload <int> {fwdPath} v2 v1032 : X6 (dx[int])
    v1055 = MOVDload <int> {fwdPath} [8] v2 v1032 : X9
    v1056 = ADD <int> v1051 v1055 : X9
    v1059 = MOVDstore <mem> {fwdPath} [8] v2 v1056 v1032
    v1062 = MOVDload <int> {fwdPath} [16] v2 v1059 : X9
    v1063 = ADD <int> v1062 v1051 : X6
    v1066 = MOVDstore <mem> {fwdPath} [16] v2 v1063 v1059
    Plain -> b199
  b227: <- b211
    v1074 = InlMark <void> [99] v1032
    v1073 = MOVDload <int> {fwdPath} v2 v1032 : X6 (dx[int])
    v1077 = MOVDload <int> {fwdPath} [8] v2 v1032 : X9
    v1078 = ADD <int> v1073 v1077 : X6
    v1081 = MOVDstore <mem> {fwdPath} [8] v2 v1078 v1032
    Plain -> b199
  b212: <- b208
    v201 = MOVBconst <EditType> [2] : X7
    v636 = SUB <EditType> v974 v201 : X9
    v207 = SLLI <uint64> [56] v636 : X9
    v796 = SRLI <uint64> [56] v207 : X9
    v1039 = SEQZ <bool> v796 : X9
    BNE v1039 -> b228 b222
  b228: <- b212
    v1096 = InlMark <void> [100] v1032
    v1095 = MOVDload <int> {fwdPath} v2 v1032 : X6 (dy[int])
    v1106 = MOVDload <int> {fwdPath} [16] v2 v1032 : X9
    v1107 = ADD <int> v1106 v1095 : X6
    v1110 = MOVDstore <mem> {fwdPath} [16] v2 v1107 v1032
    v692 = MOVBconst <EditType> [0] : X7
    Plain -> b199
  b222: <- b212
    v167 = MOVBconst <EditType> [3] : X9
    v634 = SUB <EditType> v974 v167 : X6
    v958 = SLLI <uint64> [56] v634 : X6
    v635 = SRLI <uint64> [56] v958 : X6
    v1041 = SEQZ <bool> v635 : X6
    BNE v1041 -> b225 b210
  b225: <- b222
    v761 = MOVBconst <EditType> [0] : X7
    Plain -> b226
  b210: <- b222
    v757 = MOVBconst <EditType> [0] : X7
    Plain -> b199
  b207: <- b205
    v149 = StoreReg <int> v960 : i[int]
    v147 = StoreReg <EditType> v974 : t[EditType]
    v159 = MOVaddr <*uint8> {type."".EditType} v3 : X3
    v1010 = MOVDstore <mem> [8] v2 v159 v996
    v1011 = MOVDstore <mem> [16] v2 v1108 v1010
    v1012 = MOVDstore <mem> [24] v2 v1104 v1011
    v1013 = MOVDstore <mem> [32] v2 v1101 v1012
    v1014 = MOVDstore <mem> [40] v2 v1006 v1013
    v1015 = CALLstatic <mem> {runtime.growslice} [72] v1014
    v1016 = MOVDload <*EditType> [48] v2 v1015 : X10
    v1017 = MOVDload <int> [56] v2 v1015 : X7
    v1018 = MOVDload <int> [64] v2 v1015 : X3
    v1020 = MOVDstore <mem> {fwdPath} [40] v2 v1018 v1015
    v1021 = MOVDstore <mem> {fwdPath} [24] v2 v1016 v1020
    v773 = LoadReg <int> v149 : X3
    v772 = MOVDconst <int> [0] : X5
    v770 = LoadReg <EditType> v147 : X6
    Plain -> b208
  b231: <- b197
    v1075 = MOVDload <int> {fwdPath} [40] v2 v1129 : X3
    v1086 = MOVDload <int> {fwdPath} [32] v2 v1129 : X5
    v1091 = MOVDload <*EditType> {fwdPath} [24] v2 v1129 : X6
    v1125 = VarDef <mem> {es} v1129
    v1109 = MOVDstore <mem> {es} v2 v1091 v1125
    v1069 = MOVDstore <mem> {es} [8] v2 v1086 v1109
    v1126 = MOVDstore <mem> {es} [16] v2 v1075 v1069
    Ret v1126
  b101: <- b17
    v522 = ADDI <int> [1] v1133 : X7 (fwdFrontier.Y[int])
    Plain -> b99
  b202: <- b198
    v970 = LoweredPanicBoundsC <mem> [0] v960 v1057 v1129
    Exit v970
name nx[int]: [v8]
name ny[int]: [v9]
name f[EqualFunc]: [v10]
name searchBudget[int]: [v80 v1190 v1172 v493 v1154 v913 v1156 v1174]
name f[EqualFunc]: [v10]
name ~r5[EqualFunc]: [v10]
name stop1[bool]: [v106 v107 v189 v1347]
name stop2[bool]: [v106 v1315 v189 v1316]
name i[int]: [v19 v1346 v499]
name x[int]: [v1346 v121 v122]
name ~r1[int]: [v19 v124]
name z[int]: [v124]
name ~r0[bool]: [v106 v186]
name t[EditType]: [v202]
name dy[int]: [v261]
name dy[int]: [v19]
name dx[int]: [v19]
name ~r0[bool]: [v106 v367]
name t[EditType]: [v202]
name dy[int]: [v421]
name dy[int]: [v19]
name dx[int]: [v19]
name stop1[bool]: [v106 v540 v189 v1270]
name stop2[bool]: [v106 v1239 v189 v1240]
name i[int]: [v19 v1269 v919]
name x[int]: [v1269 v554 v555]
name ~r1[int]: [v19 v556]
name z[int]: [v556]
name ~r0[bool]: [v106 v618]
name t[EditType]: [v202]
name dy[int]: [v679]
name dy[int]: [v19]
name dx[int]: [v19]
name ~r0[bool]: [v106 v787]
name t[EditType]: [v202]
name dx[int]: [v844]
name dy[int]: [v19]
name dx[int]: [v19]
name i[int]: [v959 v960 v1116]
name t[EditType]: [v974]
name t[EditType]: [v974]
name dx[int]: [v1051]
name dx[int]: [v1073]
name dy[int]: [v19]
name dx[int]: [v19]
name dy[int]: [v1095]
name fwdFrontier.X[int]: [v1068 v1113 v517 v1115 v998]
name fwdFrontier.Y[int]: [v1067 v1133 v522 v966 v991]
name revFrontier.X[int]: [v542 v1328 v937 v861 v1038]
name revFrontier.Y[int]: [v109 v1226 v942 v860 v1034]
name p.X[int]: [v19 v130]
name p.Y[int]: [v19 v134]
name p.X[int]: [v19 v562]
name p.Y[int]: [v19 v566]



goroutine 13 [running]:
runtime/debug.Stack(0x10128a0, 0xc00000e018, 0x0)
    /home/carlosedp/riscv-go/src/runtime/debug/stack.go:24 +0x9d
cmd/compile/internal/gc.Fatalf(0xc00001c3c0, 0x24, 0xc0005c4150, 0x3, 0x3)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/subr.go:193 +0x291
cmd/compile/internal/gc.(*ssafn).Fatalf(0xc000365770, 0xaa0a000000003, 0xe6565b, 0x1e, 0xc0008a4940, 0x2, 0x2)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/ssa.go:6808 +0x1b0
cmd/compile/internal/ssa.(*Value).Fatalf(...)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/ssa/value.go:308
cmd/compile/internal/ssa.(*Value).Reg(0xc000535538, 0xe438ef)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/ssa/value.go:320 +0x178
cmd/compile/internal/riscv64.ssaGenValue(0xc0005e0120, 0xc0005355a8)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/riscv64/ssa.go:357 +0xca3
cmd/compile/internal/gc.genssa(0xc0002b5600, 0xc00035e1c0)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/ssa.go:6022 +0x69b
cmd/compile/internal/gc.compileSSA(0xc000382f20, 0x3)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/pgen.go:308 +0x3a5
cmd/compile/internal/gc.compileFunctions.func2(0xc0003127e0, 0xc00036cbf0, 0x3)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/pgen.go:363 +0x49
created by cmd/compile/internal/gc.compileFunctions
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/pgen.go:361 +0x128

# github.com/Azure/go-autorest/autorest/to
vendor/github.com/Azure/go-autorest/autorest/to/convert.go:52:15: internal compiler error: vendor/github.com/Azure/go-autorest/autorest/to/convert.go:65:14: internal compiler error: 'StringMap': nil register for value: v28 = MOVaddr <*map.iter[string]*string> {.autotmp_7} v2
StringMap func(map[string]*string) map[string]string
  b1:
    v6 = Arg <map[string]*string> {msp} : msp[map[string]*string] (msp[map[string]*string])
    v1 = InitMem <mem>
    v100 = MOVDconst <uint64> [0] : X3
    v104 = LoadReg <map[string]*string> v6 : X5
    v26 = SUB <uint64> v100 v104 : X6
    v82 = SNEZ <bool> v26 : X6
    BNE v82 -> b3 b2 (likely)
  b3: <- b1
    v12 = MOVDload <int> v104 v1 : X6
    Plain -> b4
  b4: <- b2 b3
    v13 = Phi <int> v5 v12 : X6
    v3 = SB <uintptr> : SB
    v2 = SP <uintptr> : SP
    v35 = MOVaddr <*uint8> {type.map[string]string} v3 : X3
    v17 = MOVDstore <mem> [8] v2 v35 v1
    v19 = MOVDstore <mem> [16] v2 v13 v17
    v89 = MOVDconst <*map.hdr[string]string> [0] : X5
    v22 = MOVDstore <mem> [24] v2 v89 v19
    v23 = CALLstatic <mem> {runtime.makemap} [32] v22
    v25 = MOVDload <map[string]string> [32] v2 v23 : X3 (ms[map[string]string])
    v51 = StoreReg <map[string]string> v25 : ms[map[string]string]
    v27 = VarDef <mem> {.autotmp_7} v23
    v78 = MOVaddr <*map.iter[string]*string> {.autotmp_7} [88] v2 : X5
    v29 = LoweredZero <mem> [8] v28 v78 v27
    v73 = MOVaddr <*uint8> {type.map[string]*string} v3 : X5
    v31 = MOVDstore <mem> [8] v2 v73 v29
    v60 = LoadReg <map[string]*string> v6 : X5
    v33 = MOVDstore <mem> [16] v2 v60 v31
    v77 = MOVaddr <*map.iter[string]*string> {.autotmp_7} v2 : X5
    v36 = MOVDstore <mem> [24] v2 v77 v33
    v37 = CALLstatic <mem> {runtime.mapiterinit} [24] v36
    Plain -> b5
  b7: <- b9 b14 b12 b15
    v105 = Phi <mem> v91 v8 v75 v66
    v62 = MOVaddr <*map.iter[string]*string> {.autotmp_7} v2 : X3
    v96 = MOVDstore <mem> [8] v2 v62 v105
    v97 = CALLstatic <mem> {runtime.mapiternext} [8] v96
    Plain -> b5
  b5: <- b4 b7
    v38 = Phi <mem> v37 v97
    v41 = MOVDload <*string> {.autotmp_7} v2 v38 : X3
    v46 = MOVDconst <uint64> [0] : X5
    v16 = SUB <uint64> v46 v41 : X6
    v43 = SNEZ <bool> v16 : X6
    BNE v43 -> b6 b8 (likely)
  b6: <- b5
    v47 = MOVDload <**string> {.autotmp_7} [8] v2 v38 : X6
    v49 = MOVDload <*string> v47 v38 : X6 (sp[*string])
    v52 = MOVDload <int> [8] v41 v38 : X7 (k.len[int])
    v53 = MOVDload <*uint8> v41 v38 : X3 (k.ptr[*uint8])
    v11 = SUB <uint64> v46 v49 : X8
    v55 = SNEZ <bool> v11 : X8
    BNE v55 -> b10 b11
  b10: <- b6
    v45 = MOVDload <int> [8] v49 v38 : X5
    v56 = StoreReg <int> v45 : .autotmp_14[int]
    v50 = MOVDload <*uint8> v49 v38 : X6
    v69 = StoreReg <*uint8> v50 : .autotmp_15[*uint8]
    v40 = MOVaddr <*uint8> {type.map[string]string} v3 : X8
    v61 = MOVDstore <mem> [8] v2 v40 v38
    v39 = LoadReg <map[string]string> v51 : X9
    v64 = MOVDstore <mem> [16] v2 v39 v61
    v88 = MOVDstore <mem> [24] v2 v53 v64
    v67 = MOVDstore <mem> [32] v2 v52 v88
    v68 = CALLstatic <mem> {runtime.mapassign_faststr} [40] v67
    v70 = MOVDload <*string> [40] v2 v68 : X3
    v59 = LoadReg <int> v56 : X5
    v74 = MOVDstore <mem> [8] v70 v59 v68
    v58 = MOVWUload <uint32> {runtime.writeBarrier} v3 v74 : X5
    v93 = MOVWconst <uint32> [0] : X6
    v94 = SUB <uint32> v58 v93 : X5
    v7 = SLLI <uint64> [32] v94 : X5
    v98 = SRLI <uint64> [32] v7 : X5
    v86 = SNEZ <bool> v98 : X5
    BNE v86 -> b9 b12 (unlikely)
  b12: <- b10
    v65 = LoadReg <*uint8> v69 : X5
    v75 = MOVDstore <mem> v70 v65 v74
    Plain -> b7
  b9: <- b10
    v91 = LoweredWB <mem> {runtime.gcWriteBarrier} v70 v50 v74
    Plain -> b7
  b11: <- b6
    v34 = MOVaddr <*uint8> {type.map[string]string} v3 : X5
    v79 = MOVDstore <mem> [8] v2 v34 v38
    v32 = LoadReg <map[string]string> v51 : X6
    v81 = MOVDstore <mem> [16] v2 v32 v79
    v42 = MOVDstore <mem> [24] v2 v53 v81
    v83 = MOVDstore <mem> [32] v2 v52 v42
    v84 = CALLstatic <mem> {runtime.mapassign_faststr} [40] v83
    v85 = MOVDload <*string> [40] v2 v84 : X3
    v24 = MOVDconst <int> [0] : X5
    v90 = MOVDstore <mem> [8] v85 v24 v84
    v72 = MOVWUload <uint32> {runtime.writeBarrier} v3 v90 : X6
    v20 = MOVWconst <uint32> [0] : X7
    v103 = SUB <uint32> v72 v20 : X6
    v4 = SLLI <uint64> [32] v103 : X6
    v44 = SRLI <uint64> [32] v4 : X6
    v9 = SNEZ <bool> v44 : X6
    BNE v9 -> b14 b15 (unlikely)
  b15: <- b11
    v18 = MOVDconst <*uint8> [0] : X6
    v66 = MOVDstore <mem> v85 v18 v90
    Plain -> b7
  b14: <- b11
    v8 = LoweredWB <mem> {runtime.gcWriteBarrier} v85 v80 v90
    v106 = MOVDconst <*uint8> [0] : X6
    Plain -> b7
  b8: <- b5
    v99 = VarKill <mem> {.autotmp_7} v38
    v101 = VarDef <mem> {~r1} v99
    v14 = LoadReg <map[string]string> v51 : X3
    v102 = MOVDstore <mem> {~r1} v2 v14 v101
    Ret v102
  b2: <- b1
    v5 = MOVDconst <int> [0] : X6
    Plain -> b4
name msp[map[string]*string]: [v6]
name ms[map[string]string]: [v25]
name k.ptr[*uint8]: [v53]
name k.len[int]: [v52]
name sp[*string]: [v49]



goroutine 8 [running]:
runtime/debug.Stack(0x10128a0, 0xc0000a4008, 0x0)
    /home/carlosedp/riscv-go/src/runtime/debug/stack.go:24 +0x9d
cmd/compile/internal/gc.Fatalf(0xc0005ba150, 0x24, 0xc000580d80, 0x3, 0x3)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/subr.go:193 +0x291
cmd/compile/internal/gc.(*ssafn).Fatalf(0xc000580000, 0x340f200000002, 0xe6565b, 0x1e, 0xc000592860, 0x2, 0x2)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/ssa.go:6808 +0x1b0
cmd/compile/internal/ssa.(*Value).Fatalf(...)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/ssa/value.go:308
cmd/compile/internal/ssa.(*Value).Reg(0xc0003f0448, 0xe438ef)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/ssa/value.go:320 +0x178
cmd/compile/internal/riscv64.ssaGenValue(0xc000586f30, 0xc0003f04b8)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/riscv64/ssa.go:357 +0xca3
cmd/compile/internal/gc.genssa(0xc000582000, 0xc0005944d0)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/ssa.go:6022 +0x69b
cmd/compile/internal/gc.compileSSA(0xc0002d2840, 0x1)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/pgen.go:308 +0x3a5
cmd/compile/internal/gc.compileFunctions.func2(0xc0005654a0, 0xc0000178f0, 0x1)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/pgen.go:363 +0x49
created by cmd/compile/internal/gc.compileFunctions
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/pgen.go:361 +0x128

# k8s.io/kubernetes/pkg/util/maps
pkg/util/maps/string.go:25:14: internal compiler error: 'CopySS': nil register for value: v33 = MOVaddr <*map.iter[string]string> {.autotmp_7} v2
CopySS func(map[string]string) map[string]string
  b1:
    v6 = Arg <map[string]string> {m} : m[map[string]string] (m[map[string]string])
    v1 = InitMem <mem>
    v2 = SP <uintptr> : SP
    v77 = MOVDconst <uint64> [0] : X3
    v8 = LoadReg <map[string]string> v6 : X5
    v49 = SUB <uint64> v77 v8 : X6
    v82 = SNEZ <bool> v49 : X6
    BNE v82 -> b6 b3 (likely)
  b6: <- b1
    v3 = SB <uintptr> : SB
    v17 = MOVDload <int> v8 v1 : X3
    v40 = MOVaddr <*uint8> {type.map[string]string} v3 : X6
    v22 = MOVDstore <mem> [8] v2 v40 v1
    v24 = MOVDstore <mem> [16] v2 v17 v22
    v71 = MOVDconst <*map.hdr[string]string> [0] : X3
    v27 = MOVDstore <mem> [24] v2 v71 v24
    v28 = CALLstatic <mem> {runtime.makemap} [32] v27
    v30 = MOVDload <map[string]string> [32] v2 v28 : X3 (copy[map[string]string])
    v45 = StoreReg <map[string]string> v30 : copy[map[string]string]
    v32 = VarDef <mem> {.autotmp_7} v28
    v35 = MOVaddr <*map.iter[string]string> {.autotmp_7} [88] v2 : X5
    v34 = LoweredZero <mem> [8] v33 v35 v32
    v60 = MOVaddr <*uint8> {type.map[string]string} v3 : X5
    v36 = MOVDstore <mem> [8] v2 v60 v34
    v55 = LoadReg <map[string]string> v6 : X6
    v38 = MOVDstore <mem> [16] v2 v55 v36
    v51 = MOVaddr <*map.iter[string]string> {.autotmp_7} v2 : X6
    v41 = MOVDstore <mem> [24] v2 v51 v38
    v42 = CALLstatic <mem> {runtime.mapiterinit} [24] v41
    Plain -> b7
  b11: <- b4 b8
    v74 = Phi <mem> v15 v73
    v29 = MOVaddr <*map.iter[string]string> {.autotmp_7} v2 : X3
    v78 = MOVDstore <mem> [8] v2 v29 v74
    v79 = CALLstatic <mem> {runtime.mapiternext} [8] v78
    Plain -> b7
  b7: <- b6 b11
    v43 = Phi <mem> v42 v79
    v46 = MOVDload <*string> {.autotmp_7} v2 v43 : X3
    v44 = MOVDconst <uint64> [0] : X5
    v85 = SUB <uint64> v44 v46 : X6
    v48 = SNEZ <bool> v85 : X6
    BNE v48 -> b9 b10 (likely)
  b9: <- b7
    v52 = MOVDload <*string> {.autotmp_7} [8] v2 v43 : X5
    v50 = MOVDload <*uint8> v46 v43 : X6 (k.ptr[*uint8])
    v56 = MOVDload <int> [8] v52 v43 : X7 (v.len[int])
    v75 = StoreReg <int> v56 : v.len[int]
    v57 = MOVDload <*uint8> v52 v43 : X5 (v.ptr[*uint8])
    v39 = StoreReg <*uint8> v57 : v.ptr[*uint8]
    v80 = MOVDload <int> [8] v46 v43 : X3 (k.len[int])
    v13 = MOVaddr <*uint8> {type.map[string]string} v3 : X8
    v61 = MOVDstore <mem> [8] v2 v13 v43
    v59 = LoadReg <map[string]string> v45 : X9
    v63 = MOVDstore <mem> [16] v2 v59 v61
    v14 = MOVDstore <mem> [24] v2 v50 v63
    v65 = MOVDstore <mem> [32] v2 v80 v14
    v66 = CALLstatic <mem> {runtime.mapassign_faststr} [40] v65
    v68 = MOVDload <*string> [40] v2 v66 : X3
    v67 = LoadReg <int> v75 : X5
    v72 = MOVDstore <mem> [8] v68 v67 v66
    v18 = MOVWUload <uint32> {runtime.writeBarrier} v3 v72 : X5
    v64 = MOVWconst <uint32> [0] : X6
    v62 = SUB <uint32> v18 v64 : X5
    v31 = SLLI <uint64> [32] v62 : X5
    v76 = SRLI <uint64> [32] v31 : X5
    v58 = SNEZ <bool> v76 : X5
    BNE v58 -> b4 b8 (unlikely)
  b8: <- b9
    v37 = LoadReg <*uint8> v39 : X5
    v73 = MOVDstore <mem> v68 v37 v72
    Plain -> b11
  b4: <- b9
    v15 = LoweredWB <mem> {runtime.gcWriteBarrier} v68 v57 v72
    Plain -> b11
  b10: <- b7
    v81 = VarKill <mem> {.autotmp_7} v43
    v83 = VarDef <mem> {~r1} v81
    v25 = LoadReg <map[string]string> v45 : X3
    v84 = MOVDstore <mem> {~r1} v2 v25 v83
    Ret v84
  b3: <- b1
    v10 = VarDef <mem> {~r1} v1
    v23 = MOVDconst <map[string]string> [0] : X3
    v11 = MOVDstore <mem> {~r1} v2 v23 v10
    Ret v11
name m[map[string]string]: [v6]
name copy[map[string]string]: [v30]
name k.ptr[*uint8]: [v50]
name k.len[int]: [v80]
name v.ptr[*uint8]: [v57]
name v.len[int]: [v56]



goroutine 27 [running]:
runtime/debug.Stack(0x10128a0, 0xc00009e008, 0x0)
    /home/carlosedp/riscv-go/src/runtime/debug/stack.go:24 +0x9d
cmd/compile/internal/gc.Fatalf(0xc00001c390, 0x24, 0xc000024c90, 0x3, 0x3)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/subr.go:193 +0x291
cmd/compile/internal/gc.(*ssafn).Fatalf(0xc000024030, 0x190e200000003, 0xe6565b, 0x1e, 0xc00033bfa0, 0x2, 0x2)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/ssa.go:6808 +0x1b0
cmd/compile/internal/ssa.(*Value).Fatalf(...)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/ssa/value.go:308
cmd/compile/internal/ssa.(*Value).Reg(0xc0003ca678, 0xe438ef)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/ssa/value.go:320 +0x178
cmd/compile/internal/riscv64.ssaGenValue(0xc0004da990, 0xc0003ca6e8)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/riscv64/ssa.go:357 +0xca3
cmd/compile/internal/gc.genssa(0xc0004d8000, 0xc0002d0150)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/ssa.go:6022 +0x69b
cmd/compile/internal/gc.compileSSA(0xc0002ce2c0, 0x1)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/pgen.go:308 +0x3a5
cmd/compile/internal/gc.compileFunctions.func2(0xc0004c5740, 0xc00009b380, 0x1)
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/pgen.go:363 +0x49
created by cmd/compile/internal/gc.compileFunctions
    /home/carlosedp/riscv-go/src/cmd/compile/internal/gc/pgen.go:361 +0x128

Similarly, running the same test just replacing the arch with ARM64 does not generate this error.

Merry Christmas, everyone.

There was a question, related to choosing the hardware/boards. I got two hardware boards, to test on: https://open-isa.org and longan.sipeed.com/en/ . Longan nano is a really cheep one - so eventually I got two micro-processors on my Vega board and one on Longan nano (32 bit).

Let me know if someone wants to use GCC's backend, for risc-v, on those boards. Btw RISC-V compiler backend is largely contributed to cause of the FreeBSD port - so assume that, work on the compiler front-end, for GCC.

This is not a Clang/LLVM related discussion - but LLVM related stuff excludes libffi. Also any embedded and IoT applications exclude libffi itself, since there is no reason to perform calls of wrapped code (Golang -> C calls) - this is not reasonable for OS-aware (firmware) and in-kernel execution modes (userspace for IoT has typical security limitations, as well). That is valid for all linux distros.

I was curious about the plan, for supporting https://github.com/riscv/riscv-fast-interrupt/blob/master/clic.adoc .

Ivan

Change https://golang.org/cl/212759 mentions this issue: cmd/internal/obj/riscv: correct CALL reloc symbol handling

Change https://golang.org/cl/212758 mentions this issue: cmd/internal/obj/riscv: handle MOV rewrites in separate pass

Change https://golang.org/cl/212761 mentions this issue: syscall: fix riscv64 syscall assembly

Change https://golang.org/cl/212763 mentions this issue: syscall: resync various riscv64 structs with x/sys/unix

Change https://golang.org/cl/212762 mentions this issue: syscall: provide Renameat as a wrapper for renameat2 on riscv64

Change https://golang.org/cl/215037 mentions this issue: cmd/internal/obj/riscv: correctly split immediates for FLW/FLD/FSW/FSD

I'd like to report that this last CL fixes the problem I found(https://github.com/golang/go/issues/27532#issuecomment-559592553) on building Kubernetes with the FLD/FSD instructions not being split when stored/read.
Thanks @4a6f656c for helping me on solving this!

Change https://golang.org/cl/215377 mentions this issue: cmd/internal/obj/riscv: populate DWARF register mapping for riscv64

Change https://golang.org/cl/215437 mentions this issue: reflect: correct riscv64 assembly

Change https://golang.org/cl/215837 mentions this issue: cmd/dist: detect gohostarch on riscv64 hosts

Change https://golang.org/cl/215838 mentions this issue: cmd/dist: mark cgo as disabled on linux/riscv64

Change https://golang.org/cl/215839 mentions this issue: runtime: add missing code for linux/riscv64

Change https://golang.org/cl/215840 mentions this issue: cmd/internal/obj/riscv: restore the ADDI instruction in jalrToSym

Change https://golang.org/cl/215841 mentions this issue: cmd/internal/obj/riscv: add missing instructions to the ternary expansion list

Change https://golang.org/cl/216257 mentions this issue: cmd/internal/obj/riscv: use signed immediates for U-instructions

Change https://golang.org/cl/216258 mentions this issue: cmd/objdump: disable unsupported tests on riscv64

Change https://golang.org/cl/216259 mentions this issue: cmd/go: disable link syso test on linux/riscv64

Change https://golang.org/cl/216337 mentions this issue: go/analysis/passes/asmdecl: add support for riscv64

Change https://golang.org/cl/216260 mentions this issue: cmd/vendor: cherry pick asm_linux_riscv64.s for x/sys/unix

Change https://golang.org/cl/216261 mentions this issue: vendor: provide golang.org/x/sys/cpu/cpu_riscv64.go

Change https://golang.org/cl/216262 mentions this issue: cmd/vendor: provide riscv64 support in tools/go/analysis/passes/asmdecl

Change https://golang.org/cl/216263 mentions this issue: test: adjust tests for riscv64

Change https://golang.org/cl/216517 mentions this issue: cmd/compile: disable open-coded defers on riscv64

Change https://golang.org/cl/216757 mentions this issue: doc/go1.14: document RISC-V support

Change https://golang.org/cl/216758 mentions this issue: cmd/dist: remove riscv64 from set of incomplete ports

Change https://golang.org/cl/216777 mentions this issue: test: disable the live test on riscv64

Change https://golang.org/cl/216765 mentions this issue: cmd/buildlet: add riscv64 buildlet

Change https://golang.org/cl/216841 mentions this issue: dashboard: skip riscv64 with a TODO in TestTryBotsCompileAllPorts

This still needs a trybot (either real or a misc-compile one) per https://golang.org/wiki/PortingPolicy; reopening to track completing that work. CL 216841 has skipped a test that was catching this problem, and it adds a TODO that must be resolved in order to close this issue again.

I had just noticed the same issue and filed #36871 to track it.

Ok, I'll update the TODO in CL 216841 to point to that more specific issue.

Let's keep this overall tracking issue open until #36871 is resolved, in order to avoid making it seem like the work to add a RISC-V port is complete.

Change https://golang.org/cl/217103 mentions this issue: golang.org/x/sys: update to v0.0.0-20200106114638-5f8ca72cd632

@dmitshur - I do not see any reference to trybots in the PortingPolicy document, do you mean builder? If so, there is a builder for this run by @bradfitz , although it currently appears to be missing. I can also run a builder once the issue mentioned in https://github.com/golang/go/issues/25498#issuecomment-570783627 is addressed.

Change https://golang.org/cl/217300 mentions this issue: [release-branch.go1.14-cmd] unix: provide linux/riscv64 assembly for syscalls

Change https://golang.org/cl/217339 mentions this issue: [release-branch.go1.14-std] cpu: add basic support for GOARCH=riscv64

Change https://golang.org/cl/217301 mentions this issue: [release-branch.go1.14] go/analysis/passes/asmdecl: add support for riscv64

Change https://golang.org/cl/217359 mentions this issue: go.mod: update golang.org/x/sys to fix riscv64 build

Change https://golang.org/cl/211917 mentions this issue: cmd/internal/obj/riscv: rework instruction generation

Would it be possible to upload rc1 binaries to the download page?

@davidlt, RISC-V is still considered an experimental port in Go 1.14 so we won't be providing downloads.

@davidlt It is quite easy to bootstrap golang from another architecture (e.g. amd64), see for example:
https://github.com/carlosedp/riscv-bringup/blob/master/build-golang.md

I've also built Go 1.14rc1 for riscv64 and made the tarball available on https://github.com/carlosedp/riscv-bringup/releases.

@dmitshur - is there anything preventing this issue from being closed?

cgo support :)

cgo support for riscv is tracked in #36641

Change https://golang.org/cl/240377 mentions this issue: doc: add riscv64 to ports list

Anyone having a a desire to support RISC-V for https://go.googlesource.com/gollvm/ ?

Change https://golang.org/cl/250997 mentions this issue: doc: add linux/riscv64 valid combination

Experimental support was added in Go 1.14 and Go 1.15 improved stability and performance. Support for cgo on linux/riscv64 is tracked in #36641.

Thus, I'm considering basic support for RISC-V to be done and am closing this issue. Let's open separate, specific issues for any further development (e.g. gollvm support) and improvements.

Thanks everybody for contributing!

Change https://golang.org/cl/257917 mentions this issue: dashboard: add linux-riscv64-jsing builder (reverse)

Was this page helpful?
0 / 5 - 0 ratings