Rust has an explicit goal of zero-cost abstractions, while Go will allow more expensive abstractions in the service of simplicity.
This is for a few reasons:
Rust has support for 128-bit integers (i.e. u128) which allows for faster arithmetic when operating on what are effectively multi-u128 bignums in an elliptic curve library.
LLVM is generally more sophisticated about optimizations. It wasn't until recently that go had an SSA-based compiler, so its optimizer isn't nearly as sophisticated as LLVM's, which has been developed for many years now.
There is some ongoing work into an LLVM based compiler for Go, and LLVM now has Go as official supported bindings.