Commit Graph

83140 Commits

Author SHA1 Message Date
Paolo Carlini
ccd04b9f89 stl_vector.h (_Vector_base<>::_M_allocate): Do not call _M_impl.allocate when __n == 0.
2007-09-06  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/stl_vector.h (_Vector_base<>::_M_allocate):
	Do not call _M_impl.allocate when __n == 0.
	* testsuite/23_containers/vector/zero_sized_allocations.cc: New.

From-SVN: r128220
2007-09-07 01:37:31 +00:00
Laurynas Biveinis
b9dd78fa1e tree-loop-linear.c: Include obstack.h.
2007-09-06  Laurynas Biveinis  <laurynas.biveinis@gmail.com>

	* tree-loop-linear.c: Include obstack.h.
	(linear_transform_loops): New obstack lambda_obstack.
	Initialize it, pass it to gcc_loopnest_to_lambda_loopnest,
	lambda_loopnest_transform, lambda_loopnest_to_gcc_loopnest calls
	and free afterwards.
	* lambda.h (struct obstack): New forward declaration.
	(lambda_linear_expression_new): New parameter of type struct
	obstack *.
	(lambda_loopnest_new): Likewise.
	(lambda_loopnest_transform): Likewise.
	(lambda_body_vector_new): Likewise.
	(lambda_body_vector_compute_new): Likewise.
	(gcc_loopnest_to_lambda_loopnest): Likewise.
	(lambda_loopnest_to_gcc_loopnest): Likewise.
	* lambda-code.c: Include obstack.h.
	(lambda_lattice_new): New parameter lambda_obstack.  Use it for
	allocation of ret.
	(lambda_body_vector_new): Likewise.
	(lambda_linear_expression_new): Likewise.
	(lambda_lattice_new): Likewise.
	(lambda_loopnest_new): Likewise.  Additionally use obstack to
	allocate LN_LOOPS(ret).
	(lambda_lattice_compute_base): New parameter lambda_obstack.  Pass
	it to lambda_lattice_new.
	(lambda_body_vector_compute_new): New parameter lambda_obstack.
	Pass it to lambda_body_vector_new.
	(lambda_lattice_compute_base): New paramater lambda_obstack.  Pass
	it to lambda_lattice_new.
	(compute_nest_using_fourier_motzkin): New parameter lambda_obstack.
	Pass it to lambda_loopnest_new, lambda_linear_expression_new.
	(lambda_compute_target_space): Likewise.
	(lambda_compute_auxillary_space): New parameter lambda_obstack.
	Pass it to lambda_lattice_compute_base and
	compute_nest_using_fourieer_motzkin.
	(lambda_loopnest_transform): New parameter lambda_obstack.  Pass
	it to lambda_lattice_compute_base, lambda_lattice_auxillary_space
	and lambda_lattice_compute_target_space.
	(gcc_tree_to_linear_expression): Nex parameter lambda_obstack.
	Pass it to lambda_linear_expression_new.
	(gcc_loop_to_lambda_loop): New parameter lambda_obstack.  Pass it
	to gcc_tree_to_linear_expression.
	(gcc_loopnest_to_lambda_loopnest): New parameter lambda_obstack.
	Pass it to gcc_loop_to_lambda_loop and lambda_loopnest_new.
	(lambda_loopnest_to_gcc_loopnest): New parameter lambda_obstack.
	Pass it to lambda_body_vector_new and
	lambda_body_vector_compute_new.
	* Makefile.in (tree-loop-linear.o): Add $(OBSTACK_H) dependency.
	(lambda-code.o): Likewise.

