<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div>(Reposting since this got cross-posted sort of oddly and I wasn't subscribed yet)</div><div><br></div>I'm having an odd problem as I try to define my own primop, it seems that some docs may be out of date with respect to all of the touch points for a simple primop addition. &nbsp;I've followed what the various wiki pages have to offer (primarily&nbsp;<a href="http://hackage.haskell.org/trac/ghc/wiki/AddingNewPrimitiveOperations">http://hackage.haskell.org/trac/ghc/wiki/AddingNewPrimitiveOperations</a>&nbsp;and&nbsp;<a href="http://hackage.haskell.org/trac/ghc/wiki/Commentary/PrimOps">http://hackage.haskell.org/trac/ghc/wiki/Commentary/PrimOps</a>) without success. &nbsp;I even unraveled my PrimOp to be, basically, an exact copy of another PrimOp without luck.<div><br></div><div>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.</div><div><br></div><div>Here are my simple modifications:</div><div><br></div><div>./compiler/prelude/primops.txt.pp</div><div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 11px/normal Monaco; ">primop &nbsp; FloatVAddOp &nbsp; "plusFloatVec#"&nbsp; &nbsp; &nbsp; Dyadic&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 11px/normal Monaco; ">&nbsp;&nbsp; Float# -&gt; Float# -&gt; Float#</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 11px/normal Monaco; ">&nbsp;&nbsp; with commutable = True</div></div><div><br></div><div>./compiler/codeGen/CgPrimOp.hs</div><div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 11px/normal Monaco; ">translateOp FloatVAddOp<span class="Apple-tab-span" style="white-space: pre; ">        </span>= Just (MO_F_Add W32)</div></div><div><br></div><div>The compiler error is below. &nbsp;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?????</div><div><br></div><div><div>"inplace/bin/ghc-stage1" &nbsp; -H64m -O0 -fasm &nbsp; &nbsp;-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 &nbsp; -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 &nbsp;-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 &nbsp;-no-user-package-conf -rtsopts &nbsp; &nbsp; -odir compiler/stage2/build -hidir compiler/stage2/build -stubdir compiler/stage2/build -hisuf hi -osuf &nbsp;o -hcsuf hc -c compiler/iface/BinIface.hs -o compiler/stage2/build/BinIface.o</div><div>ghc-stage1: panic! (the 'impossible' happened)</div><div>&nbsp; (GHC version 7.3.20111007 for x86_64-unknown-linux):</div><div><span class="Apple-tab-span" style="white-space: pre; ">        </span>applyTypeToArgs</div><div>&nbsp; &nbsp; ghc-prim:GHC.Prim.sizeofMutableArray#{(w) v 91V} [gid[PrimOp]]</div><div>&nbsp; &nbsp; &nbsp; @ e{tv i4L2} [tv] ds{v i4Lc} [lid] i#{v i4Lg} [lid]</div><div>&nbsp; &nbsp; forall a{tv 12} [tv].</div><div>&nbsp; &nbsp; ghc-prim:GHC.Prim.MutableArray#{(w) tc 31m}</div><div>&nbsp; &nbsp; &nbsp; e{tv i4L2} [tv] a{tv 12} [tv]</div><div>&nbsp; &nbsp; -&gt; ghc-prim:GHC.Prim.Int#{(w) tc 3G}</div></div><div><br></div><div apple-content-edited="true">
<span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-size: medium; "><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-size: medium; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div>Paul Monday</div><div>Parallel Scientific, LLC.</div><div><a href="mailto:paul.monday@parsci.com">paul.monday@parsci.com</a></div><div><br></div></div></span><br class="Apple-interchange-newline"></span><br class="Apple-interchange-newline">
</div>
<br></body></html>