Subject: Re: [boost] [context] Floating Point Exception
From: Oliver Kowalke (oliver.kowalke_at_[hidden])
Date: 2011-07-01 15:44:39
Am 29.06.2011 20:18, schrieb Daniel Larimer:
> Attempting to use the latest Boost.Context implementation on Mac OS X and
> everything was going fine except for a few small issues:
> 1) fcontext_x86_64_sysv_macho_gas.S fails to compile because:
> fcontext_x86_64_sysv_macho_gas.S:50:Unknown pseudo-op: .type
> fcontext_x86_64_sysv_macho_gas.S:50:Rest of line ignored. 1st junk character
> valued 95 (_).
> fcontext_x86_64_sysv_macho_gas.S:51:Alignment too large: 15. assumed.
> 2) I can fix those errors by commenting out the .type line and changing to
> .balign 16 or .align 8
> 3) Compiled with:
> gcc-4.5.0 -o fcontext_x86_64_sysv_macho_gas.S.o -c
could you write a little helloworld-app and compile it with -S and send
me the generated assembler?
> 4) protected_stack() cannot map /dev/zero
> - solutions were to mkfile -n 1m /tmp/zero and then open that
> - use ::mmap( 0, size__, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANON,
> -1, 0); instead of specifying any file.
MAP_ANON is not standard - have think about it (would require to test
for addition additional preprocessor macros)
> After getting all of those things "working" I attempted to print out a
> floating point number and it dies deep inside __ntoa(), but I could get it
> to crash by doing any floating point operations from within the contexts
fixed missing fp x87 word initialisation
> I noticed that none of the examples test for floating point ops. You might
> want to include that as part of your standard testing.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk