AArch64Fences
let DMB.NSH = try DMB.NSH with emptyset
let DMB.NSHLD = try DMB.NSHLD with emptyset
let DMB.NSHST = try DMB.NSHST with emptyset
let DMB.ISH = try DMB.ISH with emptyset
let DMB.ISHLD = try DMB.ISHLD with emptyset
let DMB.ISHST = try DMB.ISHST with emptyset
let DMB.OSH = try DMB.OSH with emptyset
let DMB.OSHLD = try DMB.OSHLD with emptyset
let DMB.OSHST = try DMB.OSHST with emptyset
let DMB.SY = try DMB.SY with emptyset
let DMB.ST = try DMB.ST with emptyset
let DMB.LD = try DMB.LD with emptyset
let DSB.NSH = try DSB.NSH with emptyset
let DSB.NSHLD = try DSB.NSHLD with emptyset
let DSB.NSHST = try DSB.NSHST with emptyset
let DSB.ISH = try DSB.ISH with emptyset
let DSB.ISHLD = try DSB.ISHLD with emptyset
let DSB.ISHST = try DSB.ISHST with emptyset
let DSB.SY = try DSB.SY with emptyset
let DSB.ST = try DSB.ST with emptyset
let DSB.LD = try DSB.LD with emptyset
let DSB.OSH = try DSB.OSH with emptyset
let DSB.OSHLD = try DSB.OSHLD with emptyset
let DSB.OSHST = try DSB.OSHST with emptyset
let ISB = try ISB with emptyset
let A = try A & (Exp & M) with emptyset
and L = try L & (Exp & M) with emptyset
and Q = try Q & (Exp & M) with emptyset
and NoRet = try NoRet with emptyset
let dmb.full = DMB.NSH | DMB.ISH | DMB.OSH | DMB.SY
let dmb.ld = DMB.NSHLD | DMB.ISHLD | DMB.OSHLD | DMB.LD
let dmb.st = DMB.NSHST | DMB.ISHST | DMB.OSHST | DMB.ST
flag ~empty (DMB.NSH | DMB.ISH | DMB.OSH |
DMB.NSHLD | DMB.ISHLD | DMB.OSHLD |
DMB.NSHST | DMB.ISHST | DMB.OSHST) as Shareability-argument-for-DMB-is-deprecated
let dsb.full = DSB.NSH | DSB.ISH | DSB.OSH | DSB.SY
let dsb.ld = DSB.NSHLD | DSB.ISHLD | DSB.OSHLD | DSB.LD
flag ~empty (DSB.NSHLD | DSB.ISHLD | DSB.OSHLD) as Maintenance-scope-for-DSB-LD-is-deprecated
let dsb.st = DSB.NSHST | DSB.ISHST | DSB.OSHST | DSB.ST
flag ~empty (DSB.NSHST | DSB.ISHST | DSB.OSHST) as Maintenance-scope-for-DSB-ST-is-deprecated