diff options
author | rearnsha <rearnsha@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-06-23 10:39:50 +0000 |
---|---|---|
committer | rearnsha <rearnsha@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-06-23 10:39:50 +0000 |
commit | 42da0a294213ba2fd637f5302c450db756e0f9ce (patch) | |
tree | ca9e926d7ce307ef13d78ece0fb0fa473380de14 | |
parent | 1e6242a4a89f1f17082e7d3316c243a8cbb33dbb (diff) | |
download | ppe42-gcc-42da0a294213ba2fd637f5302c450db756e0f9ce.tar.gz ppe42-gcc-42da0a294213ba2fd637f5302c450db756e0f9ce.zip |
PR target/15927
* arm.h (THUMB_SECONDARY_OUTPUT_RELOAD_CLASS): Don't need a secondary
reload if CLASS is BASE_REGS.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83548 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/config/arm/arm.h | 2 |
2 files changed, 7 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 8bcc51ea9cb..534cfae2cae 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2004-06-23 Richard Earnshaw <rearnsha@arm.com> + + PR target/15927 + * arm.h (THUMB_SECONDARY_OUTPUT_RELOAD_CLASS): Don't need a secondary + reload if CLASS is BASE_REGS. + 2004-06-23 Richard Sandiford <rsandifo@redhat.com> * gengtype-yacc.y (option): Avoid use of non-constant struct diff --git a/gcc/config/arm/arm.h b/gcc/config/arm/arm.h index 21a5d60d8c1..736934b35a4 100644 --- a/gcc/config/arm/arm.h +++ b/gcc/config/arm/arm.h @@ -1322,7 +1322,7 @@ enum reg_class : NO_REGS) #define THUMB_SECONDARY_OUTPUT_RELOAD_CLASS(CLASS, MODE, X) \ - ((CLASS) != LO_REGS \ + ((CLASS) != LO_REGS && (CLASS) != BASE_REGS \ ? ((true_regnum (X) == -1 ? LO_REGS \ : (true_regnum (X) + HARD_REGNO_NREGS (0, MODE) > 8) ? LO_REGS \ : NO_REGS)) \ |