From-SVN: r128219
2007-09-07 01:33:41 +00:00
Chao-ying Fu
0f996086cb stdfix.h: New file.
* ginclude/stdfix.h: New file.
	* Makefile.in (USER_H): Add $(srcdir)/ginclude/stdfix.h.
	(convert.o): Add dependence on fixed-value.h.
	* c-convert.c (convert): Support FIXED_POINT_TYPE.
	* c-cppbuiltin.c (builtin_define_fixed_point_constants): New function
	to define fixed-point constants.
	(c_cpp_builtins): Define fixed-point constants.
	* convert.c (fixed-value.h): New include.
	(convert_to_real): Update comment to include fixed-point.
	Support FIXED_POINT_TYPE.
	(convert_to_integer): Update comment to include fixed-point.
	Support FIXED_POINT_TYPE.
	(convert_to_complex): Support FIXED_POINT_TYPE.
	(convert_to_fixed): New function.
	* convert.h (convert_to_fixed): Declare.
	* genopinit.c: Add comment about $Q for only fixed-point modes.
	(optabs): Add fract_optab, fractuns_optab, satfract_optab,
	satfractuns_optab, add_optab, ssadd_optab, usadd_optab, sub_optab,
	sssub_optab, ussub_optab, smul_optab, ssmul_optab, usmul_optab,
	ssmadd_widen_optab, usmadd_widen_optab, ssdiv_optab, udiv_optab,
	usdiv_optab, ssashl_optab, usashl_optab, neg_optab, ssneg_optab,
	usneg_optab for fixed-point modes.
	(gen_insn): Add force_fixed to track the $Q format for all fixed-point
	modes.
	* optabs.c (optab_for_tree_code): For *DIV_EXPR, LSHIFT_EXPR,
	PLUS_EXPR, MINUS_EXPR, MULT_EXPR, NEGATE_EXPR, return signed or
	unsigned saturation optabs, when type is saturating.
	(shift_optab_p): Return true for SS_ASHIFT or US_ASHIFT.
	(expand_fixed_convert): New function.
	(gen_fixed_libfunc, gen_signed_fixed_libfunc,
	gen_unsigned_fixed_libfunc, gen_int_fp_fixed_libfunc,
	gen_int_fp_signed_fixed_libfunc, gen_int_fixed_libfunc,
	gen_int_signed_fixed_libfunc, gen_int_unsigned_fixed_libfunc,
	gen_fract_conv_libfunc, gen_fractuns_conv_libfunc,
	gen_satfract_conv_libfunc, gen_satfractuns_conv_libfunc): New
	functions.
	(init_optabs): Initialize ssadd_optab, usadd_optab, sssub_optab,
	ussub_optab, ssmul_optab, usmul_optab, ssmadd_widen_optab,
	usmadd_widen_optab, ssmsub_widen_optab, usmsub_widen_optab,
	ssdiv_optab, usdiv_optab, ssashl_optab, usashl_optab, ssneg_optab,
	usneg_optab, fract_optab, fractuns_optab, satfract_optab,
	satfractuns_optab.
	Initialize fixed-point libraries, including add, ssadd, usadd, sub,
	sssub, ussub, mul, ssmul, usmul, div, ssdiv, udiv, usdiv, ashl,
	ssashl, usashl, ashr, lshr, neg, ssneg, usneg, cmp, fract, satfract,
	fractuns, satfractuns.
	* optabs.h (enum optab_index): Add OTI_ssadd, OTI_usadd, OTI_sssub,
	OTI_ussub, OTI_ssmul, OTI_usmul, OTI_ssdiv, OTI_usdiv, OTI_ssneg,
	OTI_usneg, OTI_ssashl, OTI_usashl, OTI_ssmadd_widen, OTI_usmadd_widen,
	OTI_ssmsub_widen,  OTI_usmsub_widen.
	(ssadd_optab, usadd_optab, sssub_optab, ussub_optab, ssmul_optab,
	usmul_optab, ssdiv_optab, usdiv_optab, ssneg_optab, usneg_optab,
	ssashl_optab, usashl_optab, ssmadd_widen_optab, usmadd_widen_optab,
	umsub_widen_optab, usmsub_widen_optab): Define.
	(enum convert_optab_index): Add COI_fract, COI_fractuns, COI_satfract,
	COI_satfractuns.
	(fract_optab, fractuns_optab, satfract_optab, satfractuns_optab):
	Define.
	(expand_fixed_convert): Declare.
	* expr.c (convert_move): Support the move of fixed-point modes.
	(emit_move_insn_1): Handle fixed-point mode to move via integer.
	(categorize_ctor_elements_1): Handle FIXED_CST.
	(count_type_elements): Handle FIXED_POINT_TYPE.
	(expand_expr_real_1): For VECTOR_CST, check MODE_VECTOR_FRACT,
	MODE_VECTOR_UFRACT, MODE_VECTOR_ACCUM, MODE_VECTOR_UACCUM.
	Support FIXED_CST.
	For PLUS_EXPR and MINUS_EXPR, support saturating and non-saturating
	multiply and add/subtract for fixed-point types.
	For MULT_EXPR, *DIV_EXPR, *SHIFT_EXPR, if the mode if a fixed-point
	mode, we jump to binop directly.
	Support FIXED_CONVERT_EXPR.
	(do_store_flag): Check FIXED_CST to put a constant second.
	(vector_mode_valid_p): Handle MODE_VECTOR_FRACT,
	MODE_VECTOR_UFRACT, MODE_VECTOR_ACCUM, MODE_VECTOR_UACCUM.
	(const_vector_from_tree): Support FIXED_CST.
	* doc/extend.texi (Fixed-Point): New node.
	* doc/md.texi (ssadd, usadd, sssub, ussub, ssmul, usmul, ssdiv, usdiv,
	ssmadd, usmadd, ssmsub, usmsub, ssashl, usashl, ssneg, usneg, fract,
	satfract, fractuns, satfractuns): Document them.

