diff options
author | Yusuke Endoh <[email protected]> | 2019-06-25 23:31:49 +0900 |
---|---|---|
committer | Yusuke Endoh <[email protected]> | 2019-06-25 23:32:26 +0900 |
commit | 730aeb2523fadd816b07e0e5322fb79841efc709 (patch) | |
tree | 4a07a4df4de8543acaf372363c9cb0b2a303b6e0 | |
parent | 57e1a69ea38d30bc249553e5fe15295ae0f5af81 (diff) |
Revert 518adcca0a and dbe232e24e
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
-rw-r--r-- | configure.ac | 3 | ||||
-rw-r--r-- | coroutine/arm32/Context.S | 8 |
2 files changed, 2 insertions, 9 deletions
diff --git a/configure.ac b/configure.ac index 8c431ad70b..5f2fe6b6c1 100644 --- a/configure.ac +++ b/configure.ac @@ -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 ], diff --git a/coroutine/arm32/Context.S b/coroutine/arm32/Context.S index b2bb2ae303..c2b93d0a34 100644 --- a/coroutine/arm32/Context.S +++ b/coroutine/arm32/Context.S @@ -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 |