Commit 3a769784 by Alan Modra Committed by Alan Modra

rs6000.c (rs6000_cannot_force_const_mem): Match CONST high part large-toc address.

	* config/rs6000/rs6000.c (rs6000_cannot_force_const_mem): Match
	CONST high part large-toc address.
	(rs6000_tls_referenced_p): Make static.
	* config/rs6000/rs6000-protos.h (rs6000_tls_referenced_p): Delete.

From-SVN: r175219
parent d1e32c4a
2011-06-21 Alan Modra <amodra@gmail.com>
* config/rs6000/rs6000.c (rs6000_cannot_force_const_mem): Match
CONST high part large-toc address.
(rs6000_tls_referenced_p): Make static.
* config/rs6000/rs6000-protos.h (rs6000_tls_referenced_p): Delete.
2011-06-20 H.J. Lu <hongjiu.lu@intel.com>
PR middle-end/47725
......
......@@ -171,7 +171,6 @@ extern unsigned int rs6000_dbx_register_number (unsigned int);
extern void rs6000_emit_epilogue (int);
extern void rs6000_emit_eh_reg_restore (rtx, rtx);
extern const char * output_isel (rtx *);
extern bool rs6000_tls_referenced_p (rtx);
extern void rs6000_aix_asm_output_dwarf_table_ref (char *);
......
......@@ -6045,7 +6045,7 @@ rs6000_legitimize_tls_address (rtx addr, enum tls_model model)
/* Return 1 if X contains a thread-local symbol. */
bool
static bool
rs6000_tls_referenced_p (rtx x)
{
if (! TARGET_HAVE_TLS)
......@@ -6059,6 +6059,11 @@ rs6000_tls_referenced_p (rtx x)
static bool
rs6000_cannot_force_const_mem (enum machine_mode mode ATTRIBUTE_UNUSED, rtx x)
{
if (GET_CODE (x) == CONST
&& GET_CODE (XEXP (x, 0)) == PLUS
&& GET_CODE (XEXP (XEXP (x, 0), 1)) == HIGH)
return true;
return rs6000_tls_referenced_p (x);
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment