From: Michael Meissner Date: Fri, 23 Aug 1996 15:48:47 +0000 (+0000) Subject: Make -fPIC the same as -mrelocatable-lib X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=3201f6d9f3f76c18706b159f3e615ded69ec7439;p=gcc.git Make -fPIC the same as -mrelocatable-lib From-SVN: r12670 --- diff --git a/gcc/config/rs6000/sol2.h b/gcc/config/rs6000/sol2.h index 00c90f1e042..f75ad2b5885 100644 --- a/gcc/config/rs6000/sol2.h +++ b/gcc/config/rs6000/sol2.h @@ -26,7 +26,7 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ #define RS6000_ABI_NAME "solaris" #undef ASM_CPU_SPEC -#define ASM_CPU_SPEC "%{fpic:-K PIC} %{fPIC:-K PIC} -le -s" +#define ASM_CPU_SPEC "-le -s" #undef TARGET_DEFAULT #define TARGET_DEFAULT (MASK_POWERPC | \ diff --git a/gcc/config/rs6000/sysv4.h b/gcc/config/rs6000/sysv4.h index 17da1c81e74..6954ed7292b 100644 --- a/gcc/config/rs6000/sysv4.h +++ b/gcc/config/rs6000/sysv4.h @@ -244,6 +244,14 @@ do { \ rs6000_abi_name); \ } \ \ + if (flag_pic > 1 && \ + (rs6000_current_abi == ABI_AIX || rs6000_current_abi == ABI_NT)) \ + { \ + flag_pic = 0; \ + error ("-fPIC and -mcall-%s are incompatible.", \ + rs6000_abi_name); \ + } \ + \ if (rs6000_current_abi == ABI_AIX && TARGET_LITTLE_ENDIAN) \ { \ target_flags &= ~MASK_LITTLE_ENDIAN; \ @@ -258,7 +266,7 @@ do { \ \ /* Treat -fPIC the same as -mrelocatable */ \ if (flag_pic > 1) \ - target_flags |= MASK_RELOCATABLE; \ + target_flags |= MASK_RELOCATABLE | MASK_MINIMAL_TOC | MASK_NO_FP_IN_TOC; \ \ else if (TARGET_RELOCATABLE) \ flag_pic = 2; \ @@ -954,7 +962,7 @@ do { \ #undef ASM_SPEC #define ASM_SPEC "%(asm_cpu) %{mregnames} %{mno-regnames} \ %{v:-V} %{Qy:} %{!Qn:-Qy} %{n} %{T} %{Ym,*} %{Yd,*} %{Wa,*:%*} \ -%{mrelocatable} %{mrelocatable-lib} \ +%{mrelocatable} %{mrelocatable-lib} %{fpic:-K PIC} %{fPIC:-K PIC} \ %{memb} %{!memb: %{msdata: -memb} %{msdata=eabi: -memb}} \ %{mlittle} %{mlittle-endian} %{mbig} %{mbig-endian} \ %{!mlittle: %{!mlittle-endian: %{!mbig: %{!mbig-endian: \