From-SVN: r128218
2007-09-07 01:24:09 +00:00
GCC Administrator
58cfe6985b Daily bump.
From-SVN: r128215
2007-09-07 00:17:03 +00:00
Bernd Schmidt
aeffb4b5cd bfin.h (PREFERRED_RELOAD_CLASS): Don't reload autoinc addresses into I registers.
* config/bfin/bfin.h (PREFERRED_RELOAD_CLASS): Don't reload autoinc
	addresses into I registers.

From-SVN: r128212
2007-09-06 23:24:19 +00:00
Tom Tromey
ae582cbfa4 * jcf-parse.c (parse_class_file): Re-enter the current file.
From-SVN: r128211
2007-09-06 23:10:19 +00:00
Jan Hubicka
b2ea030b18 * semantics.c (expand_body): Do not mark arguments of clones used.
From-SVN: r128209
2007-09-06 23:04:18 +00:00
Roman Zippel
bdeb2c963f boehm.c (mark_reference_fields): Move misaligned pointer check
after JREFERENCE_TYPE_P test

From-SVN: r128208
2007-09-06 23:00:01 +00:00
Jan Hubicka
bc211e05e3 darwin.c (machopic_indirect_data_reference): Avoid invalid sharing.
2007-09-06  Jan Hubicka  <jh@suse.cz>
	    Andreas Tobler  <a.tobler@schweiz.org>

	* config/darwin.c (machopic_indirect_data_reference): Avoid invalid
	sharing.
	(machopic_legitimize_pic_address): Likewise.

Co-Authored-By: Andreas Tobler <a.tobler@schweiz.org>

From-SVN: r128207
2007-09-06 21:41:33 +02:00
Thomas Koenig
3cc50edcc0 re PR libfortran/33298 (Wrong code for SPREAD on zero-sized arrays)
2007-09-06  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/33298
	* intrinsics/spread_generic.c(spread_internal): Enable
	bounds checking by comparing extents if the bounds_check
	option has been set.  If any extent is <=0, return early.

2007-09-06  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/33298
	* spread_zerosize_1.f90:  New test case.
	* spread_bounds_1.f90:  New test case.

From-SVN: r128206
2007-09-06 19:25:30 +00:00
Matthias Klose
6f6cc094a0 cstdlib: Remove empty directory.
2007-09-06  Matthias Klose  <doko@debian.org>

        * testsuite/27_io/headers/cstdlib: Remove empty directory.

From-SVN: r128204
2007-09-06 19:17:30 +00:00
Tom Tromey
21dd2433ff StackTrace2.jar: Rebuilt.
* testsuite/libjava.lang/StackTrace2.jar: Rebuilt.
	* testsuite/libjava.lang/StackTrace2.java (checkLine): Print file
	name.

