1. 02 Apr, 2008 20 commits
  2. 01 Apr, 2008 19 commits
    • re PR tree-optimization/35787 (Revision 133680 breaks 447.dealII) · 70b7b037
      2008-04-02  Richard Guenther  <rguenther@suse.de>
      
      	* tree-vrp.c (extract_range_from_assert): Make sure to not
      	produce range min/max with TREE_OVERFOW set.
      	If merging a anti-range and a range keep the anti-range if
      	the range covers all values of the type.
      	(register_edge_assert_for_2): Only allow sign-changing
      	conversions in detecting canonical range checks.  Also
      	register an assert for the unsigned name if useful.
      
      	PR tree-optimization/35787
      	* tree-vrp.c (vrp_val_max): New function.
      	(vrp_val_min): Likewise.
      	(vrp_val_is_max): Move earlier, use vrp_val_{min,max}.
      	(vrp_val_is_min): Likewise.
      	(supports_overflow_infinity): Use vrp_val_{min,max}.
      	(negative_overflow_infinity): Likewise.
      	(positive_overflow_infinity): Likewise.
      	(is_negative_overflow_infinity): Use vrp_val_is_{min,max}.
      	(is_positive_overflow_infinity): Likewise.
      	(is_overflow_infinity): Likewise.
      	(avoid_overflow_infinity): Use vrp_val_{min,max} and
      	vrp_val_is_{min,max}.
      	(set_and_canonicalize_value_range): Canonicalize anti-ranges
      	to ranges if possible.  Avoid empty ranges.
      
      	* gcc.dg/tree-ssa/vrp38.c: New testcase.
      	* gcc.dg/tree-ssa/vrp39.c: Likewise.
      
      From-SVN: r133808
      Richard Guenther committed
    • re PR ada/33857 (Cannot bootstrap Ada with host gnatmake-4.2) · a6a0635e
      	PR ada/33857
      	* env.c: Always include crt_externs.h if __APPLE__ is defined.
      	(__gnat_setenv): Use setenv instead of putenv if __APPLE__ is defined.
      
      From-SVN: r133806
      John David Anglin committed
    • re PR middle-end/35705 (Symbol address check eliminated by C frontend.) · 10743280
      	PR middle-end/35705
      	* fold-const.c (get_pointer_modulus_and_residue): Return modulus 1 if
      	the expression is a function address.
      
      From-SVN: r133804
      John David Anglin committed
    • trans-common.c (create_common): Add decl to function chain to preserve… · 7151ffbe
      trans-common.c (create_common): Add decl to function chain to preserve identifier scope in debug output.
      
      	* fortran/trans-common.c (create_common):  Add decl to function
      	chain to preserve identifier scope in debug output.
      
      	* dbxout.c: Emit .stabs debug info for Fortran COMMON block
      	variables as base symbol name + offset using N_BCOMM/N_ECOMM.
      	(is_fortran, dbxout_common_name, dbxout_common_check): New functions.
      	(dbxout_symbol_location): Transform N_LCSYM to N_GSYM for storage
      	in common.
      	(dbxout_syms): Check for COMMON-based symbol and wrap in
      	N_BCOMM/N_ECOMM stab bracket, including as many symbols as possible
      	in bracket for efficiency.
      
      	* dwarf2out.c: Emit DWARF debug info for Fortran COMMON block
      	using DW_TAG_common_block + member offset.
      	(add_pubname_string): New function.
      	(dw_expand_expr): New function to find block name and offset for
      	COMMON var.
      	(common_check): New function to check whether symbol in Fortran COMMON.
      	(gen_variable_die): If COMMON, use DW_TAG_common_block.
      
      	* testsuite/gcc.dg/debug/pr35154.c:  New test to check that non-Fortran
      	use of common is unchanged.
      
      	* testsuite/lib/gfortran-dg.exp:  New harness to compile Fortran progs
      	with all combinations of debug options available on target.
      	* testsuite/gfortran.dg/debug/debug.exp:  Ditto.
      	* testsuite/gfortran.dg/debug/trivial.f:  Ditto.
      	* testsuite/gfortran.dg/debug/pr35154-stabs.f:  New test case for
      	.stabs functionality.
      	* testsuite/gfortran.dg/debug/pr35154-dwarf2.f:  New test case for
      	DWARF functionality.
      
      From-SVN: r133801
      George Helffrich committed
    • re PR c/35436 (ICE with attribute "format") · dc197ab9
      	PR c/35436
      	* c-format.c (init_dynamic_gfc_info): Ignore invalid locus type.
      
      	* gcc.dg/format/gcc_gfc-2.c: New test.
      
      From-SVN: r133800
      Volker Reichelt committed
    • v850.md (casesi): Remove if (0) code. · 9e9b5341
      	* config/v850/v850.md (casesi): Remove if (0) code.
      	* config/i386/uwin.h (ASM_DECLARE_FUNCTION_NAME): Likewise.
      	* config/alpha/alpha.c (alpha_initialize_trampoline): Likewise.
      
      From-SVN: r133799
      Ben Elliston committed
    • i386.md (rex64suffix): New mode attribute. · 380edc9f
              * config/i386/i386.md (rex64suffix): New mode attribute.
              (floathi<mode>2): Disable expander for SSE math.
              (*floathi<mode>2_1): New insn insn_and_split pattern.
              (*floathi<mode>2_i387_with_temp): New macroized instruction pattern and
              corresponding post-reload splitters.
              (*floathi<mode>2_i387): New macroized insn pattern.
              (float<SSEMODEI24:mode><X87MODEF:mode>2): New macroized expander.
              (*float<SSEMODEI24:mode><X87MODEF:mode>2_1): New macroized
              insn_and_split pattern.
              (*floatsi<mode>2_vector_mixed_with_temp, *floatsi<mode>2_vector_mixed):
              New macroized instruction patterns and corresponding post-reload
              splitters.
              (*floatsi<mode>2_mixed_with_temp): New macroized instruction pattern
              and corresponding post-reload splitters.
              (*floatsi<mode>2_mixed_interunit, *floatsi<mode>2_mixed_nointerunit):
              New macroized instruction patterns.
              (*floatsi<mode>2_vector_sse_with_temp, *floatsi<mode>2_vector_sse): New
              macroized instruction patterns and corresponding post-reload splitters.
              (*floatsi<mode>2_sse_with_temp): New macroized instruction pattern and
              corresponding post-reload splitters.
              (*floatsi<mode>2_sse_interunit, *floatsi<mode>2_mixed_nointerunit):
              New macroized instruction patterns.
              (*floatsi<mode>2_i387_with_temp): New macroized instruction pattern and
              corresponding post-reload splitters.
              (*floatsi<mode>2_i387): New macroized instruction patterns.
      
      From-SVN: r133798
      Uros Bizjak committed
    • i386.md (smaxmin): New. · 78e8956b
      2008-04-01  H.J. Lu  <hongjiu.lu@intel.com>
      
      	* config/i386/i386.md (smaxmin): New.
      	(umaxmin): Likewise.
      	(maxminiprefix): Likewise.
      	(maxminfprefix): Likewise.
      	(<code><mode>3): Likewise.
      	(smin<mode>3): Removed.
      	(smax<mode>3): Likewise.
      
      	* config/i386/mmx.md (mmx_<code>v2sf3): New.
      	(mmx_<code>v4hi3): Likewise.
      	(mmx_<code>v8qi3): Likewise.
      	(mmx_smaxv2sf3): Removed.
      	(mmx_sminv2sf3): Likewise.
      	(mmx_umaxv8qi3): Likewise.
      	(mmx_smaxv4hi3): Likewise.
      	(mmx_uminv8qi3): Likewise.
      	(mmx_sminv4hi3): Likewise.
      
      	* config/i386/sse.md (<addsub><mode>3): New.
      	(*<addsub><mode>3): Likewise.
      	(<sse>_vm<addsub><mode>3): Likewise.
      	(<maxmin><mode>3): Likewise.
      	(*<maxmin><mode>3_finite): Likewise.
      	(*<maxmin><mode>3): Likewise.
      	(<sse>_vm<maxmin><mode>3): Likewise.
      	(sse3_h<addsub>v4sf3): Likewise.
      	(sse3_h<addsub>v2df3): Likewise.
      	(<maxmin>v16qi3): Likewise.
      	(*<maxmin>v16qi3): Likewise.
      	(<maxmin>v8hi3): Likewise.
      	(*<maxmin>v8hi3): Likewise.
      	(*sse4_1_<maxmin><mode>3): Likewise.
      	(*sse4_1_<maxmin><mode>3): Likewise.
      	(add<mode>3): Removed.
      	(*add<mode>3): Likewise.
      	(<sse>_vmadd<mode>3): Likewise.
      	(sub<mode>3): Likewise.
      	(*sub<mode>3): Likewise.
      	(<sse>_vmsub<mode>3): Likewise.
      	(smin<mode>3): Likewise.
      	(*smin<mode>3_finite): Likewise.
      	(*smin<mode>3): Likewise.
      	(<sse>_vmsmin<mode>3): Likewise.
      	(smax<mode>3): Likewise.
      	(*smax<mode>3_finite): Likewise.
      	(*smax<mode>3): Likewise.
      	(<sse>_vmsmax<mode>3): Likewise.
      	(sse3_haddv4sf3): Likewise.
      	(sse3_haddv2df3): Likewise.
      	(sse3_hsubv4sf3): Likewise.
      	(sse3_hsubv2df3): Likewise.
      	(umaxv16qi3): Likewise.
      	(*umaxv16qi3): Likewise.
      	(smaxv8hi3): Likewise.
      	(*smaxv8hi3): Likewise.
      	(*sse4_1_smax<mode>3): Likewise.
      	(*sse4_1_umax<mode>3): Likewise.
      	(uminv16qi3): Likewise.
      	(*uminv16qi3): Likewise.
      	(sminv8hi3): Likewise.
      	(*sminv8hi3): Likewise.
      	(*sse4_1_smin<mode>3): Likewise.
      	(*sse4_1_umin<mode>3): Likewise.
      
      From-SVN: r133797
      H.J. Lu committed
    • tree-cfg.c (verify_expr): remove in_phi. · 220f1c29
      2008-04-01  Rafael Espindola  <espindola@google.com>
      
      	* tree-cfg.c (verify_expr): remove in_phi.
              (verify_stmt): Don't call walk_tree with verify_expr. Use
      	is_gimple_min_invariant instead of is_gimple_val.
      
      From-SVN: r133795
      Rafael Avila de Espindola committed
    • texi2pod.pl: Handle @samp and @url inside verbatim blocks. · 7f9766e4
      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
      Joseph Myers committed
    • * MAINTAINERS (Write After Approval): Add myself. · 4412a506
      From-SVN: r133793
      Peter O'Gorman committed
    • g-soccon-linux-ppc.ads: Add new constants SO_REUSEPORT and IP_PKTINFO. · 4d22f5b1
      2008-04-01  Andreas Jaeger  <aj@suse.de>
      
              * g-soccon-linux-ppc.ads: Add new constants SO_REUSEPORT and
              IP_PKTINFO.
      
      From-SVN: r133792
      Andreas Jaeger committed
    • re PR pch/13675 (#including a precompiled header more than once in the same unit fails) · d4c32e1d
      	PR pch/13675
      	* files.c (struct _cpp_file): Remove pch field.
      	(pch_open_file): Don't set file->pch, just file->pchname.
      	(should_stack_file): After pfile->cb.read_pch call
      	free pchname and clear pchname, don't close file->fd.
      	Test file->pchname instead of file->pch.  Don't close fd after cb.
      	(_cpp_stack_include): Test file->pchname instead of file->pch.
      
      	* c-pch.c (c_common_read_pch): On error close (fd) resp. fclose (f).
      
      From-SVN: r133790
      Jakub Jelinek committed
    • tree-vrp.c (extract_code_and_val_from_cond_with_ops): New. · 764a79ed
      2008-04-01  Rafael Espindola  <espindola@google.com>
      
      	* tree-vrp.c (extract_code_and_val_from_cond_with_ops): New.
      	(extract_code_and_val_from_cond): Use
      	extract_code_and_val_from_cond_with_ops.
      
      From-SVN: r133789
      Rafael Avila de Espindola committed
    • function.c (free_after_compilation): Free epilogue_delay_list. · 113c63b8
      	* function.c (free_after_compilation): Free epilogue_delay_list.
      	(prepare_function_start): Assert that previous compilation was freed.
      
      From-SVN: r133787
      Jan Hubicka committed
    • re PR middle-end/35781 (Revision 133759 breaks ia64) · ec24c3a3
      
      	PR middle-end/35781
      	* m32c/m32.c (m32c_leaf_function_p, m32c_function_needs_enter): Use
      	rtl.emit instead cfun->emit.
      	* sparc/sparc.h (INIT_EXPANDERS): Likewise.
      	* ia64/ia64.h (INIT_EXPANDERS): Likewise.
      
      Co-Authored-By: Andreas Tobler <andreast@gcc.gnu.org>
      Co-Authored-By: James E Wilson <wilson@tuliptree.org>
      
      From-SVN: r133786
      Jan Hubicka committed
    • * doc/c-tree.texi (Function Basics): Fix grammatical error. · 1b82c3aa
      From-SVN: r133785
      Ben Elliston committed
    • Fix IA-64 enable-checking glibc ICE. · 048ffb8f
      * varasm.c (output_constant_pool_1): In LABEL_REF check, use tmp
      consistently.
      
      From-SVN: r133783
      James E Wilson committed
    • Daily bump. · a7d6cabc
      From-SVN: r133779
      GCC Administrator committed
  3. 31 Mar, 2008 1 commit
    • common.opt (fprofile-dir=, [...]): New options · 2f908293
      gcc/ChangeLog:
      2008-03-31  Seongbae Park <seongbae.park@gmail.com>
      
      	* common.opt (fprofile-dir=, fprofile-use=, fprofile-generate=):
      	New options
      	(fprofile-use): Add var flag_profile_use
      	* coverage.c (coverage_begin_output): Do not open a gcno file for output
      	only if -ftest-coverage is set.
      	Do not add getpwd() to gcda file path.
      	(build_gcov_info): Check the new flag 
      	flag_profile_datafile_relative_path.
      	(coverage_init): Use profile_data_prefix.
      	Read profile counter only if flag_profile_use is set.
      	* opts.c (common_handle_option): New option fprofile-use=,
      	fprofile-dir=, fprofile-generate=.
      	* toplev.c (profile_data_prefix): New variable definition.
      	* toplev.h (profile_data_prefix): New declaration.
      	* doc/invoke.tex (Option Summary, Optimization Options):
      	Add new options.
      
      gcc/testsuite/ChangeLog:
      2008-03-31  Seongbae Park <seongbae.park@gmail.com>
      
      	* g++.db/bprob/bprob.exp: Do not check gcno files.
      	Use -fprofile-use for profile use.
      	* gcc.misc-tests/bprob.exp: Ditto.
      	* g++.dg/tree-pro/tree-prof.exp: Do not check gcno files.
      	* gcc.dg/matrix/matrix.exp: Ditto.
      	* gcc.dg/struct/struct-reorg.exp: Ditto.
      	* gcc.dg/tree-prof/tree-prof.exp: Ditto.
      	* gcc.dg/profile-dir-1.c: New test.
      	* gcc.dg/profile-dir-2.c: New test.
      	* gcc.dg/profile-dir-3.c: New test.
      
      ChangeLog:
      2008-03-31  Seongbae Park <seongbae.park@gmail.com>
      
      	* Makefile.tpl (.NOTPARALLEL): Serialize stageprofile libiberty.
      	* Makefile.in (.NOTPARALLEL): Regenerate.
      
      From-SVN: r133774
      Seongbae Park committed