cmd/link: add Minalign field to ld.Arch
The new Minalign field sets the minimum alignment for all symbols. This is required for the upcoming s390x port which requires symbols be 2-byte aligned for efficient relative addressing. All preexisting architectures have Minalign set to 1 which means that this commit should have no effect. I tested values of 2, 4 and 8 on linux amd64 and the tests appear to pass. Increasing Minalign to 16 appears to break the runtime. I think this is due to assumptions made about the layout of module data. toolstash -cmp on linux amd64 shows no changes due to this commit. Resolves #14604 Change-Id: I0fe042d52c4e4732eba5fabcd0c31102a2408764 Reviewed-on: https://go-review.googlesource.com/20149Reviewed-by: Minux Ma <minux@golang.org> Run-TryBot: Minux Ma <minux@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
Showing
Please register or sign in to comment