From-SVN: r128203
2007-09-06 18:58:20 +00:00
Andrew Pinski
abf4ada91c spu.md (floatsidf2): Use convert_optab_libfunc instead of ufloat_optab->handlers directly.
2007-09-06  Andrew Pinski  <andrew_pinski@playstation.sony.com>
            Jan Hubicka  <jh@suse.cz>

        * config/spu/spu.md (floatsidf2): Use convert_optab_libfunc
        instead of ufloat_optab->handlers directly.
        (floatdidf2): Likewise.


Co-Authored-By: Jan Hubicka <jh@suse.cz>

From-SVN: r128202
2007-09-06 11:57:57 -07:00
Paolo Carlini
a125de0cbf re PR c++/32674 (ICE in lvalue_p_1 initialising static variable inside template class)
/cp
2007-09-06  Paolo Carlini  <pcarlini@suse.de>

	PR c++/32674
	* decl.c (cp_finish_decl): When processing_template_decl,
	deal correctly with init as TREE_LIST.

/testsuite
2007-09-06  Paolo Carlini  <pcarlini@suse.de>

	PR c++/32674
	* g++.dg/template/static31.C: New.

From-SVN: r128201
2007-09-06 18:38:49 +00:00
Sandra Loosemore
566dfd713d mips.c: Include diagnostic.h.
2007-09-06  Sandra Loosemore  <sandra@codesourcery.com>

	gcc/
	* config/mips/mips.c:  Include diagnostic.h.
	(mips_set_current_function): Check errorcount and sorrycount 
	before generating RTL.

From-SVN: r128200
2007-09-06 14:20:37 -04:00
Janis Johnson
4b459ae43f Revert:
2007-09-06  Eric Botcazou  <ebotcazou@adacore.com>

	* trans.c (convert_with_check): Update call to real_2expN.

From-SVN: r128199
2007-09-06 18:07:14 +00:00
Francois-Xavier Coudert
c81a043c13 re PR fortran/33271 (nint_2.f90 abort compiled with -O0)
PR fortran/33271
	* gfortran.dg/nint_2.f90: xfail on powerpc-ibm-aix* and
	powerpc*-linux-gnu.

From-SVN: r128196
2007-09-06 17:48:32 +00:00
Richard Sandiford
6d992de010 re PR target/33256 (internal compiler error: in print_operand_reloc, at config/mips/mips.c:5579)
gcc/
	PR target/33256
	* config/mips/mips.c (mips_classify_symbolic_expression): New function.
	(mips_classify_address): Use it instead of mips_symbolic_constant_p.
	(print_operand_reloc): Likewise.

gcc/testsuite/
200x-xx-xx  David Daney  <ddaney@avtrex.com>
	    Richard Sandiford  <richard@codesourcery.com>

	PR target/33256
	* gcc.target/mips/mips.exp (setup_mips_tests): Set mips_forced_le.
	(dg-mips-options): Skip -EB and -meb tests when $mips_forced_le.
	* gcc.target/mips/pr33256.c: New test.

From-SVN: r128195
2007-09-06 17:46:43 +00:00
Matthias Klose
901ddd1745 Add function name to last changelog entry:
* boehm.c (mark_reference_fields): Don't use bitmap as gc_descr 
        if pointer is misaligned.

From-SVN: r128194
2007-09-06 17:33:35 +00:00
Janis Johnson
fcde2932c1 Revert:
2007-09-06  Jan Hubicka  <jh@suse.cz>
 
	* i386.c (ix86_expand_lround, ix86_expand_round): Update call of
	real_2expN.

	2007-09-06  Richard Sandiford  <richard@codesourcery.com>

	* config/mips/mips.md (fixuns_truncdfsi2, fixuns_truncdfdi2)
	(fixuns_truncsfsi2, fixuns_truncsfdi2): Update calls to real_2expN.

	2007-09-05  Janis Johnson  <janis187@us.ibm.com>

	* optabs.c (expand_float): Convert unsigned integer as signed only
	if it provides sufficient accuracy; add mode argument to real_2expN.
	(expand_fix): Fix comment typos; extend binary float into mode
	wider than destination for converion to unsigned integer; add mode
	argument to real_2expN.
	* real.c (real_2expN): Add mode argument to special-case decimal
	float values.
	* real.h (real_2expN): Ditto.
	* fixed-value.c (check_real_for_fixed_mode): Add mode argument to
	real_2expN.
	(fixed_from_string): Ditto.
	(fixed_to_decimal): Ditto.
	(fixed_convert_from_real): Ditto.
	(real_convert_from_fixed): Ditto.
	* config/rs6000/rs6000.md (FP): Include DD and TD modes.
	* config/rs6000/dfp.md (extendddtd2, adddd3, addtd3, subdd3, subtd3,
	muldd3, multd3, divdd3, divtd3, cmpdd_internal1, cmptd_internal1,
	floatditd2, ftruncdd2, fixdddi2, ftrunctd2, fixddi2): New.

