This is the mail archive of the
libffi-discuss@sourceware.org
mailing list for the libffi project.
Compiling libffi with Linux icc
- From: Alex Leach <albl500 at york dot ac dot uk>
- To: libffi-discuss at sourceware dot org
- Date: Mon, 16 Apr 2012 19:51:19 +0100
- Subject: Compiling libffi with Linux icc
Dear libffi Dev's,
I'm trying to build an up-to-date version of libffi with the Intel compiler
suite on Linux, but am getting some problems, which I think you're aware of...
It's just with the definition and usage of __int128_t in x86/ffi64.c. I've
tinkered with the source code a bit, as recommended in various places on the
internet (stackoverflow and Intel forums at least), but I've only just realised
that I needed dejagnu installed to actually run the tests. 'make check' passed
before, so I submitted a patch to Python bugtracker #4130, which allows libffi
to compile at least. Now with dejagnu installed though, the tests rightly
fail.
I'm a complete novice with C, but I looked into where Intel defines __m128 (in
xmmintrin.h -
http://software.intel.com/sites/products/documentation/hpc/compilerpro/en-
us/cpp/lin/compiler_c/intref_cls/common/intref_sse_arithmetic.htm) and looked
for examples of how it might be used. If I just include that file though, I get
the following error:-
../src/x86/ffi64.c(488): error: a value of type "UINT64={unsigned long}" cannot
be assigned to an entity of type "__int128_t"
reg_args->sse[ssecount++] = *(UINT64 *) a;
Relevant looking online material mention compiler intrinsic's and SSE
instruction sets, and frankly, these are way over my head!
Any chance we could we work together towards a solution? I'm happy to run
tests and report the results back here until we can fix this. I'm running 64bit
Kubuntu 11.10 on an Intel CPU with SSE4.2 instructions and the latest Intel
compiler suite.
Cheers,
Alex
--
Alex Leach BSc. MRes.
Department of Biology
University of York
York YO10 5DD
United Kingdom
www: http://bioltfws1.york.ac.uk/~albl500
EMAIL DISCLAIMER: http://www.york.ac.uk/docs/disclaimer/email.htm