diff options
author | Scott Bambrough <scottb@netwinder.org> | 2000-02-09 20:51:40 +0000 |
---|---|---|
committer | Nick Clifton <nickc@cygnus.com> | 2000-02-09 20:51:40 +0000 |
commit | bd7bb35377edb5cb83b90ab72e9a6f8466afce0b (patch) | |
tree | 99de9e2cad3133de1fc700f9fe2392611b886608 | |
parent | e4d2bcb3521d97c64bd2a377643d44f09c5e3aae (diff) |
In PIC mode, make sure that a constant source address is legitimate.
git-svn-id: https://gcc.gnu.org/svn/gcc/branches/merged-arm-thumb-backend-branch@31872 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/arm/arm.md | 5 |
2 files changed, 9 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 3a3ac8b1fe2..dbb44d57532 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2000-02-09 Scott Bambrough <scottb@netwinder.org> + + * config/arm/arm.md (movsi): In PIC mode, make sure that a + constant source address is legitimate. + 2000-02-09 Philip Blundell <pb@futuretv.com> * config/arm/arm.c (legitimize_pic_address): Handle LABEL_REF diff --git a/gcc/config/arm/arm.md b/gcc/config/arm/arm.md index 62e1f09d276..afeb238c270 100644 --- a/gcc/config/arm/arm.md +++ b/gcc/config/arm/arm.md @@ -3793,7 +3793,10 @@ } } - if (CONSTANT_P (operands[1]) && flag_pic) + if (flag_pic + && (CONSTANT_P (operands[1]) + || symbol_mentioned_p (operands[1]) + || label_mentioned_p (operands[1]))) operands[1] = legitimize_pic_address (operands[1], SImode, ((reload_in_progress || reload_completed) ? operands[0] : 0)); |