From-SVN: r128193
2007-09-06 17:15:55 +00:00
Tom Tromey
48492bdf79 pexecute.txh (pex_free): Document process killing.
libiberty:
	* pexecute.txh (pex_free): Document process killing.
include:
	* libiberty.h (pex_free): Document process killing.

From-SVN: r128192
2007-09-06 16:58:57 +00:00
Roman Zippel
dbc293c8e4 boehm.c: Don't use bitmap as gc_descr if pointer is misaligned.
gcc/java/

2007-09-06  Roman Zippel  <zippel@linux-m68k.org>

        * boehm.c: Don't use bitmap as gc_descr if pointer is misaligned.

libjava/

2007-09-06  Roman Zippel  <zippel@linux-m68k.org>

        * sysdep/m68k/locks.h: New file.
        * configure.host: Set sysdeps_dir and libgcj_interpreter for m68k.
        * configure.ac: Set SIGNAL_HANDLER for m68*-*-linux*.
        * configure: Regenerate.

From-SVN: r128191
2007-09-06 16:39:58 +00:00
Tom Tromey
5ffeb913b1 tree-cfg.c (remove_bb): Only warn if line is non-zero.
gcc:
	* tree-cfg.c (remove_bb): Only warn if line is non-zero.
	* c-pch.c (c_common_read_pch): Restore current location after
	reading PCH file.
	* tree.c (expand_location): Update.
	(expr_filename): Changed return type.  Unified the two cases.
	(expr_lineno): Likewise.
	(annotate_with_file_line): Don't use EXPR_LINENO and EXPR_FILENAME
	as lvalues.
	* toplev.c (line_table): Changed type.
	(general_init): Update.
	(realloc_for_line_map): New function.
	(general_init): Allocate line_table using GC.
	* fix-header.c (line_table): Changed type.
	(read_scan_file): Update.
	(read_scan_file): Update.
	* c-ppoutput.c (maybe_print_line): Update.
	(print_line): Update.
	(cb_line_change): Update.
	(cb_define): Update.
	(pp_file_change): Update.
	* c-opts.c (c_common_init_options): Update.
	(finish_options): Update.
	(push_command_line_include): Update.
	* c-lex.c (cb_line_change): Update.
	(cb_def_pragma): Update.
	(cb_define): Update.
	(cb_undef): Update.
	(c_lex_with_flags): Use cpp_get_token_with_location.
	* input.h (line_table): Changed type.
	(location_from_locus): New macro.
	* tree.h (EXPR_FILENAME): No longer an lvalue.
	(EXPR_LINENO): Likewise.
	(expr_locus, set_expr_locus): Declare separately for
	USE_MAPPED_LOCATION.
	(expr_filename, expr_lineno): Changed return type.
	* gimplify.c (tree_to_gimple_tuple): Use SET_EXPR_LOCUS.
	* cfgexpand.c (expand_gimple_cond_expr): Use location_from_locus.
	(expand_gimple_basic_block): Likewise.
	* final.c (final_scan_insn): Use expanded_location.
gcc/cp:
	* decl.c (finish_function): Put return's location on line zero of
	file.
gcc/fortran:
	* scanner.c (get_file): Update.
	(load_file): Update.
	(gfc_next_char_literal): Use gfc_linebuf_linenum.
	* f95-lang.c (gfc_init): Update.
	* gfortran.h (gfc_linebuf_linenum): New macro.
