profile
viewpoint

Ask questionsThe results of dumpssa generated by compilecmp and go build are different

The Head ref link: https://go-review.googlesource.com/c/go/+/239457 Env: linux/amd64 goroot_bootstrap: go version go1.14.3 linux/amd64 What did I do:

$ compilecmp -dumpssa AppendSleb128:*
compilecmp master -> HEAD
master (8c521739f2): doc/go1.15: remove encoding/xml doc
HEAD (01bc4ea6dc): cmd/compile/internal/ssa: handle more cases in fuse pass

The ssa file generated by compilecmpfor the HEAD ref: HEAD-REF-by-compilecmp.zip

The ssa file generated with the following command manually:

$ cd ~/go-for-fuse
$ GOSSAFUNC=AppendSleb128:* ./bin/go build cmd/internal/dwarf/

HEAD-REF-by-go-build.zip It can be seen that the final assembly code is a little different. The opcodes generated by the lower pass for the if branch in block b12 are different. The result generated for the master ref is the same with that generated by go build. I don't know how this difference is caused.

josharian/compilecmp

Answer questions erifan

Thanks. I should have made some mistakes, I can't reproduce it now. So close it.

useful!

Related questions

No questions were found.
source:https://uonfu.com/
Github User Rank List