re PR target/38695 (gcc.c-torture/compile/pr37433.c ICE on trunk arm_function_in_sect...
authorJakub Jelinek <jakub@redhat.com>
Sat, 10 Jan 2009 14:02:12 +0000 (15:02 +0100)
committerJakub Jelinek <jakub@gcc.gnu.org>
Sat, 10 Jan 2009 14:02:12 +0000 (15:02 +0100)
PR target/38695
* config/arm/arm.c (arm_is_long_call_p): Don't call
arm_function_in_section_p if decl isn't a FUNCTION_DECL.

From-SVN: r143246

gcc/ChangeLog
gcc/config/arm/arm.c

index 36c5e37a823d6e6a39706774a409d7235e24438e..22b14d21b3677d71cc8408bf37d406f77d54516d 100644 (file)
@@ -1,3 +1,9 @@
+2009-01-10  Jakub Jelinek  <jakub@redhat.com>
+
+       PR target/38695
+       * config/arm/arm.c (arm_is_long_call_p): Don't call
+       arm_function_in_section_p if decl isn't a FUNCTION_DECL.
+
 2009-01-09  Steven Bosscher  <steven@gcc.gnu.org>
 
        * regrename.c (regrename_optimize): Fix dumping.
index afaade0d1cd5a179644eee067c48fa9865742cd6..dce0a523bd4d982b2715c2a1be1fa32a1723029d 100644 (file)
@@ -1,6 +1,7 @@
 /* Output routines for GCC for ARM.
    Copyright (C) 1991, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
-   2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
+   2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
+   Free Software Foundation, Inc.
    Contributed by Pieter `Tiggr' Schoenmakers (rcpieter@win.tue.nl)
    and Martin Simmons (@harleqn.co.uk).
    More major hacks by Richard Earnshaw (rearnsha@arm.com).
@@ -3360,6 +3361,7 @@ arm_is_long_call_p (tree decl)
   /* For "f", be conservative, and only cater for cases in which the
      whole of the current function is placed in the same section.  */
   if (!flag_reorder_blocks_and_partition
+      && TREE_CODE (decl) == FUNCTION_DECL
       && arm_function_in_section_p (decl, current_function_section ()))
     return false;