gcc/java:
	* lang.c (java_post_options): Update.
	* jcf-parse.c (set_source_filename): Update.
	(give_name_to_class): Update.
	(jcf_parse): Update.
	(duplicate_class_warning): Update.
	(parse_class_file): Update.
	(java_parse_file): Update.
	* expr.c (expand_byte_code): Update.
gcc/testsuite:
	* lib/g++.exp (g++_target_compile): Use -fno-show-column.
gcc/treelang:
	* tree1.c (treelang_init): Update.
	(treelang_parse_file): Update.
	(treelang_parse_file): Update.
	(treelang_parse_file): Update.
	* lex.l: Update.
	(update_lineno_charno): Likewise.
libcpp:
	* internal.h (struct cpp_reader) <invocation_location>: New
	field.
	(struct cpp_reader) <set_invocation_location>: Likewise.
	* init.c (cpp_set_line_map): New function.
	* line-map.c (linemap_add): Use linemap's allocator.
	* include/line-map.h (GTY): Define.
	(line_map_realloc): New typedef.
	(struct line_map): Mark with GTY.
	(struct line_maps): Likewise.
	(struct line_maps) <maps>: Likewise.
	(struct line_maps) <reallocator>: New field.
	* include/symtab.h (GTY): Conditionally define.
	* include/cpplib.h (cpp_set_line_map): Declare.
	(cpp_get_token_with_location): Declare.
	* macro.c (cpp_get_token): Set invocation_location on the reader.
	(cpp_get_token_with_location): New function.

From-SVN: r128190
2007-09-06 16:24:05 +00:00
Richard Guenther
111f1fca4d re PR tree-optimization/32586 (New VN misses FRE opportunities)
2007-09-06  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/32586
	* tree-ssa-sccvn.c (simplify_binary_expression): Avoid
	folding if nothing changed.
	(simplify_unary_expression): New function.  Do tree combining
	on conversion like codes.
	(try_to_simplify): Call it.
	* builtins.c (fold_builtin_cexp): Fold the built expressions.
	* fold-const.c (fold_unary): Test result of get_callee_fndecl().

	* g++.dg/tree-ssa/pr27090.C: Remove XFAILs.
	* gcc.dg/tree-ssa/ssa-fre-1.c: Likewise.
	* gcc.dg/tree-ssa/ssa-fre-3.c: Likewise.
	* gcc.dg/tree-ssa/ssa-fre-5.c: Likewise.
	* gcc.dg/tree-ssa/ssa-fre-4.c: Likewise, remove scan for
	now obsolete simplification.

From-SVN: r128189
2007-09-06 16:05:32 +00:00
Francois-Xavier Coudert
1f5a6b84ab re PR target/33281 (gfortran crt2.o not found under Vista)
PR target/33281
	* configure.ac: Use config/mh-mingw on mingw.
	* configure: Regenerate.
	* config/mh-mingw: New host makefile fragment.

From-SVN: r128188
2007-09-06 15:42:02 +00:00
Jan Hubicka
7903b3e5bb re PR middle-end/33318 (fortran/expr.c:305: internal compiler error: internal consistency failure)
PR target/33318
	* cse.c (fold_rtx): Avoid invalid sharing.

From-SVN: r128187
2007-09-06 15:10:28 +00:00
Richard Sandiford
5ee7f30627 gcc/
* config/mips/mips.md (fixuns_truncdfsi2, fixuns_truncdfdi2)
	(fixuns_truncsfsi2, fixuns_truncsfdi2): Update calls to real_2expN.

From-SVN: r128186
2007-09-06 15:00:47 +00:00
Eric Botcazou
38f1f8cb89 trans.c (convert_with_check): Update call to real_2expN.
* trans.c (convert_with_check): Update call to real_2expN.

From-SVN: r128185
2007-09-06 14:47:56 +00:00
Revital Eres
d42a3bae0f Fix offsettable memory reference for 750CL
From-SVN: r128184
2007-09-06 14:30:19 +00:00
Pat Haugen
bd379f7328 reload.c (find_reloads_address_1): Try to preserve original base/index regclass of operands.
ChangeLog:

2007-09-06  Pat Haugen  <pthaugen@us.ibm.com>

	* reload.c (find_reloads_address_1): Try to preserve original
	base/index regclass of operands.
	* regrename.c (scan_rtx_address): Likewise.
	(replace_oldest_value_addr): Likewise.

