Alright, I wandered through some primtype issues, but I'm having another odd 
problem as I try to define my own primop.  I've followed what the various wiki 
pages have to offer (primarily 
http://hackage.haskell.org/trac/ghc/wiki/AddingNewPrimitiveOperations and 
http://hackage.haskell.org/trac/ghc/wiki/Commentary/PrimOps) without success.  
I even unraveled my PrimOp to be, basically, an exact copy of another PrimOp 
without luck.

The primop I'm attempting to add is now very, very simple and copies FloatAddOp 
exactly so there must be an additional file I have to modify before the primop 
is "completely" added.

./compiler/prelude/primops.txt.pp
primop   FloatVAddOp   "plusFloatVec#"      Dyadic            
   Float# -> Float# -> Float#
   with commutable = True

./compiler/codeGen/CgPrimOp.hs
translateOp FloatVAddOp = Just (MO_F_Add W32)

The compiler error is below.  I have the feeling that an interface is not being 
built somewhere … this must be a simple one but I can't find any references to 
this error anywhere … has anyone seen this one before?????

"inplace/bin/ghc-stage1"   -H64m -O0 -fasm    -package-name ghc-7.3.20111007 
-hide-all-packages -i -icompiler/basicTypes -icompiler/cmm -icompiler/codeGen 
-icompiler/coreSyn -icompiler/deSugar -icompiler/ghci -icompiler/hsSyn 
-icompiler/iface -icompiler/llvmGen -icompiler/main -icompiler/nativeGen 
-icompiler/parser -icompiler/prelude -icompiler/profiling -icompiler/rename 
-icompiler/simplCore -icompiler/simplStg -icompiler/specialise 
-icompiler/stgSyn -icompiler/stranal -icompiler/typecheck -icompiler/types 
-icompiler/utils -icompiler/vectorise -icompiler/stage2/build 
-icompiler/stage2/build/autogen -Icompiler/stage2/build 
-Icompiler/stage2/build/autogen -Icompiler/../libffi/build/include 
-Icompiler/stage2 -Icompiler/../libraries/base/cbits 
-Icompiler/../libraries/base/include -Icompiler/. -Icompiler/parser 
-Icompiler/utils   -optP-DGHCI -optP-include 
-optPcompiler/stage2/build/autogen/cabal_macros.h -package Cabal-1.11.2 
-package array-0.3.0.3 -package base-4.4.0.0 -package bin-package-db-0.0.0.0 
-package bytestring-0.9.2.0 -package containers-0.4.2.0 -package 
directory-1.1.0.1 -package filepath-1.2.0.1 -package hoopl-3.8.7.2 -package 
hpc-0.5.1.0 -package old-time-1.0.0.7 -package process-1.1.0.0 -package 
template-haskell-2.6.0.0 -package unix-2.5.0.0  -Wall -fno-warn-name-shadowing 
-fno-warn-orphans -XHaskell98 -XNondecreasingIndentation -XCPP -XMagicHash 
-XUnboxedTuples -XPatternGuards -XForeignFunctionInterface -XEmptyDataDecls 
-XTypeSynonymInstances -XMultiParamTypeClasses -XFlexibleInstances -XRank2Types 
-XScopedTypeVariables -XDeriveDataTypeable -DGHCI_TABLES_NEXT_TO_CODE -DSTAGE=2 
-O0 -fasm  -no-user-package-conf -rtsopts     -odir compiler/stage2/build 
-hidir compiler/stage2/build -stubdir compiler/stage2/build -hisuf hi -osuf  o 
-hcsuf hc -c compiler/iface/BinIface.hs -o compiler/stage2/build/BinIface.o
ghc-stage1: panic! (the 'impossible' happened)
  (GHC version 7.3.20111007 for x86_64-unknown-linux):
        applyTypeToArgs
    ghc-prim:GHC.Prim.sizeofMutableArray#{(w) v 91V} [gid[PrimOp]]
      @ e{tv i4L2} [tv] ds{v i4Lc} [lid] i#{v i4Lg} [lid]
    forall a{tv 12} [tv].
    ghc-prim:GHC.Prim.MutableArray#{(w) tc 31m}
      e{tv i4L2} [tv] a{tv 12} [tv]
    -> ghc-prim:GHC.Prim.Int#{(w) tc 3G}


Paul Monday
Parallel Scientific, LLC.
[email protected]




_______________________________________________
Haskell-Cafe mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to