This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE: 7506 - Temporary fix to g++ 3.2/binutils 2.13/Solaris 2.7 or later


Enclosed is a corrected patch from:

   http://gcc.gnu.org/ml/gcc-patches/2002-09/msg00826.html 

--Eric--

---Cut Here---
*** gcc/config/sparc.h.orig        Wed Sep 18 16:18:45 2002
--- gcc/config/sparc.h     Wed Sep 18 16:36:05 2002
***************
*** 2015,2020 ****
--- 2015,2024 ----
  
     binutils 2.12 would emit a R_SPARC_DISP32 dynamic relocation if the
     symbol %r_disp32() is against was not local, but .hidden.  In that
+  
+    binutils 2.13 seems to require a 64-bit relocation for TARGET_ARCH64.
+    This may not be the best long term solution, but it gets C++ apps
+    using libstdc++ working. */
     case, we have to use DW_EH_PE_absptr for pic personality.  */
  #ifdef HAVE_AS_SPARC_UA_PCREL
  #ifdef HAVE_AS_SPARC_UA_PCREL_HIDDEN
***************
*** 2022,2028 ****
    (flag_pic                                                           \
     ? (GLOBAL ? DW_EH_PE_indirect : 0) | DW_EH_PE_pcrel | DW_EH_PE_sdata4\
     : ((TARGET_ARCH64 && ! GLOBAL)                                     \
!       ? (DW_EH_PE_pcrel | DW_EH_PE_sdata4)                            \
        : DW_EH_PE_absptr))
  #else
  #define ASM_PREFERRED_EH_DATA_FORMAT(CODE,GLOBAL)                     \
--- 2026,2032 ----
    (flag_pic                                                           \
     ? (GLOBAL ? DW_EH_PE_indirect : 0) | DW_EH_PE_pcrel | DW_EH_PE_sdata4\
     : ((TARGET_ARCH64 && ! GLOBAL)                                     \
!       ? (DW_EH_PE_pcrel | DW_EH_PE_sdata8)                            \
        : DW_EH_PE_absptr))
  #else
  #define ASM_PREFERRED_EH_DATA_FORMAT(CODE,GLOBAL)                     \
***************
*** 2029,2035 ****
    (flag_pic                                                           \
     ? (GLOBAL ? DW_EH_PE_absptr : (DW_EH_PE_pcrel | DW_EH_PE_sdata4))  \
     : ((TARGET_ARCH64 && ! GLOBAL)                                     \
!       ? (DW_EH_PE_pcrel | DW_EH_PE_sdata4)                            \
        : DW_EH_PE_absptr))
  #endif
  
--- 2033,2039 ----
    (flag_pic                                                           \
     ? (GLOBAL ? DW_EH_PE_absptr : (DW_EH_PE_pcrel | DW_EH_PE_sdata4))  \
     : ((TARGET_ARCH64 && ! GLOBAL)                                     \
!       ? (DW_EH_PE_pcrel | DW_EH_PE_sdata8)                            \
        : DW_EH_PE_absptr))
  #endif


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]