From: Jack Howarth <howarth.mailing.lists@gmail.com>
To: Richard Henderson <rth@redhat.com>
Cc: libffi-discuss@sourceware.org
Subject: Re: -m32 build of libffi head fails on darwin
Date: Fri, 16 Jan 2015 00:52:00 -0000 [thread overview]
Message-ID: <CADtEn-0pSoss6OGDw_BeGAY_vdjhas-P+dPTAssr8BvBkpXu7Q@mail.gmail.com> (raw)
In-Reply-To: <54B8521D.9080204@redhat.com>
Richard,
It doesn't even try to run the test. Changing...
--- configure.orig 2015-01-15 19:37:58.000000000 -0500
+++ configure 2015-01-15 19:32:27.000000000 -0500
@@ -17717,7 +17717,7 @@
fi
fi
-if test x$TARGET = xX86 || test x$TARGET = xX86_WIN32 || test
x$TARGET = xX86_64; then
+if test x$TARGET = xX86 || test x$TARGET = xX86_DARWIN || test
x$TARGET = xX86_WIN32 || test x$TARGET = xX86_64; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler
supports pc related relocs" >&5
$as_echo_n "checking assembler supports pc related relocs... " >&6; }
if ${libffi_cv_as_x86_pcrel+:} false; then :
solves the build issue using...
../configure --build=i386-apple-darwin14 --target=i386-apple-darwin14
--host=i386-apple-darwin14 --enable-debug CFLAGS="-O2 -g -m32"
CC=gcc-fsf-5.0 CXX=g++-fsf-5.0
and running...
make -k check RUNTESTFLAGS="--target_board=unix'{-m32}'"
produces...
Native configuration is i386-apple-darwin14
=== libffi tests ===
Schedule of variations:
unix/-m32
Running target unix/-m32
Using /sw/share/dejagnu/baseboards/unix.exp as board description file
for target.
Using /sw/share/dejagnu/config/unix.exp as generic interface file for target.
Using ../../testsuite/config/default.exp as tool-and-target-specific
interface file.
Running ../../testsuite/libffi.call/call.exp ...
FAIL: libffi.call/closure_simple.c -W -Wall -Wno-psabi -O0
-DABI_NUM=FFI_THISCALL -DABI_ATTR=__THISCALL__ execution test
FAIL: libffi.call/closure_simple.c -W -Wall -Wno-psabi -O0
-DABI_NUM=FFI_FASTCALL -DABI_ATTR=__FASTCALL__ execution test
FAIL: libffi.call/closure_simple.c -W -Wall -Wno-psabi -O2
-DABI_NUM=FFI_THISCALL -DABI_ATTR=__THISCALL__ execution test
FAIL: libffi.call/closure_simple.c -W -Wall -Wno-psabi -O2
-DABI_NUM=FFI_FASTCALL -DABI_ATTR=__FASTCALL__ execution test
FAIL: libffi.call/closure_simple.c -W -Wall -Wno-psabi -O3
-DABI_NUM=FFI_THISCALL -DABI_ATTR=__THISCALL__ execution test
FAIL: libffi.call/closure_simple.c -W -Wall -Wno-psabi -O3
-DABI_NUM=FFI_FASTCALL -DABI_ATTR=__FASTCALL__ execution test
FAIL: libffi.call/closure_simple.c -W -Wall -Wno-psabi -Os
-DABI_NUM=FFI_THISCALL -DABI_ATTR=__THISCALL__ execution test
FAIL: libffi.call/closure_simple.c -W -Wall -Wno-psabi -Os
-DABI_NUM=FFI_FASTCALL -DABI_ATTR=__FASTCALL__ execution test
FAIL: libffi.call/closure_simple.c -W -Wall -Wno-psabi -O2
-fomit-frame-pointer -DABI_NUM=FFI_THISCALL -DABI_ATTR=__THISCALL__
execution test
FAIL: libffi.call/closure_simple.c -W -Wall -Wno-psabi -O2
-fomit-frame-pointer -DABI_NUM=FFI_FASTCALL -DABI_ATTR=__FASTCALL__
execution test
FAIL: libffi.call/cls_align_longdouble.c -W -Wall -Wno-psabi -O0
output pattern test, is 238 0 0 0 0 0: 238 0 0
res: 238 0 0
0 0 0 0 0 0: 0 0 0
res: 0 0 0
? should match 12 4951 127 1 9320 13: 13 14271 140
?es: 13 14271 140
?2 4951 127 1 9320 13: 13 14271 140
res: 13 14271 140
FAIL: libffi.call/cls_align_longdouble.c -W -Wall -Wno-psabi -O2
output pattern test, is 238 0 0 0 nan 0: 238 nan 0
res: 238 nan 0
0 0 0 186 -0 50: 186 -0 50
res: 186 -0 50
? should match 12 4951 127 1 9320 13: 13 14271 140
?es: 13 14271 140
?2 4951 127 1 9320 13: 13 14271 140
res: 13 14271 140
FAIL: libffi.call/cls_align_longdouble.c -W -Wall -Wno-psabi -O3
output pattern test, is 238 0 0 0 nan 0: 238 nan 0
res: 238 nan 0
0 0 0 186 -inf 50: 186 -inf 50
res: 186 -inf 50
? should match 12 4951 127 1 9320 13: 13 14271 140
?es: 13 14271 140
?2 4951 127 1 9320 13: 13 14271 140
res: 13 14271 140
FAIL: libffi.call/cls_align_longdouble.c -W -Wall -Wno-psabi -Os
output pattern test, is 238 0 0 0 0 0: 238 0 0
res: 238 0 0
0 0 0 0 0 0: 0 0 0
res: 0 0 0
? should match 12 4951 127 1 9320 13: 13 14271 140
?es: 13 14271 140
?2 4951 127 1 9320 13: 13 14271 140
res: 13 14271 140
FAIL: libffi.call/cls_align_longdouble.c -W -Wall -Wno-psabi -O2
-fomit-frame-pointer output pattern test, is 238 0 0 0 nan 0: 238 nan
0
res: 238 nan 0
0 0 0 186 inf 50: 186 inf 50
res: 186 inf 50
? should match 12 4951 127 1 9320 13: 13 14271 140
?es: 13 14271 140
?2 4951 127 1 9320 13: 13 14271 140
res: 13 14271 140
FAIL: libffi.call/cls_align_longdouble_split.c -W -Wall -Wno-psabi -O0
output pattern test, is -8.58536e-1679 2.565e-4937 2.56516e-4937
2.5652e-4937 2.56532e-4937 2.56534e-4937 2.56536e-4937 2.56537e-4937
2.56547e-4937 2.56548e-4937 2.56549e-4937 2.5655e-4937 2.56551e-4937
2.56552e-4937: -8.58536e-1679 5.13048e-4937 5.13064e-4937
5.13069e-4937 5.13082e-4937 5.13085e-4937 5.13088e-4937
res: -8.58536e-1679 5.13048e-4937 5.13064e-4937 5.13069e-4937
5.13082e-4937 5.13085e-4937 5.13088e-4937
0 0 0 0 0 0 0 0 0 0 0 0 0 -0: 0 0 0 0 0 0 nan
res: 0 0 0 0 0 0 nan
? should match 1 2 3 4 5 6 7 8 9 10 11 12 13 14: 9 11 13 15 17 19 21
?es: 9 11 13 15 17 19 21
? 2 3 4 5 6 7 8 9 10 11 12 13 14: 9 11 13 15 17 19 21
res: 9 11 13 15 17 19 21
FAIL: libffi.call/cls_align_longdouble_split.c -W -Wall -Wno-psabi -O2
output pattern test, is 8.22244e-2912 2.565e-4937 2.56516e-4937
2.5652e-4937 2.56532e-4937 2.56534e-4937 2.56536e-4937 2.56537e-4937
2.56547e-4937 2.56548e-4937 2.56549e-4937 2.5655e-4937 2.56551e-4937
2.56552e-4937: 8.22244e-2912 5.13048e-4937 5.13064e-4937 5.13069e-4937
5.13082e-4937 5.13085e-4937 5.13088e-4937
res: 8.22244e-2912 5.13048e-4937 5.13064e-4937 5.13069e-4937
5.13082e-4937 5.13085e-4937 5.13088e-4937
0 0 0 0 0 0 0 0 0 0 0 0 0 -0: 0 0 0 0 0 0 nan
res: 0 0 0 0 0 0 nan
? should match 1 2 3 4 5 6 7 8 9 10 11 12 13 14: 9 11 13 15 17 19 21
?es: 9 11 13 15 17 19 21
? 2 3 4 5 6 7 8 9 10 11 12 13 14: 9 11 13 15 17 19 21
res: 9 11 13 15 17 19 21
FAIL: libffi.call/cls_align_longdouble_split.c -W -Wall -Wno-psabi -O3
output pattern test, is 8.22229e-2912 2.565e-4937 2.56516e-4937
2.5652e-4937 2.56532e-4937 2.56534e-4937 2.56536e-4937 2.56537e-4937
2.56547e-4937 2.56548e-4937 2.56549e-4937 2.5655e-4937 2.56551e-4937
2.56552e-4937: 8.22229e-2912 5.13048e-4937 5.13064e-4937 5.13069e-4937
5.13082e-4937 5.13085e-4937 5.13088e-4937
res: 8.22229e-2912 5.13048e-4937 5.13064e-4937 5.13069e-4937
5.13082e-4937 5.13085e-4937 5.13088e-4937
0 0 0 0 0 0 0 0 0 0 0 0 0 -0: 0 0 0 0 0 0 nan
res: 0 0 0 0 0 0 nan
? should match 1 2 3 4 5 6 7 8 9 10 11 12 13 14: 9 11 13 15 17 19 21
?es: 9 11 13 15 17 19 21
? 2 3 4 5 6 7 8 9 10 11 12 13 14: 9 11 13 15 17 19 21
res: 9 11 13 15 17 19 21
FAIL: libffi.call/cls_align_longdouble_split.c -W -Wall -Wno-psabi -Os
output pattern test, is 1.06679e+4487 2.565e-4937 2.56516e-4937
2.5652e-4937 2.56532e-4937 2.56534e-4937 2.56536e-4937 2.56537e-4937
2.56547e-4937 2.56548e-4937 2.56549e-4937 2.5655e-4937 2.56551e-4937
2.56552e-4937: 1.06679e+4487 5.13048e-4937 5.13064e-4937 5.13069e-4937
5.13082e-4937 5.13085e-4937 5.13088e-4937
res: 1.06679e+4487 5.13048e-4937 5.13064e-4937 5.13069e-4937
5.13082e-4937 5.13085e-4937 5.13088e-4937
0 0 0 0 0 0 0 0 0 0 0 0 0 -0: 0 0 0 0 0 0 nan
res: 0 0 0 0 0 0 nan
? should match 1 2 3 4 5 6 7 8 9 10 11 12 13 14: 9 11 13 15 17 19 21
?es: 9 11 13 15 17 19 21
? 2 3 4 5 6 7 8 9 10 11 12 13 14: 9 11 13 15 17 19 21
res: 9 11 13 15 17 19 21
FAIL: libffi.call/cls_align_longdouble_split.c -W -Wall -Wno-psabi -O2
-fomit-frame-pointer output pattern test, is -9.36423e+787 2.565e-4937
2.56516e-4937 2.5652e-4937 2.56532e-4937 2.56534e-4937 2.56536e-4937
2.56537e-4937 2.56547e-4937 2.56548e-4937 2.56549e-4937 2.5655e-4937
2.56551e-4937 2.56552e-4937: -9.36423e+787 5.13048e-4937 5.13064e-4937
5.13069e-4937 5.13082e-4937 5.13085e-4937 5.13088e-4937
res: -9.36423e+787 5.13048e-4937 5.13064e-4937 5.13069e-4937
5.13082e-4937 5.13085e-4937 5.13088e-4937
0 0 0 0 0 0 0 0 0 0 0 0 0 -0: 0 0 0 0 0 0 nan
res: 0 0 0 0 0 0 nan
? should match 1 2 3 4 5 6 7 8 9 10 11 12 13 14: 9 11 13 15 17 19 21
?es: 9 11 13 15 17 19 21
? 2 3 4 5 6 7 8 9 10 11 12 13 14: 9 11 13 15 17 19 21
res: 9 11 13 15 17 19 21
FAIL: libffi.call/cls_align_longdouble_split2.c -W -Wall -Wno-psabi
-O0 output pattern test, is -8.96711e-446 2.565e-4937 2.56516e-4937
2.5652e-4937 2.56532e-4937 3.47702e-310 3.91974e-4942 2.56537e-4937
2.56547e-4937 2.56548e-4937 2.56549e-4937 2.5655e-4937 3.47726e-310
3.92404e-4942: -8.96711e-446 5.13048e-4937 5.13064e-4937 5.13069e-4937
5.13082e-4937 6.95428e-310 7.84377e-4942
res: -8.96711e-446 5.13048e-4937 5.13064e-4937 5.13069e-4937
5.13082e-4937 6.95428e-310 7.84377e-4942
0 0 0 0 0 0 0 0 0 0 0 0 0 0: 0 0 0 0 0 0 nan
res: 0 0 0 0 0 0 nan
? should match 1 2 3 4 5 6 7 8 9 10 11 12 13 14: 9 11 13 15 17 19 21
?es: 9 11 13 15 17 19 21
? 2 3 4 5 6 7 8 9 10 11 12 13 14: 9 11 13 15 17 19 21
res: 9 11 13 15 17 19 21
FAIL: libffi.call/cls_align_longdouble_split2.c -W -Wall -Wno-psabi
-O2 output pattern test, is -8.96768e-446 2.565e-4937 2.56516e-4937
2.5652e-4937 2.56532e-4937 3.47702e-310 3.91974e-4942 2.56537e-4937
2.56547e-4937 2.56548e-4937 2.56549e-4937 2.5655e-4937 3.47726e-310
3.92404e-4942: -8.96768e-446 5.13048e-4937 5.13064e-4937 5.13069e-4937
5.13082e-4937 6.95428e-310 7.84377e-4942
res: -8.96768e-446 5.13048e-4937 5.13064e-4937 5.13069e-4937
5.13082e-4937 6.95428e-310 7.84377e-4942
0 0 0 0 0 0 0 0 0 0 0 0 0 -2.02592e-2702: 0 0 0 0 0 0 -2.02592e-2702
res: 0 0 0 0 0 0 -2.02592e-2702
? should match 1 2 3 4 5 6 7 8 9 10 11 12 13 14: 9 11 13 15 17 19 21
?es: 9 11 13 15 17 19 21
? 2 3 4 5 6 7 8 9 10 11 12 13 14: 9 11 13 15 17 19 21
res: 9 11 13 15 17 19 21
FAIL: libffi.call/cls_align_longdouble_split2.c -W -Wall -Wno-psabi
-O3 output pattern test, is -8.96838e-446 2.565e-4937 2.56516e-4937
2.5652e-4937 2.56532e-4937 3.47702e-310 3.91974e-4942 2.56537e-4937
2.56547e-4937 2.56548e-4937 2.56549e-4937 2.5655e-4937 3.47726e-310
3.92404e-4942: -8.96838e-446 5.13048e-4937 5.13064e-4937 5.13069e-4937
5.13082e-4937 6.95428e-310 7.84377e-4942
res: -8.96838e-446 5.13048e-4937 5.13064e-4937 5.13069e-4937
5.13082e-4937 6.95428e-310 7.84377e-4942
0 0 0 0 0 0 0 0 0 0 0 0 0 2.62975e+4696: 0 0 0 0 0 0 2.62975e+4696
res: 0 0 0 0 0 0 2.62975e+4696
? should match 1 2 3 4 5 6 7 8 9 10 11 12 13 14: 9 11 13 15 17 19 21
?es: 9 11 13 15 17 19 21
? 2 3 4 5 6 7 8 9 10 11 12 13 14: 9 11 13 15 17 19 21
res: 9 11 13 15 17 19 21
FAIL: libffi.call/cls_align_longdouble_split2.c -W -Wall -Wno-psabi
-Os output pattern test, is -8.22082e-2912 2.565e-4937 2.56516e-4937
2.5652e-4937 2.56532e-4937 3.47702e-310 3.91974e-4942 2.56537e-4937
2.56547e-4937 2.56548e-4937 2.56549e-4937 2.5655e-4937 3.47726e-310
3.92404e-4942: -8.22082e-2912 5.13048e-4937 5.13064e-4937
5.13069e-4937 5.13082e-4937 6.95428e-310 7.84377e-4942
res: -8.22082e-2912 5.13048e-4937 5.13064e-4937 5.13069e-4937
5.13082e-4937 6.95428e-310 7.84377e-4942
0 0 0 0 0 0 0 0 0 0 0 0 0 1.94034e-3935: 0 0 0 0 0 0 1.94034e-3935
res: 0 0 0 0 0 0 1.94034e-3935
? should match 1 2 3 4 5 6 7 8 9 10 11 12 13 14: 9 11 13 15 17 19 21
?es: 9 11 13 15 17 19 21
? 2 3 4 5 6 7 8 9 10 11 12 13 14: 9 11 13 15 17 19 21
res: 9 11 13 15 17 19 21
FAIL: libffi.call/cls_align_longdouble_split2.c -W -Wall -Wno-psabi
-O2 -fomit-frame-pointer output pattern test, is 8.96576e-446
2.565e-4937 2.56516e-4937 2.5652e-4937 2.56532e-4937 3.47702e-310
3.91974e-4942 2.56537e-4937 2.56547e-4937 2.56548e-4937 2.56549e-4937
2.5655e-4937 3.47726e-310 3.92404e-4942: 8.96576e-446 5.13048e-4937
5.13064e-4937 5.13069e-4937 5.13082e-4937 6.95428e-310 7.84377e-4942
res: 8.96576e-446 5.13048e-4937 5.13064e-4937 5.13069e-4937
5.13082e-4937 6.95428e-310 7.84377e-4942
0 0 0 0 0 0 0 0 0 0 0 0 0 2.02653e-2702: 0 0 0 0 0 0 2.02653e-2702
res: 0 0 0 0 0 0 2.02653e-2702
? should match 1 2 3 4 5 6 7 8 9 10 11 12 13 14: 9 11 13 15 17 19 21
?es: 9 11 13 15 17 19 21
? 2 3 4 5 6 7 8 9 10 11 12 13 14: 9 11 13 15 17 19 21
res: 9 11 13 15 17 19 21
FAIL: libffi.call/nested_struct5.c -W -Wall -Wno-psabi -O0 execution test
FAIL: libffi.call/nested_struct5.c -W -Wall -Wno-psabi -O2 execution test
FAIL: libffi.call/nested_struct5.c -W -Wall -Wno-psabi -O3 execution test
FAIL: libffi.call/nested_struct5.c -W -Wall -Wno-psabi -Os execution test
FAIL: libffi.call/nested_struct5.c -W -Wall -Wno-psabi -O2
-fomit-frame-pointer execution test
FAIL: libffi.call/unwindtest.cc -W -Wall -Wno-psabi -O0 execution test
FAIL: libffi.call/unwindtest.cc -W -Wall -Wno-psabi -O2 execution test
FAIL: libffi.call/unwindtest.cc -W -Wall -Wno-psabi -O3 execution test
FAIL: libffi.call/unwindtest.cc -W -Wall -Wno-psabi -Os execution test
FAIL: libffi.call/unwindtest.cc -W -Wall -Wno-psabi -O2
-fomit-frame-pointer execution test
FAIL: libffi.call/unwindtest_ffi_call.cc -W -Wall -Wno-psabi -O0 execution test
FAIL: libffi.call/unwindtest_ffi_call.cc -W -Wall -Wno-psabi -O2 execution test
FAIL: libffi.call/unwindtest_ffi_call.cc -W -Wall -Wno-psabi -O3 execution test
FAIL: libffi.call/unwindtest_ffi_call.cc -W -Wall -Wno-psabi -Os execution test
FAIL: libffi.call/unwindtest_ffi_call.cc -W -Wall -Wno-psabi -O2
-fomit-frame-pointer execution test
Running ../../testsuite/libffi.complex/complex.exp ...
Running ../../testsuite/libffi.go/go.exp ...
=== libffi Summary ===
# of expected passes 2740
# of unexpected failures 40
Jack
ps The configure change doesn't disturb the native x86_64 build on darwin14.
On Thu, Jan 15, 2015 at 6:49 PM, Richard Henderson <rth@redhat.com> wrote:
> On 01/15/2015 03:37 PM, Jack Howarth wrote:
>> ../src/x86/sysv.S:1005:Rest of line ignored. 1st junk character valued 64 (@).
>> Makefile:1230: recipe for target 'src/x86/sysv.lo' failed
>>
>> Any ideas on how to fix this issue with sysv,S?
>
> For some reason, the configure test
>
> echo '.text; foo: nop; .data; .long foo-.; .text' > conftest.s
> ...
> AC_DEFINE(HAVE_AS_X86_PCREL, 1,
> [Define if your assembler supports PC relative relocs.])
>
>
> fails on darwin. Which leads to
>
> #ifdef HAVE_AS_X86_PCREL
> # define PCREL(X) X - .
> #else
> # define PCREL(X) X@rel
> #endif
>
> which leads to the error. Curiously, "X-." does seem to work on Darwin,
> and you ought to be able to get sysv.S to compile if you edit that ifdef.
>
> If you could figure out why the assembly works, but the configure test
> doesn't, that'd be great.
>
>
> r~
prev parent reply other threads:[~2015-01-16 0:52 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-01-15 23:37 Jack Howarth
2015-01-15 23:49 ` Richard Henderson
2015-01-16 0:52 ` Jack Howarth [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=CADtEn-0pSoss6OGDw_BeGAY_vdjhas-P+dPTAssr8BvBkpXu7Q@mail.gmail.com \
--to=howarth.mailing.lists@gmail.com \
--cc=libffi-discuss@sourceware.org \
--cc=rth@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).