Skip to content

Latest commit

 

History

History
45 lines (36 loc) · 1.12 KB

sync_s.adoc

File metadata and controls

45 lines (36 loc) · 1.12 KB

th.sync.s

Synopsis

Broadcasts an instruction, that ensures that all preceding instructions retire earlier than this instruction and all subsequent instructions retire later than this instruction on all harts.

Mnemonic

th.sync.s

Encoding
{reg:[
    { bits:  7, name: 0xb, attr: ['custom-0, 32 bit'] },
    { bits:  5, name: 0x0 },
    { bits:  3, name: 0x0, attr: ['CMO'] },
    { bits:  5, name: 0x0 },
    { bits:  5, name: 0x19, attr: ['SYNC.S'] },
    { bits:  7, name: 0x00 },
]}
Description

This instruction ensures that all preceding instructions retire earlier than this instruction and all subsequent instructions retire later than this instruction. The instruction is executing on all harts via broadcasting.

Operation
msg := encode_out_of_order_barrier()
broadcast_to_all_harts(msg)
Permission

This instruction can be executed in all privilege levels.

Exceptions

This instruction does not trigger any exceptions.

Included in
Extension

XTheadSync ([xtheasync])