Ticket #8 (closed defect: fixed)

Opened 6 years ago

Last modified 6 years ago

branch in x86-64 _SPstore_node_conditional targeted wrong label

Reported by: gb Owned by: gb
Priority: major Milestone:
Component: Runtime (threads, GC) Version: 1.1
Keywords: Cc:

Description

If a compare-and-swap (cmpxchgq) instruction used in the subprimitive _SPstore_node_conditional failed (cleard the z flag), the subsequent branch instruction branched forward to local label 0. It should have branched backward, retrying the store-conditional.

Branching backward typically caused code in _SPprogvsave - which checks to ensure that a list of values was a proper list - to signal a confusing, spurious error.

Change History

Changed 6 years ago by gb

  • status changed from new to closed
  • resolution set to fixed

This was closed in changeset:6253; I wanted to ensure that there was a record of it somewhere.

Note: See TracTickets for help on using tickets.