Commit Graph

567 Commits

Author SHA1 Message Date
Doug Kwan
4ad29d0de3 2012-02-17 Doug Kwan <dougkwan@google.com>
* contrib/testsuite-management/validate_failures.py
	(GetMakefileValue): Check for cross compilers.

From-SVN: r184357
2012-02-17 23:55:00 +00:00
Quentin Neill
e53182b762 compare_tests: Fix trailing paths in dir arguments.
2012-02-15   Quentin Neill  <quentin.neill@amd.com>

	* compare_tests: Fix trailing paths in dir arguments.
	Handle sum1/sum2 temp files with others.

From-SVN: r184284
2012-02-15 20:58:40 +00:00
Walter Lee
dd552284fd Add ports for TILE-Gx and TILEPro.
.
	* MAINTAINERS (tilegx port): Add myself.
	(tilepro port): Add myself.

contrib
	* config-list.mk (LIST): Add tilegx-linux-gnu and
	tilepro-linux-gnu.
	* gcc_update (gcc/config/tilegx/mul-tables.c): New dependencies.
	(gcc/config/tilepro/mul-tables.c): New dependencies.

gcc
	* config.gcc: Handle tilegx and tilepro.
	* configure.ac (gcc_cv_as_dwarf2_debug_line): Enable test for
	tilegx and tilepro.
	Add HAVE_AS_TLS check for tilegx and tilepro.
	* configure: Regenerate.
	* doc/contrib.texi: Add Mat Hostetter and self.
	* doc/extend.texi (TILE-Gx Built-in Functions): New node.
	Document instruction intrinsics and network accessing intrinsics.
	(TILEPro Built-in Functions): New node.	 Document instruction
	intrinsics and network accessing intrinsics.
	* doc/install.texi (Specific, tilegx-*-linux*): Document it.
	(Specific, tilepro-*-linux*): Likewise.
	* doc/invoke.texi (TILE-Gx Options): New section.
	(TILEPro Options): New section.
	* doc/md.texi (TILE-Gx): New section.
	(TILEPro): New section.
	* common/config/tilegx: New directory for tilegx.
	* common/config/tilepro: New directory for tilepro.
	* config/tilegx: New directory for tilegx.
	* config/tilepro: New directory for tilepro.

gcc/testsuite
	* g++.dg/other/PR23205.C: Disable test on tile.
	* g++.dg/other/pr23205-2.C: Disable test on tile.
	* gcc.dg/20020312-2.c: Add a condition for __tile__.
	* gcc.dg/20040813-1.c: Disable test on tile.
	* gcc.dg/lower-subreg-1.c: Disable test on tilegx.
	* gcc.misc-tests/linkage.exp: Handle tilegx.

libcpp
	* configure.ac: Require 64-bit hwint for tilegx and tilepro.
	* configure: Regenerate.

libgcc
	* config.host: Handle tilegx and tilepro.
	* config/tilegx: New directory for tilegx.
	* config/tilepro: New directory for tilepro.

libgomp
	* configure.tgt: Handle tilegx and tilepro.
	* config/linux/tile: New directory for tilegx and tilepro.

Added:
     trunk/gcc/common/config/tilegx/tilegx-common.c
     trunk/gcc/common/config/tilepro/tilepro-common.c
     trunk/gcc/config/tilegx/constraints.md
     trunk/gcc/config/tilegx/linux.h
     trunk/gcc/config/tilegx/mul-tables.c
     trunk/gcc/config/tilegx/predicates.md
     trunk/gcc/config/tilegx/sync.md
     trunk/gcc/config/tilegx/t-tilegx
     trunk/gcc/config/tilegx/tilegx-builtins.h
     trunk/gcc/config/tilegx/tilegx-c.c
     trunk/gcc/config/tilegx/tilegx-generic.md
     trunk/gcc/config/tilegx/tilegx-modes.def
     trunk/gcc/config/tilegx/tilegx-multiply.h
     trunk/gcc/config/tilegx/tilegx-protos.h
     trunk/gcc/config/tilegx/tilegx.c
     trunk/gcc/config/tilegx/tilegx.h
     trunk/gcc/config/tilegx/tilegx.md
     trunk/gcc/config/tilegx/tilegx.opt
     trunk/gcc/config/tilepro/constraints.md
     trunk/gcc/config/tilepro/gen-mul-tables.cc
     trunk/gcc/config/tilepro/linux.h
     trunk/gcc/config/tilepro/mul-tables.c
     trunk/gcc/config/tilepro/predicates.md
     trunk/gcc/config/tilepro/t-tilepro
     trunk/gcc/config/tilepro/tilepro-builtins.h
     trunk/gcc/config/tilepro/tilepro-c.c
     trunk/gcc/config/tilepro/tilepro-generic.md
     trunk/gcc/config/tilepro/tilepro-modes.def
     trunk/gcc/config/tilepro/tilepro-multiply.h
     trunk/gcc/config/tilepro/tilepro-protos.h
     trunk/gcc/config/tilepro/tilepro.c
     trunk/gcc/config/tilepro/tilepro.h
     trunk/gcc/config/tilepro/tilepro.md
     trunk/gcc/config/tilepro/tilepro.opt
     trunk/libgcc/config/tilegx/sfp-machine.h
     trunk/libgcc/config/tilegx/sfp-machine32.h
     trunk/libgcc/config/tilegx/sfp-machine64.h
     trunk/libgcc/config/tilegx/t-crtstuff
     trunk/libgcc/config/tilegx/t-softfp
     trunk/libgcc/config/tilegx/t-tilegx
     trunk/libgcc/config/tilepro/atomic.c
     trunk/libgcc/config/tilepro/atomic.h
     trunk/libgcc/config/tilepro/linux-unwind.h
     trunk/libgcc/config/tilepro/sfp-machine.h
     trunk/libgcc/config/tilepro/softdivide.c
     trunk/libgcc/config/tilepro/softmpy.S
     trunk/libgcc/config/tilepro/t-crtstuff
     trunk/libgcc/config/tilepro/t-tilepro
     trunk/libgomp/config/linux/tile/futex.h
Modified:
     trunk/MAINTAINERS
     trunk/contrib/config-list.mk
     trunk/contrib/gcc_update
     trunk/gcc/config.gcc
     trunk/gcc/configure
     trunk/gcc/configure.ac
     trunk/gcc/doc/contrib.texi
     trunk/gcc/doc/extend.texi
     trunk/gcc/doc/install.texi
     trunk/gcc/doc/invoke.texi
     trunk/gcc/doc/md.texi
     trunk/gcc/testsuite/g++.dg/other/PR23205.C
     trunk/gcc/testsuite/g++.dg/other/pr23205-2.C
     trunk/gcc/testsuite/gcc.dg/20020312-2.c
     trunk/gcc/testsuite/gcc.dg/20040813-1.c
     trunk/gcc/testsuite/gcc.dg/lower-subreg-1.c
     trunk/gcc/testsuite/gcc.misc-tests/linkage.exp
     trunk/libcpp/configure
     trunk/libcpp/configure.ac
     trunk/libgcc/config.host
     trunk/libgomp/configure.tgt

From-SVN: r184203
2012-02-14 10:02:21 +00:00
Mike Stump
44414d2f82 * compare_tests (exit_status): Fix.
From-SVN: r184130
2012-02-11 14:15:22 +00:00
Diego Novillo
a8fc985552 This patch adds two common shortcuts to the failure reproducer
script.

Committed to trunk.

2012-02-10   Diego Novillo  <dnovillo@google.com>

	* repro_fail: Add --debug and --debug-tui flags.

From-SVN: r184097
2012-02-10 10:52:03 -05:00
Sumanth G
b25364a0b9 Adding GCC port for National Semicondutor's CR16 architecture
Co-Authored-By: Jayant R Sonar <jayant.sonar@kpitcummins.com>

From-SVN: r183832
2012-02-02 10:20:32 +00:00
Georg-Johann Lay
884f56d1e1 re PR target/51345 ([avr] Devices with 8-bit SP need their own multilib(s))
contrib/
	PR target/51345
	* gcc_update (files_and_dependencies): Add
	gcc/config/avr/t-multilib, gcc/config/avr/multilib.h.
	
libgcc/
	PR target/51345
	* config/avr/lib1funcs.S: Remove FIXME comments.
	(SPEED_DIV): Depend on __AVR_HAVE_8BIT_SP__.
gcc/	
	PR target/51345
	* config.gcc (tm_file target=avr]): Add avr/avr-multilib.h
	(tmake_file target=avr): Add avr/t-multilib.

	* config/avr/avr-c.c (avr_cpu_cpp_builtins): Use AVR_HAVE_8BIT_SP
	to built-in define __AVR_HAVE_8BIT_SP__, __AVR_HAVE_16BIT_SP__.
	* config/avr/genmultilib.awk: New file.
	* config/avr/t-multilib: New auto-generated file.
	* config/avr/multilib.h: New auto-generated file.
	* config/avr/t-avr (AVR_MCUS): New variable.
	(genopt.sh): Use it.
	(s-mlib): Depend on t-multilib.
	(t-multilib, multilib.h): New dependencies.
	(s-avr-mlib): New rule to build t-multilib, multilib.h from AVR_MCUS.
	(MULTILIB_OPTIONS): Remove.
	(MULTILIB_MATCHES): Remove.
	(MULTILIB_DIRNAMES): Remove.
	(MULTILIB_EXCEPTIONS): Remove:
	* config/avr/genopt.sh: Don't use hard coded file name;
	pass AVR_MCUS from t-avr instead.

From-SVN: r182797
2012-01-02 12:51:57 +00:00
DJ Delorie
85b8555ed3 .
* configure.ac (rl78-*-*) New case.
	* configure: Regenerate.
	* MAINTAINERS: Add myself as RL78 maintainer.

libgcc
	* config.host (rl78-*-elf): New case.
	* config/rl78: New directory for the Renesas RL78.

gcc
	* config.gcc (rl78-*-elf): New case.
	* doc/extend.texi: Add RL78 documentation.
	* doc/invoke.texi: Likewise.
	* doc/md.texi: Likewise.
	* doc/contrib.texi: Add RL78.
	* doc/install.texi: Add rl78-*-elf.
	* config/rl78: New directory for the Renesas RL78.

contrib
	* config-list.mk (LIST): Add rl78-elf.

From-SVN: r181819
2011-11-29 16:36:43 -05:00
Rainer Orth
adcd36bc3f Support sun symbol versioning in libitm
libitm:
	* acinclude.m4 (LIBITM_CHECK_LINKER_FEATURES): Handle gold.
	(LIBITM_ENABLE_SYMVERS): Handle sun style.
	* Makefile.am: Handle sun style versioning.
	(libitm_la_LINK): Add $(libitm_la_LDFLAGS).
	* configure: Regenerate.
	* Makefile.in: Regenerate.

	contrib:
	* make_sunver.pl: Convert '?' in glob patterns to '.'.

From-SVN: r181588
2011-11-21 17:03:50 +00:00
Aldy Hernandez
0a35513e4e Merge from transactional-memory branch.
From-SVN: r181154
2011-11-08 11:13:41 +00:00
Quentin Neill
cf7716a257 compare_tests: Add ability to compare all .sum files from two build directories.
2011-11-07   Quentin Neill  <quentin.neill@amd.com>

	* compare_tests: Add ability to compare all .sum
	files from two build directories.

From-SVN: r181149
2011-11-08 04:28:04 +00:00
Joern Rennecke
feeeff5cfe config.gcc (epiphany-*-*): New architecture.
gcc:
        * config.gcc (epiphany-*-*): New architecture.
        (epiphany-*-elf): New configuration.
        * config/epiphany, common/config/epiphany : New directories.
        * doc/extend.texi (disinterrupt attribute): Add Epiphany.
        (interrupt attribute): Add Epiphany.
        (long_call, short_call attribute): Add Epiphany.
        * doc/invoke.texi (Options): Add Epiphany options.
        * doc/md.texi (Machine Constraints): Add Epiphany constraints.
        * doc/install.texi (Options specification):
        Add --with-stack-offset=@var{num} description.
        (host/target specific issues): Add epiphany-*-elf.
        * doc/contrib.texi (Contributors): Mention Epiphany port.
gcc/testsuite:
        * gcc.c-torture/execute/ieee/mul-subnormal-single-1.x:
        Disable test on Epiphany.
        * gcc.c-torture/execute/20101011-1.c: Disable test on Epiphany.
        * gcc.dg/stack-usage-1.c [__epiphany__] (SIZE): Define.
        * gcc.dg/pragma-pack-3.c: Disable test on Epiphany.
        * g++.dg/parse/pragma3.C: Likewise.
        * stackalign/builtin-apply-2.c (STACK_ARGUMENTS_SIZE): Define.
        (bar): Use it.
        * gcc.dg/weak/typeof-2.c [epiphany-*-*]: Add option -mshort-calls.
        * gcc.dg/tls/thr-cse-1.c: Likewise.
        * g++.dg/opt/devirt2.C: Likewise.
        * gcc.dg/20020312-2.c [epiphany-*-*] (PIC_REG): Define.
        * gcc.dg/builtin-apply2.c [__epiphany__]: (STACK_ARGUMENTS_SIZE): 20.
        * gcc.target/epiphany: New directory.
libgcc:
        * config.host (epiphany-*-elf*): New configuration.
        * config/epiphany: New Directory.
contrib:
        * contrib-list.mk: Add Epiphany configurations.

From-SVN: r181016
2011-11-05 20:48:23 +00:00
Diego Novillo
a5baf3b8ce testsuite-management: New.
* testsuite-management: New.
	* testsuite-management/validate_failures.py: New.

From-SVN: r178833
2011-09-13 16:24:47 -04:00
Rainer Orth
39b75e51ec Don't assume hg convert in gcc_update
* gcc_update: Determine svn branch from hg convert_revision.

From-SVN: r178056
2011-08-25 09:16:52 +00:00
Rainer Orth
e44dbbe18b re PR debug/23205 ([C++/unit-at-a-time] stabs debug info omitted for global const variables)
toplevel:
	* configure: Regenerate.

	config:
	* elf.m4 (target_elf): Remove *-netware*.

	contrib:
	* config-list.mk (i586-netware): Remove.
	(.PHONY): Remove make-script-dir dependency.
	(make-script-dir): Remove.
	($(LIST)): Remove make-script-dir dependency.

	gcc:
	* config.gcc (i[3456x]86-*-netware*): Remove.

	* gthr-nks.h: Remove.
	* configure.ac (enable_threads): Remove nks.
	* configure: Regenerate.

	* config/i386/i386.c (ix86_encode_section_info): Remove netware
	reference.
	* config/i386/i386.h (KEEP_AGGREGATE_RETURN_POINTER): Remove
	<netware.h> reference.

	* config/i386/netware-libgcc.c,
	gcc/config/i386/netware-libgcc.def,
	gcc/config/i386/netware-libgcc.exp, gcc/config/i386/netware.c,
	gcc/config/i386/netware.h, gcc/config/i386/netware.opt,
	gcc/config/i386/nwld.c, gcc/config/i386/nwld.h,
	gcc/config/i386/t-netware, gcc/config/i386/t-nwld: Remove

	* doc/extend.texi (Function Attributes,
	callee_pop_aggregate_return): Remove i?86-netware reference.
	* doc/install.texi (Configuration, --enable-threads): Remove nks.

	gcc/testsuite:
	* g++.dg/ext/bitfield2.C: Remove i?86-*-netware support.
	* g++.dg/ext/bitfield3.C: Likewise.
	* g++.dg/ext/bitfield4.C: Likewise.
	* g++.dg/ext/bitfield5.C: Likewise.
	* g++.dg/other/PR23205.C: Remove *-*-netware* support.
	* g++.dg/other/pr23205-2.C: Likewise.
	* gcc.c-torture/compile/20001109-1.c: Remove dg-xfail-if.
	* gcc.c-torture/compile/20001109-2.c: Likewise.
	* gcc.dg/20040813-1.c: Remove *-*-netware* support.
	* gcc.dg/bitfld-15.c: Remove i?86-*-netware support.
	* gcc.dg/bitfld-16.c: Likewise.
	* gcc.dg/bitfld-17.c: Likewise.
	* gcc.dg/bitfld-18.c: Likewise.
	* gcc.dg/builtins-config.h: Remove Netware support.
	* gcc.dg/cdce1.c: Remove *-*-netware* support.  Update line number.
	* gcc.dg/cdce2.c: Likewise.
	* gcc.dg/cpp/assert4.c: Remove netware support.
	* gcc.dg/debug/pr35154.c: Remove *-*-netware* support.
	* gfortran.dg/debug/pr35154-stabs.f: Remove *-*-netware* support.

	* lib/target-supports.exp (check_visibility_available): Remove
	NetWare support.
	(check_profiling_available): Likewise.

	libgcc:
	* config.host (i[3456x]86-*-netware*): Remove.
	* config/i386/netware-crt0.c, config/i386/t-nwld,
	config/i386/t-slibgcc-nwld: Remove.

	libstdc++-v3:
	* crossconfig.m4 (*-netware): Remove.
	* configure: Regenerate.

From-SVN: r176391
2011-07-18 11:04:18 +00:00
Bernd Schmidt
bcead286bf invoke.texi (C6X Options): New section.
gcc/
	* doc/invoke.texi (C6X Options): New section.
	* doc/md.texi (TI C6X family): New section.
	* config.gcc: Handle tic6x, in particular tic6x-*-elf and
	tic6x-*-uclinux.
	* longlong.h (add_ssaaaa, __umulsidi3, umul_ppmm,
	count_leading_zeros, count_trailing_zeros, UMUL_TIME, UDIV_TIME):
	Provide C6X definitions.
	* config/c6x/c6x.md: New file.
	* config/c6x/constraints.md: New file.
	* config/c6x/predicates.md: New file.
	* config/c6x/c6x-sched.md.in: New file.
	* config/c6x/c6x-sched.md: New file.
	* config/c6x/gensched.sh: New file.
	* config/c6x/c6x-mult.md.in: New file.
	* config/c6x/genmult.sh: New file.
	* config/c6x/c6x-mult.md: New file.
	* config/c6x/sync.md: New file.
	* config/c6x/c6x-protos.h: New file.
	* config/c6x/sfp-machine.h: New file.
	* config/c6x/c6x.c: New file.
	* config/c6x/c6x.h: New file.
	* config/c6x/crti.s: New file.
	* config/c6x/crtn.s: New file.
	* config/c6x/lib1funcs.asm: New file.
	* config/c6x/c6x-modes.def: New file.
	* config/c6x/genopt.sh: New file.
	* config/c6x/c6x.opt: New file.
	* config/c6x/c6x-tables.opt: New file.
	* config/c6x/c6x-opts.h: New file.
	* config/c6x/c6x-isas.def: New file.
	* config/c6x/elf.h: New file.
	* config/c6x/elf-common.h: New file.
	* config/c6x/uclinux-elf.h: New file.
	* config/c6x/t-c6x: New file.
	* config/c6x/t-c6x-elf: New file.
	* config/c6x/t-c6x-uclinux: New file.
	* config/c6x/t-c6x-softfp: New file.
	* config/c6x/gtd.c: New file.
	* config/c6x/gtf.c: New file.
	* config/c6x/ltd.c: New file.
	* config/c6x/ltf.c: New file.
	* config/c6x/ged.c: New file.
	* config/c6x/gef.c: New file.
	* config/c6x/led.c: New file.
	* config/c6x/lef.c: New file.
	* config/c6x/eqd.c: New file.
	* config/c6x/eqf.c: New file.
	* config/c6x/libgcc-c6xeabi.ver: New file.

contrib/
	* gcc_update: Add C6X generated files.
	* contrib/config-list.mk: Add c6x-elf and c6x-uclinux.

libgcc/
	* config.host: Handle tic6x-*-*.
	* config/c6x/c6x-abi.h: New file.

From-SVN: r176308
2011-07-15 09:36:40 +00:00
Rainer Orth
e35fceb583 config-list.mk (LIST): Append OPT-enable-obsolete to alpha-dec-osf5.1, mips-sgi-irix6.5.
* config-list.mk (LIST): Append OPT-enable-obsolete to
	alpha-dec-osf5.1, mips-sgi-irix6.5.

From-SVN: r175754
2011-07-01 11:27:00 +00:00
Diego Novillo
23d11384db * repro_fail: New.
From-SVN: r175374
2011-06-24 09:11:31 -04:00
Joseph Myers
1b916ca624 gcc_update (gcc/config/avr/avr-tables.opt): New dependencies.
contrib:
	* gcc_update (gcc/config/avr/avr-tables.opt): New dependencies.

gcc:
	* config/avr/avr-mcus.def, config/avr/genopt.sh: New files.
	* config/avr/avr-tables.opt: New file (generated).
	* config.gcc (avr-*-*): Use avr/avr-tables.opt.
	* config/avr/avr-devices.c (avr_mcu_types): Move contents to
	avr-mcus.def.
	* config/avr/avr.c (avr_help, TARGET_HELP): Remove.
	(avr_option_override): Don't process -mmcu= argument here.  Set
	avr_current_device using avr_mcu_index.
	(avr_file_start): Use avr_current_device->name instead of
	avr_mcu_name.
	* config/avr/avr.opt (mmcu=): Use Enum.
	* config/avr/t-avr (avr-devices.o): Update dependencies.
	($(srcdir)/config/avr/avr-tables.opt): New.
	* target.def (help): Remove.
	* doc/tm.texi.in (TARGET_HELP): Remove.
	* doc/tm.texi: Regenerate.
	* opts.c: Don't include target.h.
	(common_handle_option): Don't call targetm.help.
	* system.h (TARGET_HELP): Poison.
	* Makefile.in (opts.o): Update dependencies.

From-SVN: r175248
2011-06-21 11:22:19 +01:00
Joseph Myers
12d844c830 gcc_update (gcc/config/arm/arm-tables.opt): Also depend on gcc/config/arm/arm-fpus.def.
contrib:
	* gcc_update (gcc/config/arm/arm-tables.opt): Also depend on
	gcc/config/arm/arm-fpus.def.

gcc:
	* config/arm/arm-fpus.def: New.
	* config/arm/genopt.sh: Generate Enum and EnumValue entries from
	arm-fpus.def.
	* config/arm/arm-tables.opt: Regenerate.
	* config/arm/arm.c (all_fpus): Move contents to arm-fpus.def.
	(arm_option_override): Don't decode FPU name to string here.
	* config/arm/arm.opt (mfpu=): Use Enum.
	* config/arm/t-arm ($(srcdir)/config/arm/arm-tables.opt, arm.o):
	Update dependencies.

From-SVN: r173916
2011-05-19 17:27:59 +01:00
Joseph Myers
f10d3ac9bb gcc_update (gcc/config/rs6000/rs6000-tables.opt): New dependencies.
contrib:
	* gcc_update (gcc/config/rs6000/rs6000-tables.opt): New
	dependencies.

gcc:
	* config/rs6000/genopt.sh, config/rs6000/rs6000-cpus.def: New
	files.
	* config/rs6000/rs6000-tables.opt: New file (generated).
	* config.gcc (powerpc*-*-*, rs6000*-*-*): Add
	rs6000/rs6000-tables.opt to extra_options.
	* config/rs6000/rs6000-opts.h (RS6000_CPU_OPTION_NATIVE): Define.
	* config/rs6000/rs6000.c (rs6000_select): Remove.
	(processor_target_table): Move contents to rs6000-cpus.def.
	(darwin_rs6000_override_options): Check
	global_options_set.x_rs6000_cpu_index instead of
	rs6000_select[1].string.
	(rs6000_option_override_internal): Likewise.
	(rs6000_handle_option): Don't assert that global structures are in
	use.  Don't handle OPT_mcpu_ and OPT_mtune_ here.
	(rs6000_default_cpu): New variable.
	(rs6000_file_start): Set it instead of local default_cpu.  Check
	rs6000_default_cpu, global_options_set.x_rs6000_cpu_index and
	global_options_set.x_rs6000_tune_index instead of rs6000_select.
	(rs6000_darwin_file_start): Check rs6000_default_cpu and
	global_options_set.x_rs6000_cpu_index instead of rs6000_select.
	* config/rs6000/rs6000.h (struct rs6000_cpu_select,
	rs6000_select): Remove.
	* config/rs6000/rs6000.opt (rs6000_cpu_index, rs6000_tune_index):
	Remove.
	(mcpu=, mtune=): Use Var, Init, Enum and Save.
	* config/rs6000/t-rs6000
	($(srcdir)/config/rs6000/rs6000-tables.opt): New.
	* config/rs6000/eabispe.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Check
	global_options_set.x_rs6000_cpu_index instead of
	rs6000_select[1].string.
	* config/rs6000/linuxspe.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Check
	global_options_set.x_rs6000_cpu_index instead of
	rs6000_select[1].string.

From-SVN: r173620
2011-05-10 15:46:34 +01:00
Joseph Myers
d371df6f10 gcc_update (gcc/config/mips/mips-tables.opt): New dependencies.
contrib:
	* gcc_update (gcc/config/mips/mips-tables.opt): New dependencies.

gcc:
	* config/mips/genopt.sh, config/mips/mips-cpus.def: New files.
	* config/mips/mips-tables.opt: New file (generated).
	* config.gcc (mips*-*-*): Add mips/mips-tables.opt to
	extra_options.
	* config/mips/mips-opts.h (MIPS_ARCH_OPTION_FROM_ABI,
	MIPS_ARCH_OPTION_NATIVE): Define.
	* config/mips/mips.c (mips_cpu_info_table): Move contents to
	mips-cpus.def.
	(mips_strict_matching_cpu_name_p, mips_matching_cpu_name_p,
	mips_parse_cpu): Remove.
	(mips_cpu_info_from_opt, mips_default_arch): New.
	(mips_handle_option): Don't assert that global structures are in
	use.  Don't handle OPT_march_, OPT_mtune_ and OPT_mips here.
	(mips_option_override): Use new variables and functions to set
	state of these options.  Use strcmp to check for individual CPU
	names.
	* config/mips/mips.h (MIPS_CPU_STRING_DEFAULT): Remove default
	definition.
	* config/mips/mips.opt (march=): Use ToLower and Enum.
	(mips): Use ToLower, Enum and Var.
	(mtune=): Use ToLower and Enum.
	* config/mips/t-mips ($(srcdir)/config/mips/mips-tables.opt): New.

From-SVN: r173561
2011-05-09 10:40:19 +01:00
Joern Rennecke
adad100716 * config-list.mk: New file.
From-SVN: r173410
2011-05-05 02:47:47 +01:00
Joseph Myers
47c94d21e4 gcc_update (gcc/config/m68k/m68k-tables.opt): New dependencies.
contrib:
	* gcc_update (gcc/config/m68k/m68k-tables.opt): New dependencies.

