518adcca0a: "Try using arm32 implementation for fibers."
dbe232e24e: "Order of arguments might be incorrect in arm32 coroutine implementation."

It seems to cause SEGV consistently on Ubuntu armv7l eabihf:

https://rubyci.org/logs/rubyci.s3.amazonaws.com/scw-9d6766/ruby-master/log/20190625T081710Z.fail.html.gz
https://rubyci.org/logs/rubyci.s3.amazonaws.com/scw-9d6766/ruby-master/log/20190625T111708Z.fail.html.gz
This commit is contained in:
Yusuke Endoh 2019-06-25 23:31:49 +09:00
Родитель 57e1a69ea3
Коммит 730aeb2523
2 изменённых файлов: 2 добавлений и 9 удалений

Просмотреть файл

@ -2272,9 +2272,6 @@ AS_CASE(["$rb_cv_fiber_coroutine"], [yes|''], [
[x64-mingw32], [
rb_cv_fiber_coroutine=win64
],
[armv7*-linux-*], [
rb_cv_fiber_coroutine=arm32
],
[aarch64-linux], [
rb_cv_fiber_coroutine=arm64
],

Просмотреть файл

@ -9,10 +9,6 @@
.globl coroutine_transfer
coroutine_transfer:
stmia r0!, {r4-r11,sp,lr}
ldmia r1!, {r4-r11,sp,pc}
stmia r1!, {r4-r11,sp,lr}
ldmia r0!, {r4-r11,sp,pc}
bx lr
#if defined(__linux__) && defined(__ELF__)
.section .note.GNU-stack,"",%progbits
#endif