diff options
author | Jeffrey A Law <law@cygnus.com> | 1999-08-09 07:17:32 +0000 |
---|---|---|
committer | Jeff Law <law@gcc.gnu.org> | 1999-08-09 01:17:32 -0600 |
commit | 8f851c1ff272cb667e4d55a0dbb419192d06a9b2 (patch) | |
tree | 4f0aa5ad10436cc2b3783c1678911db4080c6611 /gcc | |
parent | e547bb6751e050f9735b7650c24dbf451d032a11 (diff) | |
download | gcc-8f851c1ff272cb667e4d55a0dbb419192d06a9b2.zip gcc-8f851c1ff272cb667e4d55a0dbb419192d06a9b2.tar.gz gcc-8f851c1ff272cb667e4d55a0dbb419192d06a9b2.tar.bz2 |
pa.h (SELECT_SECTION): Define.
Mon Aug 9 01:15:24 1999 Jeffrey A Law (law@cygnus.com)
* pa.h (SELECT_SECTION): Define.
* som.h (SELECT_SECTION): Delete.
From-SVN: r28617
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/pa/pa.h | 20 | ||||
-rw-r--r-- | gcc/config/pa/som.h | 20 |
3 files changed, 25 insertions, 20 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 874f286..2b89696 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +Mon Aug 9 01:15:24 1999 Jeffrey A Law (law@cygnus.com) + + * pa.h (SELECT_SECTION): Define. + * som.h (SELECT_SECTION): Delete. + Sun Aug 8 15:13:20 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> * alias.c (init_alias_analysis): Wrap call to diff --git a/gcc/config/pa/pa.h b/gcc/config/pa/pa.h index 7ea6bdb..d0bc5b2 100644 --- a/gcc/config/pa/pa.h +++ b/gcc/config/pa/pa.h @@ -1586,6 +1586,26 @@ extern struct rtx_def *hppa_legitimize_address (); else \ readonly_data_section (); +/* On hpux10, the linker will give an error if we have a reference + in the read-only data section to a symbol defined in a shared + library. Therefore, expressions that might require a reloc can + not be placed in the read-only data section. */ +#define SELECT_SECTION(EXP,RELOC) \ + if (TREE_CODE (EXP) == VAR_DECL \ + && TREE_READONLY (EXP) \ + && !TREE_THIS_VOLATILE (EXP) \ + && DECL_INITIAL (EXP) \ + && (DECL_INITIAL (EXP) == error_mark_node \ + || TREE_CONSTANT (DECL_INITIAL (EXP))) \ + && !RELOC) \ + readonly_data_section (); \ + else if (TREE_CODE_CLASS (TREE_CODE (EXP)) == 'c' \ + && !(TREE_CODE (EXP) == STRING_CST && flag_writable_strings) \ + && !RELOC) \ + readonly_data_section (); \ + else \ + data_section (); + /* Define this macro if references to a symbol must be treated differently depending on something about the variable or function named by the symbol (such as what section it is in). diff --git a/gcc/config/pa/som.h b/gcc/config/pa/som.h index f9c7682..291faee 100644 --- a/gcc/config/pa/som.h +++ b/gcc/config/pa/som.h @@ -51,26 +51,6 @@ Boston, MA 02111-1307, USA. */ fprintf (FILE, \ "\t.stabs \"\",%d,0,0,L$text_end0000\nL$text_end0000:\n", N_SO) -/* On hpux10, the linker will give an error if we have a reference - in the read-only data section to a symbol defined in a shared - library. Therefore, expressions that might require a reloc can - not be placed in the read-only data section. */ -#define SELECT_SECTION(EXP,RELOC) \ - if (TREE_CODE (EXP) == VAR_DECL \ - && TREE_READONLY (EXP) \ - && !TREE_THIS_VOLATILE (EXP) \ - && DECL_INITIAL (EXP) \ - && (DECL_INITIAL (EXP) == error_mark_node \ - || TREE_CONSTANT (DECL_INITIAL (EXP))) \ - && !RELOC) \ - readonly_data_section (); \ - else if (TREE_CODE_CLASS (TREE_CODE (EXP)) == 'c' \ - && !(TREE_CODE (EXP) == STRING_CST && flag_writable_strings) \ - && !RELOC) \ - readonly_data_section (); \ - else \ - data_section (); - /* HPUX has a program 'chatr' to list the dependencies of dynamically linked executables and shared libraries. */ #define LDD_SUFFIX "chatr" |