gcc:
	* config/m68k/genopt.sh, config/m68k/m68k-isas.def,
	config/m68k/m68k-microarchs.def, config/m68k/m68k-opts.h,
	config/m68k/t-opts: New files.
	* config/m68k/m68k-tables.opt: New file (generated).
	* config.gcc (fido-*-*, m68k-*-*): Add m68k/m68k-tables.opt to
	extra_options and m68k/t-opts to tmake_file.
	* config/m68k/m68k.c (m68k_library_id_string): More to m68k.opt.
	(all_isas): Initialize using m68k-isas.def.
	(all_microarchs): Initialize using m68k-microarchs.def.
	(m68k_find_selection): Remove.
	(m68k_handle_option): Don't assert that global structures are in
	use.  Use error_at.  Access variables via opts pointer.  Don't
	handle -march=, -mcpu= and -mtune= here.  Set gcc_options fields
	directly for -m68020-40 and -m68020-60.
	(m68k_option_override): Set m68k_arch_entry, m68k_cpu_entry and
	m68k_tune_entry here.
	* config/m68k/m68k.h (enum uarch_type, enum target_device): Move
	to m68k-opts.h.
	(m68k_library_id_string): Remove declaration.
	* config/m68k/m68k.opt (config/m68k/m68k-opts.h): New
	HeaderInclude.
	(m68k_library_id_string): New Variable.
	(march=, mcpu=, mtune=): Use Enum and Var.

From-SVN: r173256
2011-05-02 16:42:39 +01:00
Jan Kratochvil
e5b0dad8fd ansidecl.h (ENUM_BITFIELD): New, from gcc/system.h.
include/
	* ansidecl.h (ENUM_BITFIELD): New, from gcc/system.h.

contrib/
	* paranoia.cc (ENUM_BITFIELD): Remove.

gcc/
	* system.h (ENUM_BITFIELD): Remove.

libcpp/
	* system.h (ENUM_BITFIELD): Remove.

From-SVN: r172933
2011-04-25 18:05:37 +00:00
Joseph Myers
ad7be0090c gcc_update (gcc/config/arm/arm-tables.opt): New dependencies.
contrib:
	* gcc_update (gcc/config/arm/arm-tables.opt): New dependencies.

gcc:
	* config.gcc (arm*-*-*): Add arm/arm-tables.opt to extra_options.
	* config/arm/arm-arches.def: New.
	* config/arm/arm-opts.h: New.
	* config/arm/genopt.sh: New.
	* config/arm/arm-tables.opt: New (generated).
	* config/arm/arm.c (arm_handle_option, arm_target_help,
	TARGET_HANDLE_OPTION, TARGET_HELP, arm_find_cpu): Remove.
	(all_architectures): Get most table contents from arm-arches.def.
	(arm_option_override): Set arm_selected_arch, arm_selected_cpu and
	arm_selected_tune here.
	* config/arm/arm.h (enum processor_type): Move to arm-opts.h.
	* config/arm/arm.opt (config/arm/arm-opts.h): New HeaderInclude.
	(march=, mcpu=, mtune=): Use Enum and Var.
	* config/arm/t-arm ($(srcdir)/config/arm/arm-tables.opt): New.
	(arm.o): Update dependencies.

From-SVN: r172205
2011-04-08 20:39:48 +01:00
Joseph Myers
ebb9f8b03b MAINTAINERS (crx port, [...]): Remove.
* MAINTAINERS (crx port, m68hc11 port): Remove.  Move maintainers
	to Write After Approval.
	* config-ml.in: Don't handle arc-*-elf*.
	* configure.ac (arc-*-*, crx-*-*, i[[3456789]]86-*-pe,
	m68hc11-*-*|m6811-*-*|m68hc12-*-*|m6812-*-*, mcore-*-pe*): Don't
	handle GCC libraries.
	* configure: Regenerate.

contrib:
	* compare-all-tests (all_targets): Remove crx and m68hc11.

fixincludes:
	* mkfixinc.sh: Don't handle i?86-moss-msdos* or i?86-*-pe.

gcc:
	* config/alpha/gnu.h: Remove.
	* config/arc: Remove directory.
	* config/arm/netbsd.h: Remove.
	* config/arm/t-pe: Remove.
	* config/crx: Remove directory.
	* config/i386/netbsd.h: Remove.
	* config/m68hc11: Remove directory.
	* config/m68k/uclinux-oldabi.h: Remove.
	* config/mcore/mcore-pe.h: Remove.
	* config/mcore/t-mcore-pe: Remove.
	* config/netbsd-aout.h: Remove.
	* config/rs6000/gnu.h: Remove.
	* config/sh/sh-symbian.h: Remove.
	* config/sh/symbian-base.c: Remove.
	* config/sh/symbian-c.c: Remove.
	* config/sh/symbian-cxx.c: Remove.
	* config/sh/symbian-post.h: Remove.
	* config/sh/symbian-pre.h: Remove.
	* config/sh/t-symbian: Remove.
	* config/svr3.h: Remove.
	* config/vax/netbsd.h: Remove.
	* config.build: Don't handle i[34567]86-*-pe.
	* config.gcc: Remove handling of deprecations for most deprecated
	targets.
	(m68k-*-uclinuxoldabi*): Add to second deprecated list.
	(alpha*-*-gnu*, arc-*-elf*, arm*-*-netbsd*, arm-*-pe*, crx-*-elf,
	i[34567]86-*-netbsd*, i[34567]86-*-pe, m68hc11-*-*|m6811-*-*,
	m68hc12-*-*|m6812-*-*, m68k-*-uclinuxoldabi*, mcore-*-pe*,
	powerpc64-*-gnu*, powerpc-*-gnu-gnualtivec*, powerpc-*-gnu*,
	sh-*-symbianelf* | sh[12346l]*-*-symbianelf*, vax-*-netbsd*):
	Remove cases.
	* config.host: Don't handle i[34567]86-*-pe.
	* config/rs6000/linux64.h (LINK_OS_GNU_SPEC): Remove.
	(ASM_SPEC32): Don't handle -mcall-gnu.
	* config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Don't handle
	-mcall-gnu.
	(ASM_SPEC, CC1_SPEC, LINK_START_SPEC, LINK_OS_SPEC, CPP_SPEC,
	STARTFILE_SPEC, LIB_SPEC, ENDFILE_SPEC): Don't handle -mcall-gnu.
	(LIB_GNU_SPEC, STARTFILE_GNU_SPEC, ENDFILE_GNU_SPEC,
	LINK_START_GNU_SPEC, LINK_OS_GNU_SPEC, CPP_OS_GNU_SPEC): Remove.
	(SUBTARGET_EXTRA_SPECS): Remove *_gnu specs.
	* config/sh/sh-protos.h, config/sh/sh.c: Remove all code
	conditional on SYMBIAN.
	* configure.ac: Don't handle powerpc*-*-gnu*.
	* configure: Regenerate.
	* doc/extend.texi (interrupt attribute): Don't mention CRX.
	* doc/install-old.texi (m6811, m6812): Don't mention.
	* doc/install.texi (arc-*-elf*): Don't document multilib option.
	(arc-*-elf, CRX, m6811-elf, m6812-elf): Remove.
	(m68k-uclinuxoldabi): Don't mention.
	* doc/invoke.texi (ARC Options, CRX Options, M68hc1x Options):
	Remove.
	(-mcall-gnu): Remove.
	* doc/md.texi (CRX Architecture, Motorola 68HC11 & 68HC12
	families): Remove constraint documentation.

gcc/testsuite:
	* gcc.c-torture/execute/920501-8.x: Remove.
	* gcc.c-torture/execute/930513-1.x: Remove.
	* gcc.c-torture/execute/960312-1.x: Remove.
	* gcc.c-torture/compile/20000804-1.c,
	gcc.c-torture/compile/20001205-1.c,
	gcc.c-torture/compile/20001226-1.c,
	gcc.c-torture/compile/20010518-2.c,
	gcc.c-torture/compile/20020312-1.c,
	gcc.c-torture/compile/20020604-1.c,
	gcc.c-torture/compile/920501-12.c,
	gcc.c-torture/compile/920501-4.c,
	gcc.c-torture/compile/920520-1.c,
	gcc.c-torture/compile/980506-1.c,
	gcc.c-torture/execute/980709-1.x,
	gcc.c-torture/execute/990826-0.x: Don't XFAIL or use special
	options for m68hc11.
	* gcc.dg/cpp/assert4.c: Don't handle ARC.
	* gcc.dg/sibcall-3.c, gcc.dg/sibcall-4.c: Don't XFAIL for arc or
	m68hc11.

libgcc:
	* config.host (alpha*-*-gnu*, arc-*-elf*, arm*-*-netbsd*,
	arm-*-pe*, crx-*-elf, i[34567]86-*-netbsd*, i[34567]86-*-pe,
	m68hc11-*-*|m6811-*-*, m68hc12-*-*|m6812-*-*, mcore-*-pe*,
	powerpc64-*-gnu*, powerpc-*-gnu-gnualtivec*, powerpc-*-gnu*,
	sh-*-symbianelf* | sh[12346l]*-*-symbianelf*, vax-*-netbsd*):
	Remove cases.

libstdc++-v3:
	* configure.ac: Don't handle powerpc*-*-gnu*.
	* configure: Regenerate.

From-SVN: r171302
2011-03-22 19:58:18 +00:00
Rainer Orth
084239f467 re PR bootstrap/48135 (build fails on Solaris2.8 due to Glob.pm not found within /usr/perl5)
contrib:
	PR bootstrap/48135
	* make_sunver.pl: Don't use File::Glob.

	gcc:
	PR bootstrap/48135
	* doc/install.texi (Prerequisites, Perl): Remove Glob.pm
	reference.  Solaris 8 perl works.

From-SVN: r171223
2011-03-21 12:17:10 +00:00
Joseph Myers
20a52ab960 * gennews (files): Add files for GCC 4.6.
From-SVN: r170704
2011-03-05 19:49:36 +00:00
Dave Korn
a7150b3d88 patch_tester.sh (nopristinecache): New shell var, set according to presence or absence of new -nopristinecache option.
* patch_tester.sh (nopristinecache): New shell var, set according
	to presence or absence of new -nopristinecache option.
	(usage): Document new option.
	(bootntest_pristine): Implement it.

From-SVN: r169273
2011-01-26 03:46:07 +00:00
Jakub Jelinek
d652f226fc Update Copyright years for files modified in 2010.
From-SVN: r168438
2011-01-03 21:52:22 +01:00
Rainer Orth
f759884521 make_sunver.pl: Use elfdump -s to extract symbols if possible, readelf -s otherwise.
* make_sunver.pl: Use elfdump -s to extract symbols if possible,
	readelf -s otherwise.

From-SVN: r167149
2010-11-25 18:16:57 +00:00
Eric Botcazou
79770339d5 make_sunver.pl: Ignore entries without symbol name first.
* make_sunver.pl: Ignore entries without symbol name first.  Then do
	not ignore symbols marked as 'R'.

From-SVN: r166432
2010-11-08 11:17:18 +00:00
Andi Kleen
fda9c731a9 Remove gccbug
gcc/

2010-10-18  Andi Kleen  <ak@linux.intel.com>

	PR other/43448
	* gccbug.in: Remove.
	* Makefile.in (GCCBUG_INSTALL_NAME, gccbug): Remove
	(doc, distclean, install-common): Remove reference to gccbug.
	* configure: Regenerate.
	* configure.ac (all_outputs): Remove gccbug.
	* doc/configfiles.texi: Remove references to gccbug.
	* doc/sourcebuild.texi: Dito.

contrib/

2010-10-18  Andi Kleen  <ak@linux.intel.com>

	* gccbug.el: Remove.

From-SVN: r165613
2010-10-18 09:39:15 +00:00
Rainer Orth
6832435e85 gcc_update: Run $GCC_HG pull and update separately.
* gcc_update: Run $GCC_HG pull and update separately.
	Check parents for SVN revision.

From-SVN: r165352
2010-10-12 08:54:10 +00:00
Ralf Wildenhues
6c0098673b New contrib/test_recheck script to rerun unsuccessful tests.
contrib/:
	* test_recheck: New script.

From-SVN: r165324
2010-10-11 18:04:01 +00:00
Ralf Wildenhues
86dfbd58cf Fix unportable shell quoting.
/:
	PR bootstrap/44621
	* configure.ac: Fix unportable shell quoting.
	* configure: Regenerate.

config/:
	* po.m4 (AM_PO_SUBDIRS): Fix unportable shell quoting.

contrib/reghunt/:
	* bin/gcc-svn-ids: Fix unportable shell quoting.
	* date_based/reg_periodic: Likewise.
	* date_based/reg_search: Likewise.

intl/:
	PR bootstrap/44621
	* configure: Regenerate.

From-SVN: r164668
2010-09-27 20:19:41 +00:00
Ralf Wildenhues
ab940b73bf Improve formatting of manuals.
contrib/:
	* texi2pod.pl: Replace @@ before @{ and @}, for @samp{@@}.
	Also escape characters with grave accents, to be fixed ...
	(unmunge): ... here.
	(postprocess): Also handle @/ and @acronym{...}.

gcc/:
	* doc/contrib.texi (Contributors): Allow URL to wrap in PDF
	output.
	* doc/cppopts.texi: Fix markup of index entry.
	* doc/extend.texi (Constructing Calls): Fix markup of
	__builtin_va_arg_pack and __builtin_va_arg_pack_len definition.
	(Conditionals, C++ Comments, Pragmas, Unnamed Fields, Thread-Local)
	(Vague Linkage, C++ Attributes): Fix markup of index entries and
	keywords.
	* doc/invoke.texi (Option Summary): Fix spacing.  Rewrap to
	avoid long lines.
	(C Dialect Options, C++ Dialect Options, Warning Options)
	(Debugging Options, Spec Files, Darwin Options)
	(i386 and x86-64 Options, MIPS Options)
	(RS/6000 and PowerPC Options, Code Gen Options): Fix markup of
	index entries, avoid abbreviations, allow URLs to wrap, avoid
	long lines, avoid overlong pages from long @itemx lists.
	* doc/objc.texi (Garbage Collection): Allow URLs to wrap.
	* doc/standards.texi (Standards): Likewise.
	* doc/trouble.texi (Incompatibilities): Fix markup of index
	entry.

gcc/fortran/:
	* gfortran.texi (Argument list functions): Allow URL to wrap.
	* intrinsic.texi (GETGID, GETPID, GETUID, IMAGE_INDEX)
	(IS_IOSTAT_END, IS_IOSTAT_EOR, NUM_IMAGES, THIS_IMAGE)
	(ISO_FORTRAN_ENV): Fix markup in index entries, and a couple of
	code markups in the text.
	* invoke.texi (Fortran Dialect Options)
	(Error and Warning Options, Directory Options, Code Gen Options):
	Likewise.  Remove @code inside @smallexample.

From-SVN: r164533
2010-09-22 20:22:51 +00:00
Sebastian Pop
8cab7c1398 Do not print warning messages when there are no occurences.
2010-07-02  Sebastian Pop  <sebastian.pop@amd.com>

	* check_GNU_style.sh: Do not print warning messages when there are
	no occurences.

From-SVN: r164378
2010-09-17 19:09:47 +00:00
Rainer Orth
97075d3bf1 * gcc_update: Handle hg, too.
From-SVN: r164246
2010-09-13 14:44:21 +00:00
Eric Botcazou
5653ef60cb * make_sunver.pl: Remove extra whitespace in regexp.
From-SVN: r161973
2010-07-08 19:15:21 +00:00
Sebastian Pop
f3e3b4762b Script to check patches violating the GNU style.
2010-07-02  Sebastian Pop  <sebastian.pop@amd.com>

	* check_GNU_style.sh: New.

From-SVN: r161729
2010-07-02 16:34:55 +00:00
Rainer Orth
1e0859a29e Missed in last commit.
From-SVN: r161701
2010-07-02 10:26:12 +00:00
Rainer Orth
c18dc5ccea gc++filt.m4: New file.
config:
	* gc++filt.m4: New file.

	contrib:
	* make_sunver.pl: New file.

	libstdc++v3:
	* acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Handle sun style.
	Require GCC_PROG_GNU_CXXFILT.
	(_GLIBCXX_HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT): Define
	unless targetting solaris2*.
	Include ../config/gc++filt.m4.
	* configure.host (i?86-*-solaris2*): Set abi_baseline_pair.
	(sparc-*-solaris2*): Likewise.
	* src/Makefile.am [ENABLE_SYMVERS_SUN] (version_dep, version_arg):
	New variables.
	(libstdc++-symbols.ver-sun): New target.
	* configure: Regenerate.
	* config.h.in: Regenerate.
	* Makefile.in: Likewise.
	* doc/Makefile.in: Likewise.
	* include/Makefile.in: Likewise.
	* libsupc++/Makefile.in: Likewise.
	* po/Makefile.in: Likewise.
	* python/Makefile.in: Likewise.
	* src/Makefile.in: Likewise.
	* src/atomic.cc: Only define/use _GLIBCXX_ASM_SYMVER if
	_GLIBCXX_HAVE_SYMVER_RENAMING_RUNTIME_SUPPORT.
	* src/compatibility.cc: Likewise.
	* testsuite/Makefile.am (baseline_subdir): Define.
	(baseline_symbols): Use it.
	(new-abi-baseline): Likewise.
	* testsuite/Makefile.in: Regenerate.

	* config/abi/pre/gnu.ver (GLIBCXX_3.4.5): Enclose duplicates in
	#ifdef HAVE_SYMVER_RENAMING_RUNTIME_SUPPORT.
	(GLIBCXX_3.4.6): Likewise.

	* doc/xml/manual/configure.xml (--enable-symvers): Document sun
	style.

	* doc/xml/manual/abi.xml: Fix grammar.
	(Symbol versioning on the libstdc++.so binary): Fix mapfile path.
	(Incremental bumping of a library pre-defined macro): Fix
	c++config path.
	(Incremental bumping of a library pre-defined macro,
	_GLIBCPP_VERSION): Likewise.
	(Matching each specific C++ compiler release to a specific set of
	C++ include files): Fix acinclude.m4 path.
	(Prerequisites): Allow for Sun linker on Solaris 2.5+.
	Use proper link to Configuring.
	Fix acinclude.m4 path.
	(Checking Active): Allow for additional symbol versioning styles.
	Provide Solaris 2 example with pvs -r.
	(Bibliography): Update Linker and Libraries Guide, C++ Migration
	Guide entries.

	gcc:
	* doc/install.texi (Prerequisites): Document Perl requirement on
	Solaris 2.
	(Specific, *-*-solaris2*): Document GNU c++filt requirement.

From-SVN: r161696
2010-07-02 10:05:49 +00:00
Iain Sandoe
9a082684df fix darwin8 bootstrap issue
* compare-debug (Darwin): Remove '-x' flag from ld-based object
       stripping.  Add a comment as to why we do it this way.

From-SVN: r161686
2010-07-02 08:56:04 +00:00
Alexandre Oliva
339325b303 compare-debug: Drop LTO sections.
contrib/ChangeLog:
* compare-debug: Drop LTO sections.
config/ChangeLog:
* bootstrap-lto.mk: New.
gcc/ChangeLog:
* doc/install.texi: Document bootstrap-lto.

From-SVN: r161061
2010-06-21 00:23:06 +00:00
Bernhard Reutner-Fischer
e31a6dc2db gcc_update: Support updating a git clone.
2010-06-15  Bernhard Reutner-Fischer  <aldot@gcc.gnu.org>

	* gcc_update: Support updating a git clone.

From-SVN: r160774
2010-06-15 10:35:25 +02:00
Rainer Orth
fb340c3c7f check_jni_methods.sh.in: Don't use diff -U.
libjava/classpath:
	* scripts/check_jni_methods.sh.in: Don't use diff -U.
	Adapt grep regex, ignore file and problem message.

	contrib:
	* test_summary: Don't use diff -u.
	Adapt egrep regex.

From-SVN: r160264
2010-06-04 14:01:22 +00:00
Andrew Haley
69baf0a35d download_prerequisites: New script.
2010-06-02  Andrew Haley  <aph@redhat.com>

	* download_prerequisites: New script.

From-SVN: r160146
2010-06-02 11:14:19 +00:00
Rainer Orth
bc492e47c8 configure.ac: Redirect grep stdout, stderr to /dev/null instead of grep -q.
libjava:
	* configure.ac: Redirect grep stdout, stderr to /dev/null instead
	of grep -q.
	Use -- instead of grep -e.
	* configure: Regenerate.

	gcc:
	* configure.ac (gcc_cv_as_ld_jalr_reloc): Redirect grep stdout,
	stderr to /dev/null instead of grep -q.
	* configure: Regenerate.

	contrib:
	* dg-extract-results.sh: Redirect grep output to /dev/null instead
	of grep -q.

From-SVN: r159840
2010-05-25 18:50:01 +00:00
Basile Starynkevitch
c334c130bd gcc_update: Sets the locale to C.
2010-04-22  Basile Starynkevitch  <basile@starynkevitch.net>

	* gcc_update: Sets the locale to C.

From-SVN: r158629
2010-04-22 06:15:07 +00:00
Joseph Myers
02e698d776 * gennews (files): Add files for GCC 4.5.
From-SVN: r157998
2010-04-06 15:06:04 +01:00
Jan Kratochvil
fccff34135 Fix *.log tests output containing "===".
contrib/
	Fix *.log tests output containing "===".
	* dg-extract-results.sh (/\===/): Rename to ...
	(/^\t\t=== .* ===$/): ... this pattern.

From-SVN: r157645
2010-03-22 17:36:49 +00:00
Rainer Orth
54bceaf397 * dg-extract-results.sh: Fix result order to match sequential case.
From-SVN: r157175
2010-03-02 20:28:55 +00:00
Ralf Wildenhues
2fdb618d66 Avoid tr '\n', for Solaris /usr/bin/tr.
contrib/
	* check_warning_flags.sh: Use \012 instead of \n with tr.

gcc/:
	PR gcc/42525
	* Makefile.in (write_entries_to_file, install-plugin):
	Use \012 instead of \n with tr.

libjava/:
	* Makefile.am (write_entries_to_file): Use \012 instead of \n
	with tr.
	* scripts/makemake.tcl: Likewise.
	* sources.am: Regenerate.
	* Makefile.in: Regenerate.

From-SVN: r155963
2010-01-16 14:42:32 +00:00
Rainer Orth
5392f6be70 * dg-extract-results.sh: Don't use tail -n.
From-SVN: r155655
2010-01-05 18:29:48 +00:00
Diego Novillo
d7f09764d7 Merge lto branch into trunk.
From-SVN: r152434
2009-10-03 17:10:11 -04:00
Iain Sandoe
bb59df5289 re PR bootstrap/41245 (Bootstrap broken on I386-apple-darwin9 at revision 151373)
PR bootstrap/41245
	* compare-debug: Handle stripping of dwarf debug sections from darwin
	mach-o objects.

From-SVN: r151594
2009-09-10 16:32:51 +02:00
Alexandre Oliva
c45ae2c8db * compare-debug: Grep for blank before dash to avoid grep -e.
From-SVN: r151436
2009-09-04 18:59:15 +00:00
Alexandre Oliva
9a2e0bd181 Move misplaced contrib/ChangeLog entry to config/.
From-SVN: r151392
2009-09-03 20:11:24 +00:00
Alexandre Oliva
e12c409449 configure.ac (--with-build-config): New.
ChangeLog:
* configure.ac (--with-build-config): New.  Set BUILD_CONFIG.
Default to bootstrap-debug only if compare-debug works.
* configure: Rebuilt.
* Makefile.tpl: Make BUILD_CONFIG configure-configurable.
* Makefile.in: Rebuilt.
contrib/ChangeLog:
* bootstrap-debug-big.mk (STAGE2_CFLAGS): Drop -gtoggle.
* bootstrap-debug-lean.mk: Update comments.
(STAGE2_CFLAGS): Likewise.
(do-compare): Don't override.
gcc/ChangeLog:
* doc/invoke.texi (BUILD_CONFIG): Document --with-build-config.
(bootstrap-debug): Explain conditions in which it becomes default.
(bootstrap-debug-big): Rather than duplicate bootstrap-debug,
make it add to it.

