Ticket #8 (closed defect: fixed)

Opened 7 years ago

Last modified 7 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

comment:1 Changed 7 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.