summaryrefslogtreecommitdiff
path: root/compiler/GHC/Cmm/Parser.y
diff options
context:
space:
mode:
Diffstat (limited to 'compiler/GHC/Cmm/Parser.y')
-rw-r--r--compiler/GHC/Cmm/Parser.y6
1 files changed, 6 insertions, 0 deletions
diff --git a/compiler/GHC/Cmm/Parser.y b/compiler/GHC/Cmm/Parser.y
index 6ba2d9df71..29870dc647 100644
--- a/compiler/GHC/Cmm/Parser.y
+++ b/compiler/GHC/Cmm/Parser.y
@@ -1137,6 +1137,12 @@ callishMachOps platform = listToUFM $
, allWidths "load_seqcst" (\w -> MO_AtomicRead w MemOrderSeqCst)
, allWidths "store_release" (\w -> MO_AtomicWrite w MemOrderRelease)
, allWidths "store_seqcst" (\w -> MO_AtomicWrite w MemOrderSeqCst)
+ , allWidths "fetch_add" (\w -> MO_AtomicRMW w AMO_Add)
+ , allWidths "fetch_sub" (\w -> MO_AtomicRMW w AMO_Sub)
+ , allWidths "fetch_and" (\w -> MO_AtomicRMW w AMO_And)
+ , allWidths "fetch_nand" (\w -> MO_AtomicRMW w AMO_Nand)
+ , allWidths "fetch_or" (\w -> MO_AtomicRMW w AMO_Or)
+ , allWidths "fetch_xor" (\w -> MO_AtomicRMW w AMO_Xor)
]
where
allWidths