diff options
author | Eric Botcazou <ebotcazou@adacore.com> | 2017-01-17 17:33:43 +0000 |
---|---|---|
committer | Eric Botcazou <ebotcazou@gcc.gnu.org> | 2017-01-17 17:33:43 +0000 |
commit | d25fabdc8e1ee25a077aa628432fad6d63b66b8f (patch) | |
tree | 26e178a547b9ab37c67e4ac8cbef02e52b418a48 | |
parent | 0e171d5408feafcd56b97c831a99d14e544b98af (diff) | |
download | gcc-d25fabdc8e1ee25a077aa628432fad6d63b66b8f.zip gcc-d25fabdc8e1ee25a077aa628432fad6d63b66b8f.tar.gz gcc-d25fabdc8e1ee25a077aa628432fad6d63b66b8f.tar.bz2 |
rs6000.c (rs6000_emit_move): Also use a TOC reference after forcing to constant memory when...
* config/rs6000/rs6000.c (rs6000_emit_move): Also use a TOC reference
after forcing to constant memory when the code model is medium.
From-SVN: r244541
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/rs6000/rs6000.c | 5 |
2 files changed, 6 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index f311ece..d63b83f 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2017-01-17 Eric Botcazou <ebotcazou@adacore.com> + + * config/rs6000/rs6000.c (rs6000_emit_move): Also use a TOC reference + after forcing to constant memory when the code model is medium. + 2017-01-17 Julia Koval <julia.koval@intel.com> PR target/76731 diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c index 37ad7d0..63c62c3 100644 --- a/gcc/config/rs6000/rs6000.c +++ b/gcc/config/rs6000/rs6000.c @@ -10980,10 +10980,7 @@ rs6000_emit_move (rtx dest, rtx source, machine_mode mode) if (TARGET_TOC && GET_CODE (XEXP (operands[1], 0)) == SYMBOL_REF - && constant_pool_expr_p (XEXP (operands[1], 0)) - && ASM_OUTPUT_SPECIAL_POOL_ENTRY_P ( - get_pool_constant (XEXP (operands[1], 0)), - get_pool_mode (XEXP (operands[1], 0)))) + && use_toc_relative_ref (XEXP (operands[1], 0), mode)) { rtx tocref = create_TOC_reference (XEXP (operands[1], 0), operands[0]); |