Commit e4b0d7b3 by David Edelsohn

add AIX 4.3 assembler bug and reorder items.

From-SVN: r18074
parent 26f6827a
AIX 3.1 and 3.2 assembler problems AIX 4.3 assembler
Specifying the -g flag to GCC on the RS/6000 requires upgrading the The AIX 4.3.0.0 assembler generates incorrect object files if the ".bs"
standard AIX assembler distributed with AIX 3.1 and versions of AIX pseudo-op references symbols in certain sections. If GCC is invoked with
3.2 earlier than 3.2.4 with a replacement that is available from IBM. the -g debugging option (including during bootstrapping), incorrect object
Note that Makefile.in specifies the -g when compiling libgcc2.c. files will be produced and the AIX linker will fail with a severe error.
A fix for APAR IX74254 (64BIT DISASSEMBLED OUPUT FROM COMPILER FAILS TO
You can test for the presence of a fixed assembler by entering the following: ASSEMBLE/BIND) is available from IBM Customer Support and IBM's
% as -u < /dev/null service.boulder.ibm.com website.
If the command exits normally, the assembler fix already is installed.
If the assembler complains that "-u" is an unknown flag, you need to order
the fix.
If you are running AIX 3.1 (lslpp -h bos.obj output reports
03.01.0005.XXXX where the 0005 can be any higher number and the XXXX
can be any value), call IBM Support at 800-237-5511 and ask for
shipment of AIX/6000 fix PTF U403044 for APAR IX22829 (.extern foo
conflicts with defining foo).
If you are running AIX 3.2 but not 3.2.4 or later (lslpp -h bos.obj
output reports 03.02.0000.0000), a newer update to the assembler fix
is available. Ask for shipment of AIX/6000 fix PTF U416277 for
IX32992 (.global prevents detection of duplicate symbol).
If you are running AIX 3.2.4 or later, you already have the new
assembler.
Any customer can order and get the replacement assembler, and install it on
one or more machines. It is available on diskette from IBM Customer Support
and from the IBM Internet fix anonymous ftp server (FixDist) at
aix.boulder.ibm.com (198.17.57.66).
If you contact IBM Customer Support, they may also ask you for your customer AIX 4.1 binder
number. If you do not know it, you will still be able to get the fix, but
you will have to be persistent. IBM has corresponding support organizations
outside of North America. Call your IBM branch office and ask them to put
you in touch with the department that handles fixes for AIX/6000. If that
doesn't work, ask for the department that handles software defect support
for AIX/6000 and ask for the APAR fix.
If you use the GNU assembler instead of the system supplied assembler, you need Due to changes in the way that GCC invokes the binder (linker) for AIX 4.1,
an assembler modified after October 16th, 1995 in order to build the GNU C the link step now may produce warnings of duplicate symbols which were not
compiler. This is because the GNU C compiler wants to build a variant of its reported before. The assembly files generated by GCC for AIX always have
library, libgcc.a with the -mcpu=common switch to support building programs included multiple symbol definitions for certain global variable and
that can run on either the Power or PowerPC machines. function declarations in the original program. The warnings should not
prevent the linker from producing a correct library or runnable executable.
AIX NLS problems AIX NLS problems
AIX on the RS/6000 provides support (NLS) for environments outside of AIX on the RS/6000 provides support (NLS) for environments outside of
the United States. Compilers and assemblers use NLS to support the United States. Compilers and assemblers use NLS to support
...@@ -56,7 +30,7 @@ not produce the same floating-point formats that the assembler accepts. ...@@ -56,7 +30,7 @@ not produce the same floating-point formats that the assembler accepts.
If you have this problem, set the LANG environment variable to "C" or If you have this problem, set the LANG environment variable to "C" or
"En_US". "En_US".
AIX 3.2.5 XLC-1.3 problems AIX 3.2.5 XLC-1.3 problems
XLC version 1.3.0.0 distributed with AIX 3.2.5 will miscompile jump.c when XLC version 1.3.0.0 distributed with AIX 3.2.5 will miscompile jump.c when
...@@ -72,7 +46,7 @@ releases of xlc-1.2.1, including xlc-1.2.1.8. Newer releases of xlc-1.2.1 ...@@ -72,7 +46,7 @@ releases of xlc-1.2.1, including xlc-1.2.1.8. Newer releases of xlc-1.2.1
do not exhibit this problem: xlc-1.2.1.28 is known to bootstrap properly. do not exhibit this problem: xlc-1.2.1.28 is known to bootstrap properly.
AIX 3.2 common-mode support AIX 3.2 common-mode support
AIX common-mode providing transparent support of both the POWER and PowerPC AIX common-mode providing transparent support of both the POWER and PowerPC
architectures is usable in AIX 3.2.3 and above but an export file and architectures is usable in AIX 3.2.3 and above but an export file and
...@@ -101,11 +75,49 @@ __quous 0x3380 ...@@ -101,11 +75,49 @@ __quous 0x3380
and then link with -Wl,-bI:milli.exp. and then link with -Wl,-bI:milli.exp.
AIX 4.1 binder AIX 3.1 and 3.2 assembler problems
Specifying the -g flag to GCC on the RS/6000 requires upgrading the
standard AIX assembler distributed with AIX 3.1 and versions of AIX
3.2 earlier than 3.2.4 with a replacement that is available from IBM.
Note that Makefile.in specifies the -g when compiling libgcc2.c.
You can test for the presence of a fixed assembler by entering the following:
% as -u < /dev/null
If the command exits normally, the assembler fix already is installed.
If the assembler complains that "-u" is an unknown flag, you need to order
the fix.
If you are running AIX 3.1 (lslpp -h bos.obj output reports
03.01.0005.XXXX where the 0005 can be any higher number and the XXXX
can be any value), call IBM Support at 800-237-5511 and ask for
shipment of AIX/6000 fix PTF U403044 for APAR IX22829 (.extern foo
conflicts with defining foo).
If you are running AIX 3.2 but not 3.2.4 or later (lslpp -h bos.obj
output reports 03.02.0000.0000), a newer update to the assembler fix
is available. Ask for shipment of AIX/6000 fix PTF U416277 for
IX32992 (.global prevents detection of duplicate symbol).
If you are running AIX 3.2.4 or later, you already have the new
assembler.
Any customer can order and get the replacement assembler, and install it on
one or more machines. It is available on diskette from IBM Customer Support
and from the IBM Internet fix anonymous ftp server (FixDist) at
aix.boulder.ibm.com (198.17.57.66).
If you contact IBM Customer Support, they may also ask you for your customer
number. If you do not know it, you will still be able to get the fix, but
you will have to be persistent. IBM has corresponding support organizations
outside of North America. Call your IBM branch office and ask them to put
you in touch with the department that handles fixes for AIX/6000. If that
doesn't work, ask for the department that handles software defect support
for AIX/6000 and ask for the APAR fix.
If you use the GNU assembler instead of the system supplied assembler, you need
an assembler modified after October 16th, 1995 in order to build the GNU C
compiler. This is because the GNU C compiler wants to build a variant of its
library, libgcc.a with the -mcpu=common switch to support building programs
that can run on either the Power or PowerPC machines.
Due to changes in the way that GCC invokes the binder (linker) for AIX 4.1,
the link step now may produce warnings of duplicate symbols which were not
reported before. The assembly files generated by GCC for AIX always have
included multiple symbol definitions for certain global variable and
function declarations in the original program. The warnings should not
prevent the linker from producing a correct library or runnable executable.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment