summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYusuke Endoh <mame@ruby-lang.org>2019-06-25 23:31:49 +0900
committerYusuke Endoh <mame@ruby-lang.org>2019-06-25 23:32:26 +0900
commit730aeb2523fadd816b07e0e5322fb79841efc709 (patch)
tree4a07a4df4de8543acaf372363c9cb0b2a303b6e0
parent57e1a69ea38d30bc249553e5fe15295ae0f5af81 (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.ac3
-rw-r--r--coroutine/arm32/Context.S8
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