This is the mail archive of the gcc-bugs@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]

bootstrap/5872: gcc-20020304 bootstrap failure on IBM SP/2 AIX 4.3: ld reports TOC overflow



>Number:         5872
>Category:       bootstrap
>Synopsis:       gcc-20020304 bootstrap failure on IBM SP/2 AIX 4.3: ld reports TOC overflow
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Thu Mar 07 09:26:00 PST 2002
>Closed-Date:
>Last-Modified:
>Originator:     Nelson H. F. Beebe
>Release:        3.1 20020304 (prerelease)
>Organization:
Department of Mathematics, University of Utah
>Environment:
	IBM SP2 (166 MHz);  AIX 4.3.2.0
	% uname -a
	AIX sp-i 3 4 000152774C00
	% oslevel
	4.3.2.0
	% cc -V
	...
	VisualAge C++ Professional / C for AIX Compiler, Version 5
	...
host: powerpc-ibm-aix4.3.2.0
build: powerpc-ibm-aix4.3.2.0
target: powerpc-ibm-aix4.3.2.0
configured with: ../gcc-20020304/configure --prefix=/usr/local/test --enable-cpplib --enable-libgcj --enable-shared --enable-version-specific-runtime-libs --with-local-prefix=/usr/local --enable-threads
>Description:
gcc has become complex enough that the default 64KB TOC size is
inadequate, causing a link failure during the bootstrap process:

gcc -DIN_GCC -g -W -Wall -Wwrite-strings -Wstrict-prototypes \
        -Wmissing-prototypes -Wtraditional -pedantic -Wno-long-long \
        -DHAVE_CONFIG_H -o cc1 \ c-parse.o c-lang.o attribs.o \
        c-errors.o c-lex.o c-pragma.o c-decl.o c-typeck.o c-convert.o \
        c-aux-info.o c-common.o c-format.o c-semantics.o \
        c-objc-common.o libcpp.a main.o libbackend.a ./intl/libintl.a \
        -liconv ../libiberty/libiberty.a
ld: 0711-781 ERROR: TOC overflow. TOC size: 73584       Maximum size: 65536
collect2: ld returned 12 exit status
make[2]: *** [cc1] Error 1

IBM's manual pages contains this commentary:
	% man ld
	...

	Options (-bOptions)
	The following values are possible for the Options variable of the -b flag. You
	can list more than one option after the -b flag, separating them with a single
	blank.

	...

	bigtoc Generates extra code if the size of the table of contents (TOC) is
	greater than 64KB. Extra code is needed for every reference to a TOC symbol that
	cannot be addressed with a 16-bit offset. Because a program containing generated
	code may have poor performance, you should reduce the number of TOC entries
	needed by the program before using this option. The default is the nobigtoc
	option.

This build was bootstrapped with gcc-2.95.3.  

I then made a second attempt using the native cc; it too failed, but
differently; that problem will be reported separately.

>How-To-Repeat:
../gcc-20020304/configure \
	--prefix=/usr/local/test \
	--enable-cpplib \
	--enable-libgcj \
	--enable-shared \
	--enable-version-specific-runtime-libs \
	--with-local-prefix=/usr/local \
	--enable-threads && \
		make bootstrap

>Fix:

-------------------------------------------------------------------------------
- Nelson H. F. Beebe                    Tel: +1 801 581 5254                  -
- Center for Scientific Computing       FAX: +1 801 585 1640, +1 801 581 4148 -
- University of Utah                    Internet e-mail: beebe@math.utah.edu  -
- Department of Mathematics, 110 LCB        beebe@acm.org  beebe@computer.org -
- 155 S 1400 E RM 233                       beebe@ieee.org                    -
- Salt Lake City, UT 84112-0090, USA    URL: http://www.math.utah.edu/~beebe  -
-------------------------------------------------------------------------------
>Release-Note:
>Audit-Trail:
>Unformatted:


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