re PR target/64231 (SIGSEGV building glibc on aarch64-linux-gnu from r217852)

2015-02-02  Tejas Belagod  <tejas.belagod@arm.com>
	    Andrew Pinski  <pinskia@gcc.gnu.org>
	    Jakub Jelinek  <jakub@gcc.gnu.org>

	PR target/64231
	* config/aarch64/aarch64.c (aarch64_classify_symbol): Fix large
	integer typing for small model. Use IN_RANGE.


Co-Authored-By: Andrew Pinski <pinskia@gcc.gnu.org>
Co-Authored-By: Jakub Jelinek <jakub@gcc.gnu.org>

From-SVN: r220348
This commit is contained in:
Tejas Belagod 2015-02-02 15:54:59 +00:00 committed by Tejas Belagod
parent 16a71c501a
commit 3ff5d1f099
2 changed files with 10 additions and 2 deletions

View File

@ -1,3 +1,11 @@
2015-02-02 Tejas Belagod <tejas.belagod@arm.com>
Andrew Pinski <pinskia@gcc.gnu.org>
Jakub Jelinek <jakub@gcc.gnu.org>
PR target/64231
* config/aarch64/aarch64.c (aarch64_classify_symbol): Fix large
integer typing for small model. Use IN_RANGE.
2015-02-02 Richard Biener <rguenther@suse.de>
* tree-ssa-ccp.c (valueize_op_1): Always allow valueizing default-defs.

View File

@ -7083,8 +7083,8 @@ aarch64_classify_symbol (rtx x, rtx offset,
/* Same reasoning as the tiny code model, but the offset cap here is
4G. */
if (SYMBOL_REF_WEAK (x)
|| INTVAL (offset) < (HOST_WIDE_INT) -4294967263
|| INTVAL (offset) > (HOST_WIDE_INT) 4294967264)
|| !IN_RANGE (INTVAL (offset), HOST_WIDE_INT_C (-4294967263),
HOST_WIDE_INT_C (4294967264)))
return SYMBOL_FORCE_TO_MEM;
return SYMBOL_SMALL_ABSOLUTE;