I didn't know about glasgow-haskell-users, thanks!

The files and their modifications are below, I was hoping this was going to be just a quick experiment (copying someone else's primop) … the web references identify only the two files to add an inline primop ...


./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)

Paul Monday
Parallel Scientific, LLC.




On Oct 14, 2011, at 3:59 PM, Antoine Latter wrote:

Hi Paul,

The ghc-users list might get you a quicker response to this sort of
question.

Maybe a good start would be to give us a listing of which files you've
modified so far.

Antoine

On Fri, Oct 14, 2011 at 4:49 PM, Paul Monday <paul.monday@parsci.com> wrote:
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.
paul.monday@parsci.com




_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe