From: Richard Henderson Date: Sun, 28 May 2000 02:21:54 +0000 (-0700) Subject: elf.h (SELECT_SECTION): Mirror Kenner's May 19 change to config/elfos.h. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=a1920fc3d7d9c901cf31eae3b6632b5627eac496;p=gcc.git elf.h (SELECT_SECTION): Mirror Kenner's May 19 change to config/elfos.h. * config/alpha/elf.h (SELECT_SECTION): Mirror Kenner's May 19 change to config/elfos.h. From-SVN: r34221 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index bed3c0399a9..461423fcdf4 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2000-05-27 Richard Henderson + + * config/alpha/elf.h (SELECT_SECTION): Mirror Kenner's May 19 + change to config/elfos.h. + 2000-05-27 Richard Henderson * Makefile.in (resource.o): Depend on except.h. diff --git a/gcc/config/alpha/elf.h b/gcc/config/alpha/elf.h index 296359796f4..7fad44621dd 100644 --- a/gcc/config/alpha/elf.h +++ b/gcc/config/alpha/elf.h @@ -340,12 +340,11 @@ void FN () \ else \ data_section (); \ } \ - else if (TREE_CODE (DECL) == VAR_DECL \ - || TREE_CODE (DECL) == CONSTRUCTOR) \ + else if (TREE_CODE (DECL) == VAR_DECL) \ { \ if ((flag_pic && RELOC) \ - || !TREE_READONLY (DECL) || TREE_SIDE_EFFECTS (DECL) \ - || !DECL_INITIAL (DECL) \ + || ! TREE_READONLY (DECL) || TREE_SIDE_EFFECTS (DECL) \ + || ! DECL_INITIAL (DECL) \ || (DECL_INITIAL (DECL) != error_mark_node \ && !TREE_CONSTANT (DECL_INITIAL (DECL)))) \ { \ @@ -358,6 +357,21 @@ void FN () \ else \ const_section (); \ } \ + else if (TREE_CODE (DECL) == CONSTRUCTOR) \ + { \ + if ((flag_pic && RELOC) \ + || ! TREE_READONLY (DECL) || TREE_SIDE_EFFECTS (DECL) \ + || ! TREE_CONSTANT (DECL)) \ + { \ + int size = int_size_in_bytes (TREE_TYPE (DECL)); \ + if (size >= 0 && size <= g_switch_value) \ + sdata_section (); \ + else \ + data_section (); \ + } \ + else \ + const_section (); \ + } \ else \ const_section (); \ }