summaryrefslogtreecommitdiff
path: root/includes
diff options
context:
space:
mode:
authorKarel Gardas <karel.gardas@centrum.cz>2011-07-05 20:12:14 +0200
committerManuel M T Chakravarty <chak@cse.unsw.edu.au>2011-08-10 22:03:41 +1000
commit226541c418258e486399a6ebe3814bdac99af461 (patch)
tree0403ac3bbc011cd7e2f8ebaf703311dc1421d743 /includes
parent330dff34ddc45eb0adc8d098a55f491cce0ea108 (diff)
downloadhaskell-226541c418258e486399a6ebe3814bdac99af461.tar.gz
make StgReturn and cas functions Thumb friendly
Diffstat (limited to 'includes')
-rw-r--r--includes/stg/SMP.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/includes/stg/SMP.h b/includes/stg/SMP.h
index 0b7592d690..4770db960d 100644
--- a/includes/stg/SMP.h
+++ b/includes/stg/SMP.h
@@ -216,8 +216,10 @@ cas(StgVolatilePtr p, StgWord o, StgWord n)
"1: ldrex %1, [%2]\n"
" mov %0, #0\n"
" teq %1, %3\n"
+ " it eq\n"
" strexeq %0, %4, [%2]\n"
" teq %0, #1\n"
+ " it eq\n"
" beq 1b\n"
: "=&r"(tmp), "=&r"(result)
: "r"(p), "r"(o), "r"(n)