Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

cmd/internal/obj/s390x: SYNC instruction encoding incorrect #42479

Closed
mundaym opened this issue Nov 10, 2020 · 1 comment
Closed

cmd/internal/obj/s390x: SYNC instruction encoding incorrect #42479

mundaym opened this issue Nov 10, 2020 · 1 comment
Labels
arch-s390x FrozenDueToAge NeedsFix
Milestone

Comments

@mundaym
Copy link
Member

@mundaym mundaym commented Nov 10, 2020

The SYNC pseudoinstruction is supposed to correspond to a 'fast serialization' instruction of the form bcr 14,0. However, in CL 197178 I accidentally changed it to be bcr 7,0 which is a no-op.

This could cause subtle issues in lock-free code since we use SYNC as a store-load memory barrier.

Related to #32428.

@mundaym mundaym added the arch-s390x label Nov 10, 2020
@mundaym mundaym added this to the Go1.16 milestone Nov 10, 2020
@mundaym mundaym self-assigned this Nov 10, 2020
@gopherbot
Copy link

@gopherbot gopherbot commented Nov 10, 2020

Change https://golang.org/cl/268797 mentions this issue: cmd/internal/obj/s390x: fix SYNC instruction encoding

@mundaym mundaym added the NeedsFix label Nov 10, 2020
@golang golang locked and limited conversation to collaborators Nov 10, 2021
@rsc rsc unassigned mundaym Jun 23, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
arch-s390x FrozenDueToAge NeedsFix
Projects
None yet
Development

No branches or pull requests

2 participants