[Chicken-hackers] New dimensions in ABI design braindamage

2015-07-08 Thread felix . winkelmann
Hello! We are currently investigating a problem with CHICKEN code compiled on ARM64 (iOS) and it seems that the way procedure-calls are compiled is entirely incompatible with Apple's modifications of the ARM64 ABI. I'm not completely sure, but judging from the Information found at [1] and [2],

Re: [Chicken-hackers] New dimensions in ABI design braindamage

2015-07-08 Thread John Cowan
felix.winkelm...@bevuta.com scripsit: a function ptr of type typedef void (*C_proc4)(C_word, C_word, C_word, C_word, C_word) that points to a function of (say) this type void myproc(C_word c, C_word k, C_word a1, ...) will break, Yes. That's undefined behavior according to the

Re: [Chicken-hackers] Scheduler fdset assert patch

2015-07-08 Thread Jonathan Chan
Hi again, It turns out that changing the current thread's state to 'running doesn't actually work in all cases because a) unblocking from condition variables will skip a thread if its state is running b) the call to change the state back was never called because the call to the old hook would

Re: [Chicken-hackers] Scheduler fdset assert patch

2015-07-08 Thread Jonathan Chan
Hi all, I ended up having some free time before the weekend and went back to the scheduler assert problem. I wrote a test case for the bug and revised the scheduler assert patch after some further testing. In the previous patch, the thread in which the interrupt handler ran would just be removed