Both of these are lowered the same way , but they should be different.
In particular, GHC.Prim explains:
-
AddWordC#returns(result, carry) -
PlusWordC#returns(carry, result)
Honestly, this is confusing, but I guess there's some story to having two separate primops for this?