diff options
author | Richard Kenner <kenner@gcc.gnu.org> | 1993-10-26 18:58:16 -0400 |
---|---|---|
committer | Richard Kenner <kenner@gcc.gnu.org> | 1993-10-26 18:58:16 -0400 |
commit | 78b8d850dccf9aa558ccf43e0d022819edac9092 (patch) | |
tree | 03d1910f392259621fc9d3e4c31c2ebad57dbcf9 | |
parent | 8d91dd28300ac46a2f3133a23a206be942520074 (diff) | |
download | gcc-78b8d850dccf9aa558ccf43e0d022819edac9092.zip gcc-78b8d850dccf9aa558ccf43e0d022819edac9092.tar.gz gcc-78b8d850dccf9aa558ccf43e0d022819edac9092.tar.bz2 |
(movsi): Can copy a TOC address into a register.
From-SVN: r5902
-rw-r--r-- | gcc/config/rs6000/rs6000.md | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/config/rs6000/rs6000.md b/gcc/config/rs6000/rs6000.md index e6caa7b..4e53982 100644 --- a/gcc/config/rs6000/rs6000.md +++ b/gcc/config/rs6000/rs6000.md @@ -2699,7 +2699,8 @@ if (GET_CODE (operands[0]) != REG) operands[1] = force_reg (SImode, operands[1]); - if (CONSTANT_P (operands[1]) && GET_CODE (operands[1]) != CONST_INT) + if (CONSTANT_P (operands[1]) && GET_CODE (operands[1]) != CONST_INT + && ! LEGITIMATE_CONSTANT_POOL_ADDRESS_P (operands[1])) { operands[1] = force_const_mem (SImode, operands[1]); if (! memory_address_p (SImode, XEXP (operands[1], 0)) |