diff options
author | John Ericson <John.Ericson@Obsidian.Systems> | 2021-07-22 03:58:33 +0000 |
---|---|---|
committer | Marge Bot <ben+marge-bot@smart-cactus.org> | 2021-08-19 18:02:13 -0400 |
commit | d43442cb8f64449343be2f5516f141ef027b9e99 (patch) | |
tree | 8e7b686da96c3ab21aa5c8cae40864e618bbaf89 /compiler/GHC/StgToCmm | |
parent | 4ff4d434e9a90623afce00b43e2a5a1ccbdb4c05 (diff) | |
download | haskell-d43442cb8f64449343be2f5516f141ef027b9e99.tar.gz |
Make Int64#/Word64# unconditionally available
This prepares us to actually use them when the native size is 64 bits
too.
I more than saitisfied my curiosity finding they were gated since
47774449c9d66b768a70851fe82c5222c1f60689.
Diffstat (limited to 'compiler/GHC/StgToCmm')
-rw-r--r-- | compiler/GHC/StgToCmm/Prim.hs | 9 |
1 files changed, 0 insertions, 9 deletions
diff --git a/compiler/GHC/StgToCmm/Prim.hs b/compiler/GHC/StgToCmm/Prim.hs index 290ace9f01..e268761cd7 100644 --- a/compiler/GHC/StgToCmm/Prim.hs +++ b/compiler/GHC/StgToCmm/Prim.hs @@ -1,4 +1,3 @@ -{-# LANGUAGE CPP #-} {-# LANGUAGE LambdaCase #-} {-# OPTIONS_GHC -Wno-incomplete-uni-patterns #-} @@ -16,8 +15,6 @@ module GHC.StgToCmm.Prim ( shouldInlinePrimOp ) where -#include "MachDeps.h" - import GHC.Prelude hiding ((<*>)) import GHC.Platform @@ -1100,10 +1097,8 @@ emitPrimOp dflags primop = case primop of Word16ToInt16Op -> \args -> opNop args Int32ToWord32Op -> \args -> opNop args Word32ToInt32Op -> \args -> opNop args -#if WORD_SIZE_IN_BITS < 64 Int64ToWord64Op -> \args -> opNop args Word64ToInt64Op -> \args -> opNop args -#endif IntToWordOp -> \args -> opNop args WordToIntOp -> \args -> opNop args IntToAddrOp -> \args -> opNop args @@ -1356,7 +1351,6 @@ emitPrimOp dflags primop = case primop of Word32LtOp -> \args -> opTranslate args (MO_U_Lt W32) Word32NeOp -> \args -> opTranslate args (MO_Ne W32) -#if WORD_SIZE_IN_BITS < 64 -- Int64# signed ops Int64ToIntOp -> \args -> opTranslate64 args (\w -> MO_SS_Conv w (wordWidth platform)) MO_I64_ToI @@ -1402,7 +1396,6 @@ emitPrimOp dflags primop = case primop of Word64LeOp -> \args -> opTranslate64 args MO_U_Le MO_W64_Le Word64LtOp -> \args -> opTranslate64 args MO_U_Lt MO_W64_Lt Word64NeOp -> \args -> opTranslate64 args MO_Ne MO_x64_Ne -#endif -- Char# ops @@ -1707,7 +1700,6 @@ emitPrimOp dflags primop = case primop of let stmt = mkAssign (CmmLocal res) (CmmMachOp mop args) emit stmt -#if WORD_SIZE_IN_BITS < 64 opTranslate64 :: [CmmExpr] -> (Width -> MachOp) @@ -1717,7 +1709,6 @@ emitPrimOp dflags primop = case primop of case platformWordSize platform of PW4 -> opCallish args callish PW8 -> opTranslate args $ mkMop W64 -#endif -- | Basically a "manual" case, rather than one of the common repetitive forms -- above. The results are a parameter to the returned function so we know the |