From-SVN: r128183
2007-09-06 13:51:21 +00:00
David Edelsohn
200809cbbf libgfortran.h: Include config.h first.
* libgfortran.h: Include config.h first.
        * io/io.h (struct stream): Rename truncate to trunc.
        * io/unix.c (fd_open): Same.
        (open_internal): Same.

From-SVN: r128182
2007-09-06 08:40:50 -04:00
Uros Bizjak
71d3c6e7e4 sse3-addsubpd.c: Add -mfpmath=sse to dg-options.
* gcc.target/i386/sse3-addsubpd.c: Add -mfpmath=sse to dg-options.
	* gcc.target/i386/sse3-addsubps.c: Ditto.
	* gcc.target/i386/sse3-haddpd.c: Ditto.
	* gcc.target/i386/sse3-haddps.c: Ditto.
	* gcc.target/i386/sse3-hsubpd.c: Ditto.
	* gcc.target/i386/sse3-hsubps.c: Ditto.
	* gcc.target/i386/sse3-lddqu.c: Ditto.
	* gcc.target/i386/sse3-movddup.c: Ditto.
	* gcc.target/i386/sse3-movshdup.c: Ditto.
	* gcc.target/i386/sse3-movsldup.c: Ditto.

From-SVN: r128181
2007-09-06 13:39:49 +02:00
Richard Guenther
515f36ebd9 re PR tree-optimization/33302 (dead-store not eliminated)
2007-09-06  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/33302
	* tree-ssa-dse.c (tree_ssa_dse): Connect infinite loops
	to the exit block before doing the post-dominator walk.
	* domwalk.c (walk_dominator_tree): The exit block is
	interesting even if it is not reachable.

	* gcc.dg/tree-ssa/ssa-dse-11.c: New testcase.

From-SVN: r128180
2007-09-06 09:05:58 +00:00
Richard Sandiford
47de45c6fc re PR bootstrap/33306 (Bootstrap failure on alpha: ICE in convert_move, at expr.c:369)
gcc/
	PR middle-end/33306
	* optabs.c (avoid_expensive_constant): Do nothing if MODE is VOIDmode.

From-SVN: r128179
2007-09-06 08:45:16 +00:00
Basile Starynkevitch
b61ff9c852 reverted configure to rev 128176 - it has been mistakingly commited
From-SVN: r128178
2007-09-06 06:57:56 +00:00
Basile Starynkevitch
1a4b763e6b typo
From-SVN: r128177
2007-09-06 06:42:47 +00:00
Basile Starynkevitch
0497c836d0 cfg.c (dump_bb_info, dump_edge_info): Added cfun test for
robustness.

From-SVN: r128176
2007-09-06 06:38:09 +00:00
Ian Lance Taylor
bb0500b075 tree-pretty-print.c (dump_decl_name): Cast LABEL_DECL_UID to int when printing.
* tree-pretty-print.c (dump_decl_name): Cast LABEL_DECL_UID to int
	when printing.
	(dump_generic_node): Likewise.
	* print-rtl.c (print_decl_name): Likewise.
	* print-tree.c (print_node_brief): Likewise.
	(print_node): Likewise.
	* Makefile.in (RTL_BASE_H): Add alias.h.
	(TREE_H): Likewise.

From-SVN: r128175
2007-09-06 05:59:15 +00:00
Jason Merrill
86ef5ebb1e re PR c++/15745 (exception specification incorrectly changes the type of the exception thrown)
PR c++/15745
        * except.c (prepare_eh_type): Use type_decays_to.

From-SVN: r128174
2007-09-05 23:33:46 -04:00
Jerry DeLisle
8c292a7298 re PR libfortran/33225 (Missing last digit in some formatted output (on 32bit targets), per kind write_float)
2007-09-06  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libfortran/33225
	* gfortran.dg./fmt_float.f90: New test.

From-SVN: r128173
2007-09-06 01:32:11 +00:00
Jason Merrill
6f06d231a0 re PR c++/15097 (code generator problem with ::delete and multiple inheritance and virtual deconstructs)
PR c++/15097
        * init.c (build_delete): Use build_headof to get the address of the
        complete object if we aren't using the deleting destructor.
        * rtti.c (build_headof): No longer static.
        * cp-tree.h: Declare it.