From-SVN: r151367
2009-09-03 05:55:57 +00:00
Geoffrey Keating
2f6924a484 * btest-gcc.sh: Continue after bootstrap comparison failure.
From-SVN: r151349
2009-09-02 20:26:15 +00:00
Alexandre Oliva
b5b8b0ac64 invoke.texi (-fvar-tracking-assignments): New.
gcc/ChangeLog:
* doc/invoke.texi (-fvar-tracking-assignments): New.
(-fvar-tracking-assignments-toggle): New.
(-fdump-final-insns=file): Mark filename as optional.
(--param min-nondebug-insn-uid): New.
(-gdwarf-@{version}): Mention version 4.
* opts.c (common_handle_option): Accept it.
* tree-vrp.c (find_assert_locations_1): Skip debug stmts.
* regrename.c (regrename_optimize): Drop last.  Don't count debug
insns as uses.  Don't reject change because of debug insn.
(do_replace): Reject DEBUG_INSN as chain starter.  Take base_regno
from the chain starter, and check for inexact matches in
DEBUG_INSNS.
(scan_rtx_reg): Accept inexact matches in DEBUG_INSNs.
(build_def_use): Simplify and fix the marking of DEBUG_INSNs.
* sched-ebb.c (schedule_ebbs): Skip boundary debug insns.
* fwprop.c (forward_propagate_and_simplify): ...into debug insns.
* doc/gimple.texi (is_gimple_debug): New.
(gimple_debug_bind_p): New.
(is_gimple_call, gimple_assign_cast_p): End sentence with period.
* doc/install.texi (bootstrap-debug): More details.
(bootstrap-debug-big, bootstrap-debug-lean): Document.
(bootstrap-debug-lib): More details.
(bootstrap-debug-ckovw): Update.
(bootstrap-time): New.
* tree-into-ssa.c (mark_def_sites): Skip debug stmts.
(insert_phi_nodes_for): Insert debug stmts.
(rewrite_stmt): Take iterator.  Insert debug stmts.
(rewrite_enter_block): Adjust.
(maybe_replace_use_in_debug_stmt): New.
(rewrite_update_stmt): Use it.
(mark_use_interesting): Return early for debug stmts.
* tree-ssa-loop-im.c (rewrite_bittest): Propagate DEFs into debug
stmts before replacing stmt.
(move_computations_stmt): Likewise.
* ira-conflicts.c (add_copies): Skip debug insns.
* regstat.c (regstat_init_n_sets_and_refs): Discount debug insns.
(regstat_bb_compute_ri): Skip debug insns.
* tree-ssa-threadupdate.c (redirection_block_p): Skip debug stmts.
* tree-ssa-loop-manip.c (find_uses_to_rename_stmt,
check_loop_closed_ssa_stmt): Skip debug stmts.
* tree-tailcall.c (find_tail_calls): Likewise.
* tree-ssa-loop-ch.c (should_duplicate_loop_header_p): Likewise.
* tree.h (MAY_HAVE_DEBUG_STMTS): New.
(build_var_debug_value_stat): Declare.
(build_var_debug_value): Define.
(target_for_debug_bind): Declare.
* reload.c (find_equiv_reg): Skip debug insns.
* rtlanal.c (reg_used_between_p): Skip debug insns.
(side_effects_p): Likewise.
(canonicalize_condition): Likewise.
* ddg.c (create_ddg_dep_from_intra_loop_link): Check that non-debug
insns never depend on debug insns.
(create_ddg_dep_no_link): Likewise.
(add_cross_iteration_register_deps): Use ANTI_DEP for debug insns.
Don't add inter-loop dependencies for debug insns.
(build_intra_loop_deps): Likewise.
(create_ddg): Count debug insns.
* ddg.h (struct ddg::num_debug): New.
(num_backargs): Pair up with previous int field.
* diagnostic.c (diagnostic_report_diagnostic): Skip notes on
-fcompare-debug-second.
* final.c (get_attr_length_1): Skip debug insns.
(rest_of_clean-state): Don't dump CFA_RESTORE_STATE.
* gcc.c (invoke_as): Call compare-debug-dump-opt.
(driver_self_specs): Map -fdump-final-insns to
-fdump-final-insns=..
(get_local_tick): New.
(compare_debug_dump_opt_spec_function): Test for . argument and
compute output name.  Compute temp output spec without flag name.
Compute -frandom-seed.
(OPT): Undef after use.
* cfgloopanal.c (num_loop_insns): Skip debug insns.
(average_num_loop_insns): Likewise.
* params.h (MIN_NONDEBUG_INSN_UID): New.
* gimple.def (GIMPLE_DEBUG): New.
* ipa-reference.c (scan_stmt_for_static_refs): Skip debug stmts.
* auto-inc-dec.c (merge_in_block): Skip debug insns.
(merge_in_block): Fix whitespace.
* toplev.c (flag_var_tracking): Update comment.
(flag_var_tracking_assignments): New.
(flag_var_tracking_assignments_toggle): New.
(process_options): Don't open final insns dump file if we're not
going to write to it.  Compute defaults for var_tracking.
* df-scan.c (df_insn_rescan_debug_internal): New.
(df_uses_record): Handle debug insns.
* haifa-sched.c (ready): Initialize n_debug.
(contributes_to_priority): Skip debug insns.
(dep_list_size): New.
(priority): Use it.
(rank_for_schedule): Likewise.  Schedule debug insns as soon as
they're ready.  Disregard previous debug insns to make decisions.
(queue_insn): Never queue debug insns.
(ready_add, ready_remove_first, ready_remove): Count debug insns.
(schedule_insn): Don't reject debug insns because of issue rate.
(get_ebb_head_tail, no_real_insns_p): Skip boundary debug insns.
(queue_to_ready): Skip and discount debug insns.
(choose_ready): Let debug insns through.
(schedule_block): Check boundary debug insns.  Discount debug
insns, schedule them early.  Adjust whitespace.
(set_priorities): Check for boundary debug insns.
(add_jump_dependencies): Use dep_list_size.
(prev_non_location_insn): New.
(check_cfg): Use it.
* tree-ssa-loop-ivopts.c (find-interesting_users): Skip debug
stmts.
(remove_unused_ivs): Reset debug stmts.
* modulo-sched.c (const_iteration_count): Skip debug insns.
(res_MII): Discount debug insns.
(loop_single_full_bb_p): Skip debug insns.
(sms_schedule): Likewise.
(sms_schedule_by_order): Likewise.
(ps_has_conflicts): Likewise.
* caller-save.c (refmarker_fn): New.
(save_call_clobbered_regs): Replace regs with saved mem in
debug insns.
(mark_referenced_regs): Take pointer, mark and arg.  Adjust.
Call refmarker_fn mark for hardregnos.
(mark_reg_as_referenced): New.
(replace_reg_with_saved_mem): New.
* ipa-pure-const.c (check_stmt): Skip debug stmts.
* cse.c (cse_insn): Canonicalize debug insns.  Skip them when
searching back.
(cse_extended_basic_block): Skip debug insns.
(count_reg_usage): Likewise.
(is_dead_reg): New, split out of...
(set_live_p): ... here.
(insn_live_p): Use it for debug insns.
* tree-stdarg.c (check_all_va_list_escapes): Skip debug stmts.
(execute_optimize_stdarg): Likewise.
* tree-ssa-dom.c (propagate_rhs_into_lhs): Likewise.
* tree-ssa-propagate.c (substitute_and_fold): Don't regard
changes in debug stmts as changes.
* sel-sched.c (moving_insn_creates_bookkeeping_block_p): New.
(moveup_expr): Don't move across debug insns.  Don't move
debug insn if it would create a bookkeeping block.
(moveup_expr_cached): Don't use cache for debug insns that
are heads of blocks.
(compute_av_set_inside_bb): Skip debug insns.
(sel_rank_for_schedule): Schedule debug insns first.  Remove
dead code.
(block_valid_for_bookkeeping_p); Support lax searches.
(create_block_for_bookkeeping): Adjust block numbers when
encountering debug-only blocks.
(find_place_for_bookkeeping): Deal with debug-only blocks.
(generate_bookkeeping_insn): Accept no place to insert.
(remove_temp_moveop_nops): New argument full_tidying.
(prepare_place_to_insert): Deal with debug insns.
(advance_state_on_fence): Debug insns don't start cycles.
(update_boundaries): Take fence as argument.  Deal with
debug insns.
(schedule_expr_on_boundary): No full_tidying on debug insns.
(fill_insns): Deal with debug insns.
(track_scheduled_insns_and_blocks): Don't count debug insns.
(need_nop_to_preserve_insn_bb): New, split out of...
(remove_insn_from_stream): ... this.
(fur_orig_expr_not_found): Skip debug insns.
* rtl.def (VALUE): Move up.
(DEBUG_INSN): New.
* tree-ssa-sink.c (all_immediate_uses_same_place): Skip debug
stmts.
(nearest_common_dominator_of_uses): Take debug_stmts argument.
Set it if debug stmts are found.
(statement_sink_location): Skip debug stmts.  Propagate
moving defs into debug stmts.
* ifcvt.c (first_active_insn): Skip debug insns.
(last_active_insns): Likewise.
(cond_exec_process_insns): Likewise.
(noce_process_if_block): Likewise.
(check_cond_move_block): Likewise.
(cond_move_convert_if_block): Likewise.
(block_jumps_and_fallthru_p): Likewise.
(dead_or_predicable): Likewise.
* dwarf2out.c (debug_str_hash_forced): New.
(find_AT_string): Add comment.
(gen_label_for_indirect_string): New.
(get_debug_string_label): New.
(AT_string_form): Use it.
(mem_loc_descriptor): Handle non-TLS symbols.  Handle MINUS , DIV,
MOD, AND, IOR, XOR, NOT, ABS, NEG, and CONST_STRING.  Accept but
discard COMPARE, IF_THEN_ELSE, ROTATE, ROTATERT, TRUNCATE and
several operations that cannot be represented with DWARF opcodes.
(loc_descriptor): Ignore SIGN_EXTEND and ZERO_EXTEND.  Require
dwarf_version 4 for DW_OP_implicit_value and DW_OP_stack_value.
(dwarf2out_var_location): Take during-call mark into account.
(output_indirect_string): Update comment.  Output if there are
label and references.
(prune_indirect_string): New.
(prune_unused_types): Call it if debug_str_hash_forced.
More in dwarf2out.c, from Jakub Jelinek <jakub@redhat.com>:
(dw_long_long_const): Remove.
(struct dw_val_struct): Change val_long_long type to rtx.
(print_die, attr_checksum, same_dw_val_p, loc_descriptor): Adjust for
val_long_long change to CONST_DOUBLE rtx from a long hi/lo pair.
(output_die): Likewise.  Use HOST_BITS_PER_WIDE_INT size of each
component instead of HOST_BITS_PER_LONG.
(output_loc_operands): Likewise.   For const8* assert
HOST_BITS_PER_WIDE_INT rather than HOST_BITS_PER_LONG is >= 64.
(output_loc_operands_raw): For const8* assert HOST_BITS_PER_WIDE_INT
rather than HOST_BITS_PER_LONG is >= 64.
(add_AT_long_long): Remove val_hi and val_lo arguments, add
val_const_double.
(size_of_die): Use HOST_BITS_PER_WIDE_INT size multiplier instead of
HOST_BITS_PER_LONG for dw_val_class_long_long.
(add_const_value_attribute): Adjust add_AT_long_long caller.  Don't
handle TLS SYMBOL_REFs.  If CONST wraps a constant, tail recurse.
(dwarf_stack_op_name): Handle DW_OP_implicit_value and
DW_OP_stack_value.
(size_of_loc_descr, output_loc_operands, output_loc_operands_raw):
Handle DW_OP_implicit_value.
(extract_int): Move prototype earlier.
(mem_loc_descriptor): For SUBREG punt if inner
mode size is wider than DWARF2_ADDR_SIZE.  Handle SIGN_EXTEND
and ZERO_EXTEND by DW_OP_shl and DW_OP_shr{a,}.  Handle
EQ, NE, GT, GE, LT, LE, GTU, GEU, LTU, LEU, SMIN, SMAX, UMIN,
UMAX, SIGN_EXTRACT, ZERO_EXTRACT.
(loc_descriptor): Compare mode size with DWARF2_ADDR_SIZE
instead of Pmode size.
(loc_descriptor): Add MODE argument.  Handle CONST_INT, CONST_DOUBLE,
CONST_VECTOR, CONST, LABEL_REF and SYMBOL_REF if mode != VOIDmode,
attempt to handle other expressions.  Don't handle TLS SYMBOL_REFs.
(concat_loc_descriptor, concatn_loc_descriptor,
loc_descriptor_from_tree_1): Adjust loc_descriptor callers.
(add_location_or_const_value_attribute): Likewise.  For single
location loc_lists attempt to use add_const_value_attribute
for constant decls.  Add DW_AT_const_value even if
NOTE_VAR_LOCATION is VAR_LOCATION with CONSTANT_P or CONST_STRING
in its expression.
* cfgbuild.c (inside_basic_block_p): Handle debug insns.
(control_flow_insn_p): Likewise.
* tree-parloops.c (eliminate_local_variables_stmt): Handle debug
stmt.
(separate_decls_in_region_debug_bind): New.
(separate_decls_in_region): Process debug bind stmts afterwards.
* recog.c (verify_changes): Handle debug insns.
(extract_insn): Likewise.
(peephole2_optimize): Skip debug insns.
* dse.c (scan_insn): Skip debug insns.
* sel-sched-ir.c (return_nop_to_pool): Take full_tidying argument.
Pass it on.
(setup_id_for_insn): Handle debug insns.
(maybe_tidy_empty_bb): Adjust whitespace.
(tidy_control_flow): Skip debug insns.
(sel_remove_insn): Adjust for debug insns.
(sel_estimate_number_of_insns): Skip debug insns.
(create_insn_rtx_from_pattern): Handle debug insns.
(create_copy_of_insn_rtx): Likewise.
* sel-sched-.h (sel_bb_end): Declare.
(sel_bb_empty_or_nop_p): New.
(get_all_loop_exits): Use it.
(_eligible_successor_edge_p): Likewise.
(return_nop_to_pool): Adjust.
* tree-eh.c (tre_empty_eh_handler_p): Skip debug stmts.
* ira-lives.c (process_bb_node_lives): Skip debug insns.
* gimple-pretty-print.c (dump_gimple_debug): New.
(dump_gimple_stmt): Use it.
(dump_bb_header): Skip gimple debug stmts.
* regmove.c (optimize_reg_copy_1): Discount debug insns.
(fixup_match_2): Likewise.
(regmove_backward_pass): Likewise.  Simplify combined
replacement.  Handle debug insns.
* function.c (instantiate_virtual_regs): Handle debug insns.
* function.h (struct emit_status): Add x_cur_debug_insn_uid.
* print-rtl.h: Include cselib.h.
(print_rtx): Print VALUEs.  Split out and recurse for
VAR_LOCATIONs.
* df.h (df_inns_rescan_debug_internal): Declare.
* gcse.c (alloc_hash_table): Estimate n_insns.
(cprop_insn): Don't regard debug insns as changes.
(bypass_conditional_jumps): Skip debug insns.
(one_pre_gcse_pass): Adjust.
(one_code_hoisting_pass): Likewise.
(compute_ld_motion_mems): Skip debug insns.
(one_cprop_pass): Adjust.
* tree-if-conv.c (tree_if_convert_stmt): Reset debug stmts.
(if_convertible_stmt_p): Handle debug stmts.
* init-regs.c (initialize_uninitialized_regs): Skip debug insns.
* tree-vect-loop.c (vect_is_simple_reduction): Skip debug stmts.
* ira-build.c (create_bb_allocnos): Skip debug insns.
* tree-flow-inline.h (has_zero_uses): Discount debug stmts.
(has_single_use): Likewise.
(single_imm_use): Likewise.
(num_imm_uses): Likewise.
* tree-ssa-phiopt.c (empty_block_p): Skip debug stmts.
* tree-ssa-coalesce.c (build_ssa_conflict_graph): Skip debug stmts.
(create_outofssa_var_map): Likewise.
* lower-subreg.c (adjust_decomposed_uses): New.
(resolve_debug): New.
(decompose_multiword_subregs): Use it.
* tree-dfa.c (find_referenced_vars): Skip debug stmts.
* emit-rtl.c: Include params.h.
(cur_debug_insn_uid): Define.
(set_new_first_and_last_insn): Set cur_debug_insn_uid too.
(copy_rtx_if_shared_1): Handle debug insns.
(reset_used_flags): Likewise.
(set_used_flags): LIkewise.
(get_max_insn_count): New.
(next_nondebug_insn): New.
(prev_nondebug_insn): New.
(make_debug_insn_raw): New.
(emit_insn_before_noloc): Handle debug insns.
(emit_jump_insn_before_noloc): Likewise.
(emit_call_insn_before_noloc): Likewise.
(emit_debug_insn_before_noloc): New.
(emit_insn_after_noloc): Handle debug insns.
(emit_jump_insn_after_noloc): Likewise.
(emit_call_insn_after_noloc): Likewise.
(emit_debug_insn_after_noloc): Likewise.
(emit_insn_after): Take loc from earlier non-debug insn.
(emit_jump_insn_after): Likewise.
(emit_call_insn_after): Likewise.
(emit_debug_insn_after_setloc): New.
(emit_debug_insn_after): New.
(emit_insn_before): Take loc from later non-debug insn.
(emit_jump_insn_before): Likewise.
(emit_call_insn_before): Likewise.
(emit_debug_insn_before_setloc): New.
(emit_debug_insn_before): New.
(emit_insn): Handle debug insns.
(emit_debug_insn): New.
(emit_jump_insn): Handle debug insns.
(emit_call_insn): Likewise.
(emit): Likewise.
(init_emit): Take min-nondebug-insn-uid into account.
Initialize cur_debug_insn_uid.
(emit_copy_of_insn_after): Handle debug insns.
* cfgexpand.c (gimple_assign_rhs_to_tree): Do not overwrite
location of single rhs in place.
(maybe_dump_rtl_for_gimple_stmt): Dump lineno.
(floor_sdiv_adjust): New.
(cell_sdiv_adjust): New.
(cell_udiv_adjust): New.
(round_sdiv_adjust): New.
(round_udiv_adjust): New.
(wrap_constant): Moved from cselib.
(unwrap_constant): New.
(expand_debug_expr): New.
(expand_debug_locations): New.
(expand_gimple_basic_block): Drop hiding redeclaration.  Expand
debug bind stmts.
(gimple_expand_cfg): Expand debug locations.
* cselib.c: Include tree-pass.h.
(struct expand_value_data): New.
(cselib_record_sets_hook): New.
(PRESERVED_VALUE_P, LONG_TERM_PRESERVED_VALUE_P): New.
(cselib_clear_table): Move, and implemnet in terms of...
(cselib_reset_table_with_next_value): ... this.
(cselib_get_next_unknown_value): New.
(discard_useless_locs): Don't discard preserved values.
(cselib_preserve_value): New.
(cselib_preserved_value_p): New.
(cselib_preserve_definitely): New.
(cselib_clear_preserve): New.
(cselib_preserve_only_values): New.
(new_cselib_val): Take rtx argument.  Dump it in details.
(cselib_lookup_mem): Adjust.
(expand_loc): Take regs_active in struct.  Adjust.  Silence
dumps unless details are requested.
(cselib_expand_value_rtx_cb): New.
(cselib_expand_value_rtx): Rename and reimplment in terms of...
(cselib_expand_value_rtx_1): ... this.  Adjust.  Silence dumps
without details.  Copy more subregs.  Try to resolve values
using a callback.  Wrap constants.
(cselib_subst_to_values): Adjust.
(cselib_log_lookup): New.
(cselib_lookup): Call it.
(cselib_invalidate_regno): Don't count preserved values as
useless.
(cselib_invalidate_mem): Likewise.
(cselib_record_set): Likewise.
(struct set): Renamed to cselib_set, moved to cselib.h.
(cselib_record_sets): Adjust.  Call hook.
(cselib_process_insn): Reset table when it would be cleared.
(dump_cselib_val): New.
(dump_cselib_table): New.
* tree-cfgcleanup.c (tree_forwarded_block_p): Skip debug stmts.
(remove_forwarder_block): Support moving debug stmts.
* cselib.h (cselib_record_sets_hook): Declare.
(cselib_expand_callback): New type.
(cselib_expand_value_rtx_cb): Declare.
(cselib_reset_table_with_next_value): Declare.
(cselib_get_next_unknown_value): Declare.
(cselib_preserve_value): Declare.
(cselib_preserved_value_p): Declare.
(cselib_preserve_only_values): Declare.
(dump_cselib_table): Declare.
* cfgcleanup.c (flow_find_cross_jump): Skip debug insns.
(try_crossjump_to_edge): Likewise.
(delete_unreachable_blocks): Remove dominant GIMPLE blocks after
dominated blocks when debug stmts are present.
* simplify-rtx.c (delegitimize_mem_from_attrs): New.
* tree-ssa-live.c (remove_unused_locals): Skip debug stmts.
(set_var_live_on_entry): Likewise.
* loop-invariant.c (find_invariants_bb): Skip debug insns.
* cfglayout.c (curr_location, last_location): Make static.
(set_curr_insn_source_location): Don't avoid bouncing.
(get_curr_insn_source_location): New.
(get_curr_insn_block): New.
(duplicate_insn_chain): Handle debug insns.
* tree-ssa-forwprop.c (forward_propagate_addr_expr): Propagate
into debug stmts.
* common.opt (fcompare-debug): Move to sort order.
(fdump-unnumbered-links): Likewise.
(fvar-tracking-assignments): New.
(fvar-tracking-assignments-toggle): New.
* tree-ssa-dce.c (mark_stmt_necessary): Don't mark blocks
because of debug stmts.
(mark_stmt_if_obviously_necessary): Mark debug stmts.
(eliminate_unnecessary_stmts): Walk dominated blocks before
dominators.
* tree-ssa-ter.c (find_replaceable_in_bb): Skip debug stmts.
* ira.c (memref_used_between_p): Skip debug insns.
(update_equiv_regs): Likewise.
* sched-deps.c (sd_lists_size): Accept empty list.
(sd_init_insn): Mark debug insns.
(sd_finish_insn): Unmark them.
(sd_add_dep): Reject non-debug deps on debug insns.
(fixup_sched_groups): Give debug insns group treatment.
Skip debug insns.
(sched_analyze_reg): Don't mark debug insns for sched before call.
(sched_analyze_2): Handle debug insns.
(sched_analyze_insn): Compute next non-debug insn.  Handle debug
insns.
(deps_analyze_insn): Handle debug insns.
(deps_start_bb): Skip debug insns.
(init_deps): Initialize last_debug_insn.
* tree-ssa.c (target_for_debug_bind): New.
(find_released_ssa_name): New.
(propagate_var_def_into_debug_stmts): New.
(propagate_defs_into_debug_stmts): New.
(verify_ssa): Skip debug bind stmts without values.
(warn_uninialized_vars): Skip debug stmts.
* target-def.h (TARGET_DELEGITIMIZE_ADDRESS): Set default.
* rtl.c (rtx_equal_p_cb): Handle VALUEs.
(rtx_equal_p): Likewise.
* ira-costs.c (scan_one_insn): Skip debug insns.
(process_bb_node_for_hard_reg_moves): Likewise.
* rtl.h (DEBUG_INSN_P): New.
(NONDEBUG_INSN_P): New.
(MAY_HAVE_DEBUG_INSNS): New.
(INSN_P): Accept debug insns.
(RTX_FRAME_RELATED_P): Likewise.
(INSN_DELETED_P): Likewise
(PAT_VAR_LOCATION_DECL): New.
(PAT_VAR_LOCATION_LOC): New.
(PAT_VAR_OCATION_STATUS): New.
(NOTE_VAR_LOCATION_DECL): Reimplement.
(NOTE_VAR_LOCATION_LOC): Likewise.
(NOTE_VAR_LOCATION_STATUS): Likewise.
(INSN_VAR_LOCATION): New.
(INSN_VAR_LOCATION_DECL): New.
(INSN_VAR_LOCATION_LOC): New.
(INSN_VAR_LOCATION_STATUS): New.
(gen_rtx_UNKNOWN_VAR_LOC): New.
(VAR_LOC_UNKNOWN_P): New.
(NOTE_DURING_CALL_P): New.
(SCHED_GROUP_P): Accept debug insns.
(emit_debug_insn_before): Declare.
(emit_debug_insn_before_noloc): Declare.
(emit_debug_insn_beore_setloc): Declare.
(emit_debug_insn_after): Declare.
(emit_debug_insn_after_noloc): Declare.
(emit_debug_insn_after_setloc): Declare.
(emit_debug_insn): Declare.
(make_debug_insn_raw): Declare.
(prev_nondebug_insn): Declare.
(next_nondebug_insn): Declare.
(delegitimize_mem_from_attrs): Declare.
(get_max_insn_count): Declare.
(wrap_constant): Declare.
(unwrap_constant): Declare.
(get_curr_insn_source_location): Declare.
(get_curr_insn_block): Declare.
* tree-inline.c (insert_debug_decl_map): New.
(processing_debug_stmt): New.
(remap_decl): Don't create new mappings in debug stmts.
(remap_gimple_op_r): Don't add references in debug stmts.
(copy_tree_body_r): Likewise.
(remap_gimple_stmt): Handle debug bind stmts.
(copy_bb): Skip debug stmts.
(copy_edges_for_bb): Likewise.
(copy_debug_stmt): New.
(copy_debug_stmts): New.
(copy_body): Copy debug stmts at the end.
(insert_init_debug_bind): New.
(insert_init_stmt): Take id.  Skip and emit debug stmts.
(setup_one_parameter): Remap variable earlier, register debug
mapping.
(estimate_num_insns): Skip debug stmts.
(expand_call_inline): Preserve debug_map.
(optimize_inline_calls): Check for no debug_stmts left-overs.
(unsave_expr_now): Preserve debug_map.
(copy_gimple_seq_and_replace_locals): Likewise.
(tree_function_versioning): Check for no debug_stmts left-overs.
Init and destroy debug_map as needed.  Split edges unconditionally.
(build_duplicate_type): Init and destroy debug_map as needed.
* tree-inline.h: Include gimple.h instead of pointer-set.h.
(struct copy_body_data): Add debug_stmts and debug_map.
* sched-int.h (struct ready_list): Add n_debug.
(struct deps): Add last_debug_insn.
(DEBUG_INSN_SCHED_P): New.
(BOUNDARY_DEBUG_INSN_P): New.
(SCHEDULE_DEBUG_INSN_P): New.
(sd_iterator_cond): Accept empty list.
* combine.c (create_log_links): Skip debug insns.
(combine_instructions): Likewise.
(cleanup_auto_inc_dec): New.  From Jakub Jelinek: Make sure the
return value is always unshared.
(struct rtx_subst_pair): New.
(auto_adjust_pair): New.
(propagate_for_debug_subst): New.
(propagate_for_debug): New.
(try_combine): Skip debug insns.  Propagate removed defs into
debug insns.
(next_nonnote_nondebug_insn): New.
(distribute_notes): Use it.  Skip debug insns.
(distribute_links): Skip debug insns.
* tree-outof-ssa.c (set_location_for_edge): Likewise.
* resource.c (mark_target_live_regs): Likewise.
* var-tracking.c: Include cselib.h and target.h.
(enum micro_operation_type): Add MO_VAL_USE, MO_VAL_LOC, and
MO_VAL_SET.
(micro_operation_type_name): New.
(enum emit_note_where): Add EMIT_NOTE_AFTER_CALL_INSN.
(struct micro_operation_def): Update comments.
(decl_or_value): New type.  Use instead of decls.
(struct emit_note_data_def): Add vars.
(struct attrs_def): Use decl_or_value.
(struct variable_tracking_info_def): Add permp, flooded.
(struct location_chain_def): Update comment.
(struct variable_part_def): Use decl_or_value.
(struct variable_def): Make var_part a variable length array.
(valvar_pool): New.
(scratch_regs): New.
(cselib_hook_called): New.
(dv_is_decl_p): New.
(dv_is_value_p): New.
(dv_as_decl): New.
(dv_as_value): New.
(dv_as_opaque): New.
(dv_onepart_p): New.
(dv_pool): New.
(IS_DECL_CODE): New.
(check_value_is_not_decl): New.
(dv_from_decl): New.
(dv_from_value): New.
(dv_htab_hash): New.
(variable_htab_hash): Use it.
(variable_htab_eq): Support values.
(variable_htab_free): Free from the right pool.
(attrs_list_member, attrs_list_insert): Use decl_or_value.
(attrs_list_union): Adjust.
(attrs_list_mpdv_union): New.
(tie_break_pointers): New.
(canon_value_cmp): New.
(unshare_variable): Return possibly-modified slot.
(vars_copy_1): Adjust.
(var_reg_decl_set): Adjust.  Split out of...
(var_reg_set): ... this.
(get_init_value): Adjust.
(var_reg_delete_and_set): Adjust.
(var_reg_delete): Adjust.
(var_regno_delete): Adjust.
(var_mem_decl_set): Split out of...
(var_mem_set): ... this.
(var_mem_delete_and_set): Adjust.
(var_mem_delete): Adjust.
(val_store): New.
(val_reset): New.
(val_resolve): New.
(variable_union): Adjust.  Speed up merge of 1-part vars.
(variable_canonicalize): Use unshared slot.
(VALUED_RECURSED_INTO): New.
(find_loc_in_1pdv): New.
(struct dfset_merge): New.
(insert_into_intersection): New.
(intersect_loc_chains): New.
(loc_cmp): New.
(canonicalize_loc_order_check): New.
(canonicalize_values_mark): New.
(canonicalize_values_star): New.
(variable_merge_over_cur): New.
(variable_merge_over_src): New.
(dataflow_set_merge): New.
(dataflow_set_equiv_regs): New.
(remove_duplicate_values): New.
(struct dfset_post_merge): New.
(variable_post_merge_new_vals): New.
(variable_post_merge_perm_vals): New.
(dataflow_post_merge_adjust): New.
(find_mem_expr_in_1pdv): New.
(dataflow_set_preserve_mem_locs): New.
(dataflow_set_remove_mem_locs): New.
(dataflow_set_clear_at_call): New.
(onepart_variable_different_p): New.
(variable_different_p): Use it.
(dataflow_set_different_1): Adjust.  Make detailed dump
more verbose.
(track_expr_p): Add need_rtl parameter.  Don't generate rtl
if not needed.
(track_loc_p): Pass it true.
(struct count_use_info): New.
(find_use_val): New.
(replace_expr_with_values): New.
(log_op_type): New.
(use_type): New, partially split out of...
(count_uses): ... this.  Count new micro-ops.
(count_uses_1): Adjust.
(count_stores): Adjust.
(count_with_sets): New.
(VAL_NEEDS_RESOLUTION): New.
(VAL_HOLDS_TRACK_EXPR): New.
(VAL_EXPR_IS_COPIED): New.
(VAL_EXPR_IS_CLOBBERED): New.
(add_uses): Adjust.  Generate new micro-ops.
(add_uses_1): Adjust.
(add_stores): Generate new micro-ops.
(add_with_sets): New.
(find_src_status): Adjust.
(find_src_set_src): Adjust.
(compute_bb_dataflow): Use dataflow_set_clear_at_call.
Handle new micro-ops.  Canonicalize value equivalances.
(vt_find_locations): Compute total size of hash tables for
dumping.  Perform merge for var-tracking-assignments.  Don't
disregard single-block loops.
(dump_attrs_list): Handle decl_or_value.
(dump_variable): Take variable.  Deal with decl_or_value.
(dump_variable_slot): New.
(dump_vars): Use it.
(dump_dataflow_sets): Adjust.
(set_slot_part): New, extended to support one-part variables
after splitting out of...
(set_variable_part): ... this.
(clobber_slot_part): New, split out of...
(clobber_variable_part): ... this.
(delete_slot_part): New, split out of...
(delete_variable_part): .... this.
(check_wrap_constant): New.
(vt_expand_loc_callback): New.
(vt_expand_loc): New.
(emit_note_insn_var_location): Adjust.  Handle values.  Handle
EMIT_NOTE_AFTER_CALL_INSN.
(emit_notes_for_differences_1): Adjust.  Handle values.
(emit_notes_for_differences_2): Likewise.
(emit_notes_for_differences): Adjust.
(emit_notes_in_bb): Take pointer to set.  Emit AFTER_CALL_INSN
notes.  Adjust.  Handle new micro-ops.
(vt_add_function_parameters): Adjust.  Create and bind values.
(vt_initialize): Adjust.  Initialize scratch_regs and
valvar_pool, flooded and perm..  Initialize and use cselib.  Log
operations.  Move some code to count_with_sets and add_with_sets.
(delete_debug_insns): New.
(vt_debug_insns_local): New.
(vt_finalize): Release permp, valvar_pool, scratch_regs.  Finish
cselib.
(var_tracking_main): If var-tracking-assignments is enabled
but var-tracking isn't, delete debug insns and leave.  Likewise
if we exceed limits or fail the stack adjustments tests, and
after all var-tracking processing.
More in var-tracking, from Jakub Jelinek <jakub@redhat.com>:
(dataflow_set): Add traversed_vars.
(value_chain, const_value_chain): New typedefs.
(value_chain_pool, value_chains): New variables.
(value_chain_htab_hash, value_chain_htab_eq, add_value_chain,
add_value_chains, add_cselib_value_chains, remove_value_chain,
remove_value_chains, remove_cselib_value_chains): New functions.
(shared_hash_find_slot_unshare_1, shared_hash_find_slot_1,
shared_hash_find_slot_noinsert_1, shared_hash_find_1): New
static inlines.
(shared_hash_find_slot_unshare, shared_hash_find_slot,
shared_hash_find_slot_noinsert, shared_hash_find): Update.
(dst_can_be_shared): New variable.
(unshare_variable): Unshare set->vars if shared, use shared_hash_*.
Clear dst_can_be_shared.  If set->traversed_vars is non-NULL and
different from set->vars, look up slot again instead of using the
passed in slot.
(dataflow_set_init): Initialize traversed_vars.
(variable_union): Use shared_hash_*.  Use initially NO_INSERT
lookup if set->vars is shared.  Don't keep slot cleared before
calling unshare_variable.  Unshare set->vars if needed.  Adjust
unshare_variable callers.  Clear dst_can_be_shared if needed.
Even ->refcount == 1 vars must be unshared if set->vars is shared
and var needs to be modified.
(dataflow_set_union): Set traversed_vars during canonicalization.
(VALUE_CHANGED, DECL_CHANGED): Define.
(set_dv_changed, dv_changed_p): New static inlines.
(track_expr_p): Clear DECL_CHANGED.
(dump_dataflow_sets): Set it.
(variable_was_changed): Call set_dv_changed.
(emit_note_insn_var_location): Likewise.
(changed_variables_stack): New variable.
(check_changed_vars_1, check_changed_vars_2): New functions.
(emit_notes_for_changes): Do nothing if changed_variables is
empty.  Traverse changed_variables with check_changed_vars_1,
call check_changed_vars_2 on each changed_variables_stack entry.
(emit_notes_in_bb): Add SET argument.  Just clear it at the
beginning, use it instead of local &set, don't destroy it at the
end.
(vt_emit_notes): Call dataflow_set_clear early on all
VTI(bb)->out sets, never use them, instead use emit_notes_in_bb
computed set, dataflow_set_clear also VTI(bb)->in when we are
done with the basic block.  Initialize changed_variables_stack,
free it afterwards.  If ENABLE_CHECKING verify that after noting
differences to an empty set value_chains hash table is empty.
(vt_initialize): Initialize value_chains and value_chain_pool.
(vt_finalize): Delete value_chains htab, free value_chain_pool.
(variable_tracking_main): Call dump_dataflow_sets before calling
vt_emit_notes, not after it.
* tree-flow.h (propagate_defs_into_debug_stmts): Declare.
(propagate_var_def_into_debug_stmts): Declare.
* df-problems.c (df_lr_bb_local_compute): Skip debug insns.
(df_set_note): Reject debug insns.
(df_whole_mw_reg_dead_p): Take added_notes_p argument.  Don't
add notes to debug insns.
(df_note_bb_compute): Adjust.  Likewise.
(df_simulate_uses): Skip debug insns.
(df_simulate_initialize_backwards): Likewise.
* reg-stack.c (subst_stack_regs_in_debug_insn): New.
(subst_stack_regs_pat): Reject debug insns.
(convert_regs_1): Handle debug insns.
* Makefile.in (TREE_INLINE_H): Take pointer-set.h from GIMPLE_H.
(print-rtl.o): Depend on cselib.h.
(cselib.o): Depend on TREE_PASS_H.
(var-tracking.o): Depend on cselib.h and TARGET_H.
* sched-rgn.c (rgn_estimate_number_of_insns): Discount
debug insns.
(init_ready_list): Skip boundary debug insns.
(add_branch_dependences): Skip debug insns.
(free_block_dependencies): Check for blocks with only debug
insns.
(compute_priorities): Likewise.
* gimple.c (gss_for_code): Handle GIMPLE_DEBUG.
(gimple_build_with_ops_stat): Take subcode as unsigned.  Adjust
all callers.
(gimple_build_debug_bind_stat): New.
(empty_body_p): Skip debug stmts.
(gimple_has_side_effects): Likewise.
(gimple_rhs_has_side_effects): Likewise.
* gimple.h (enum gimple_debug_subcode, GIMPLE_DEBUG_BIND): New.
(gimple_build_debug_bind_stat): Declare.
(gimple_build_debug_bind): Define.
(is_gimple_debug): New.
(gimple_debug_bind_p): New.
(gimple_debug_bind_get_var): New.
(gimple_debug_bind_get_value): New.
(gimple_debug_bind_get_value_ptr): New.
(gimple_debug_bind_set_var): New.
(gimple_debug_bind_set_value): New.
(GIMPLE_DEBUG_BIND_NOVALUE): New internal temporary macro.
(gimple_debug_bind_reset_value): New.
(gimple_debug_bind_has_value_p): New.
(gsi_next_nondebug): New.
(gsi_prev_nondebug): New.
(gsi_start_nondebug_bb): New.
(gsi_last_nondebug_bb): New.
* sched-vis.c (print_pattern): Handle VAR_LOCATION.
(print_insn): Handle DEBUG_INSN.
* tree-cfg.c (remove_bb): Walk stmts backwards.  Let loc
of first insn prevail.
(first_stmt): Skip debug stmts.
(first_non_label_stmt): Likewise.
(last_stmt): Likewise.
(has_zero_uses_1): New.
(single_imm_use_1): New.
(verify_gimple_debug): New.
(verify_types_in_gimple_stmt): Handle debug stmts.
(verify_stmt): Likewise.
(debug_loop_num): Skip debug stmts.
(remove_edge_and_dominated_blocks): Remove dominators last.
* tree-ssa-reasssoc.c (rewrite_expr_tree): Propagate into
debug stmts.
(linearize_expr): Likewise.
* config/i386/i386.c (ix86_delegitimize_address): Call
default implementation.
* config/ia64/ia64.c (ia64_safe_itanium_class): Handle debug
insns.
(group_barrier_needed): Skip debug insns.
(emit_insn_group_barriers): Likewise.
(emit_all_insn_group_barriers): Likewise.
(ia64_variable_issue): Handle debug insns.
(ia64_dfa_new_cycle): Likewise.
(final_emit_insn_group_barriers): Skip debug insns.
(ia64_dwarf2out_def_steady_cfa): Take frame argument.  Don't
def cfa without frame.
(process_set): Likewise.
(process_for_unwind_directive): Pass frame on.
* config/rs6000/rs6000.c (TARGET_DELEGITIMIZE_ADDRESS): Define.
(rs6000_delegitimize_address): New.
(rs6000_debug_adjust_cost): Handle debug insns.
(is_microcoded_insn): Likewise.
(is_cracked_insn): Likewise.
(is_nonpipeline_insn): Likewise.
(insn_must_be_first_in_group): Likewise.
(insn_must_be_last_in_group): Likewise.
(force_new_group): Likewise.
* cfgrtl.c (rtl_split_block): Emit INSN_DELETED note if block
contains only debug insns.
(rtl_merge_blocks): Skip debug insns.
(purge_dead_edges): Likewise.
(rtl_block_ends_with_call_p): Skip debug insns.
* dce.c (deletable_insn_p): Handle VAR_LOCATION.
(mark_reg_dependencies): Skip debug insns.
* params.def (PARAM_MIN_NONDEBUG_INSN_UID): New.
* tree-ssanames.c (release_ssa_name): Propagate def into
debug stmts.
* tree-ssa-threadedge.c
(record_temporary_equivalences_from_stmts): Skip debug stmts.
* regcprop.c (replace_oldest_value_addr): Skip debug insns.
(replace_oldest_value_mem): Use ALL_REGS for debug insns.
(copyprop_hardreg_forward_1): Handle debug insns.
* reload1.c (reload): Skip debug insns.  Replace unassigned
pseudos in debug insns with their equivalences.
(eliminate_regs_in_insn): Skip debug insns.
(emit_input_reload_insns): Skip debug insns at first, adjust
them later.
* tree-ssa-operands.c (add_virtual_operand): Reject debug stmts.
(get_indirect_ref_operands): Pass opf_no_vops on.
(get_expr_operands): Likewise.  Skip debug stmts.
(parse_ssa_operands): Scan debug insns with opf_no_vops.
gcc/testsuite/ChangeLog:
* gcc.dg/guality/guality.c: New.
* gcc.dg/guality/guality.h: New.
* gcc.dg/guality/guality.exp: New.
* gcc.dg/guality/example.c: New.
* lib/gcc-dg.exp (cleanup-dump): Remove .gk files.
(cleanup-saved-temps): Likewise, .gkd files too.
gcc/cp/ChangeLog:
* cp-tree.h (TFF_NO_OMIT_DEFAULT_TEMPLATE_ARGUMENTS): New.
* cp-lang.c (cxx_dwarf_name): Pass it.
* error.c (count_non_default_template_args): Take flags as
argument.  Adjust all callers.  Skip counting of default
arguments if the new flag is given.
ChangeLog:
* Makefile.tpl (BUILD_CONFIG): Default to bootstrap-debug.
* Makefile.in: Rebuilt.
contrib/ChangeLog:
* compare-debug: Look for .gkd files and compare them.
config/ChangeLog:
* bootstrap-debug.mk: Add comments.
* bootstrap-debug-big.mk: New.
* bootstrap-debug-lean.mk: New.
* bootstrap-debug-ckovw.mk: Add comments.
* bootstrap-debug-lib.mk: Drop CFLAGS for stages.  Use -g0
for TFLAGS in stage1.  Drop -fvar-tracking-assignments-toggle.

