diff options
author | David Edelsohn <edelsohn@gnu.org> | 2001-09-08 06:24:00 +0000 |
---|---|---|
committer | David Edelsohn <dje@gcc.gnu.org> | 2001-09-08 02:24:00 -0400 |
commit | d5d8d540f97a6f3a8210add35292fcfdd5eaec49 (patch) | |
tree | 9f3ddf93e78e4438ae6d139b3e001f0f46016b21 /gcc | |
parent | 4e2c1c4484d3407251679a1eb271c9163ee3edfc (diff) | |
download | gcc-d5d8d540f97a6f3a8210add35292fcfdd5eaec49.zip gcc-d5d8d540f97a6f3a8210add35292fcfdd5eaec49.tar.gz gcc-d5d8d540f97a6f3a8210add35292fcfdd5eaec49.tar.bz2 |
install.texi: Explain AIX exception handling work-around.
* doc/install.texi: Explain AIX exception handling work-around.
Update URL for AIX fixes.
From-SVN: r45486
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 3 | ||||
-rw-r--r-- | gcc/doc/install.texi | 23 |
2 files changed, 20 insertions, 6 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 6feb13b..5c7c0baa 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -3,6 +3,9 @@ * rs6000.c (num_insns_constant): Compute number of instructions more accurately. + * doc/install.texi: Explain AIX exception handling work-around. + Update URL for AIX fixes. + 2001-09-07 Jim Wilson <wilson@redhat.com> * alias.c (clear_reg_alias_info): New. diff --git a/gcc/doc/install.texi b/gcc/doc/install.texi index 76f1760..c3b4051 100644 --- a/gcc/doc/install.texi +++ b/gcc/doc/install.texi @@ -2228,6 +2228,17 @@ and function declarations in the original program. The warnings should not prevent the linker from producing a correct library or runnable executable. +GCC's exception handling implementation stores process-specific data in +the shared library which prevents exception handling from working +correctly on AIX in a default installation. To work around this, the +shared objects need to be loaded in the process private segment to +prevent them from being shared and marked read-only. This is +accomplished on AIX by installing the shared libraries +(@file{libgcc_s.a} and @file{libstdc++.a}) with file permissions +disallowing read-other (@samp{chmod a+x,o-r}). If the shared libraries +have been used, the shared library segment can be cleaned using the +@samp{/usr/sbin/slibclean} command. + AIX 4.3 utilizes a ``large format'' archive to support both 32-bit and 64-bit object modules. The routines provided in AIX 4.3.0 and AIX 4.3.1 to parse archive libraries did not handle the new format correctly. @@ -2236,26 +2247,26 @@ linking such as ``not a COFF file''. The version of the routines shipped with AIX 4.3.1 should work for a 32-bit environment. The @option{-g} option of the archive command may be used to create archives of 32-bit objects using the original ``small format''. A correct version of the -routines is shipped with AIX 4.3.2. +routines is shipped with AIX 4.3.2 and above. Some versions of the AIX binder (linker) can fail with a relocation overflow severe error when the @option{-bbigtoc} option is used to link GCC-produced object files into an executable that overflows the TOC@. A fix for APAR IX75823 (OVERFLOW DURING LINK WHEN USING GCC AND -BBIGTOC) is available from IBM Customer Support and from its -@uref{http://service.boulder.ibm.com/,,service.boulder.ibm.com} +@uref{http://techsupport.services.ibm.com/,,techsupport.services.ibm.com} website as PTF U455193. The AIX 4.3.2.1 linker (bos.rte.bind_cmds Level 4.3.2.1) will dump core with a segmentation fault when invoked by any version of GCC@. A fix for APAR IX87327 is available from IBM Customer Support and from its -@uref{http://service.boulder.ibm.com/,,service.boulder.ibm.com} +@uref{http://techsupport.services.ibm.com/,,techsupport.services.ibm.com} website as PTF U461879. This fix is incorporated in AIX 4.3.3 and above. The initial assembler shipped with AIX 4.3.0 generates incorrect object files. A fix for APAR IX74254 (64BIT DISASSEMBLED OUTPUT FROM COMPILER FAILS TO ASSEMBLE/BIND) is available from IBM Customer Support and from its -@uref{http://service.boulder.ibm.com/,,service.boulder.ibm.com} +@uref{http://techsupport.services.ibm.com/,,techsupport.services.ibm.com} website as PTF U453956. This fix is incorporated in AIX 4.3.1 and above. AIX provides National Language Support (NLS)@. Compilers and assemblers @@ -2269,8 +2280,8 @@ environment variable to @samp{C} or @samp{En_US}. By default, GCC for AIX 4.1 and above produces code that can be used on both Power or PowerPC processors. -You can specify a default version for the @option{-mcpu=@var{cpu_type}} -switch by using the configure option @option{--with-cpu-@var{cpu_type}}. +A default can be specified with the @option{-mcpu=@var{cpu_type}} +switch and using the configure option @option{--with-cpu-@var{cpu_type}}. @html </p> |