[PATCH] Fix PCH failures on SPARC

Eric Botcazou ebotcazou@libertysurf.fr
Mon Jun 16 22:39:00 GMT 2003


Hi,

As previously discussed, several PCH testcases fail on SPARC because of 
duplicated labels emitted by the stabs debugging code. The attached patch 
fixes them, by exposing the previously hidden static variables and marking 
them with GTY(()).

Bootstrapped/regtested on sparc-sun-solaris2.6 (c,c++,objc,f77 mainline), the 
remaining C PCH testcases being fixed and the libstdc++-v3 testsuite now 
producing significative results. There are 3 remaining C++ PCH failures.

Tested by successfully cross-compiling to the following targets

alpha-unknown-linux-gnu
avr-unknown-elf
hppa1.1-hp-hpux11
i386-sequent-ptx4
i960-unknown-coff
m32r-unknown-elf
m68k-hp-hpux
mcore-unknown-pe
mips-unknown-linux-gnu
mmix-knuth-mmixware
powerpc64-unknown-linux-gnu
rs6000-ibm-aix4.1
sh-unknown-linux-gnu
sparc64-unknown-aout

and unsuccessfully, but for reasons unrelated to the patch, to

rs6000-unknown-lynxos
sparc-tti-bsd

-- 
Eric Botcazou


2003-06-16  Eric Botcazou  <ebotcazou@libertysurf.fr>

	* dbxout.c (dbxout_source_line_counter): New global variable.
	Mark it with GTY(()).
	(dbxout_source_line): Increment dbxout_source_line_counter
	and pass it to ASM_OUTPUT_SOURCE_LINE.
	* sdbout.c (sdbout_source_line_counter): New global variable.
	Mark it with GTY(()).
	(unnamed_struct_number): Mark it with GTY(()).
	(sdbout_source_line): Increment sdbout_source_line_counter
	and pass it to ASM_OUTPUT_SOURCE_LINE.
	* xcoffout.c (ASM_OUTPUT_SOURCE_LINE): Add third parameter
	(xcoffout_source_line): Pass 0 as third argument to
	ASM_OUTPUT_SOURCE_LINE.
	(xcoffout_begin_prologue): Likewise.
	* config/dbxout.h (ASM_OUTPUT_SOURCE_LINE): Add third
	parameter. Use it instead of 'sym_lineno' but without incrementing it.
	* config/dbxelf.h (ASM_OUTPUT_SOURCE_LINE): Likewise.
	* config/lynx.h (ASM_OUTPUT_SOURCE_LINE): Likewise.
	* config/ptx4.h  (ASM_OUTPUT_SOURCE_LINE): Likewise.
	* config/alpha/alpha.c (alpha_start_function): Pass 0 as third
	argument to ASM_OUTPUT_SOURCE_LINE.
	* config/alpha/alpha.h (ASM_OUTPUT_SOURCE_LINE): Add third parameter.
	* config/arm/aout.h: Remove useless comment.
	* config/avr/avr.h (ASM_OUTPUT_SOURCE_LINE): Add third parameter.
	* config/i960/i960.h (ASM_OUTPUT_SOURCE_LINE): Likewise.
	* config/m32r/m32r.h (ASM_OUTPUT_SOURCE_LINE): Add third
	parameter. Use it instead of 'sym_lineno' but without incrementing it.
	* config/m68k/hp320.h (ASM_OUTPUT_SOURCE_LINE): Add third parameter.
	* config/mcore/mcore-pe.h (ASM_OUTPUT_SOURCE_LINE): Add third
	parameter. Use it instead of 'sym_lineno' but without incrementing it.
	* config/mips/mips.c (mips_output_function_prologue): Pass 0 as third
	argument to ASM_OUTPUT_SOURCE_LINE.
	* config/mips/mips.h (ASM_OUTPUT_SOURCE_LINE): Add third parameter.
	* config/mmix/mmix.h  (ASM_OUTPUT_SOURCE_LINE): Likewise.
	* config/pa/som.h (ASM_OUTPUT_SOURCE_LINE): Add third
	parameter. Use it instead of 'sym_lineno' but without incrementing it.
	* config/rs6000/linux64.h (ASM_OUTPUT_SOURCE_LINE): Likewise.
	* config/sh/elf.h (ASM_OUTPUT_SOURCE_LINE): Likewise.
	* config/sparc/aout.h (ASM_OUTPUT_SOURCE_LINE): Likewise.
	* config/sparc/pbd.h (ASM_OUTPUT_SOURCE_LINE): Likewise.
	* doc/tm.texi (ASM_OUTPUT_SOURCE_LINE): Document third parameter.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: solaris_pch-5.diff
Type: text/x-diff
Size: 22760 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20030616/c91658d7/attachment.bin>


More information about the Gcc-patches mailing list