From-SVN: r151312
2009-09-02 02:42:21 +00:00
Alexandre Oliva
8fc68cba09 invoke.texi (-fvar-tracking-assignments): New.
gcc/ChangeLog:
* doc/invoke.texi (-fvar-tracking-assignments): New.
(-fvar-tracking-assignments-toggle): New.
(-fdump-final-insns=file): Mark filename as optional.
(--param min-nondebug-insn-uid): New.
(-gdwarf-@{version}): Mention version 4.
* opts.c (common_handle_option): Accept it.
* tree-vrp.c (find_assert_locations_1): Skip debug stmts.
* regrename.c (regrename_optimize): Drop last.  Don't count debug
insns as uses.  Don't reject change because of debug insn.
(do_replace): Reject DEBUG_INSN as chain starter.  Take base_regno
from the chain starter, and check for inexact matches in
DEBUG_INSNS.
(scan_rtx_reg): Accept inexact matches in DEBUG_INSNs.
(build_def_use): Simplify and fix the marking of DEBUG_INSNs.
* sched-ebb.c (schedule_ebbs): Skip boundary debug insns.
* fwprop.c (forward_propagate_and_simplify): ...into debug insns.
* doc/gimple.texi (is_gimple_debug): New.
(gimple_debug_bind_p): New.
(is_gimple_call, gimple_assign_cast_p): End sentence with period.
* doc/install.texi (bootstrap-debug): More details.
(bootstrap-debug-big, bootstrap-debug-lean): Document.
(bootstrap-debug-lib): More details.
(bootstrap-debug-ckovw): Update.
(bootstrap-time): New.
* tree-into-ssa.c (mark_def_sites): Skip debug stmts.
(insert_phi_nodes_for): Insert debug stmts.
(rewrite_stmt): Take iterator.  Insert debug stmts.
(rewrite_enter_block): Adjust.
(maybe_replace_use_in_debug_stmt): New.
(rewrite_update_stmt): Use it.
(mark_use_interesting): Return early for debug stmts.
* tree-ssa-loop-im.c (rewrite_bittest): Propagate DEFs into debug
stmts before replacing stmt.
(move_computations_stmt): Likewise.
* ira-conflicts.c (add_copies): Skip debug insns.
* regstat.c (regstat_init_n_sets_and_refs): Discount debug insns.
(regstat_bb_compute_ri): Skip debug insns.
* tree-ssa-threadupdate.c (redirection_block_p): Skip debug stmts.
* tree-ssa-loop-manip.c (find_uses_to_rename_stmt,
check_loop_closed_ssa_stmt): Skip debug stmts.
* tree-tailcall.c (find_tail_calls): Likewise.
* tree-ssa-loop-ch.c (should_duplicate_loop_header_p): Likewise.
* tree.h (MAY_HAVE_DEBUG_STMTS): New.
(build_var_debug_value_stat): Declare.
(build_var_debug_value): Define.
(target_for_debug_bind): Declare.
* reload.c (find_equiv_reg): Skip debug insns.
* rtlanal.c (reg_used_between_p): Skip debug insns.
(side_effects_p): Likewise.
(canonicalize_condition): Likewise.
* ddg.c (create_ddg_dep_from_intra_loop_link): Check that non-debug
insns never depend on debug insns.
(create_ddg_dep_no_link): Likewise.
(add_cross_iteration_register_deps): Use ANTI_DEP for debug insns.
Don't add inter-loop dependencies for debug insns.
(build_intra_loop_deps): Likewise.
(create_ddg): Count debug insns.
* ddg.h (struct ddg::num_debug): New.
(num_backargs): Pair up with previous int field.
* diagnostic.c (diagnostic_report_diagnostic): Skip notes on
-fcompare-debug-second.
* final.c (get_attr_length_1): Skip debug insns.
(rest_of_clean-state): Don't dump CFA_RESTORE_STATE.
* gcc.c (invoke_as): Call compare-debug-dump-opt.
(driver_self_specs): Map -fdump-final-insns to
-fdump-final-insns=..
(get_local_tick): New.
(compare_debug_dump_opt_spec_function): Test for . argument and
compute output name.  Compute temp output spec without flag name.
Compute -frandom-seed.
(OPT): Undef after use.
* cfgloopanal.c (num_loop_insns): Skip debug insns.
(average_num_loop_insns): Likewise.
* params.h (MIN_NONDEBUG_INSN_UID): New.
* gimple.def (GIMPLE_DEBUG): New.
* ipa-reference.c (scan_stmt_for_static_refs): Skip debug stmts.
* auto-inc-dec.c (merge_in_block): Skip debug insns.
(merge_in_block): Fix whitespace.
* toplev.c (flag_var_tracking): Update comment.
(flag_var_tracking_assignments): New.
(flag_var_tracking_assignments_toggle): New.
(process_options): Don't open final insns dump file if we're not
going to write to it.  Compute defaults for var_tracking.
* df-scan.c (df_insn_rescan_debug_internal): New.
(df_uses_record): Handle debug insns.
* haifa-sched.c (ready): Initialize n_debug.
(contributes_to_priority): Skip debug insns.
(dep_list_size): New.
(priority): Use it.
(rank_for_schedule): Likewise.  Schedule debug insns as soon as
they're ready.  Disregard previous debug insns to make decisions.
(queue_insn): Never queue debug insns.
(ready_add, ready_remove_first, ready_remove): Count debug insns.
(schedule_insn): Don't reject debug insns because of issue rate.
(get_ebb_head_tail, no_real_insns_p): Skip boundary debug insns.
(queue_to_ready): Skip and discount debug insns.
(choose_ready): Let debug insns through.
(schedule_block): Check boundary debug insns.  Discount debug
insns, schedule them early.  Adjust whitespace.
(set_priorities): Check for boundary debug insns.
(add_jump_dependencies): Use dep_list_size.
(prev_non_location_insn): New.
(check_cfg): Use it.
* tree-ssa-loop-ivopts.c (find-interesting_users): Skip debug
stmts.
(remove_unused_ivs): Reset debug stmts.
* modulo-sched.c (const_iteration_count): Skip debug insns.
(res_MII): Discount debug insns.
(loop_single_full_bb_p): Skip debug insns.
(sms_schedule): Likewise.
(sms_schedule_by_order): Likewise.
(ps_has_conflicts): Likewise.
* caller-save.c (refmarker_fn): New.
(save_call_clobbered_regs): Replace regs with saved mem in
debug insns.
(mark_referenced_regs): Take pointer, mark and arg.  Adjust.
Call refmarker_fn mark for hardregnos.
(mark_reg_as_referenced): New.
(replace_reg_with_saved_mem): New.
* ipa-pure-const.c (check_stmt): Skip debug stmts.
* cse.c (cse_insn): Canonicalize debug insns.  Skip them when
searching back.
(cse_extended_basic_block): Skip debug insns.
(count_reg_usage): Likewise.
(is_dead_reg): New, split out of...
(set_live_p): ... here.
(insn_live_p): Use it for debug insns.
* tree-stdarg.c (check_all_va_list_escapes): Skip debug stmts.
(execute_optimize_stdarg): Likewise.
* tree-ssa-dom.c (propagate_rhs_into_lhs): Likewise.
* tree-ssa-propagate.c (substitute_and_fold): Don't regard
changes in debug stmts as changes.
* sel-sched.c (moving_insn_creates_bookkeeping_block_p): New.
(moveup_expr): Don't move across debug insns.  Don't move
debug insn if it would create a bookkeeping block.
(moveup_expr_cached): Don't use cache for debug insns that
are heads of blocks.
(compute_av_set_inside_bb): Skip debug insns.
(sel_rank_for_schedule): Schedule debug insns first.  Remove
dead code.
(block_valid_for_bookkeeping_p); Support lax searches.
(create_block_for_bookkeeping): Adjust block numbers when
encountering debug-only blocks.
(find_place_for_bookkeeping): Deal with debug-only blocks.
(generate_bookkeeping_insn): Accept no place to insert.
(remove_temp_moveop_nops): New argument full_tidying.
(prepare_place_to_insert): Deal with debug insns.
(advance_state_on_fence): Debug insns don't start cycles.
(update_boundaries): Take fence as argument.  Deal with
debug insns.
(schedule_expr_on_boundary): No full_tidying on debug insns.
(fill_insns): Deal with debug insns.
(track_scheduled_insns_and_blocks): Don't count debug insns.
(need_nop_to_preserve_insn_bb): New, split out of...
(remove_insn_from_stream): ... this.
(fur_orig_expr_not_found): Skip debug insns.
* rtl.def (VALUE): Move up.
(DEBUG_INSN): New.
* tree-ssa-sink.c (all_immediate_uses_same_place): Skip debug
stmts.
(nearest_common_dominator_of_uses): Take debug_stmts argument.
Set it if debug stmts are found.
(statement_sink_location): Skip debug stmts.  Propagate
moving defs into debug stmts.
* ifcvt.c (first_active_insn): Skip debug insns.
(last_active_insns): Likewise.
(cond_exec_process_insns): Likewise.
(noce_process_if_block): Likewise.
(check_cond_move_block): Likewise.
(cond_move_convert_if_block): Likewise.
(block_jumps_and_fallthru_p): Likewise.
(dead_or_predicable): Likewise.
* dwarf2out.c (debug_str_hash_forced): New.
(find_AT_string): Add comment.
(gen_label_for_indirect_string): New.
(get_debug_string_label): New.
(AT_string_form): Use it.
(mem_loc_descriptor): Handle non-TLS symbols.  Handle MINUS , DIV,
MOD, AND, IOR, XOR, NOT, ABS, NEG, and CONST_STRING.  Accept but
discard COMPARE, IF_THEN_ELSE, ROTATE, ROTATERT, TRUNCATE and
several operations that cannot be represented with DWARF opcodes.
(loc_descriptor): Ignore SIGN_EXTEND and ZERO_EXTEND.  Require
dwarf_version 4 for DW_OP_implicit_value and DW_OP_stack_value.
(dwarf2out_var_location): Take during-call mark into account.
(output_indirect_string): Update comment.  Output if there are
label and references.
(prune_indirect_string): New.
(prune_unused_types): Call it if debug_str_hash_forced.
More in dwarf2out.c, from Jakub Jelinek <jakub@redhat.com>:
(dw_long_long_const): Remove.
(struct dw_val_struct): Change val_long_long type to rtx.
(print_die, attr_checksum, same_dw_val_p, loc_descriptor): Adjust for
val_long_long change to CONST_DOUBLE rtx from a long hi/lo pair.
(output_die): Likewise.  Use HOST_BITS_PER_WIDE_INT size of each
component instead of HOST_BITS_PER_LONG.
(output_loc_operands): Likewise.   For const8* assert
HOST_BITS_PER_WIDE_INT rather than HOST_BITS_PER_LONG is >= 64.
(output_loc_operands_raw): For const8* assert HOST_BITS_PER_WIDE_INT
rather than HOST_BITS_PER_LONG is >= 64.
(add_AT_long_long): Remove val_hi and val_lo arguments, add
val_const_double.
(size_of_die): Use HOST_BITS_PER_WIDE_INT size multiplier instead of
HOST_BITS_PER_LONG for dw_val_class_long_long.
(add_const_value_attribute): Adjust add_AT_long_long caller.  Don't
handle TLS SYMBOL_REFs.  If CONST wraps a constant, tail recurse.
(dwarf_stack_op_name): Handle DW_OP_implicit_value and
DW_OP_stack_value.
(size_of_loc_descr, output_loc_operands, output_loc_operands_raw):
Handle DW_OP_implicit_value.
(extract_int): Move prototype earlier.
(mem_loc_descriptor): For SUBREG punt if inner
mode size is wider than DWARF2_ADDR_SIZE.  Handle SIGN_EXTEND
and ZERO_EXTEND by DW_OP_shl and DW_OP_shr{a,}.  Handle
EQ, NE, GT, GE, LT, LE, GTU, GEU, LTU, LEU, SMIN, SMAX, UMIN,
UMAX, SIGN_EXTRACT, ZERO_EXTRACT.
(loc_descriptor): Compare mode size with DWARF2_ADDR_SIZE
instead of Pmode size.
(loc_descriptor): Add MODE argument.  Handle CONST_INT, CONST_DOUBLE,
CONST_VECTOR, CONST, LABEL_REF and SYMBOL_REF if mode != VOIDmode,
attempt to handle other expressions.  Don't handle TLS SYMBOL_REFs.
(concat_loc_descriptor, concatn_loc_descriptor,
loc_descriptor_from_tree_1): Adjust loc_descriptor callers.
(add_location_or_const_value_attribute): Likewise.  For single
location loc_lists attempt to use add_const_value_attribute
for constant decls.  Add DW_AT_const_value even if
NOTE_VAR_LOCATION is VAR_LOCATION with CONSTANT_P or CONST_STRING
in its expression.
* cfgbuild.c (inside_basic_block_p): Handle debug insns.
(control_flow_insn_p): Likewise.
* tree-parloops.c (eliminate_local_variables_stmt): Handle debug
stmt.
(separate_decls_in_region_debug_bind): New.
(separate_decls_in_region): Process debug bind stmts afterwards.
* recog.c (verify_changes): Handle debug insns.
(extract_insn): Likewise.
(peephole2_optimize): Skip debug insns.
* dse.c (scan_insn): Skip debug insns.
* sel-sched-ir.c (return_nop_to_pool): Take full_tidying argument.
Pass it on.
(setup_id_for_insn): Handle debug insns.
(maybe_tidy_empty_bb): Adjust whitespace.
(tidy_control_flow): Skip debug insns.
(sel_remove_insn): Adjust for debug insns.
(sel_estimate_number_of_insns): Skip debug insns.
(create_insn_rtx_from_pattern): Handle debug insns.
(create_copy_of_insn_rtx): Likewise.
* sel-sched-.h (sel_bb_end): Declare.
(sel_bb_empty_or_nop_p): New.
(get_all_loop_exits): Use it.
(_eligible_successor_edge_p): Likewise.
(return_nop_to_pool): Adjust.
* tree-eh.c (tre_empty_eh_handler_p): Skip debug stmts.
* ira-lives.c (process_bb_node_lives): Skip debug insns.
* gimple-pretty-print.c (dump_gimple_debug): New.
(dump_gimple_stmt): Use it.
(dump_bb_header): Skip gimple debug stmts.
* regmove.c (optimize_reg_copy_1): Discount debug insns.
(fixup_match_2): Likewise.
(regmove_backward_pass): Likewise.  Simplify combined
replacement.  Handle debug insns.
* function.c (instantiate_virtual_regs): Handle debug insns.
* function.h (struct emit_status): Add x_cur_debug_insn_uid.
* print-rtl.h: Include cselib.h.
(print_rtx): Print VALUEs.  Split out and recurse for
VAR_LOCATIONs.
* df.h (df_inns_rescan_debug_internal): Declare.
* gcse.c (alloc_hash_table): Estimate n_insns.
(cprop_insn): Don't regard debug insns as changes.
(bypass_conditional_jumps): Skip debug insns.
(one_pre_gcse_pass): Adjust.
(one_code_hoisting_pass): Likewise.
(compute_ld_motion_mems): Skip debug insns.
(one_cprop_pass): Adjust.
* tree-if-conv.c (tree_if_convert_stmt): Reset debug stmts.
(if_convertible_stmt_p): Handle debug stmts.
* init-regs.c (initialize_uninitialized_regs): Skip debug insns.
* tree-vect-loop.c (vect_is_simple_reduction): Skip debug stmts.
* ira-build.c (create_bb_allocnos): Skip debug insns.
* tree-flow-inline.h (has_zero_uses): Discount debug stmts.
(has_single_use): Likewise.
(single_imm_use): Likewise.
(num_imm_uses): Likewise.
* tree-ssa-phiopt.c (empty_block_p): Skip debug stmts.
* tree-ssa-coalesce.c (build_ssa_conflict_graph): Skip debug stmts.
(create_outofssa_var_map): Likewise.
* lower-subreg.c (adjust_decomposed_uses): New.
(resolve_debug): New.
(decompose_multiword_subregs): Use it.
* tree-dfa.c (find_referenced_vars): Skip debug stmts.
* emit-rtl.c: Include params.h.
(cur_debug_insn_uid): Define.
(set_new_first_and_last_insn): Set cur_debug_insn_uid too.
(copy_rtx_if_shared_1): Handle debug insns.
(reset_used_flags): Likewise.
(set_used_flags): LIkewise.
(get_max_insn_count): New.
(next_nondebug_insn): New.
(prev_nondebug_insn): New.
(make_debug_insn_raw): New.
(emit_insn_before_noloc): Handle debug insns.
(emit_jump_insn_before_noloc): Likewise.
(emit_call_insn_before_noloc): Likewise.
(emit_debug_insn_before_noloc): New.
(emit_insn_after_noloc): Handle debug insns.
(emit_jump_insn_after_noloc): Likewise.
(emit_call_insn_after_noloc): Likewise.
(emit_debug_insn_after_noloc): Likewise.
(emit_insn_after): Take loc from earlier non-debug insn.
(emit_jump_insn_after): Likewise.
(emit_call_insn_after): Likewise.
(emit_debug_insn_after_setloc): New.
(emit_debug_insn_after): New.
(emit_insn_before): Take loc from later non-debug insn.
(emit_jump_insn_before): Likewise.
(emit_call_insn_before): Likewise.
(emit_debug_insn_before_setloc): New.
(emit_debug_insn_before): New.
(emit_insn): Handle debug insns.
(emit_debug_insn): New.
(emit_jump_insn): Handle debug insns.
(emit_call_insn): Likewise.
(emit): Likewise.
(init_emit): Take min-nondebug-insn-uid into account.
Initialize cur_debug_insn_uid.
(emit_copy_of_insn_after): Handle debug insns.
* cfgexpand.c (gimple_assign_rhs_to_tree): Do not overwrite
location of single rhs in place.
(maybe_dump_rtl_for_gimple_stmt): Dump lineno.
(floor_sdiv_adjust): New.
(cell_sdiv_adjust): New.
(cell_udiv_adjust): New.
(round_sdiv_adjust): New.
(round_udiv_adjust): New.
(wrap_constant): Moved from cselib.
(unwrap_constant): New.
(expand_debug_expr): New.
(expand_debug_locations): New.
(expand_gimple_basic_block): Drop hiding redeclaration.  Expand
debug bind stmts.
(gimple_expand_cfg): Expand debug locations.
* cselib.c: Include tree-pass.h.
(struct expand_value_data): New.
(cselib_record_sets_hook): New.
(PRESERVED_VALUE_P, LONG_TERM_PRESERVED_VALUE_P): New.
(cselib_clear_table): Move, and implemnet in terms of...
(cselib_reset_table_with_next_value): ... this.
(cselib_get_next_unknown_value): New.
(discard_useless_locs): Don't discard preserved values.
(cselib_preserve_value): New.
(cselib_preserved_value_p): New.
(cselib_preserve_definitely): New.
(cselib_clear_preserve): New.
(cselib_preserve_only_values): New.
(new_cselib_val): Take rtx argument.  Dump it in details.
(cselib_lookup_mem): Adjust.
(expand_loc): Take regs_active in struct.  Adjust.  Silence
dumps unless details are requested.
(cselib_expand_value_rtx_cb): New.
(cselib_expand_value_rtx): Rename and reimplment in terms of...
(cselib_expand_value_rtx_1): ... this.  Adjust.  Silence dumps
without details.  Copy more subregs.  Try to resolve values
using a callback.  Wrap constants.
(cselib_subst_to_values): Adjust.
(cselib_log_lookup): New.
(cselib_lookup): Call it.
(cselib_invalidate_regno): Don't count preserved values as
useless.
(cselib_invalidate_mem): Likewise.
(cselib_record_set): Likewise.
(struct set): Renamed to cselib_set, moved to cselib.h.
(cselib_record_sets): Adjust.  Call hook.
(cselib_process_insn): Reset table when it would be cleared.
(dump_cselib_val): New.
(dump_cselib_table): New.
* tree-cfgcleanup.c (tree_forwarded_block_p): Skip debug stmts.
(remove_forwarder_block): Support moving debug stmts.
* cselib.h (cselib_record_sets_hook): Declare.
(cselib_expand_callback): New type.
(cselib_expand_value_rtx_cb): Declare.
(cselib_reset_table_with_next_value): Declare.
(cselib_get_next_unknown_value): Declare.
(cselib_preserve_value): Declare.
(cselib_preserved_value_p): Declare.
(cselib_preserve_only_values): Declare.
(dump_cselib_table): Declare.
* cfgcleanup.c (flow_find_cross_jump): Skip debug insns.
(try_crossjump_to_edge): Likewise.
(delete_unreachable_blocks): Remove dominant GIMPLE blocks after
dominated blocks when debug stmts are present.
* simplify-rtx.c (delegitimize_mem_from_attrs): New.
* tree-ssa-live.c (remove_unused_locals): Skip debug stmts.
(set_var_live_on_entry): Likewise.
* loop-invariant.c (find_invariants_bb): Skip debug insns.
* cfglayout.c (curr_location, last_location): Make static.
(set_curr_insn_source_location): Don't avoid bouncing.
(get_curr_insn_source_location): New.
(get_curr_insn_block): New.
(duplicate_insn_chain): Handle debug insns.
* tree-ssa-forwprop.c (forward_propagate_addr_expr): Propagate
into debug stmts.
* common.opt (fcompare-debug): Move to sort order.
(fdump-unnumbered-links): Likewise.
(fvar-tracking-assignments): New.
(fvar-tracking-assignments-toggle): New.
* tree-ssa-dce.c (mark_stmt_necessary): Don't mark blocks
because of debug stmts.
(mark_stmt_if_obviously_necessary): Mark debug stmts.
(eliminate_unnecessary_stmts): Walk dominated blocks before
dominators.
* tree-ssa-ter.c (find_replaceable_in_bb): Skip debug stmts.
* ira.c (memref_used_between_p): Skip debug insns.
(update_equiv_regs): Likewise.
* sched-deps.c (sd_lists_size): Accept empty list.
(sd_init_insn): Mark debug insns.
(sd_finish_insn): Unmark them.
(sd_add_dep): Reject non-debug deps on debug insns.
(fixup_sched_groups): Give debug insns group treatment.
Skip debug insns.
(sched_analyze_reg): Don't mark debug insns for sched before call.
(sched_analyze_2): Handle debug insns.
(sched_analyze_insn): Compute next non-debug insn.  Handle debug
insns.
(deps_analyze_insn): Handle debug insns.
(deps_start_bb): Skip debug insns.
(init_deps): Initialize last_debug_insn.
* tree-ssa.c (target_for_debug_bind): New.
(find_released_ssa_name): New.
(propagate_var_def_into_debug_stmts): New.
(propagate_defs_into_debug_stmts): New.
(verify_ssa): Skip debug bind stmts without values.
(warn_uninialized_vars): Skip debug stmts.
* target-def.h (TARGET_DELEGITIMIZE_ADDRESS): Set default.
* rtl.c (rtx_equal_p_cb): Handle VALUEs.
(rtx_equal_p): Likewise.
* ira-costs.c (scan_one_insn): Skip debug insns.
(process_bb_node_for_hard_reg_moves): Likewise.
* rtl.h (DEBUG_INSN_P): New.
(NONDEBUG_INSN_P): New.
(MAY_HAVE_DEBUG_INSNS): New.
(INSN_P): Accept debug insns.
(RTX_FRAME_RELATED_P): Likewise.
(INSN_DELETED_P): Likewise
(PAT_VAR_LOCATION_DECL): New.
(PAT_VAR_LOCATION_LOC): New.
(PAT_VAR_OCATION_STATUS): New.
(NOTE_VAR_LOCATION_DECL): Reimplement.
(NOTE_VAR_LOCATION_LOC): Likewise.
(NOTE_VAR_LOCATION_STATUS): Likewise.
(INSN_VAR_LOCATION): New.
(INSN_VAR_LOCATION_DECL): New.
(INSN_VAR_LOCATION_LOC): New.
(INSN_VAR_LOCATION_STATUS): New.
(gen_rtx_UNKNOWN_VAR_LOC): New.
(VAR_LOC_UNKNOWN_P): New.
(NOTE_DURING_CALL_P): New.
(SCHED_GROUP_P): Accept debug insns.
(emit_debug_insn_before): Declare.
(emit_debug_insn_before_noloc): Declare.
(emit_debug_insn_beore_setloc): Declare.
(emit_debug_insn_after): Declare.
(emit_debug_insn_after_noloc): Declare.
(emit_debug_insn_after_setloc): Declare.
(emit_debug_insn): Declare.
(make_debug_insn_raw): Declare.
(prev_nondebug_insn): Declare.
(next_nondebug_insn): Declare.
(delegitimize_mem_from_attrs): Declare.
(get_max_insn_count): Declare.
(wrap_constant): Declare.
(unwrap_constant): Declare.
(get_curr_insn_source_location): Declare.
(get_curr_insn_block): Declare.
* tree-inline.c (insert_debug_decl_map): New.
(processing_debug_stmt): New.
(remap_decl): Don't create new mappings in debug stmts.
(remap_gimple_op_r): Don't add references in debug stmts.
(copy_tree_body_r): Likewise.
(remap_gimple_stmt): Handle debug bind stmts.
(copy_bb): Skip debug stmts.
(copy_edges_for_bb): Likewise.
(copy_debug_stmt): New.
(copy_debug_stmts): New.
(copy_body): Copy debug stmts at the end.
(insert_init_debug_bind): New.
(insert_init_stmt): Take id.  Skip and emit debug stmts.
(setup_one_parameter): Remap variable earlier, register debug
mapping.
(estimate_num_insns): Skip debug stmts.
(expand_call_inline): Preserve debug_map.
(optimize_inline_calls): Check for no debug_stmts left-overs.
(unsave_expr_now): Preserve debug_map.
(copy_gimple_seq_and_replace_locals): Likewise.
(tree_function_versioning): Check for no debug_stmts left-overs.
Init and destroy debug_map as needed.  Split edges unconditionally.
(build_duplicate_type): Init and destroy debug_map as needed.
* tree-inline.h: Include gimple.h instead of pointer-set.h.
(struct copy_body_data): Add debug_stmts and debug_map.
* sched-int.h (struct ready_list): Add n_debug.
(struct deps): Add last_debug_insn.
(DEBUG_INSN_SCHED_P): New.
(BOUNDARY_DEBUG_INSN_P): New.
(SCHEDULE_DEBUG_INSN_P): New.
(sd_iterator_cond): Accept empty list.
* combine.c (create_log_links): Skip debug insns.
(combine_instructions): Likewise.
(cleanup_auto_inc_dec): New.  From Jakub Jelinek: Make sure the
return value is always unshared.
(struct rtx_subst_pair): New.
(auto_adjust_pair): New.
(propagate_for_debug_subst): New.
(propagate_for_debug): New.
(try_combine): Skip debug insns.  Propagate removed defs into
debug insns.
(next_nonnote_nondebug_insn): New.
(distribute_notes): Use it.  Skip debug insns.
(distribute_links): Skip debug insns.
* tree-outof-ssa.c (set_location_for_edge): Likewise.
* resource.c (mark_target_live_regs): Likewise.
* var-tracking.c: Include cselib.h and target.h.
(enum micro_operation_type): Add MO_VAL_USE, MO_VAL_LOC, and
MO_VAL_SET.
(micro_operation_type_name): New.
(enum emit_note_where): Add EMIT_NOTE_AFTER_CALL_INSN.
(struct micro_operation_def): Update comments.
(decl_or_value): New type.  Use instead of decls.
(struct emit_note_data_def): Add vars.
(struct attrs_def): Use decl_or_value.
(struct variable_tracking_info_def): Add permp, flooded.
(struct location_chain_def): Update comment.
(struct variable_part_def): Use decl_or_value.
(struct variable_def): Make var_part a variable length array.
(valvar_pool): New.
(scratch_regs): New.
(cselib_hook_called): New.
(dv_is_decl_p): New.
(dv_is_value_p): New.
(dv_as_decl): New.
(dv_as_value): New.
(dv_as_opaque): New.
(dv_onepart_p): New.
(dv_pool): New.
(IS_DECL_CODE): New.
(check_value_is_not_decl): New.
(dv_from_decl): New.
(dv_from_value): New.
(dv_htab_hash): New.
(variable_htab_hash): Use it.
(variable_htab_eq): Support values.
(variable_htab_free): Free from the right pool.
(attrs_list_member, attrs_list_insert): Use decl_or_value.
(attrs_list_union): Adjust.
(attrs_list_mpdv_union): New.
(tie_break_pointers): New.
(canon_value_cmp): New.
(unshare_variable): Return possibly-modified slot.
(vars_copy_1): Adjust.
(var_reg_decl_set): Adjust.  Split out of...
(var_reg_set): ... this.
(get_init_value): Adjust.
(var_reg_delete_and_set): Adjust.
(var_reg_delete): Adjust.
(var_regno_delete): Adjust.
(var_mem_decl_set): Split out of...
(var_mem_set): ... this.
(var_mem_delete_and_set): Adjust.
(var_mem_delete): Adjust.
(val_store): New.
(val_reset): New.
(val_resolve): New.
(variable_union): Adjust.  Speed up merge of 1-part vars.
(variable_canonicalize): Use unshared slot.
(VALUED_RECURSED_INTO): New.
(find_loc_in_1pdv): New.
(struct dfset_merge): New.
(insert_into_intersection): New.
(intersect_loc_chains): New.
(loc_cmp): New.
(canonicalize_loc_order_check): New.
(canonicalize_values_mark): New.
(canonicalize_values_star): New.
(variable_merge_over_cur): New.
(variable_merge_over_src): New.
(dataflow_set_merge): New.
(dataflow_set_equiv_regs): New.
(remove_duplicate_values): New.
(struct dfset_post_merge): New.
(variable_post_merge_new_vals): New.
(variable_post_merge_perm_vals): New.
(dataflow_post_merge_adjust): New.
(find_mem_expr_in_1pdv): New.
(dataflow_set_preserve_mem_locs): New.
(dataflow_set_remove_mem_locs): New.
(dataflow_set_clear_at_call): New.
(onepart_variable_different_p): New.
(variable_different_p): Use it.
(dataflow_set_different_1): Adjust.  Make detailed dump
more verbose.
(track_expr_p): Add need_rtl parameter.  Don't generate rtl
if not needed.
(track_loc_p): Pass it true.
(struct count_use_info): New.
(find_use_val): New.
(replace_expr_with_values): New.
(log_op_type): New.
(use_type): New, partially split out of...
(count_uses): ... this.  Count new micro-ops.
(count_uses_1): Adjust.
(count_stores): Adjust.
(count_with_sets): New.
(VAL_NEEDS_RESOLUTION): New.
(VAL_HOLDS_TRACK_EXPR): New.
(VAL_EXPR_IS_COPIED): New.
(VAL_EXPR_IS_CLOBBERED): New.
(add_uses): Adjust.  Generate new micro-ops.
(add_uses_1): Adjust.
(add_stores): Generate new micro-ops.
(add_with_sets): New.
(find_src_status): Adjust.
(find_src_set_src): Adjust.
(compute_bb_dataflow): Use dataflow_set_clear_at_call.
Handle new micro-ops.  Canonicalize value equivalances.
(vt_find_locations): Compute total size of hash tables for
dumping.  Perform merge for var-tracking-assignments.  Don't
disregard single-block loops.
(dump_attrs_list): Handle decl_or_value.
(dump_variable): Take variable.  Deal with decl_or_value.
(dump_variable_slot): New.
(dump_vars): Use it.
(dump_dataflow_sets): Adjust.
(set_slot_part): New, extended to support one-part variables
after splitting out of...
(set_variable_part): ... this.
(clobber_slot_part): New, split out of...
(clobber_variable_part): ... this.
(delete_slot_part): New, split out of...
(delete_variable_part): .... this.
(check_wrap_constant): New.
(vt_expand_loc_callback): New.
(vt_expand_loc): New.
(emit_note_insn_var_location): Adjust.  Handle values.  Handle
EMIT_NOTE_AFTER_CALL_INSN.
(emit_notes_for_differences_1): Adjust.  Handle values.
(emit_notes_for_differences_2): Likewise.
(emit_notes_for_differences): Adjust.
(emit_notes_in_bb): Take pointer to set.  Emit AFTER_CALL_INSN
notes.  Adjust.  Handle new micro-ops.
(vt_add_function_parameters): Adjust.  Create and bind values.
(vt_initialize): Adjust.  Initialize scratch_regs and
valvar_pool, flooded and perm..  Initialize and use cselib.  Log
operations.  Move some code to count_with_sets and add_with_sets.
(delete_debug_insns): New.
(vt_debug_insns_local): New.
(vt_finalize): Release permp, valvar_pool, scratch_regs.  Finish
cselib.
(var_tracking_main): If var-tracking-assignments is enabled
but var-tracking isn't, delete debug insns and leave.  Likewise
if we exceed limits or fail the stack adjustments tests, and
after all var-tracking processing.
More in var-tracking, from Jakub Jelinek <jakub@redhat.com>:
(dataflow_set): Add traversed_vars.
(value_chain, const_value_chain): New typedefs.
(value_chain_pool, value_chains): New variables.
(value_chain_htab_hash, value_chain_htab_eq, add_value_chain,
add_value_chains, add_cselib_value_chains, remove_value_chain,
remove_value_chains, remove_cselib_value_chains): New functions.
(shared_hash_find_slot_unshare_1, shared_hash_find_slot_1,
shared_hash_find_slot_noinsert_1, shared_hash_find_1): New
static inlines.
(shared_hash_find_slot_unshare, shared_hash_find_slot,
shared_hash_find_slot_noinsert, shared_hash_find): Update.
(dst_can_be_shared): New variable.
(unshare_variable): Unshare set->vars if shared, use shared_hash_*.
Clear dst_can_be_shared.  If set->traversed_vars is non-NULL and
different from set->vars, look up slot again instead of using the
passed in slot.
(dataflow_set_init): Initialize traversed_vars.
(variable_union): Use shared_hash_*.  Use initially NO_INSERT
lookup if set->vars is shared.  Don't keep slot cleared before
calling unshare_variable.  Unshare set->vars if needed.  Adjust
unshare_variable callers.  Clear dst_can_be_shared if needed.
Even ->refcount == 1 vars must be unshared if set->vars is shared
and var needs to be modified.
(dataflow_set_union): Set traversed_vars during canonicalization.
(VALUE_CHANGED, DECL_CHANGED): Define.
(set_dv_changed, dv_changed_p): New static inlines.
(track_expr_p): Clear DECL_CHANGED.
(dump_dataflow_sets): Set it.
(variable_was_changed): Call set_dv_changed.
(emit_note_insn_var_location): Likewise.
(changed_variables_stack): New variable.
(check_changed_vars_1, check_changed_vars_2): New functions.
(emit_notes_for_changes): Do nothing if changed_variables is
empty.  Traverse changed_variables with check_changed_vars_1,
call check_changed_vars_2 on each changed_variables_stack entry.
(emit_notes_in_bb): Add SET argument.  Just clear it at the
beginning, use it instead of local &set, don't destroy it at the
end.
(vt_emit_notes): Call dataflow_set_clear early on all
VTI(bb)->out sets, never use them, instead use emit_notes_in_bb
computed set, dataflow_set_clear also VTI(bb)->in when we are
done with the basic block.  Initialize changed_variables_stack,
free it afterwards.  If ENABLE_CHECKING verify that after noting
differences to an empty set value_chains hash table is empty.
(vt_initialize): Initialize value_chains and value_chain_pool.
(vt_finalize): Delete value_chains htab, free value_chain_pool.
(variable_tracking_main): Call dump_dataflow_sets before calling
vt_emit_notes, not after it.
* tree-flow.h (propagate_defs_into_debug_stmts): Declare.
(propagate_var_def_into_debug_stmts): Declare.
* df-problems.c (df_lr_bb_local_compute): Skip debug insns.
(df_set_note): Reject debug insns.
(df_whole_mw_reg_dead_p): Take added_notes_p argument.  Don't
add notes to debug insns.
(df_note_bb_compute): Adjust.  Likewise.
(df_simulate_uses): Skip debug insns.
(df_simulate_initialize_backwards): Likewise.
* reg-stack.c (subst_stack_regs_in_debug_insn): New.
(subst_stack_regs_pat): Reject debug insns.
(convert_regs_1): Handle debug insns.
* Makefile.in (TREE_INLINE_H): Take pointer-set.h from GIMPLE_H.
(print-rtl.o): Depend on cselib.h.
(cselib.o): Depend on TREE_PASS_H.
(var-tracking.o): Depend on cselib.h and TARGET_H.
* sched-rgn.c (rgn_estimate_number_of_insns): Discount
debug insns.
(init_ready_list): Skip boundary debug insns.
(add_branch_dependences): Skip debug insns.
(free_block_dependencies): Check for blocks with only debug
insns.
(compute_priorities): Likewise.
* gimple.c (gss_for_code): Handle GIMPLE_DEBUG.
(gimple_build_with_ops_stat): Take subcode as unsigned.  Adjust
all callers.
(gimple_build_debug_bind_stat): New.
(empty_body_p): Skip debug stmts.
(gimple_has_side_effects): Likewise.
(gimple_rhs_has_side_effects): Likewise.
* gimple.h (enum gimple_debug_subcode, GIMPLE_DEBUG_BIND): New.
(gimple_build_debug_bind_stat): Declare.
(gimple_build_debug_bind): Define.
(is_gimple_debug): New.
(gimple_debug_bind_p): New.
(gimple_debug_bind_get_var): New.
(gimple_debug_bind_get_value): New.
(gimple_debug_bind_get_value_ptr): New.
(gimple_debug_bind_set_var): New.
(gimple_debug_bind_set_value): New.
(GIMPLE_DEBUG_BIND_NOVALUE): New internal temporary macro.
(gimple_debug_bind_reset_value): New.
(gimple_debug_bind_has_value_p): New.
(gsi_next_nondebug): New.
(gsi_prev_nondebug): New.
(gsi_start_nondebug_bb): New.
(gsi_last_nondebug_bb): New.
* sched-vis.c (print_pattern): Handle VAR_LOCATION.
(print_insn): Handle DEBUG_INSN.
* tree-cfg.c (remove_bb): Walk stmts backwards.  Let loc
of first insn prevail.
(first_stmt): Skip debug stmts.
(first_non_label_stmt): Likewise.
(last_stmt): Likewise.
(has_zero_uses_1): New.
(single_imm_use_1): New.
(verify_gimple_debug): New.
(verify_types_in_gimple_stmt): Handle debug stmts.
(verify_stmt): Likewise.
(debug_loop_num): Skip debug stmts.
(remove_edge_and_dominated_blocks): Remove dominators last.
* tree-ssa-reasssoc.c (rewrite_expr_tree): Propagate into
debug stmts.
(linearize_expr): Likewise.
* config/i386/i386.c (ix86_delegitimize_address): Call
default implementation.
* config/ia64/ia64.c (ia64_safe_itanium_class): Handle debug
insns.
(group_barrier_needed): Skip debug insns.
(emit_insn_group_barriers): Likewise.
(emit_all_insn_group_barriers): Likewise.
(ia64_variable_issue): Handle debug insns.
(ia64_dfa_new_cycle): Likewise.
(final_emit_insn_group_barriers): Skip debug insns.
(ia64_dwarf2out_def_steady_cfa): Take frame argument.  Don't
def cfa without frame.
(process_set): Likewise.
(process_for_unwind_directive): Pass frame on.
* config/rs6000/rs6000.c (TARGET_DELEGITIMIZE_ADDRESS): Define.
(rs6000_delegitimize_address): New.
(rs6000_debug_adjust_cost): Handle debug insns.
(is_microcoded_insn): Likewise.
(is_cracked_insn): Likewise.
(is_nonpipeline_insn): Likewise.
(insn_must_be_first_in_group): Likewise.
(insn_must_be_last_in_group): Likewise.
(force_new_group): Likewise.
* cfgrtl.c (rtl_split_block): Emit INSN_DELETED note if block
contains only debug insns.
(rtl_merge_blocks): Skip debug insns.
(purge_dead_edges): Likewise.
(rtl_block_ends_with_call_p): Skip debug insns.
* dce.c (deletable_insn_p): Handle VAR_LOCATION.
(mark_reg_dependencies): Skip debug insns.
* params.def (PARAM_MIN_NONDEBUG_INSN_UID): New.
* tree-ssanames.c (release_ssa_name): Propagate def into
debug stmts.
* tree-ssa-threadedge.c
(record_temporary_equivalences_from_stmts): Skip debug stmts.
* regcprop.c (replace_oldest_value_addr): Skip debug insns.
(replace_oldest_value_mem): Use ALL_REGS for debug insns.
(copyprop_hardreg_forward_1): Handle debug insns.
* reload1.c (reload): Skip debug insns.  Replace unassigned
pseudos in debug insns with their equivalences.
(eliminate_regs_in_insn): Skip debug insns.
(emit_input_reload_insns): Skip debug insns at first, adjust
them later.
* tree-ssa-operands.c (add_virtual_operand): Reject debug stmts.
(get_indirect_ref_operands): Pass opf_no_vops on.
(get_expr_operands): Likewise.  Skip debug stmts.
(parse_ssa_operands): Scan debug insns with opf_no_vops.
gcc/testsuite/ChangeLog:
* gcc.dg/guality/guality.c: New.
* gcc.dg/guality/guality.h: New.
* gcc.dg/guality/guality.exp: New.
* gcc.dg/guality/example.c: New.
* lib/gcc-dg.exp (cleanup-dump): Remove .gk files.
(cleanup-saved-temps): Likewise, .gkd files too.
gcc/cp/ChangeLog:
* cp-tree.h (TFF_NO_OMIT_DEFAULT_TEMPLATE_ARGUMENTS): New.
* cp-lang.c (cxx_dwarf_name): Pass it.
* error.c (count_non_default_template_args): Take flags as
argument.  Adjust all callers.  Skip counting of default
arguments if the new flag is given.
ChangeLog:
* Makefile.tpl (BUILD_CONFIG): Default to bootstrap-debug.
* Makefile.in: Rebuilt.
contrib/ChangeLog:
* compare-debug: Look for .gkd files and compare them.
config/ChangeLog:
* bootstrap-debug.mk: Add comments.
* bootstrap-debug-big.mk: New.
* bootstrap-debug-lean.mk: New.
* bootstrap-debug-ckovw.mk: Add comments.
* bootstrap-debug-lib.mk: Drop CFLAGS for stages.  Use -g0
for TFLAGS in stage1.  Drop -fvar-tracking-assignments-toggle.

