Looks like I was wrong about the version number for the fix. We build our own 
64bit binaries and the guy who did our build
went looking for the 4.0.4.4 sources and saw this change in the git repo:

mono/mono/mini/mini-amd64.c:  
https://github.com/mono/mono/commit/061f993b6878585a75fbb4de39b89bf3b4aca348

"Add support for version of pthread_getspecific when launching from Xcode with 
LLDB attached."

That seems to be the key change, and we just grafted that change into our older 
4.0.2.X sources.

Thanks to Jonathan, below, for pointing out that 4.0.4.4 likely did not contain 
this fix.

Sorry for the confusion,
DaveB

On Nov 5, 2015, at 12:00 PM, 
[email protected]<mailto:[email protected]> 
wrote:

Message: 5
Date: Thu, 05 Nov 2015 17:03:46 +0000
From: Jonathan Mitchell 
<[email protected]<mailto:[email protected]>>
To: "[email protected]<mailto:[email protected]>" 
<[email protected]<mailto:[email protected]>>
Subject: Re: Crash running C code built on OS X El Capitan in Xcode 7
Message-ID: 
<[email protected]<mailto:[email protected]>>
Content-Type: text/plain; charset=utf-8

I concur with these reports.
lldb works fine on its own.
I believe xcode is the perhaps unwitting culprit.

See this commit 
https://github.com/mono/mono/commit/3adcd34f783a870cc07ab8d9c3b2782328b0938f

I would be lying if I said I fully understood what is happening here.
The code seems to be looking for a specific set of of assembler instructions 
for pthread_getspecific (thread local storage getter).
From this it pulls out an offset which it uses when jitting IL thread local 
storage access, I think!
Xcode it seems monkeys with pthread_getspecific (why, anyone?) and Mono fails.

I patched my own 4.0.0 branch of Mono with this commit and things looking 
promising,
I will probably try and get this commit pulled into the 4.0 and 4.3 branches.
It has been committed not master but that is a bit bleeding edge.

What really, really, really threw me on this was that my bundle unit test code 
always worked under Xcode 7.
Yet my application code always failed.
So perhaps Xcode doesn’t always do the switcheroo on pthread_getspecific.

J

On 3 Nov 2015, at 22:32, Dave Burnard 
<[email protected]<mailto:[email protected]>> wrote:

We see a similar crash in our app in mono-runtime initialization when trying to 
debug on El Cap.
In our scenario it crashes launching the app under Xcode 6.X and Xcode 7, but 
the app runs fine from the Finder, command line, or under lldb.

I posted about this on the 
[email protected]<mailto:[email protected]> list and a few 
others appear to be seeing this as well, but no remedy has been suggested.

Dave Burnard


Message: 2
Date: Tue, 03 Nov 2015 11:43:32 +0000
From: Sak Wathanasin 
<[email protected]<mailto:[email protected]>>
To: [email protected]<mailto:[email protected]>
Subject: Re: Crash running C code built on OS X El Capitan in Xcode 7
Message-ID:
<8bd9be893d7bbe7c9c5e021409256063.squir...@post.network-analysis.ltd.uk<mailto:8bd9be893d7bbe7c9c5e021409256063.squir...@post.network-analysis.ltd.uk>>

Content-Type: text/plain; charset=iso-8859-1


On Mon, November 2, 2015 17:24, Jens Alfke wrote:

If you do keep troubleshooting on your own, what I would try next is starting 
an lldb session from
a shell and running your program in it. That will isolate whether it's 
something to do with
Xcode itself.

I'm seeing this crash in the mono runtime as well and I can confirm that it 
runs fine in lldb when
invoked from the command line but not when invoked from Xcode (7.0, 7.1; works 
in 6.4). When I was
trying to get our app EC-ready I had to resort to using lldb directly and the 
good old print
statements inserted into the code.

--
Sak Wathanasin
Network Analysis Limited           
http://www.network-analysis.ltd.uk<http://www.network-analysis.ltd.uk/>

3 Edison Buildings, Electric Wharf, Coventry CV1 4JA, UK
Registered in England No: 2407211
Phone: (+44) 24 7655 12 20     Mobile: (+44) 79 70 75 19 12
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Xcode-users mailing list      
([email protected]<mailto:[email protected]>)
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/xcode-users/jonathan%40mugginsoft.com

This email sent to [email protected]<mailto:[email protected]>



 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Xcode-users mailing list      ([email protected])
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/xcode-users/archive%40mail-archive.com

This email sent to [email protected]

Reply via email to