summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorÖmer Sinan Ağacan <omeragacan@gmail.com>2019-06-10 12:40:37 +0300
committerMarge Bot <ben+marge-bot@smart-cactus.org>2019-06-13 23:35:19 -0400
commit71e75ba6d892e8dfb6794f0ce70d01c9521b77c5 (patch)
tree981c9a732d236220638d7d20262b7130251042de
parent7bc5d6c6578ab9d60a83b81c7cc14819afef32ba (diff)
downloadhaskell-71e75ba6d892e8dfb6794f0ce70d01c9521b77c5.tar.gz
Remove unused Unique field from StgFCallOp
Fixes #16696
-rw-r--r--compiler/codeGen/StgCmmExpr.hs2
-rw-r--r--compiler/codeGen/StgCmmPrim.hs2
-rw-r--r--compiler/stgSyn/CoreToStg.hs2
-rw-r--r--compiler/stgSyn/StgSyn.hs16
4 files changed, 9 insertions, 13 deletions
diff --git a/compiler/codeGen/StgCmmExpr.hs b/compiler/codeGen/StgCmmExpr.hs
index b49cee39c2..70a044a7ab 100644
--- a/compiler/codeGen/StgCmmExpr.hs
+++ b/compiler/codeGen/StgCmmExpr.hs
@@ -577,7 +577,7 @@ isSimpleScrut _ _ = return False
isSimpleOp :: StgOp -> [StgArg] -> FCode Bool
-- True iff the op cannot block or allocate
-isSimpleOp (StgFCallOp (CCall (CCallSpec _ _ safe)) _ _) _ = return $! not (playSafe safe)
+isSimpleOp (StgFCallOp (CCall (CCallSpec _ _ safe)) _) _ = return $! not (playSafe safe)
-- dataToTag# evalautes its argument, see Note [dataToTag#] in primops.txt.pp
isSimpleOp (StgPrimOp DataToTagOp) _ = return False
isSimpleOp (StgPrimOp op) stg_args = do
diff --git a/compiler/codeGen/StgCmmPrim.hs b/compiler/codeGen/StgCmmPrim.hs
index f5b8e0f3d6..2d56bf41d5 100644
--- a/compiler/codeGen/StgCmmPrim.hs
+++ b/compiler/codeGen/StgCmmPrim.hs
@@ -71,7 +71,7 @@ cgOpApp :: StgOp -- The op
-> FCode ReturnKind
-- Foreign calls
-cgOpApp (StgFCallOp fcall ty _) stg_args res_ty
+cgOpApp (StgFCallOp fcall ty) stg_args res_ty
= cgForeignCall fcall ty stg_args res_ty
-- Note [Foreign call results]
diff --git a/compiler/stgSyn/CoreToStg.hs b/compiler/stgSyn/CoreToStg.hs
index 3187298425..6717ad9587 100644
--- a/compiler/stgSyn/CoreToStg.hs
+++ b/compiler/stgSyn/CoreToStg.hs
@@ -539,7 +539,7 @@ coreToStgApp _ f args ticks = do
-- A regular foreign call.
FCallId call -> ASSERT( saturated )
- StgOpApp (StgFCallOp call (idType f) (idUnique f)) args' res_ty
+ StgOpApp (StgFCallOp call (idType f)) args' res_ty
TickBoxOpId {} -> pprPanic "coreToStg TickBox" $ ppr (f,args')
_other -> StgApp f args'
diff --git a/compiler/stgSyn/StgSyn.hs b/compiler/stgSyn/StgSyn.hs
index cc212c54ca..4922c15d3f 100644
--- a/compiler/stgSyn/StgSyn.hs
+++ b/compiler/stgSyn/StgSyn.hs
@@ -82,7 +82,6 @@ import PrimOp ( PrimOp, PrimCall )
import TyCon ( PrimRep(..), TyCon )
import Type ( Type )
import RepType ( typePrimRep1 )
-import Unique ( Unique )
import Util
import Data.List.NonEmpty ( NonEmpty, toList )
@@ -686,14 +685,11 @@ data StgOp
| StgPrimCallOp PrimCall
- | StgFCallOp ForeignCall Type Unique
- -- The Unique is occasionally needed by the C pretty-printer
- -- (which lacks a unique supply), notably when generating a
- -- typedef for foreign-export-dynamic. The Type, which is
- -- obtained from the foreign import declaration itself, is
- -- needed by the stg-to-cmm pass to determine the offset to
- -- apply to unlifted boxed arguments in StgCmmForeign.
- -- See Note [Unlifted boxed arguments to foreign calls]
+ | StgFCallOp ForeignCall Type
+ -- The Type, which is obtained from the foreign import declaration
+ -- itself, is needed by the stg-to-cmm pass to determine the offset to
+ -- apply to unlifted boxed arguments in StgCmmForeign. See Note
+ -- [Unlifted boxed arguments to foreign calls]
{-
************************************************************************
@@ -864,7 +860,7 @@ pprStgAlt indent (con, params, expr)
pprStgOp :: StgOp -> SDoc
pprStgOp (StgPrimOp op) = ppr op
pprStgOp (StgPrimCallOp op)= ppr op
-pprStgOp (StgFCallOp op _ _) = ppr op
+pprStgOp (StgFCallOp op _) = ppr op
instance Outputable AltType where
ppr PolyAlt = text "Polymorphic"