Hi list,
just to let you know that this did the trick : install glib on my development 
machine without the AVX instructions (-mno-avx), and build fluidsynth/fluidXtra 
against it.
Thank you for your help
Antoine


Le 23 août 2013 à 18:10, Element Green <jgr...@users.sourceforge.net> a écrit :

> Sounds like you're onto something there.  I was not aware of VEX-prefixed AVX 
> instructions.  I thought it seemed a little fishy that the LDS instruction 
> would be used in that disassembly dump and also that it appeared that the 
> actual instruction was 8 bytes long from your successful single stepping of 
> the code.  From reading the Wikipedia article on the subject, it definitely 
> sounds like what you are experiencing.  If I understood what I read 
> correctly, 32-bit versus 64-bit mode can have an effect on which instructions 
> are valid, regardless of whether the processor supports 64 bit or not.  So if 
> you're kernel is running in 32 bit mode, then certain AVX instructions will 
> be interpreted differently than if the kernel is running 64 bit.
> 
> http://en.wikipedia.org/wiki/VEX_prefix
> 
> Best regards,
> 
> Element
> 
> 
> On Fri, Aug 23, 2013 at 4:57 AM, a...@gratin.org <a...@gratin.org> wrote:
> well,
> I installed glib as --universal, meaning that it contains both 32 bits and 64 
> bits binaries. And actually, I removed the 64 bit binary (using the lipo 
> function), because Director is a 32 bits application and all Xtras (plugins) 
> are also. So we are really running in 32 bit here. Even on MacOSX10.8, which 
> is a 64 bits kernel, but which can run 32 bits applications.
> 
> And, this instruction does _not_ crash on my MacOSX10.8 machine, and _does_ 
> crash on another MacOSX10.8 machine.
> 
> I found another possibility : AVX. I found on the net 
> (http://stackoverflow.com/questions/16389207/llvm-jit-tutorial-code-crashes-with-simple-parameterized-function-why)
>  a similar SIGILL LDS, which was actually caused by an VEX-prefixed AVX 
> instruction, which neither the processor nor the disassembler knew about, and 
> interpreted as an LDS. And AVX is available on my machine, and not on the two 
> crashing machines…
> 
> I'm investigating this now. Trying to compile glib without AVX.
> 
> Le 23 août 2013 à 00:59, Element Green <jgr...@users.sourceforge.net> a écrit 
> :
> 
>> From what I can see, that instruction is indeed an LDS instruction, which 
>> from what I read is invalid when in 64 bit mode.  It sounds like Mac OSX can 
>> be run in either 32 bit or 64 bit mode, so perhaps that is the difference 
>> between working systems and non-working systems?  I didn't bother decoding 
>> the instruction further than seeing that it was an LDS instruction.  If that 
>> is indeed what is happening, then some sort of compiler setting resulted in 
>> that instruction.  Probably need to make sure the proper compiler switches 
>> are being used for the intended architectures.
>> 
> 
> 
> _______________________________________________
> fluid-dev mailing list
> fluid-dev@nongnu.org
> https://lists.nongnu.org/mailman/listinfo/fluid-dev
> 
> 
> _______________________________________________
> fluid-dev mailing list
> fluid-dev@nongnu.org
> https://lists.nongnu.org/mailman/listinfo/fluid-dev

_______________________________________________
fluid-dev mailing list
fluid-dev@nongnu.org
https://lists.nongnu.org/mailman/listinfo/fluid-dev

Reply via email to