have you tried to bootstrap your own gcc with recent binutils? i.e. --with-as=<your new binutils as>... On the other hand you may also give a try to LLVM/clang from ports and see if they support your required features...
On Sat, Mar 26, 2016 at 5:25 PM, Hannes Hauswedell <h2+lists2...@fsfe.org> wrote: > Hi folks, > > I develop software for work that uses some advanced cpu features and > parallelism. While I fully understand that high-performance is not a focus > for OpenBSD, I would still like to be able to test basic stuff on my Laptop > (which happens to run OpenBSD). So, before I get my hands dirty on this, I'd > like to ask if there are structural issues and/or policies preventing those > features from working, or whether just no-one was interested up until now (I > have done some basic searching but didn't come up with too much). > > The features in question are: > > 1) OpenMP with the GCC-port. It is disabled by default. Is there a reason > for this? Are there any known "blockers"? Should I be able to make it work, > would patches be accepted? > > 2) CPU-features like POPCNT, AVX are apparently not supported right now (or > at least not with gcc). Also if you build software with the gcc-4.9-port and > specify -march=native gcc wil produce code that actually uses instructions > that are not supported, and then fail with messages like this: > > /tmp//ccF2Aqg7.s: Assembler messages: > /tmp//ccF2Aqg7.s:1668791: Error: no such instruction: `popcntl > -4(%rbp),%eax' > /tmp//ccF2Aqg7.s:1669741: Error: no such instruction: `popcntq > -8(%rbp),%rax' > > -> Are there plans to support more modern CPU-extensions and is there a list > somewhere of which extensions are supported and which ones aren't? I guess > they could be useful for other low-level stuff like encryption, as well.. > --> If not, should the gcc-port be adapted to not offer those extensions > that aren't supported? > > Thanks and best regards, > Hannes >