diff options
author | SUGIOKA Toshinobu <sugioka@itonet.co.jp> | 2009-08-11 05:57:35 +0900 |
---|---|---|
committer | Kaz Kojima <kkojima@gcc.gnu.org> | 2009-08-10 20:57:35 +0000 |
commit | 092f3f979569abd4605248ec6dcbe491994754ba (patch) | |
tree | 7b369ce98fb57352c5441746a93a4025b1c4ce38 | |
parent | e8f43da6f9d34f17f3e6e4adbf42e79addb5e217 (diff) | |
download | gcc-092f3f979569abd4605248ec6dcbe491994754ba.zip gcc-092f3f979569abd4605248ec6dcbe491994754ba.tar.gz gcc-092f3f979569abd4605248ec6dcbe491994754ba.tar.bz2 |
re PR target/41015 (SH: miscompilation for sh4-linux)
PR target/41015
* longlong.h [__sh__] (udiv_qrnnd): Add T register to clobber list.
(sub_ddmmss): Likewise.
From-SVN: r150635
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/longlong.h | 4 |
2 files changed, 8 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 8cee76a..b9418b2 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2009-08-10 SUGIOKA Toshinobu <sugioka@itonet.co.jp> + + PR target/41015 + * longlong.h [__sh__] (udiv_qrnnd): Add T register to clobber list. + (sub_ddmmss): Likewise. + 2009-08-10 Andreas Tobler <a.tobler@schweiz.org> PR bootstrap/41018 diff --git a/gcc/longlong.h b/gcc/longlong.h index 57308bd..11e7013 100644 --- a/gcc/longlong.h +++ b/gcc/longlong.h @@ -982,7 +982,7 @@ UDItype __umulsidi3 (USItype, USItype); " or r1,%0" \ : "=r" (q), "=&z" (r) \ : "1" (n1), "r" (n0), "rm" (d), "r" (&__udiv_qrnnd_16) \ - : "r1", "r2", "r4", "r5", "r6", "pr"); \ + : "r1", "r2", "r4", "r5", "r6", "pr", "t"); \ } while (0) #define UDIV_TIME 80 @@ -990,7 +990,7 @@ UDItype __umulsidi3 (USItype, USItype); #define sub_ddmmss(sh, sl, ah, al, bh, bl) \ __asm__ ("clrt;subc %5,%1; subc %4,%0" \ : "=r" (sh), "=r" (sl) \ - : "0" (ah), "1" (al), "r" (bh), "r" (bl)) + : "0" (ah), "1" (al), "r" (bh), "r" (bl) : "t") #endif /* __sh__ */ |