11.34 DSB

Data Synchronization Barrier.

Syntax

DSB{cond} {option}

where:

cond

is an optional condition code.

Note:

cond is permitted only in Thumb code. This is an unconditional instruction in ARM.

option

is an optional limitation on the operation of the hint. Permitted values are:

SY

Full system DSB operation. This is the default and can be omitted.

ST

DSB operation that waits only for stores to complete.

ISH

DSB operation only to the inner shareable domain.

ISHST

DSB operation that waits only for stores to complete, and only to the inner shareable domain.

NSH

DSB operation only out to the point of unification.

NSHST

DSB operation that waits only for stores to complete and only out to the point of unification.

OSH

DSB operation only to the outer shareable domain.

OSHST

DSB operation that waits only for stores to complete, and only to the outer shareable domain.

Operation

Data Synchronization Barrier acts as a special kind of memory barrier. No instruction in program order after this instruction executes until this instruction completes. This instruction completes when:

  • All explicit memory accesses before this instruction complete.

  • All Cache, Branch predictor and TLB maintenance operations before this instruction complete.

Alias

The following alternative values of option are supported for DSB, but ARM recommends that you do not use them:

  • SH is an alias for ISH.

  • SHST is an alias for ISHST.

  • UN is an alias for NSH.

  • UNST is an alias for NSHST.

Architectures

This ARM and 32-bit Thumb instruction is available in ARMv7.

There is no 16-bit version of this instruction in Thumb.

Non-ConfidentialPDF file icon PDF versionARM DUI0473M
Copyright © 2010-2016 ARM Limited or its affiliates. All rights reserved.