From-SVN: r151311
2009-09-02 02:41:47 +00:00
Ralf Wildenhues
0930984ef0 Let test_summary invoke, not parse config.status contents.
contrib/*
	PR testsuite/41166
	* test_summary: Invoke config.status, rather than trying to
	parse it.  Adjust awk script.

From-SVN: r151145
2009-08-27 18:59:32 +00:00
Alexandre Oliva
5830150a57 * compare-debug: Drop .eh_frame relocations too.
From-SVN: r150901
2009-08-18 19:44:04 +00:00
H.J. Lu
c2d88223c8 re PR testsuite/40704 (^M? in testsuite log leads to binary attachment)
2009-08-18  H.J. Lu  <hongjiu.lu@intel.com>

	PR testsuite/40704
	* test_summary: Filter out "\r".

From-SVN: r150898
2009-08-18 12:40:48 -07:00
Alexandre Oliva
2feb56e679 * compare-debug: Don't fail just because of .eh_frame differences.
From-SVN: r148079
2009-06-02 08:11:31 +00:00
Jakub Jelinek
060717fcc5 re PR testsuite/39807 (Reporting of testsuite failures are messed up when using -j)
PR testsuite/39807
	* dg-extract-results.sh: Close open files and use >> instead of >
	to decrease number of concurrently open files from awk.  Avoid
	= at the beginning of a regexp and redirect to a file determined
	by curfile variable rather than concatenated strings to workaround
	Solaris nawk bug.

From-SVN: r146850
2009-04-27 21:11:23 +02:00
Gerald Pfeifer
7527cf2106 test_summary: Only include LAST_UPDATED if it exists.
* test_summary: Only include LAST_UPDATED if it exists.
	Complete copyright years.

From-SVN: r146783
2009-04-25 20:03:12 +00:00
Paolo Bonzini
0455c7f47e ChangeLog for compare-all-tests addition
From-SVN: r146194
2009-04-16 14:26:19 +00:00
Paolo Bonzini
202c508364 Add compare-all-tests.
From-SVN: r146193
2009-04-16 14:18:12 +00:00
Jakub Jelinek
50e8c6d283 * gennews (files): Reference GCC 4.4 web pages.
From-SVN: r146026
2009-04-14 11:56:38 +02:00
Jakub Jelinek
748086b7b2 Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception.
From-SVN: r145841
2009-04-09 17:00:19 +02:00
Ralf Wildenhues
a072f1cf7c check_warning_flags.sh: Update flag exceptions.
contrib/
        * check_warning_flags.sh: Update flag exceptions.

gcc/
        * doc/invoke.texi (Warning Options): -Wsync-nand is C/C++ only.
        -Wno-pedantic-ms-format is for MinGW targets only.

From-SVN: r144522
2009-03-01 11:24:03 +00:00
Janis Johnson
883935fd20 examples: New directory.
* examples: New directory.
	* examples/gcc-svn-env: New.
	* examples/reg-watch: New.
	* examples/reg-watch.awk: New.
	* examples/common.config: New.
	* examples/testall: New.
	* examples/28970.config: New.
	* examples/28970.list: New.
	* examples/28970.c: New.
	* examples/28970.log: New.
	* examples/29106.config: New.
	* examples/29106.list: New.
	* examples/29106.test: New.
	* examples/29106.cc: New.
	* examples/29106.log: New.
	* examples/29478.config: New.
	* examples/29478.list: New.
	* examples/29478.c: New.
	* examples/29478.log: New.
	* examples/29906a.config: New.
	* examples/29906a.list: New.
	* examples/29906a.cc: New.
	* examples/29906a.log: New.
	* examples/29906b.config: New.
	* examples/29906b.list: New.
	* examples/29906b.cc: New.
	* examples/29906b.log: New.
	* examples/30643.config: New.
	* examples/30643.list: New.
	* examples/30643.c: New.
	* examples/30643.test: New.
	* examples/30643.log: New.

From-SVN: r144242
2009-02-17 18:45:27 +00:00
Janis Johnson
e88396c072 bin: New directory.
* bin: New directory.
	* bin/reg-hunt: New.
	* bin/reg_periodic: New.
	* bin/gcc-svn-update: New.
	* bin/gcc-svn-update-fix: New.
	* bin/gcc-build-simple: New.
	* bin/gcc-build-full: New.
	* bin/gcc-cleanup: New.
	* bin/reg-test: New.
	* bin/reg-newmid: New.
	* bin/gcc-test-ice-on-valid-code: New.
	* bin/gcc-test-ice-on-invalid-code: New.
	* bin/gcc-test-compiler-hangs: New.
	* bin/gcc-test-missing-warning: New.
	* bin/gcc-test-bogus-warning: New.
	* bin/gcc-test-segfault-on-valid-code: New.
	* bin/gcc-test-rejects-valid: New.
	* bin/gcc-test-accepts-invalid: New.
	* bin/gcc-test-wrong-code: New.
	* bin/gcc-svn-patchlist: New.
	* bin/gcc-svn-checkfail: New.
	* bin/gcc-svn-recordfail: New.
	* bin/gcc-svn-report: New.
	* bin/gcc-svn-ids: New.

From-SVN: r144240
2009-02-17 18:35:24 +00:00
Janis Johnson
1ce205fe0b date_based: New directory.
* date_based: New directory.
	* README: Move from here ...
	* date_based/README: to here.
	* reg_search: Move from here ...
	* date_based/reg_search: to here.
	* reg_periodic: Move from here ...
	* date_based/reg_periodic: to here.
	* reg_test_template: Move from here ...
	* date_based_reg_test_template: to here.

From-SVN: r144238
2009-02-17 18:27:28 +00:00
Geoffrey Keating
e835fd1a4f * mkindex.pl: New.
From-SVN: r142251
2008-11-27 23:37:51 +00:00
Ben Elliston
7a401a0df3 dg-cmp-results.sh: Do not print usage if either .sum file cannot be opened...
* dg-cmp-results.sh: Do not print usage if either .sum file cannot
	be opened; print a more meaningful error instead.

From-SVN: r141979
2008-11-19 09:00:42 +11:00
Jakub Jelinek
ba4f8572c1 Mark dg-extract-results.sh executable.
From-SVN: r141338
2008-10-24 11:00:54 +02:00
Jakub Jelinek
7134e6056c dg-extract-results.sh: New file.
contrib/
	* dg-extract-results.sh: New file.
gcc/
	* Makefile.in (lang_checks_parallelized, check_gcc_parallelize,
	check_p_tool, check_p_vars, check_p_subno, check_p_comma,
	check_p_subwork, check_p_numbers, check_p_subdir, check_p_subdirs):
	New variables.
	(check-subtargets, check-%-subtargets, check-parallel-%): New
	targets.
	(check-%): For test targets listed in lang_checks_parallelized
	if -j is used and RUNTESTFLAGS doesn't specify tests to execute,
	run the testing in multiple make goals, possibly parallel, and
	afterwards run dg-extract-results.sh to merge the sum and log files.
gcc/cp/
	* Make-lang.in (check-c++-subtargets): New alias for
	check-g++-subtargets.
	(lang_checks_parallelized): Add check-g++.
	(check_g++_parallelize): New variable.
gcc/fortran/
	* Make-lang.in (check-f95-subtargets, check-fortran-subtargets): New
	aliases for check-gfortran-subtargets.
	(lang_checks_parallelized): Add check-gfortran.
	(check_gfortran_parallelize): New variable.
gcc/ada/
	* gcc-interface/Make-lang.in (check-ada-subtargets): Depend on
	check-acats-subtargets and check-gnat-subtargets.
	(check_acats_targets): New variable.
	(check-acats-subtargets, check-acats%): New targets.
	(check-acats): If -j is used and CHAPTERS is empty, run the testing
	in multiple make goals, possibly parallel, and afterwards run
	dg-extract-results.sh to merge the sum and log files.
gcc/java/
	* Make-lang.in (check-java-subtargets): New target.
libstdc++-v3/
	* testsuite/Makefile.am (AUTOMAKE_OPTIONS): Remove dejagnu.
	(RUNTESTDEFAULTFLAGS, EXPECT, check_DEJAGNU_normal_targets): New
	variables.
	(%/site.exp, check-DEJAGNU%): New targets.
	(check-am): Run $(MAKE) check-DEJAGNU.
	* testsuite/Makefile.in: Regenerated.

From-SVN: r141337
2008-10-24 10:58:44 +02:00
Jakub Jelinek
719bb4e3d3 Convert ChangeLog files to UTF-8.
Command used:
LC_ALL=C sed -i \
  -e 's/D\(o\|\xf6\)nmez/D\xc3\xb6nmez/' \
  -e 's/\(Av\|\x81\xc1v\|\xc1v\|\xef\xbf\xbdv\?\|\x81\xc3\x81v\|\xc3v\)ila/\xc3\x81vila/' \
  -e 's/Esp\(in\|\x81\xedn\|\xedn\|\xef\xbf\xbdn\?\|\xef\xbf\xbd\xadn\|\x81\xc3\xadn\)dola/Esp\xc3\xadndola/' \
  -e 's/Schl\(u\|\xef\xbf\xbd\|\xfcu\?\|\x81\xfc\|\x81\xc3\xbc\|\xc3\xaf\xc2\xbf\xc2\xbd\|\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xc2\xbc\)ter/Schl\xc3\xbcter/' \
  -e 's/Humi\(e\|\xe8\)res/Humi\xc3\xa8res/' \
  -e 's/L\(ow\|\xc3\xaf\xc2\xbf\xc2\xbd\|oew\|\xf6w\)is/L\xc3\xb6wis/' \
  -e 's/G\xfctlein/G\xc3\xbctlein/' \
  -e 's/G\xe1[b]or/G\xc3\xa1bor/' \
  -e 's/L\xf3ki/L\xc3\xb3ki/' \
  -e 's/Fautr\xc3 /Fautr\xc3\xa9 /' \
  -e 's/S\xe9[b]astian/S\xc3\xa9bastian/' \
  -e 's/Th\xef\xbf\xbd[d]ore/Th\xc3\xa9odore/' \
  -e 's/Cors\xc3\xc2\xa9pius/Cors\xc3\xa9pius/' \
  -e 's/K\xfchl/K\xc3\xbchl/' \
  -e 's/R\xf6nnerup/R\xc3\xb6nnerup/' \
  -e 's/L\xf8vset/L\xc3\xb8vset/' \
  -e 's/Ph\x81\xfb\x81\xf4ng-Th\x81\xe5o/Ph\xc3\xbb\xc3\xb4ng-Th\xc3\xa5o/' \
  -e 's/V\x81\xf5/V\xc3\xb5/' \
  -e 's/J\xf6nsson/J\xc3\xb6nsson/' \
  -e 's/V\xef\xbf\xbdis\xef\xbf\xbdnen/V\xc3\xa4is\xc3\xa4nen/' \
  -e 's/J\xef\xbf\xbdrg/J\xc3\xb6rg/' \
  -e 's/M\xef\xbf\xbdsli/M\xc3\xb6sli/' \
  -e 's/R\xe4ty/R\xc3\xa4ty/' \
  -e 's/2003\xc2\xad-/2003-/' \
  -e 's/\xc2\xa0/ /g' \
  -e 's/ \xa0/  /g' \
  -e 's/\xa0 //' \
  `find . -name \*ChangeLog\* | grep -v /.svn`

From-SVN: r140033
2008-09-05 13:07:45 +02:00
Ralf Wildenhues
e63ea00c65 check_makefile_deps.sh: New file.
contrib/
	* check_makefile_deps.sh: New file.

gcc/
	* Makefile.in (TARGET_DEF_H): Add targhooks.h.
	(FIXED_VALUE_H): New variable.
	(RTL_BASE_H): Use $(INPUT_H) and $(FIXED_VALUE_H) instead of
	input.h, fixed-value.h.
	(TREE_H): Use $(INPUT_H), add $(SYMTAB_H).
	(BASIC_BLOCK_H): Use $(BITMAP_H).
	(FUNCTION_H): Add varray.h.
	(IPA_REFERENCE_H): Use $(BITMAP_H).
	(CGRAPH_H): Add $(BASIC_BLOCK_H).
	(DF_H): Use $(BITMAP_H).
	(GGC_H): Add statistics.h.
	(INSN_ADDR_H): New.
	(INSN_ATTR_H): Use it.
	(SYSTEM_H): Add safe-ctype.h, filenames.h.
	(INPUT_H): New.
	(SYMTAB_H): Add $(OBSTACK_H).
	(CPP_INTERNAL_H): New.
	(TREE_DUMP_H): Add tree-pass.h.
	(TREE_FLOW_H): Use $(BITMAP_H)
	(PRETTY_PRINT_H): Use $(INPUT_H).
	(EBITMAP_H): Rename from typo-ed EBIMAP_H.
	(GSTAB_H): New.
	(BITMAP_H): New.
	(many object files): Fix lots of header dependencies throughout.

gcc/fortran/
	* Make-lang.in (gfortranspec.o): Fix dependencies.

gcc/java/
	* Make-lang.in (jvspec.o): Fix dependencies.

From-SVN: r137792
2008-07-14 18:40:35 +00:00
Sebastian Pop
a3ced85e05 patch_tester.sh (report): Do not print "Checker: ".
2008-05-08  Sebastian Pop  <sebastian.pop@amd.com>

	* patch_tester.sh (report): Do not print "Checker: ".

From-SVN: r135083
2008-05-08 15:14:47 +00:00
Sebastian Pop
24170ff901 patch_tester.sh (report): Do not print the time.
* patch_tester.sh (report): Do not print the time.

From-SVN: r134600
2008-04-23 19:00:08 +00:00
Joseph Myers
7f9766e49a texi2pod.pl: Handle @samp and @url inside verbatim blocks.
contrib:
	* texi2pod.pl: Handle @samp and @url inside verbatim blocks.
	Handle @heading.  Handle enumerated lists with starting numbers
	and extra headings.

gcc:
	* doc/include/gpl_v3.texi: Update for manpage generation.
	* doc/gcc.texi, doc/gccint.texi: Include gpl_v3.texi instead of
	gpl.texi.
	* doc/sourcebuild.texi: Document gpl_v3.texi as well as gpl.texi.
	* Makefile.in (TEXI_GCC_FILES, TEXI_GCCINT_FILES): Include
	gpl_v3.texi instead of gpl.texi.
	(gpl.pod): New.

gcc/fortran:
	* gfortran.texi: Include gpl_v3.texi instead of gpl.texi
	* Make-lang.in (GFORTRAN_TEXI): Include gpl_v3.texi instead of
	gpl.texi.

gcc/java:
	* gcj.texi: Include gpl_v3.texi instead of gpl.texi
	* Make-lang.in (TEXI_JAVA_FILES): Include gpl_v3.texi instead of
	gpl.texi.

From-SVN: r133794
2008-04-01 17:38:56 +01:00
Janis Johnson
1d4edfd6cb patch_tester.sh (initialization): Initialize svnpatch and stop.
2008-03-10  Janis Johnson  <janis187@us.ibm.com>

	* patch_tester.sh (initialization): Initialize svnpatch and stop.
	(usage): Add -svnpath and -stop.	
	(makedir): New.
	(argument handling): Process -stop and -svnpath.
	(setup code): Use makedir, error out if initial svn checkout fails.
	(update): Use svnpath.  Invoke contrib/gcc_update.
	(apply_patch): Require that patch was created at top level.  Use eval
	with option variables.  Don't use bootstrap target for make.  Verify
	that some tests were run.
	(bootntest_patched): Use snvpath.
	(main loop): For -stop, exit when there are no more patches to test.

From-SVN: r133092
2008-03-10 21:33:09 +00:00
Ralf Wildenhues
802e3f8c81 c.opt (Wsynth): Deprecate.
gcc/

	* c.opt (Wsynth): Deprecate.
	* doc/invoke.texi (Option Summary, Warning Options): Document
	-Wno-format-contains-nul.

gcc/fortran/

	* invoke.texi (Error and Warning Options): Document
	-Wline-truncation.

contrib/

	* check_warning_flags.sh: Instead of invoke.texi, take the path
	to the doc directory as argument.  Check that warnings listed in
	'gcc --help' are accepted by the compiler, and listed in the
	manuals.

From-SVN: r133059
2008-03-09 17:43:10 +00:00
Tom Tromey
3825be8c96 patch_tester.sh (usage): Watermark is not lexicographic.
* patch_tester.sh (usage): Watermark is not lexicographic.
	Load $STATE/defaults if it exists.
	(selfexec): Use $0.
	(apply_patch): Handle deletions.
	(bootntest): Handle default settings.

From-SVN: r132974
2008-03-06 14:47:23 +00:00
Jakub Jelinek
a7d95bfef5 * gennews (files): Reference GCC 4.3 web pages.
From-SVN: r132901
2008-03-05 17:22:11 +01:00
Ralf Wildenhues
1a1f75881b * check_warning_flags.sh: New file.
From-SVN: r132332
2008-02-15 05:50:37 +00:00
Joseph Myers
8d8da22788 MAINTAINERS (c4x port): Remove.
* MAINTAINERS (c4x port): Remove.

contrib:
	* paranoia.cc (main): Remove handling of c4x_single and
	c4x_extended formats.

gcc:
	* config/c4x: Remove directory.
	* config.gcc (crx-*, mt-*): Mark obsolete.
	(c4x-*, tic4x-*, c4x-*-rtems*, tic4x-*-rtems*, c4x-*, tic4x-*,
	h8300-*-rtemscoff*, ns32k-*-netbsdelf*, ns32k-*-netbsd*,
	sh-*-rtemscoff*): Remove cases.
	* defaults.h (C4X_FLOAT_FORMAT): Remove.
	* real.c (encode_c4x_single, decode_c4x_single,
	encode_c4x_extended, decode_c4x_extended, c4x_single_format,
	c4x_extended_format): Remove.
	* real.h (c4x_single_format, c4x_extended_format): Remove.
	* doc/extend.texi (interrupt, naked): Remove mention of attributes
	on C4x.
	(Pragmas): Remove comment about c4x pragmas.
	* doc/install.texi (c4x): Remove target-specific instructions.
	* doc/invoke.texi (TMS320C3x/C4x Options): Remove.
	* doc/md.texi (Machine Constraints): Remove C4x documentation.
	* doc/tm.texi (MEMBER_TYPE_FORCES_BLK, c_register_pragma): Do not
	refer to C4x source files as examples.
	(C4X_FLOAT_FORMAT): Remove documentation.

gcc/testsuite:
	* gcc.dg/builtin-inf-1.c, gcc.dg/compare6.c, gcc.dg/sibcall-3.c,
	gcc.dg/sibcall-4.c, gcc.dg/torture/builtin-attr-1.c: Don't handle
	c4x-*-* targets.

libgcc:
	* config.host (tic4x-*-*, c4x-*-rtems*, tic4x-*-rtems*, c4x-*,
	tic4x-*, h8300-*-rtemscoff*, ns32k-*-netbsdelf*, ns32k-*-netbsd*,
	sh-*-rtemscoff*): Remove cases.

From-SVN: r131835
2008-01-25 20:49:04 +00:00
Sebastian Pop
3dfb41c564 compareSumTests3: Changed to GPLv3.
2007-12-26  Sebastian Pop  <sebastian.pop@amd.com>

	* compareSumTests3: Changed to GPLv3.
	* prepare_patch.sh: Same.
	* uninclude: Same.
	* dglib.pm: Same.
	* gennews: Same.
	* texi2pod.pl: Same.
	* analyze_brprob: Same.
	* gcc_build: Same.

From-SVN: r131186
2007-12-26 21:42:35 +00:00
Sebastian Pop
66d3504ca6 patch_tester.sh: Changed to GPLv3.
2007-12-26  Sebastian Pop  <sebastian.pop@amd.com>

	* patch_tester.sh: Changed to GPLv3.

From-SVN: r131185
2007-12-26 21:01:38 +00:00
Geoffrey Keating
788ded72d6 * objs-gcc.sh: Revert previous change.
From-SVN: r131162
2007-12-24 23:18:57 +00:00
Geoffrey Keating
356a12e7de objs-gcc.sh: Set up the GDB testsuite even if the gdb installed is just called 'gdb'.
* objs-gcc.sh: Set up the GDB testsuite even if the gdb installed
	is just called 'gdb'.

From-SVN: r131151
2007-12-23 23:50:32 +00:00
Geoffrey Keating
1584031f69 * btest-gcc.sh (TESTLOGS): Add gfortran, and optionally libgomp.
From-SVN: r131146
2007-12-23 02:32:15 +00:00
Geoffrey Keating
30f4c25dd8 widget.html: Mark as HTML 4.01, which it now is, rather than XHTML, which it never was.
* GCC_Regression_Tester.wdgt/widget.html: Mark as HTML 4.01,
	which it now is, rather than XHTML, which it never was.
	(<head>): Mark as UTF-8.  Add title.  Move CSS to top of
	document, specify type.  Mark script as 'defer'.
	(updateContents): If loaded from HTTP, look for status in same
	place as widget.
	(gotContents): Use DOM methods to change text rather than innerHTML.
	(<body>): Eliminate unnecessary DIV element.
	* GCC_Regression_Tester.wdgt/Info.plist: Update version, copyright
	notice.

From-SVN: r131145
2007-12-23 00:57:19 +00:00
Sebastian Pop
cf79e38637 patch_tester.sh: Don't save the script anymore.
2007-12-15  Sebastian Pop  <sebastian.pop@amd.com>

	* patch_tester.sh: Don't save the script anymore.

From-SVN: r130986
2007-12-16 01:01:23 +00:00
Sebastian Pop
0f55312ac9 patch_tester.sh: New.
2007-12-15  Sebastian Pop  <sebastian.pop@amd.com>

	* patch_tester.sh: New.
	* prepare_patch.sh: New.

From-SVN: r130981
2007-12-16 00:08:17 +00:00
Alexandre Oliva
3a3b6beb8e * compare-debug: Introduce -p flag to preserve .stripped files.
From-SVN: r130431
2007-11-26 06:40:31 +00:00
Manuel López-Ibáñez
7b6cb84335 invoke.texi (Wall): fix formatting issues.
2007-10-08  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>

 * doc/invoke.texi (Wall): fix formatting issues.

contrib/
 * texi2pod.pl: Handle @asis.
 (postprocess): Move @gccoptlist{} after all formatting commands.

From-SVN: r129125
2007-10-08 14:05:51 +00:00
Alexandre Oliva
a64036a75c compare-debug: Avoid spurious errors when .stripped files exist.
* compare-debug: Avoid spurious errors when .stripped files
exist.

From-SVN: r128911
2007-10-01 20:27:22 +00:00
Hans-Peter Nilsson
1733c7eb5b warn_summary (srcdirFilter): Add fixincludes, sim, newlib and mpfr.
* warn_summary (srcdirFilter): Add fixincludes, sim,
	newlib and mpfr.

From-SVN: r128662
2007-09-22 01:19:10 +00:00
H.J. Lu
0cb58062b7 gcc_update: Handle different URL paths and tags.
2007-08-23  H.J. Lu  <hongjiu.lu@intel.com>

	* gcc_update: Handle different URL paths and tags.

From-SVN: r127737
2007-08-23 05:48:39 -07:00
Alexandre Oliva
bb286d7113 Makefile.def (STAGE2_CFLAGS, [...]): Add to flags_to_pass.
ChangeLog:
* Makefile.def (STAGE2_CFLAGS, STAGE3_CFLAGS, STAGE4_CFLAGS):
Add to flags_to_pass.  Adjust uses of BOOT_CFLAGS.
(bootstrap2-debug, bootstrap-debug): New bootstrap stages.
* Makefile.tpl (STAGE2_CFLAGS, STAGE3_CFLAGS, STAGE4_CFLAGS): New.
(do-compare, do-compare3, do-compare-debug): New.
([+compare-target+]): Use them.
contrib/ChangeLog:
* compare-debug: New.

From-SVN: r127570
2007-08-17 00:00:00 +00:00
H.J. Lu
36dcf05573 gcc_update: Use "svn info" for revision number.
2007-08-16  H.J. Lu  <hongjiu.lu@intel.com>
	    Andreas Schwab <schwab@suse.de>

	* gcc_update: Use "svn info" for revision number.  Create
	gcc/REVISION with branch name and revision number.

Co-Authored-By: Andreas Schwab <schwab@suse.de>

From-SVN: r127566
2007-08-16 12:05:48 -07:00
Diego Novillo
c749c2ee4a gcc.doxy: Rename from tree-ssa.doxy.
* gcc.doxy: Rename from tree-ssa.doxy.

From-SVN: r127350
2007-08-10 17:08:32 -04:00
Diego Novillo
cfa66dc16f tree-ssa.doxy: Update for doxygen 1.5.
* tree-ssa.doxy: Update for doxygen 1.5.
	Include all the files in the middle and back ends.

From-SVN: r127349
2007-08-10 16:02:33 -04:00
Hans-Peter Nilsson
e9a57dc16c Correct file path in last entry
From-SVN: r126346
2007-07-05 00:34:53 +00:00
Hans-Peter Nilsson
6d409e8ab5 gcc_update (files_and_dependencies): Handle gcc/testsuite/gcc.dg/cpp/direct2s.c.
* gcc_update (files_and_dependencies): Handle
	gcc/testsuite/gcc.dg/cpp/direct2s.c.

From-SVN: r126155
2007-06-30 17:17:14 +00:00
Mark Mitchell
6d707d0882 * gennews (files): Reference GCC 4.2 web pages.
From-SVN: r124664
2007-05-14 00:33:48 +00:00
Zack Weinberg
3caecafa48 * texi2pod.pl: Correct handling of @itemize with no argument.
From-SVN: r123514
2007-04-05 05:46:41 +00:00
Hans-Peter Nilsson
a8af9c34fd * uninclude: New utility, from Alexandre Oliva.
From-SVN: r123027
2007-03-17 19:08:50 +00:00
Dominique d'Humieres
7276d36825 * test_installed: Adjust to the move from g77 to gfortran.
From-SVN: r122340
2007-02-26 20:40:13 +00:00
Matthias Klose
d0fc3f0654 texi2pod.pl: Handle @subsubsection, ignore @anchor.
2007-02-16  Matthias Klose  <doko@debian.org>

        * texi2pod.pl: Handle @subsubsection, ignore @anchor.

From-SVN: r122026
2007-02-16 01:02:57 +00:00
Hans-Peter Nilsson
ce0d943af4 test_summary (configflags): Adjust for changes in the config.status format due to update to autoconf 2.59.
* test_summary (configflags): Adjust for changes in the
	config.status format due to update to autoconf 2.59.

From-SVN: r121787
2007-02-10 00:30:46 +00:00
Daniel Jacobowitz
61930fe531 * gcc_update: Update for configure.in -> configure.ac.
From-SVN: r121758
2007-02-09 15:36:20 +00:00
Richard Sandiford
427e84f7fe texi2pod.pl: Handle @multitable.
contrib/
	* texi2pod.pl: Handle @multitable.

From-SVN: r121646
2007-02-06 13:14:18 +00:00
Tom Tromey
694032374b sourcebuild.texi (libgcj Tests): Don't mention jacks.
gcc
	* doc/sourcebuild.texi (libgcj Tests): Don't mention jacks.
	* doc/install.texi (Testing): Don't mention jacks.
	(Configuration): Document --enable-java-maintainer-mode.  Move
	--with-java-home to libgcj-specific section.  Document
	--with-ecj-jar.
	(Prerequisites): Mention --enable-java-maintainer-mode, ecj1.
contrib
	* download_ecj: New file.

From-SVN: r120802
2007-01-15 21:49:31 +00:00
Matthew Sachs
7f5b8ff7d7 * compareSumTests3: POD syntax fix.
From-SVN: r117271
2006-09-28 02:03:46 +00:00
Matthew Sachs
ed5ce4e014 dglib.pm: Initial commit.
* dglib.pm: Initial commit.
* compareSumTests3: Initial commit.

From-SVN: r117269
2006-09-28 01:50:45 +00:00
Bernhard Fischer
c3382fba04 dg-cmp-results.sh (compare-$$.awk): Print name[old] and not non-existing nm[old].
2006-09-18  Bernhard Fischer  <aldot@gcc.gnu.org>

	* dg-cmp-results.sh (compare-$$.awk): Print name[old]
	and not non-existing nm[old].

From-SVN: r117006
2006-09-18 00:13:26 +02:00
Geoffrey Keating
ec1ee65573 * btest-gcc.sh: .bad_compare has moved to toplevel from gcc/.
From-SVN: r116702
2006-09-05 18:11:49 +00:00
Paul Eggert
27b56ba6cc Port to hosts whose 'sort' and 'tail' implementations treat operands with leading '+' as file names...
Port to hosts whose 'sort' and 'tail' implementations
	treat operands with leading '+' as file names, as POSIX
	has required since 2001.  However, make sure the code still
	works on pre-POSIX hosts.
	* ltmain.sh: Don't assume "sort +2" is equivalent to
	"sort -k 3", since POSIX 1003.1-2001 no longer requires this.

contrib:
	* compare_tests: Don't assume "sort +2" is equivalent to
	"sort -k 3", since POSIX 1003.1-2001 no longer requires this.
gcc:
	* Makefile.in (slowcompare): Port to POSIX 1003.1-2001,
	which says you should use "tail -c +N" rather than "tail +Nc".
	Fix a bug: the old code incorrectly skipped 15 bytes, not 16.

From-SVN: r115234
2006-07-06 23:24:51 +00:00
James Lemke
afef9a5b58 * dg-cmp-results.sh: New script for comparing DejaGNU logs.
From-SVN: r114393
2006-06-05 15:59:03 +00:00
Richard Earnshaw
e58b87f712 compare_tests: Handle multilibs better.
* compare_tests: Handle multilibs better.

Co-Authored-By: Mike Stump <mrs@apple.com>

From-SVN: r114331
2006-06-02 23:47:35 +00:00
Daniel Jacobowitz
5dd59f65ca * texi2pod.pl: Correct handling of absolute @include.
From-SVN: r114271
2006-05-31 15:48:05 +00:00
Daniel Jacobowitz
597fb86c90 Correct changelog date in last commit.
From-SVN: r113463
2006-05-02 14:00:22 +00:00
Daniel Jacobowitz
84309a323e * texi2pod.pl: Handle -I.
From-SVN: r113462
2006-05-02 13:50:58 +00:00
Mark Mitchell
b7ded1e0c5 * gennews (files): Update for GCC 4.1.
From-SVN: r111518
2006-02-28 08:10:09 +00:00
Diego Novillo
46852b9b37 gcc_update (files_and_dependencies): Handle libgomp/testsuite/Makefile.in.
* gcc_update (files_and_dependencies): Handle
	libgomp/testsuite/Makefile.in.

From-SVN: r110174
2006-01-24 11:07:30 -05:00
Andrew Pinski
c8db7d5c17 btest-gcc.sh: gcc.sum has moved to gcc/testsuite/gcc/gcc.sum.
2006-01-18  Andrew Pinski  <pinskia@physics.uc.edu>

        * btest-gcc.sh: gcc.sum has moved to gcc/testsuite/gcc/gcc.sum.
        g++.sum has moved to gcc/testsuite/g++/g++.sum.
        objc.sum has moved to gcc/testsuite/objc/objc.sum.

From-SVN: r109937
2006-01-18 17:09:56 -08:00
Diego Novillo
953ff28998 [multiple changes]
2006-01-18  Richard Henderson  <rth@redhat.com>
	    Jakub Jelinek  <jakub@redhat.com>
            Diego Novillo  <dnovillo@redhat.com>

	* libgomp: New directory.
	* Makefile.def: Add target_module libgomp.
	* Makefile.in: Regenerate.
	* configure.in (target_libraries): Add target-libgomp.
	* configure: Regenerate.


contrib/

2006-01-18  Richard Henderson  <rth@redhat.com>
            Diego Novillo  <dnovillo@redhat.com>

	* gcc_update (files_and_dependencies): Add libgomp files.


gcc/

2006-01-18  Richard Henderson  <rth@redhat.com>
            Aldy Hernandez  <aldyh@redhat.com>
	    Jakub Jelinek  <jakub@redhat.com>
            Diego Novillo  <dnovillo@redhat.com>

	* omp-low.c: New file.
	* c-omp.c: New file.

2006-01-18  Richard Henderson  <rth@redhat.com>
	    Jakub Jelinek  <jakub@redhat.com>
            Diego Novillo  <dnovillo@redhat.com>

	* doc/invoke.texi: Document -fopenmp.
	* tree-dump.h (debug_function): Declare.

	* hooks.c (hook_bool_tree_bool_false): New function.
	(hook_tree_tree_null): Remove.
	(hook_tree_tree_tree_null): New.
	* hooks.h: Update to match.

	* tree-pretty-print.c (debug_tree_chain): New.
	(print_generic_expr): Handle TDF_CHAIN.
	(dump_generic_node): Handle BLOCK.
	Do not abort with incomplete SWITCH_EXPRs.
	Do not dump body of an OpenMP directive if TDF_SLIM is given.
	<case OMP_PARALLEL, OMP_FOR, OMP_SECTIONS>: Don't
	print space after directive name.
	<OMP_FOR>: Handle printing OMP_FOR_PRE_BODY.
	Handle OMP_MASTER and OMP_ORDERED.
	Handle printing of OMP_BODY just in one place, goto
	dump_omp_body in the rest of OMP_* nodes that have
	OMP_BODY.
	Don't handle clause nodes here.  Update omp statements to
	use dump_omp_clauses.
	Handle OMP_SINGLE, OMP_SECTIONS, OMP_SECTION,
	OMP_CLAUSE_ORDERED, OMP_CLAUSE_SCHEDULE, OMP_ATOMIC,
	OMP_CRITICAL, OMP_CLAUSE_NOWAIT, GOMP_CLAUSE_IF,
	GOMP_CLAUSE_NUM_THREADS, GOMP_FOR, GOMP_CLAUSE_SHARED,
	GOMP_CLAUSE_FIRSTPRIVATE, GOMP_CLAUSE_LASTPRIVATE,
	GOMP_CLAUSE_COPYIN and GOMP_CLAUSE_COPYPRIVATE.
	Adjust output for GOMP_PARALLEL.
	(dump_omp_clauses): New.
	(print_declaration): Dump DECL_VALUE_EXPR.
	(op_symbol_1): Split out of op_symbol.
	(dumping_stmts): Remove.  Update all users.

	* cgraph.c (cgraph_analyze_queue): New.
	(cgraph_add_new_function): New.
	* cgraph.h (cgraph_analyze_queue): Declare.
	(cgraph_add_new_function): Declare.
	(cgraph_lower_function): Remove.

	* tree.c (walk_tree): Walk OMP_CLAUSE_CHAIN of OMP_CLAUSE_*
	nodes.  Use switch for all nodes, handle most of IS_EXPR_CODE_CLASS
	and TYPE_P nodes in its default clause.
	(empty_body_p): New.
	(tree_range_check_failed): New.
	(build5_stat): New.

	* tree.h (OMP_CLAUSE_REDUCTION_INIT,
	OMP_CLAUSE_REDUCTION_MERGE,
	OMP_CLAUSE_REDUCTION_PLACEHOLDER,
	OMP_CLAUSE_PRIVATE_DEBUG,
	OMP_CLAUSE_LASTPRIVATE_FIRSTPRIVATE, OMP_FOR_PRE_BODY,
	OMP_MASTER_BODY, OMP_ORDERED_BODY OMP_BODY,
	OMP_CLAUSES, OMP_CLAUSE_DECL, OMP_CLAUSE_DEFAULT_KIND,
	OMP_CLAUSE_CHAIN, OMP_CLAUSE_OUTER_DECL,
	OMP_CLAUSE_INNER_DECL, OMP_CLAUSE_NUM_THREADS_EXPR,
	OMP_CLAUSE_IF_EXPR, OMP_CLAUSE_SCHEDULE_CHUNK_EXPR,
	OMP_CLAUSE_SCHEDULE_CHUNK_SIZE. OMP_PARALLEL_VAR_INIT,
	OMP_PARALLEL_VAR_REDUC, OMP_FOR_VAR_INIT,
	OMP_FOR_VAR_LAST, OMP_FOR_VAR_REDUC,
	OMP_SECTIONS_VAR_INIT, OMP_SECTIONS_VAR_LAST,
	OMP_SECTIONS_VAR_REDUC, OMP_CLAUSE_REDUCTION_CODE
	OMP_SINGLE_CLAUSES, OMP_SINGLE_BODY,
	OMP_CLAUSE_SCHEDULE_CHUNK_SIZE, OMP_SECTION_BODY,
	OMP_CRITICAL_NAME, OMP_CRITICAL_BODY): New.
	(TREE_RANGE_CHECK): New.
	(empty_body_p): Declare.
	(enum omp_clause_default_kind): New.
	(build_string_literal): Declare.
	(enum omp_clause_schedule_kind, OMP_CLAUSE_SCHEDULE_KIND): New.
	(build5_stat, build5): Declare.

	* tree-pass.h (TDF_CHAIN): Define.
	* tree-pass.h (PROP_gimple_lomp): Define.
	(pass_lower_omp): Declare.

	* diagnostic.h (debug_tree_chain): Declare.

	* builtins.c (get_builtin_sync_mode): Use 0 as last argument to
	mode_for_size.
	(expand_builtin): Handle sync BUILT_IN_*_16 builtins.
	* builtins.c (build_string_literal): Make extern.

	* gcc.c (include_spec_function): New.
	(static_spec_functions): Add it.
	(main): Move load of libgomp.spec ...
	(LINK_COMMAND_SPEC): ... here.
	(link_gomp_spec): New.
	(static_specs): Include it.
	(LINK_COMMAND_SPEC): Add link_gomp.
	(GOMP_SELF_SPECS): New.
	(driver_self_specs): Include it.
	(switch_matches): Don't mark inline.
	(main): Load libgomp.spec.

	* tree-gimple.c (is_gimple_stmt): True for OMP_MASTER,
	OMP_ORDERED, OMP_CRITICAL, OMP_SECTIONS, OMP_SECTION,
	and OMP_SINGLE, OMP_FOR and OMP_PARALLEL.

	* tree-gimple.h (enum omp_parallel): Declare.
	(determine_parallel_type): Declare.
	(omp_firstprivatize_variable): Declare.
	(omp_reduction_init): Declare.
	(diagnose_omp_structured_block_errors): Declare.
	(struct walk_stmt_info): Add want_return_expr.
	(struct walk_stmt_info): Add want_bind_expr, want_locations.
	(find_omp_clause): Declare.
	(insert_field_into_struct): Declare.
	(struct walk_stmt_info): Move from tree-nested.c
	(walk_stmts): Declare.

	* c-cppbuiltin.c (c_cpp_builtins): If -fopenmp, #define _OPENMP
	to 200505.

	* cgraphunit.c (cgraph_lower_function): Make static.
	(cgraph_finalize_pending_functions): New.
	(cgraph_finalize_function): Call it.
	(cgraph_finalize_compilation_unit): Likewise.

	* builtin-types.def (BT_I16, BT_FN_I16_VPTR_I16,
	BT_FN_BOOL_VPTR_I16_I16, BT_FN_I16_VPTR_I16_I16): Add.
	(BT_FN_UINT_UINT): New.
	(DEF_FUNCTION_TYPE_6, DEF_FUNCTION_TYPE_7,
	DEF_FUNCTION_TYPE_VAR_4): Document.
	(BT_PTR_LONG, BT_PTR_PTR, BT_FN_BOOL, BT_FN_INT,
	BT_FN_VOID_PTRPTR, BT_PTR_FN_VOID_PTR,
	BT_FN_BOOL_LONGPTR_LONGPTR, BT_FN_VOID_OMPFN_PTR_UINT,
	BT_FN_VOID_OMPFN_PTR_UINT_UINT,
	BT_FN_BOOL_LONG_LONG_LONG_LONGPTR_LONGPTR,
	BT_FN_BOOL_LONG_LONG_LONG_LONG_LONGPTR_LONGPTR,
	BT_FN_VOID_OMPFN_PTR_UINT_LONG_LONG_LONG,
	BT_FN_VOID_OMPFN_PTR_UINT_LONG_LONG_LONG_LONG): New.

	* builtins.def: Update DEF_BUILTIN comment to include COND argument.
	Move all DEF_SYNC_BUILTIN () and DEF_GOMP_BUILTIN () builtins
	into separate files.
	(DEF_GOMP_BUILTIN): New.
	(BUILT_IN_OMP_GET_THREAD_NUM, BUILT_IN_GOMP_BARRIER,
	BUILT_IN_GOMP_CRITICAL_START, BUILT_IN_GOMP_CRITICAL_END,
	BUILT_IN_GOMP_CRITICAL_NAME_START, BUILT_IN_GOMP_CRITICAL_NAME_END,
	BUILT_IN_GOMP_LOOP_STATIC_START, BUILT_IN_GOMP_LOOP_DYNAMIC_START,
	BUILT_IN_GOMP_LOOP_GUIDED_START, BUILT_IN_GOMP_LOOP_RUNTIME_START,
	BUILT_IN_GOMP_LOOP_ORDERED_STATIC_START,
	BUILT_IN_GOMP_LOOP_ORDERED_DYNAMIC_START,
	BUILT_IN_GOMP_LOOP_ORDERED_GUIDED_START,
	BUILT_IN_GOMP_LOOP_ORDERED_RUNTIME_START,
	BUILT_IN_GOMP_LOOP_STATIC_NEXT, BUILT_IN_GOMP_LOOP_DYNAMIC_NEXT,
	BUILT_IN_GOMP_LOOP_GUIDED_NEXT, BUILT_IN_GOMP_LOOP_RUNTIME_NEXT,
	BUILT_IN_GOMP_LOOP_ORDERED_STATIC_NEXT,
	BUILT_IN_GOMP_LOOP_ORDERED_DYNAMIC_NEXT,
	BUILT_IN_GOMP_LOOP_ORDERED_GUIDED_NEXT,
	BUILT_IN_GOMP_LOOP_ORDERED_RUNTIME_NEXT,
	BUILT_IN_GOMP_PARALLEL_LOOP_STATIC_START,
	BUILT_IN_GOMP_PARALLEL_LOOP_DYNAMIC_START,
	BUILT_IN_GOMP_PARALLEL_LOOP_GUIDED_START,
	BUILT_IN_GOMP_PARALLEL_LOOP_RUNTIME_START,
	BUILT_IN_GOMP_LOOP_END, BUILT_IN_GOMP_LOOP_END_NOWAIT,
	BUILT_IN_GOMP_ORDERED_START, BUILT_IN_GOMP_ORDERED_END,
	BUILT_IN_GOMP_PARALLEL_START, BUILT_IN_GOMP_PARALLEL_END,
	BUILT_IN_GOMP_SECTIONS_START, BUILT_IN_GOMP_SECTIONS_NEXT,
	BUILT_IN_GOMP_PARALLEL_SECTIONS_START, BUILT_IN_GOMP_SECTIONS_END,
	BUILT_IN_GOMP_SECTIONS_END_NOWAIT, BUILT_IN_GOMP_SINGLE_START,
	BUILT_IN_GOMP_SINGLE_COPY_START, BUILT_IN_GOMP_SINGLE_COPY_END): New.
	* sync-builtins.def: New file, moved from builtins.def.
	* omp-builtins.def: New file, moved from builtins.def.

	* c-objc-common.h (LANG_HOOKS_OMP_PREDETERMINED_SHARING): Redefine.

	* gimple-low.c (lower_function_body): Clear data.
	(lower_stmt): Do not handle COMPOUND_EXPR.
	Remove call to print_node_brief.

	* c-tree.h (c_finish_omp_clauses): New prototype.
	(C_DECL_THREADPRIVATE_P): Define.
	(lookup_name_no_remap, c_omp_remap_private): Remove
	(c_begin_omp_parallel, c_finish_omp_parallel): Update.
	(check_for_loop_decls): Update decl.
	(lookup_name_no_remap, c_omp_remap_private): Declare.
	(build_indirect_ref, build_modify_expr, pushdecl,
	pushdecl_top_level): Move to c-common.h.

	* dwarf2out.c (loc_descriptor_from_tree_1): Don't set unsignedp
	before the switch, but just in the 2 places that need it.

	* c-decl.c (diagnose_mismatched_decls): Do not check for
	mismatched thread-local attributes when OLDDECL is marked
	threadprivate and NEWDECL has no thread-local attributes.
	(merge_decls): Merge C_DECL_THREADPRIVATE_P.
	(c_gimple_diagnostics_recursively): Rename from
	c_warn_unused_result_recursively.  Invoke
	diagnose_omp_structured_block_errors.
	(check_for_loop_decls): Return a singular decl found.

	* langhooks.c (lhd_omp_predetermined_sharing): Return
	OMP_CLAUSE_DEFAULT_SHARED for DECL_ARTIFICIAL decls.
	(lhd_omp_firstprivatize_type_sizes): New.
	(lhd_omp_assignment): New.
	(lhd_omp_predetermined_sharing): New.

	* langhooks.h (struct gimplify_omp_ctx): Forward declare.
	(struct lang_hooks_for_types): Add
	omp_firstprivatize_type_sizes, omp_privatize_by_reference,
	omp_predetermined_sharing, omp_disregard_value_expr,
	omp_private_debug_clause, omp_clause_default_ctor,
	omp_clause_copy_ctor, omp_clause_assign_op, omp_clause_dtor.

	(c_finish_omp_clauses): New.
	(c_finish_bc_stmt): Diagnose break within omp for.
	(c_begin_omp_parallel, c_finish_omp_parallel): New.
	(build_unary_op): Return error_mark after reporting
	a readonly_error.
	(build_modify_expr): Likewise.

	* gimplify.c: Include optabs.h and pointer-set.h.
	(enum gimplify_omp_var_data): Declare.
	(struct gimplify_omp_ctx): Declare.
	(struct gimplify_ctx): Add fields prev_context, combined_pre_p
	and combined_ctxp.
	(gimplify_ctxp, gimplify_omp_ctxp): New local variables.
	(push_gimplify_context, pop_gimplify_context): Allow nesting.
	(splay_tree_compare_decl_uid): New.
	(new_omp_context): New.
	(delete_omp_context): New.
	(gimple_add_tmp_var): Call omp_add_variable.
	(gimplify_bind_expr): Likewise.
	(gimplify_var_or_parm_decl): If omp_notice_variable returned
	true, disregard DECL_VALUE_EXPR on the decl if any.
	(gimplify_expr_in_ctx): New.
	(omp_firstprivatize_variable, omp_firstprivatize_type_sizes
	omp_add_variable, omp_notice_variable, omp_is_private
	gimplify_scan_omp_clauses, gimplify_adjust_omp_clauses_1
	gimplify_adjust_omp_clauses, gimplify_omp_parallel
	gimplify_omp_for, gimplify_omp_workshare, goa_lhs_expr_p
	gimplify_omp_atomic_fetch_op, goa_stabilize_expr
	gimplify_omp_atomic_pipeline, gimplify_omp_atomic_mutex
	gimplify_omp_atomic): New.
	(gimplify_expr): Handle OMP_PARALLEL, OMP_FOR, OMP_SECTIONS,
	OMP_SINGLE, OMP_SECTION, OMP_MASTER, OMP_ORDERED,
	OMP_CRITICAL and OMP_ATOMIC.
	(gimplify_body): Verify gimplify_ctxp is empty after gimplification.

	* c-pragma.h (enum pragma_kind): Add
	PRAGMA_OMP_ATOMIC, PRAGMA_OMP_BARRIER,
	PRAGMA_OMP_CRITICAL, PRAGMA_OMP_FLUSH, PRAGMA_OMP_FOR,
	PRAGMA_OMP_MASTER, PRAGMA_OMP_ORDERED,
	PRAGMA_OMP_PARALLEL, PRAGMA_OMP_PARALLEL_FOR,
	PRAGMA_OMP_PARALLEL_SECTIONS, PRAGMA_OMP_SECTION,
	PRAGMA_OMP_SECTIONS, PRAGMA_OMP_SINGLE,
	PRAGMA_OMP_THREADPRIVATE.

	* tree.def (OMP_PARALLEL, OMP_FOR, OMP_SECTIONS,
	OMP_SINGLE, OMP_SECTION, OMP_MASTER, OMP_ORDERED,
	OMP_CRITICAL, OMP_ATOMIC, OMP_CLAUSE_PRIVATE,
	OMP_CLAUSE_SHARED, OMP_CLAUSE_FIRSTPRIVATE,
	OMP_CLAUSE_LASTPRIVATE, OMP_CLAUSE_REDUCTION,
	OMP_CLAUSE_COPYIN, OMP_CLAUSE_COPYPRIVATE,
	OMP_CLAUSE_IF, OMP_CLAUSE_NUM_THREADS,
	OMP_CLAUSE_SCHEDULE, OMP_CLAUSE_NOWAIT,
	OMP_CLAUSE_ORDERED, OMP_CLAUSE_DEFAULT): Define.

	* print-tree.c (print_node): Dump DECL_VALUE_EXPR.

	* tree-ssa-dce.c (find_control_dependence): Do not assume that
	ENTRY_BLOCK_PTR->next_bb == single_succ (ENTRY_BLOCK_PTR).

	* tree-nested.c (convert_call_expr): Call walk_body on OMP_BODY for
	OpenMP directives.
	(struct nesting_info): Add field_map,
	suppress_expansion, debug_var_chain.
	(create_nesting_tree): Initialize them.
	(lookup_field_for_decl): Use field_map.
	(get_nonlocal_debug_decl, get_local_debug_decl): New.
	(convert_local_omp_clauses): New.
	(finalize_nesting_tree_1): Add debug_var_chain to toplevel block.
	(walk_body): Split out of walk_function.
	(convert_nonlocal_omp_clauses, convert_local_omp_clauses): New.
	(convert_nonlocal_reference): Handle omp statements.
	(convert_local_reference): Likewise.
	(unnest_nesting_tree_1): Split out of finalize_nesting_tree_1.
	(unnest_nesting_tree): New.
	(lower_nested_functions): Call it.
	(insert_field_into_struct): Make extern.
	(struct walk_stmt_info): Move to tree-gimple.h.
	(walk_stmts): Make extern.

	* omp-builtins.def: New file.

	* tree-iterator.c (expr_only): Clarify comment.

	* c-common.h (pushdecl_top_level, pushdecl,
	build_modify_expr, build_indirect_ref,
	c_finish_omp_master, c_finish_omp_critical,
	c_finish_omp_ordered, c_finish_omp_barrier,
	c_finish_omp_atomic, c_finish_omp_flush,
	c_finish_omp_for, c_split_parallel_clauses,
	omp_clause_default_kind, c_omp_sharing_predetermined,
	c_omp_remap_decl): Declare.

	* Makefile.in (BUILTINS_DEF): Add omp-builtins.def.
	(OBJS-common): Add omp-low.o.
	(c-omp.o, omp-low.o): Add.
	(gimplify.o): Add dependency on $(OPTABS_H).
	(GTFILES): Add omp-low.c.
	(gt-stringpool.h): Add.

	* tree-cfg.c (set_bb_for_stmt): Do not update the
	block-to-labels map if we are currently expanding to RTL.
	(tree_node_can_be_shared): Remove unnecessary CONSTANT_CLASS_P
	checks.
	Handle IDENTIFIER_NODE.
	(tree_verify_flow_info): Do not ICE when emitting error
	messages about invalid labels.
	(dump_function_to_file): Reset CFUN before emitting the body
	of the function.
	(debug_function): New.

	* passes.c (init_optimization_passes): Schedule
	pass_lower_omp.

	* langhooks-def.h (lhd_omp_predetermined_sharing,
	lhd_omp_assignment, lhd_omp_firstprivatize_type_sizes):
	Declare.
	(LANG_HOOKS_OMP_FIRSTPRIVATIZE_TYPE_SIZES): Define.
	(LANG_HOOKS_FOR_TYPES_INITIALIZER): Use it.
	(LANG_HOOKS_OMP_PRIVATIZE_BY_REFERENCE,
	LANG_HOOKS_OMP_PREDETERMINED_SHARING,
	LANG_HOOKS_OMP_DISREGARD_VALUE_EXPR,
	LANG_HOOKS_OMP_PRIVATE_DEBUG_CLAUSE,
	LANG_HOOKS_OMP_CLAUSE_DEFAULT_CTOR,
	LANG_HOOKS_OMP_CLAUSE_COPY_CTOR,
	LANG_HOOKS_OMP_CLAUSE_ASSIGN_OP,
	LANG_HOOKS_OMP_CLAUSE_DTOR): Define.
	(LANG_HOOK_DECLS): Use them.


2006-01-18  Dmitry Kurochkin <dmitry.kurochkin@gmail.com>
	    Richard Henderson  <rth@redhat.com>
	    Jakub Jelinek  <jakub@redhat.com>
            Diego Novillo  <dnovillo@redhat.com>

	* c-parser.c (pragma_omp_clause): Define.
	(c_parser_declaration_or_fndef): Document OpenMP syntax.
	(c_parser_compound_statement): Likewise.
	(c_parser_statement): Likewise.
	(c_parser_pragma): Handle omp pragmas.
	(OMP_FOR_CLAUSE_MASK, OMP_SECTIONS_CLAUSE_MASK,
	OMP_PARALLEL_CLAUSE_MASK, OMP_SINGLE_CLAUSE_MASK): Define.
	(c_parser_omp_clause_name, check_no_duplicate_clause,
	c_parser_omp_variable_list,
	c_parser_omp_var_list_parens, c_parser_omp_clause_copyin,
	c_parser_omp_clause_copyprivate,
	c_parser_omp_clause_default,
	c_parser_omp_clause_firstprivate, c_parser_omp_clause_if,
	c_parser_omp_clause_lastprivate,
	c_parser_omp_clause_nowait,
	c_parser_omp_clause_num_threads,
	c_parser_omp_clause_ordered, c_parser_omp_clause_private,
	c_parser_omp_clause_reduction,
	c_parser_omp_clause_schedule, c_parser_omp_clause_shared,
	c_parser_omp_all_clauses, c_parser_omp_structured_block,
	c_parser_omp_atomic, c_parser_omp_barrier,
	c_parser_omp_critical, c_parser_omp_flush,
	c_parser_omp_for_loop, c_parser_omp_for,
	c_parser_omp_master, c_parser_omp_ordered,
	c_parser_omp_sections_scope, c_parser_omp_sections,
	c_parser_omp_parallel, c_parser_omp_single,
	c_parser_omp_construct, c_parser_omp_threadprivate): New.
	* c-pragma.c (init_pragma): Do omp pragma registration here.
	* c.opt (fopenmp): New flag.


2006-01-18  Eric Christopher  <echristo@apple.com>

	* gcc.c (GOMP_SELF_SPECS): Bracket in #ifndef/#endif.
	* config/darwin.h (GOMP_SELF_SPECS): Define.


testsuite/

2006-01-18  Richard Henderson  <rth@redhat.com>
            Aldy Hernandez  <aldyh@redhat.com>
	    Jakub Jelinek  <jakub@redhat.com>
            Diego Novillo  <dnovillo@redhat.com>
            Uros Bizjak  <uros@kss-loka.si>

	* testsuite/gcc.dg/gomp: New directory.

From-SVN: r109902
2006-01-18 14:21:25 -05:00
Geoffrey Keating
df239d2bf9 * btest-gcc.sh: Support -j option.
From-SVN: r108866
2005-12-20 20:20:24 +00:00
Ben Elliston
7a77407957 * newcvsroot: Remove.
From-SVN: r108190
2005-12-08 08:38:02 +11:00
Geoffrey Keating
3327e41f58 GCC Regression Tester.wdgt: Rename to GCC_Regression_Tester.wdgt.
* GCC Regression Tester.wdgt: Rename to GCC_Regression_Tester.wdgt.
	* GCC_Regression_Tester.wdgt/Info.plist
	(CFBundleDisplayName): Update for rename.
	(CFBundleName): Use shorter name.
	(CFBundleVersion): Update to 1.0.1.
	(CFBundleShortVersionString): Update to 1.0.1.
	(LSHasLocalizedDisplayName): New.
	(NSHumanReadableCopyright): New.
	* GCC_Regression_Tester.wdgt/de.lproj/InfoPlist.strings: New.
	* GCC_Regression_Tester.wdgt/en.lproj/InfoPlist.strings: New.
	* GCC_Regression_Tester.wdgt/ja.lproj/InfoPlist.strings: New.

	* GCC_Regression_Tester.wdgt/widget.html: Use max-age=30
	to help out intermediate caches.

From-SVN: r107606
2005-11-28 17:41:07 +00:00
Geoffrey Keating
40f4ed784b GCC Regression Tester.wdgt/widget.html: New file.
* GCC Regression Tester.wdgt/widget.html: New file.
	* GCC Regression Tester.wdgt/Info.plist: New file.
	* GCC Regression Tester.wdgt/Icon.png: New file.
	* GCC Regression Tester.wdgt/Default.png: New file.
	* README: Describe new files.

From-SVN: r107430
2005-11-23 20:29:09 +00:00
Steven Bosscher
086ed39d00 *sigh* checked in the wrong patch
From-SVN: r106495
2005-11-04 17:27:44 +00:00
Steven Bosscher
f2bd1eb944 * gcc_build: Fix my previous checking.
From-SVN: r106449
2005-11-03 20:56:05 +00:00
Joseph Myers
f415efe34c * gcc_update: Include revision number in LAST_UPDATED.
From-SVN: r106327
2005-11-01 12:59:50 +00:00
Steven Bosscher
133f4c87b1 gcc_build: Use gcc.gnu.org as the default server.
* gcc_build: Use gcc.gnu.org as the default server.  Set up
	SVN_REPOSITORY correctly.  Add support for checking out branches.

From-SVN: r106248
2005-10-30 19:45:01 +00:00
Andrew Pinski
8f5c9c3d15 gcc_update: When svn update is called and --silent is used, pass -q.
2005-10-28  Andrew Pinski  <pinskia@gcc.gnu.org>

        * gcc_update: When svn update is called and
        --silent is used, pass -q.

From-SVN: r105985
2005-10-28 17:28:20 -07:00
Andrew Pinski
7dcd894f70 gcc_update: Remove the -q from svn invocation.
2005-10-28  Andrew Pinski  <pinskia@gcc.gnu.org>

        * gcc_update: Remove the -q from svn invocation.

From-SVN: r105958
2005-10-28 13:19:57 -07:00
Andrew Pinski
6c301b82b4 gcc_build: Remove -d from the call to gcc_update.
2005-10-28  Andrew Pinski  <pinskia@gcc.gnu.org>

        * gcc_build: Remove -d from the call to gcc_update.

From-SVN: r105937
2005-10-28 08:22:41 -07:00
Daniel Berlin
1b9f940b0c gcc_update: Update for svn.
2005-10-28  Daniel Berlin  <dberlin@dberlin.org>
	    Ben Elliston <bje@au1.ibm.com>
	
	* gcc_update: Update for svn.
	* newcvsroot: Ditto.
	* gcc_build: Ditto.

Co-Authored-By: Ben Elliston <bje@au.ibm.com>

From-SVN: r105933
2005-10-28 14:44:48 +00:00
Mark Mitchell
901097dbd4 * texi2pod.pl: Substitue for @value even when part of @include.
From-SVN: r105780
2005-10-21 23:31:07 +00:00
Bob Wilson
0928f4059f texi2pod.pl: Convert two single quotes or two backquotes to double quotes.
* texi2pod.pl: Convert two single quotes or two backquotes to
	double quotes.

From-SVN: r105758
2005-10-21 17:54:27 +00:00
Ben Elliston
5464337b7f * gcc_update: Update dependencies for libjava/aclocal.m4.
From-SVN: r103376
2005-08-23 10:55:08 +10:00
Kelley Cook
89ee9c70a1 All files: Update with new FSF address.
2005-08-14  Kelley Cook  <kcook@gcc.gnu.org>

	* All files: Update with new FSF address.

From-SVN: r103095
2005-08-15 00:41:31 +00:00
Ben Elliston
93e261acea * reg_test_template: Typo fix.
From-SVN: r102007
2005-07-14 13:39:08 +10:00
Ben Elliston
d0e71b9c05 filter_params.pl: Typo fix.
* filter_params.pl: Typo fix.
	* filter_knr2ansi.pl: Likewise.

From-SVN: r102006
2005-07-14 13:38:20 +10:00
Hans-Peter Nilsson
bd127a7515 btest-gcc.sh: Add support for option --add-passes-despite-regression.
* btest-gcc.sh: Add support for option
	--add-passes-despite-regression.

From-SVN: r100699
2005-06-07 07:42:22 +00:00
Hans-Peter Nilsson
7721d5d4cb btest-gcc.sh: Don't pass --with-newlib when target is "*-linux*".
* btest-gcc.sh <Build>: Don't pass --with-newlib when target is
	"*-linux*".

From-SVN: r100649
2005-06-06 05:59:07 +00:00
Hans-Peter Nilsson
e7700967a1 * btest-gcc.sh (TESTLOGS): Make libstdc++.sum optional.
From-SVN: r100648
2005-06-06 05:57:03 +00:00
Gerald Pfeifer
bfac631b94 * gennews (files): Update for egcs-1.0 release pages consolidation.
From-SVN: r100636
2005-06-05 20:35:21 +00:00
Joseph Myers
492f761a97 * gennews (files): Update for GCC 4.0.
From-SVN: r98266
2005-04-17 12:19:23 +01:00
Alexandre Oliva
7e3c8f17ab * gcc_update (silent): Unset instead of initializing to null.
From-SVN: r96708
2005-03-19 00:16:22 +00:00
Andreas Schwab
d028e149ad * gcc_update (apply_patch): Properly quote $1.
From-SVN: r96705
2005-03-18 22:43:26 +00:00
Zack Weinberg
2d072788a1 * gcc_update: Add --silent option.
From-SVN: r96661
2005-03-18 11:47:28 +00:00
Kaveh R. Ghazi
be93246638 warn_summary (keywordFilter): Update sed pattern for new quoting style in warnings.
* warn_summary (keywordFilter): Update sed pattern for new quoting
	style in warnings.

From-SVN: r96102
2005-03-08 13:42:18 +00:00
Kaveh R. Ghazi
1f43e92e35 warn_summary: Add -fortran subdir flag.
* warn_summary: Add -fortran subdir flag.
	(subdirectoryFilter): Fix missing ada subdir.

From-SVN: r96022
2005-03-07 14:59:17 +00:00
Kazu Hirata
d4512eb8bc * reg_periodic, reg_search: Fix the uses of date command.
From-SVN: r93806
2005-01-18 02:04:51 +00:00
Hans-Peter Nilsson
9eaf7da094 gcc_update (touch_files): Don't rely on "make" being GNU make...
* gcc_update (touch_files): Don't rely on "make" being GNU make;
	grep for "Touching" to determine that the rule executes.

From-SVN: r90961
2004-11-20 10:49:16 +00:00
Hans-Peter Nilsson
18ccc7e0e3 * gcc_update (touch_files): Explicitly pass --no-print-directory.
From-SVN: r90614
2004-11-14 06:31:00 +00:00
James A. Morrison
328a2a74da README: Update website URL.
2004-11-07  James A. Morrison  <phython@gcc.gnu.org>

        * README: Update website URL.

From-SVN: r90239
2004-11-07 17:08:09 +00:00
Andrew Pinski
9a3990559f gcc_update (boehm-gc/aclocal.m4): Remove boehm-gc/acinclude.m4.
2004-11-04  Andrew Pinski  <pinskia@physics.uc.edu>

        * gcc_update (boehm-gc/aclocal.m4): Remove boehm-gc/acinclude.m4.

From-SVN: r90115
2004-11-04 20:11:44 -08:00
Geoffrey Keating
36b8a0315c btest-gcc.sh (TESTLOGS): The libstdc++-v3 test log is called libstd++.sum not libstdc++-v3.sum.
* btest-gcc.sh (TESTLOGS): The libstdc++-v3 test log is called
	libstd++.sum not libstdc++-v3.sum.

From-SVN: r89697
2004-10-27 18:19:41 +00:00
Geoffrey Keating
bbdb90f76b btest-gcc.sh (TESTLOGS): Examine regressions in libstdc++, libffi, and libjava.
* btest-gcc.sh (TESTLOGS): Examine regressions in libstdc++,
	libffi, and libjava.

From-SVN: r89576
2004-10-26 08:30:32 +00:00
Paolo Bonzini
71b5d516bc Made fixincludes a toplevel build module.
toplevel:
2004-08-31  Paolo Bonzini  <bonzini@gnu.org>

	* Makefile.def (build_modules): Add fixincludes.
	(dependencies): Make gcc depend on fixincludes.
	* configure.in (build_tools): Add fixincludes.
	(build_configdirs): Always include build_libs.
	* Makefile.in: Regenerate.
	* configure: Regenerate.

contrib:
2004-08-04  Paolo Bonzini  <bonzini@gnu.org>

	* gcc_update: Add fixincludes.

fixincludes:
2004-08-31  Paolo Bonzini  <bonzini@gnu.org>

	* .cvsignore: New.
	* Makefile.in: From gcc/fixinc/Makefile.in, making it fully
	autoconfiscated.
	* configure.ac: New.
	* config.h.in: Generate.
	* configure: Generate.
	* aclocal.m4: New.
	* fixlib.h: Remove inclusions of gcc files.
	* system.h: New.

	Other files copied from gcc/fixinc.

gcc:
2004-08-31  Paolo Bonzini  <bonzini@gnu.org>

	* Makefile.in (build_subdir): New substitution.
	(fixinc.sh): Simplify heavily since fixincludes is already built.
	(stmp-fixinc): Depend on specs.ready.
	(install-mkheaders): Use new location of fixincludes.
	(clean): Do not descend into fixinc.
	(FORBUILD): Replace with ../$(build_subdir).
	* configure.ac (build_subdir): Substitute.
	(FORBUILD): Do not set.
	(all_outputs): Remove fixinc/Makefile.
	(default commands): Do not create links in fixinc.
	* mkfixinc.sh: New, from fixinc/mkfixinc.sh without
	the fixincludes configuration steps and substituting
	@FIXINCL@ in fixinc.in.
	* fixinc.in: New, from fixinc/fixincl.sh.

	* fixinc/*: Removed.

From-SVN: r86824
2004-08-31 09:27:00 +00:00
Matthias Klose
df6e87bf75 texi2pod.pl: keep references of the form @ref{...}, print them bold.
2004-08-26  Matthias Klose  <doko@debian.org>

	* texi2pod.pl: keep references of the form @ref{...}, print them bold.

From-SVN: r86635
2004-08-26 21:26:22 +00:00
Matthias Klose
1249691bab test_summary: Include baseline used for libstdc++-v3 abi check in test summary.
2003-08-26  Matthias Klose  <doko@debian.org>

        * test_summary: Include baseline used for libstdc++-v3
        abi check in test summary.

From-SVN: r86607
2004-08-26 05:51:22 +00:00
Ben Elliston
5b292a4b05 * gcc_update (libcpp/Makefile.in): Remove libcpp/Makefile.am.
From-SVN: r86543
2004-08-25 19:07:43 +10:00
Andreas Tobler
8b84ead6fe gcc_update (self): libjava/configure.in -> configure.ac.
2004-08-20  Andreas Tobler  <a.tobler@schweiz.ch>

	* gcc_update (self): libjava/configure.in -> configure.ac. Automake
	update done.

From-SVN: r86330
2004-08-20 18:17:35 +02:00
Paolo Bonzini
d09212551a gcc_update: libjava/configure.ac -> configure.in.
2004-08-04  Paolo Bonzini  <gcc@gcc.gnu.org>

	* gcc_update: libjava/configure.ac -> configure.in.  Automake
	1.4 does not handle configure.ac properly.

From-SVN: r85556
2004-08-04 12:08:09 +00:00
Andreas Schwab
da96112d34 * gcc_update: libjava/configure.in -> configure.ac.
From-SVN: r85552
2004-08-04 11:01:10 +00:00
Richard Earnshaw
1e45521fdb * gcc_update: gcc/config/arm/arm-tune.md -> arm-cores.def gentune.sh.
From-SVN: r85474
2004-08-03 13:35:47 +00:00
Jeff Law
7eacb691bb * analyze_brprob: Fix comments. More consistent output format.
From-SVN: r84828
2004-07-16 12:58:00 -06:00
Diego Novillo
5bed280967 * tree-ssa.doxy: Update for doxygen 1.3.5.
From-SVN: r83289
2004-06-17 07:40:27 -04:00
Andreas Jaeger
cc605afe38 * gcc_update: boehm-gc/configure.in -> configure.ac.
From-SVN: r83238
2004-06-16 13:58:44 +02:00
Paolo Bonzini
bf9a420e62 configure.ac: New name of configure.in.
boehm-gc/ChangeLog:
2005-06-16  Paolo Bonzini  <bonzini@gnu.org>

	* boehm-gc/configure.ac: New name of configure.in.
	Remove useless multilib stuff.  Change uses of
	INCLUDES and CXXINCLUDES to AM_CPPFLAGS.
	* boehm-gc/configure.in: New name of configure.in.
	* boehm-gc/Makefile.am: Update for automake 1.8.5.
	* boehm-gc/acinclude.m4: Include ../config/acx.m4.
	* boehm-gc/aclocal.m4: Regenerate.
	* boehm-gc/configure: Regenerate.

contrib/ChangeLog:
2004-06-16  Paolo Bonzini  <bonzini@gnu.org>

	* gcc_update (boehm-gc/configure): Depend on
	boehm-gc/configure.ac instead of boehm-gc/configure.in

gcc/ChangeLog:
2004-06-16  Paolo Bonzini  <bonzini@gnu.org>

	* doc/install.texi: boehm-gc now uses automake 1.8.5.

From-SVN: r83227
2004-06-16 07:35:00 +00:00
Paolo Bonzini
5a4f18181b gcc_update (libmudflap/configure): Depend on libmudflap/configure.ac instead of libmudflap/configure.in
2004-06-14  Paolo Bonzini  <bonzini@gnu.org>

	* gcc_update (libmudflap/configure): Depend on
	libmudflap/configure.ac instead of libmudflap/configure.in

From-SVN: r83186
2004-06-15 14:59:58 +00:00
Andreas Jaeger
d5ad6febfa * gcc_update: Add libcpp.
From-SVN: r83100
2004-06-14 15:53:45 +02:00
Andreas Jaeger
dbfa8d1535 * gcc_update: Add libgfortran.
From-SVN: r82884
2004-06-10 06:50:45 +02:00
Andrew Pinski
9e953fed92 gcc_update (libbanshee/configure): Depend on libbanshee/configure.ac instead of libbanshee/configure.in
2004-05-29  Andrew Pinski  <pinskia@physics.uc.edu>

        * gcc_update (libbanshee/configure): Depend on
        libbanshee/configure.ac instead of libbanshee/configure.in

From-SVN: r82427
2004-05-29 12:51:26 -07:00
Zack Weinberg
b4117c3061 Makefile.def, [...]: Remove all mention of libf2c.
top:
	* Makefile.def, Makefile.tpl, configure.in: Remove all mention
	of libf2c.
	* configure, Makefile.in: Regenerate.
contrib:
	* gcc_update: Remove gcc/f/intdoc.texi and all libf2c files
	from list of files to be touched.
	* convert_to_f2c, convert_to_g2c, download_f2c: Delete.
gcc:
	* f: Entire directory removed

	* c-common.h (CTI_G77_INTEGER_TYPE, CTI_G77_UINTEGER_TYPE)
	(CTI_G77_LONGINT_TYPE, CTI_G77_ULONGINT_TYPE)
	(g77_integer_type_node, g77_uinteger_type_node)
	(g77_longint_type_node, or g77_ulongint_type_node): Delete.
	* c-common.c (c_common_nodes_and_builtins): Do not initialize
	the above set of variables.

	* config/i386/uwin.h: No need to define WIN32_UWIN_TARGET.
	* doc/invoke.texi, doc/standards.texi: Remove cross-references
	to g77 manual.
gcc/po:
	* exgettext (spec_error_string): Do not scan beyond the end of
	the string for a close brace.  Do not bail out at the first
	incidence of %%e.
	* gcc.pot: Regenerate.

From-SVN: r81967
2004-05-18 01:26:21 +00:00
Joseph Myers
e3d26d7b1f * gennews: Update for GCC 3.4.
From-SVN: r81874
2004-05-15 10:50:58 +01:00
Andrew Pinski
30107ebef8 btest-gcc.sh: Remove g77.sum from TESTLOGS.
2004-05-13  Andrew Pinski  <pinskia@physics.uc.edu>

        * btest-gcc.sh: Remove g77.sum from TESTLOGS.

From-SVN: r81799
2004-05-13 12:06:56 -07:00
Diego Novillo
6de9cd9a88 Merge tree-ssa-20020619-branch into mainline.
From-SVN: r81764
2004-05-13 02:41:07 -04:00
Kelley Cook
5b03e55570 Add dependencies for zlib for gcc_update
Co-Authored-By: Andreas Jaeger <aj@suse.de>

From-SVN: r80619
2004-04-12 11:03:16 +00:00
Nathanael Nerode
3adc31d141 configure.in: Rename to configure.ac.
(libobjc)
	* configure.in: Rename to configure.ac.
	* Makefile.in: Update to match.

(contrib)
	* gcc_update (files_and_dependencies): libobjc/configure now
	depends on configure.ac, not configure.in.

From-SVN: r80555
2004-04-09 13:13:09 +00:00
Kelley Cook
b52d4110bf gcc_update (files_and_dependencies): Remove gcc/ada/*.texi.
2004-04-01  Kelley Cook  <kcook@gcc.gnu.org>

	* gcc_update (files_and_dependencies): Remove gcc/ada/*.texi.

From-SVN: r80345
2004-04-02 00:47:19 +00:00
Andreas Tobler
7de53bcaa3 gcc_update (files_and_dependencies): Insert libffi dependencies.
2004-03-16  Andreas Tobler  <a.tobler@schweiz.ch>

	* gcc_update (files_and_dependencies): Insert libffi dependencies.

From-SVN: r79543
2004-03-16 20:19:19 +01:00
R. Kelley Cook
4f5b645ac7 Wrong version checked in previous patch
From-SVN: r79292
2004-03-11 02:24:53 +00:00
Kelley Cook
8ab705be38 configure.ac: Bump AC_PREREQ to 2.59.
boehm-gc/
2004-03-10  Kelley Cook  <kcook@gcc.gnu.org>

	* configure.ac: Bump AC_PREREQ to 2.59.
	* configure: Regenerate.
	* config.in: Regenerate.

fastjar/
2004-03-10  Kelley Cook  <kcook@gcc.gnu.org>

	* configure.ac: Bump AC_PREREQ to 2.59.
	* configure: Regenerate.

intl/
2004-03-10  Kelley Cook  <kcook@gcc.gnu.org>

	* configure.ac: Bump AC_PREREQ to 2.59.
	* configure: Regenerate.
	* config.h.in: Regenerate.

gcc/
2004-03-10  Kelley Cook  <kcook@gcc.gnu.org>

	* configure.ac: Bump AC_PREREQ to 2.59.
	* configure: Regenerate.

libada/
2004-03-10  Kelley Cook  <kcook@gcc.gnu.org>

	* configure.in: Rename file to ...
	* configure.ac: .. to this. Bump AC_PREREQ to 2.59.
	* configure: Regenerate.

libjava/libltdl/
2004-03-10  Kelley Cook  <kcook@gcc.gnu.org>

	* configure.ac: Bump AC_PREREQ to 2.59.
	* configure: Regenerate.
	* config-h.in: Regenerate.

libstdc++-v3/
2004-03-10  Kelley Cook  <kcook@gcc.gnu.org>

	* configure.ac: Bump AC_PREREQ to 2.59.

contrib/
2004-03-10  Kelley Cook  <kcook@gcc.gnu.org>

	* gcc_update (files_and_dependencies): Insert libada/configure.

From-SVN: r79285
2004-03-11 00:27:41 +00:00
Andrew Pinski
61c3ff8ff5 gcc_update (files_and_dependencies): Update intl/configure.in to intl/configure.ac.
2004-02-29  Andrew Pinski  <pinskia@physics.uc.edu>

        * gcc_update (files_and_dependencies): Update intl/configure.in
        to intl/configure.ac.

From-SVN: r78673
2004-02-29 13:13:41 -08:00
Kelley Cook
a4b0b8f1b5 gcc_update (files_and_dependencies): Update fastjar/configure.in to fastjar/configure.ac
2004-01-09  Kelley Cook  <kcook@gcc.gnu.org>

	* gcc_update (files_and_dependencies): Update fastjar/configure.in
	to fastjar/configure.ac

From-SVN: r75622
2004-01-10 02:12:41 +00:00
Kelley Cook
102d317626 gcc_update (files_and_dependencies): Remove non-existant files.
2004-01-07  Kelley Cook  <kcook@gcc.gnu.org>

	* gcc_update (files_and_dependencies): Remove non-existant files.

From-SVN: r75528
2004-01-08 00:55:02 +00:00
Kelley Cook
dedebde10a gcc_update (files_generated): Revert 2003-12-18 change.
contrib/
2004-01-05  Kelley Cook  <kcook@gcc.gnu.org>
	* gcc_update (files_generated): Revert 2003-12-18 change.

gcc/ada/
2004-01-05  Kelley Cook  <kcook@gcc.gnu.org>

	* Make-lang.in: Revert stamp-xgnatug change from 2003-12-18.
	Update comment and copyright date.
	* stamp-xgnatug: Delete.

From-SVN: r75461
2004-01-06 02:39:27 +00:00