Advice needed: programmatically generating primops?

Geoffrey Mainland mainland at
Fri Feb 15 12:17:20 CET 2013

That was what I wanted to do at first, but I don't think it's possible.

First of all, on Linux at least, we invoke the preprocessor with
-traditional, so concatenation is not available. That could be changed.

Without -traditional, CPP doesn't like the # characters in the names of
our primops. If you see how to get around that issue, please let me know


On 02/15/2013 11:08 AM, Gábor Lehel wrote:
> Could it be done with CPP macros perhaps, instead of a separate code
> generator program? If the boilerplate is fairly regular and only
> requires placeholder-substitution, identifier concatenation and
> stringification, it could be an option. Just a thought.
> On Fri, Feb 15, 2013 at 11:51 AM, Geoffrey Mainland
> <mainland at> wrote:
>> Hi All,
>> There is a huge amount of boilerplate involved in adding a full
>> complement of vector primops to GHC. I would like to reduce this
>> boilerplate by programmatically generating the vector primops. My plan
>> is to add utils/genvecprimops and #include its output into
>> primops.txt.pp.
>> Does this sound reasonable? Any objections? While I'm at it, is there
>> any related cleanup I could undertake?
>> Thanks,
>> Geoff
>> _______________________________________________
>> ghc-devs mailing list
>> ghc-devs at

More information about the ghc-devs mailing list