From-SVN: r128172
2007-09-05 21:24:59 -04:00
Jerry DeLisle
db44b39f4f re PR libfortran/33253 (namelist: reading back a string with apostrophe)
2007-09-06  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libfortran/33253
	* gfortran.dg/namelist_38.f90: Update test for DELIM= .

From-SVN: r128171
2007-09-06 01:24:17 +00:00
Jerry DeLisle
0be72e3a5e re PR libfortran/33253 (namelist: reading back a string with apostrophe)
2007-09-05  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libfortran/33253
	* io/write.c (nml_write_obj): Set the delimiter correctly before calling
	write_character. (namelist_write): Clean up the code a little and add
	comments to clarify what its doing.

From-SVN: r128170
2007-09-06 01:20:02 +00:00
Jesper Nilsson
221818503d builtin_ctz_v3.c: New testcase.
* gcc.target/cris/builtin_ctz_v3.c: New testcase.
	* gcc.target/cris/builtin_ctz_v8.c: New testcase.

From-SVN: r128168
2007-09-06 00:17:15 +00:00
GCC Administrator
63d7383b96 Daily bump.
From-SVN: r128167
2007-09-06 00:16:59 +00:00
Jesper Nilsson
9ef4a0cd83 cris: longlong.h (count_trailing_zeros): Defined.
* longlong.h [__CRIS_arch_version >= 8] (count_trailing_zeros):
	Defined.
	* config/cris/cris.md (ctzsi2, cris_swap_bits): Implemented.
	* config/cris/cris.h (CTZ_DEFINED_VALUE_AT_ZERO): Defined.

From-SVN: r128165
2007-09-06 00:16:43 +00:00
Jie Zhang
cfb6473a78 config.gcc (tm_file): Add linux.h for bfin*-uclinux*.
* config.gcc (tm_file): Add linux.h for bfin*-uclinux*.
	(tm_defines): Define UCLIBC_DEFAULT to 1.
	(extra_options): Add linux.opt.
	* config/bfin/linux.h (CPLUSPLUS_CPP_SPEC): Don't define.
	(CRT_CALL_STATIC_FUNCTION): Likewise.
	(NO_IMPLICIT_EXTERN_C): Likewise.
	(TARGET_OS_CPP_BUILTINS): Define as LINUX_TARGET_OS_CPP_BUILTINS.
	* config/bfin/elf.h (OBJECT_FORMAT_ELF): Don't define.
	* config/bfin/uclinux.h (CPLUSPLUS_CPP_SPEC): Don't define.
	(ENDFILE_SPEC): Don't define.
	(LIB_SPEC): Likewise.
	(CRT_CALL_STATIC_FUNCTION): Likewise.
	(NO_IMPLICIT_EXTERN_C): Likewise.
	(LINUX_TARGET_OS_CPP_BUILTINS): Likewise.
	(TARGET_OS_CPP_BUILTINS): Define as LINUX_TARGET_OS_CPP_BUILTINS.

From-SVN: r128163
2007-09-06 00:09:05 +00:00
Jan Hubicka
37dc4ed1f0 i386.c (ix86_expand_lround, [...]): Update call of real_2expN.
* i386.c (ix86_expand_lround, ix86_expand_round): Update call of
	real_2expN.

From-SVN: r128162
2007-09-06 00:04:31 +00:00
Jan Hubicka
6b956c95fd opts.c (common_handle_option): Enable inlining functions for -fprofile-generate.
* opts.c (common_handle_option): Enable inlining functions for
	-fprofile-generate.

From-SVN: r128161
2007-09-05 23:38:34 +00:00
Jakub Jelinek
012c4da9f1 re PR c++/33289 (__sprintf_chk etc. not DECL_ANTICIPATED)
PR c++/33289
	* decl.c (builtin_function_1): Set DECL_ANTICIPATED also
	on __*_chk non-__builtin_* decls.

	* g++.dg/eh/builtin4.C: New test.

From-SVN: r128160
2007-09-06 01:27:17 +02:00