Change-Id: I03e2a573eb778591071db4f783585a5d71a14c03
Reviewed-on: https://go-review.googlesource.com/c/go/+/227005
Run-TryBot: Lynn Boger <laboger@linux.vnet.ibm.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Lynn Boger <laboger@linux.vnet.ibm.com>
// Instruction layout.
const (
- funcAlign = 16
+ funcAlign = 16
+ funcAlignMask = funcAlign - 1
)
const (
func addpad(pc, a int64, ctxt *obj.Link) int {
switch a {
case 8:
- if pc%8 != 0 {
+ if pc&7 != 0 {
return 4
}
case 16:
- switch pc % 16 {
+ switch pc & 15 {
case 4, 12:
return 4
case 8:
c.cursym.Size = pc
}
- if pc%funcAlign != 0 {
- pc += funcAlign - (pc % funcAlign)
+ if r := pc & funcAlignMask; r != 0 {
+ pc += funcAlign - r
}
c.cursym.Size = pc