diff options
author | Richard Henderson <rth@redhat.com> | 2002-04-12 15:47:34 -0700 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 2002-04-12 15:47:34 -0700 |
commit | 2f15e255eda3a0ef4e8f07c0176198ec0a1be7c5 (patch) | |
tree | 20073095e154766bb4d21c028a51e77ddd6319b4 /gcc/config/sparc/sparc.h | |
parent | ef290537a3018e8ce7f449b8b3dfefa7efcc2be6 (diff) | |
download | gcc-2f15e255eda3a0ef4e8f07c0176198ec0a1be7c5.zip gcc-2f15e255eda3a0ef4e8f07c0176198ec0a1be7c5.tar.gz gcc-2f15e255eda3a0ef4e8f07c0176198ec0a1be7c5.tar.bz2 |
recog.c (offsettable_address_p): Match the logic in adjust_address.
* recog.c (offsettable_address_p): Match the logic in adjust_address.
* config/sparc/sparc.h (LEGITIMIZE_RELOAD_ADDRESS): Handle TFmode
in 64-bit mode only. Use only for 32-bit or MEDLOW.
From-SVN: r52250
Diffstat (limited to 'gcc/config/sparc/sparc.h')
-rw-r--r-- | gcc/config/sparc/sparc.h | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/gcc/config/sparc/sparc.h b/gcc/config/sparc/sparc.h index 3ebe626..d48b8dd 100644 --- a/gcc/config/sparc/sparc.h +++ b/gcc/config/sparc/sparc.h @@ -2336,12 +2336,13 @@ do { \ /* Decompose SImode constants into hi+lo_sum. We do have to \ rerecognize what we produce, so be careful. */ \ if (CONSTANT_P (X) \ - && (MODE != TFmode || TARGET_V9) \ + && (MODE != TFmode || TARGET_ARCH64) \ && GET_MODE (X) == SImode \ && GET_CODE (X) != LO_SUM && GET_CODE (X) != HIGH \ && ! (flag_pic \ && (symbolic_operand (X, Pmode) \ - || pic_address_needs_scratch (X)))) \ + || pic_address_needs_scratch (X))) \ + && sparc_cmodel <= CM_MEDLOW) \ { \ X = gen_rtx_LO_SUM (GET_MODE (X), \ gen_rtx_HIGH (GET_MODE (X), X), X); \ |