-
Notifications
You must be signed in to change notification settings - Fork 18.3k
Open
golang/arch
#10Labels
NeedsFixThe path to resolution is known, but the work has not been done.The path to resolution is known, but the work has not been done.compiler/runtimeIssues related to the Go compiler and/or runtime.Issues related to the Go compiler and/or runtime.help wanted
Milestone
Description
Build this program with GOAMD64=v3
:
package main
//go:noinline
func f(x, y uint64) uint64 {
return x &^ y
}
func main() {
f(0, 0)
}
Disassembling with the native objdump -d
, we get
1053b20: c4 e2 e0 f2 c0 andnq %rax, %rbx, %rax
With go tool objdump
we get
:0 0x1053b20 c4e2e0f2c0c3cc ROLL $0xcc, BL
Side note, the popcount instruction disassembles as POPCNT
, it should really disassemble as POPCNTQ
or POPCNTL
, as appropriate.
Metadata
Metadata
Assignees
Labels
NeedsFixThe path to resolution is known, but the work has not been done.The path to resolution is known, but the work has not been done.compiler/runtimeIssues related to the Go compiler and/or runtime.Issues related to the Go compiler and/or runtime.help wanted
Type
Projects
Status
Triage Backlog