[Git][ghc/ghc][wip/T22010] Remove broken fetchAddWord64Addr

Jaro Reinders (@Noughtmare) gitlab at gitlab.haskell.org
Mon Jun 5 09:03:06 UTC 2023



Jaro Reinders pushed to branch wip/T22010 at Glasgow Haskell Compiler / GHC


Commits:
0ee19a05 by Jaro Reinders at 2023-06-05T11:02:52+02:00
Remove broken fetchAddWord64Addr

- - - - -


4 changed files:

- compiler/GHC/Builtin/primops.txt.pp
- compiler/GHC/StgToCmm/Prim.hs
- compiler/GHC/StgToJS/Prim.hs
- rts/RtsSymbols.c


Changes:

=====================================
compiler/GHC/Builtin/primops.txt.pp
=====================================
@@ -2576,14 +2576,6 @@ primop FetchAddAddrOp_Word "fetchAddWordAddr#" GenPrimOp
    with has_side_effects = True
         can_fail = True
 
-primop FetchAddAddrOp_Word64 "fetchAddWord64Addr#" GenPrimOp
-   Addr# -> Word64# -> State# s -> (# State# s, Word64# #)
-   {Given an address, and a value to add,
-    atomically add the value to the element. Returns the value of the
-    element before the operation. Implies a full memory barrier.}
-   with has_side_effects = True
-        can_fail = True
-
 primop FetchSubAddrOp_Word "fetchSubWordAddr#" GenPrimOp
    Addr# -> Word# -> State# s -> (# State# s, Word# #)
    {Given an address, and a value to subtract,


=====================================
compiler/GHC/StgToCmm/Prim.hs
=====================================
@@ -821,8 +821,6 @@ emitPrimOp cfg primop =
 
   FetchAddAddrOp_Word -> \[addr, n] -> opIntoRegs $ \[res] ->
     doAtomicAddrRMW res AMO_Add addr (bWord platform) n
-  FetchAddAddrOp_Word64 -> \[addr, n] -> opIntoRegs $ \[res] ->
-    doAtomicAddrRMW res AMO_Add addr b64 n
   FetchSubAddrOp_Word -> \[addr, n] -> opIntoRegs $ \[res] ->
     doAtomicAddrRMW res AMO_Sub addr (bWord platform) n
   FetchAndAddrOp_Word -> \[addr, n] -> opIntoRegs $ \[res] ->


=====================================
compiler/GHC/StgToJS/Prim.hs
=====================================
@@ -1043,8 +1043,6 @@ genPrim prof bound ty op = case op of
   CasAddrOp_Word64                  -> \[rh,rl] [a,o,oh,ol,nh,nl] -> PrimInline $ casOp2 read_u64 write_u64 (rh,rl) a o (oh,ol) (nh,nl)
 
   FetchAddAddrOp_Word               -> \[r] [a,o,v] -> PrimInline $ fetchOpAddr Add   r a o v
-  -- TODO:
-  -- FetchAddAddrOp_Word64             -> \[rh,rl] [a,i,oh,ol,nh,nl] -> PrimInline $ appT [rh,rl] "h$hs_fetchAddWord64Addr"  [a,i,oh,ol,nh,nl]
   FetchSubAddrOp_Word               -> \[r] [a,o,v] -> PrimInline $ fetchOpAddr Sub   r a o v
   FetchAndAddrOp_Word               -> \[r] [a,o,v] -> PrimInline $ fetchOpAddr BAnd  r a o v
   FetchNandAddrOp_Word              -> \[r] [a,o,v] -> PrimInline $ fetchOpAddr ((BNot .) . BAnd) r a o v


=====================================
rts/RtsSymbols.c
=====================================
@@ -902,6 +902,7 @@ extern char **environ;
       SymI_HasProto(stopHeapProfTimer)                                  \
       SymI_HasProto(requestHeapCensus)                                  \
       SymI_HasProto(atomic_inc)                                         \
+      SymI_HasProto(atomic_inc64)                                         \
       SymI_HasProto(atomic_dec)                                         \
       SymI_HasProto(hs_spt_lookup)                                      \
       SymI_HasProto(hs_spt_insert)                                      \



View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/commit/0ee19a050094e6baf8399646cfcd1f81032c24f3

-- 
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/commit/0ee19a050094e6baf8399646cfcd1f81032c24f3
You're receiving this email because of your account on gitlab.haskell.org.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/ghc-commits/attachments/20230605/34982539/attachment-0001.html>


More information about the ghc-commits mailing list