I never used LLVM so I'm looking at the manual right now. It's explained here:

http://llvm.org/docs/CommandGuide/llc.html#cmdoption-mcpu

It autodetects the cpu and optimizes for it.
As I understand, in order to produce generic code you should pass -mcpu=i686 or -mcpu=x86_64. They can be passed to the ghc via -optlc, e.g. -optlc="-mcpu=x86_64".
I'm going to look more carefully to see what is the best option to pass.


On Sun, Apr 27, 2014 at 10:32 PM, Magnus Therning <magnus@therning.org> wrote:
On Sun, Apr 27, 2014 at 10:16:30PM +0200, Nicola Squartini wrote:
> Is it possible that LLVM automatically optimizes for your
> architecture or triggers the use of some simd that is not present on
> my AMDs?

I suppose that might be the case.  It is possible to pass options to
specific parts of the compilation process, but I have never looked at
any of this before so help would be very appreciated.

/M

--
Magnus Therning                      OpenPGP: 0xAB4DFBA4
email: magnus@therning.org   jabber: magnus@therning.org
twitter: magthe               http://therning.org/magnus

Perl is another example of filling a tiny, short-term need, and then
being a real problem in the longer term.
     -- Alan Kay