Commit Graph

83721 Commits

Author SHA1 Message Date
Francois-Xavier Coudert
187de1ed2b re PR fortran/33529 (Non-litteral CHARACTER kind values matching is wrong)
PR fortran/33529

	* decl.c (match_char_kind): New function.
	(match_char_spec): Use match_char_kind.

	* gfortran.dg/char_type_len_2.f90: Adjust error message.
	* gfortran.dg/char_decl_2.f90: New test.

From-SVN: r129012
2007-10-04 15:08:14 +00:00
Francois-Xavier Coudert
9e8a672069 re PR fortran/33502 (gfortran with .F suffix and -g3 option chokes on preprocessor syntax)
PR fortran/33502
	* scanner.c (gfc_advance_line): Call debug_hooks->end_source_file
	and debug_hooks->start_source_file when appropriate, and set
	dbg_emitted.
	(gfc_define_undef_line): New function.
	(load_file): Don't error out on #define and #undef lines.
	* parse.c (next_statement): Call gfc_define_undef_line.
	(gfc_parse_file): Call debug_hooks->start_source_file and
	debug_hooks->end_source_file for the main source file if
	required.
	* gfortran.h (gfc_linebuf): Add dbg_emitted field.
	(gfc_define_undef_line): New prototype.

From-SVN: r129011
2007-10-04 15:04:09 +00:00
Richard Guenther
7dc83ebc4a re PR middle-end/33641 (perlbmk gets type mismatch in pointer plus expression)
2007-10-04  Richard Guenther  <rguenther@suse.de>

	PR middle-end/33641
	* tree-cfg.c (verify_gimple_expr): Operand one of POINTER_PLUS_EXPR
	does not need to be of INTEGER_TYPE.
	(verify_gimple_2): New function split out from ...
	(verify_gimple_1): ... here.  ICE if there was an error during
	verification.

	* gcc.c-torture/compile/pr33641.c: New testcase.

From-SVN: r129010
2007-10-04 14:35:32 +00:00
H.J. Lu
fa33a305e2 Mention PR fortran/33646 in revision 129000.
From-SVN: r129008
2007-10-04 06:42:48 -07:00
Michael Matz
b88e26b0f9 re PR rtl-optimization/33653 (volatile memory access optimized away)
PR rtl-optimization/33653
        * gcc.dg/pr33653.c: New.

From-SVN: r129007
2007-10-04 13:35:06 +00:00
Michael Matz
0a64eecaf4 re PR rtl-optimization/33653 (volatile memory access optimized away)
PR rtl-optimization/33653
        * dce.c (deletable_insn_p_1): Use volatile_refs_p().
        * dse.c (scan_insn): Same.

From-SVN: r129006
2007-10-04 13:34:09 +00:00
Kazu Hirata
cf909b0d8c * config.gcc: Remove USE_GAS for m68k targets.
From-SVN: r129005
2007-10-04 12:59:49 +00:00
Richard Guenther
dc5752338b re PR tree-optimization/33627 (ICE in verify_stmts compiling abiword)
2007-10-04  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/33627
	* tree-gimple.h (canonicalize_cond_expr_cond): Declare.
	* tree-gimple.c (canonicalize_cond_expr_cond): New function,
	split out from ...
	* tree-ssa-forwprop.c (combine_cond_expr_cond): ... here.
	* tree-ssa-ifcombine.c (ifcombine_iforif): Use it.

	* g++.dg/torture/pr33627.C: New testcase.

From-SVN: r129004
2007-10-04 09:37:04 +00:00
Jason Merrill
65567efaa8 re PR c++/32470 (fvisibility=hidden without effect in some cases)
PR c++/32470
        * name-lookup.c (push_namespace_with_attrs): Fold back into...
        (push_namespace): Here.
        (handle_namespace_attrs): New fn for the attr code.
        (leave_scope): Don't pop_visibility.
        * name-lookup.h (struct cp_binding_level): Remove has_visibility.
        * parser.c (cp_parser_namespace_definition): Call
        handle_namespace_attrs and pop_visibility as appropriate.

From-SVN: r129003
2007-10-04 04:48:23 -04:00
Tobias Schlüter
dcdc83a185 re PR fortran/33626 (Parentheses get wrong kind during matching)
PR fortran/33626
fortran/
* resolve.c (resolve_operator): Always copy the type for
expressions in parentheses.
testsuite/
* gfortran.dg/parens_6.f90: New.

From-SVN: r129002
2007-10-04 09:34:38 +02:00
Anatoly Sokolov
40700892a0 avr.c (commands_in_file, [...]): Remove variables.
* config/avr/avr.c (commands_in_file, commands_in_prologues, 
	commands_in_epilogues): Remove variables.
	(avr_file_start): Remove unneded initializations of commands_in_file,
	commands_in_prologues and commands_in_epilogues variables.
	(avr_file_end): Remove dead code.

From-SVN: r129001
2007-10-04 10:51:38 +04:00
Paul Thomas
ee332da9f7 re PR fortran/33542 (gfortran does not detect ambigious specific names if they are the same as generic names)
2007-10-04  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/33542
	* interface.c (check_interface1): Revert patch of 2007-10-02.
	
2007-10-04  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/33542
	* gfortran.dg/ambiguous_specific_1.f90: Remove.

From-SVN: r129000
2007-10-04 04:45:41 +00:00
Jason Merrill
231d066518 re PR c++/11756 (ICE's when using typeof in template function parameter type declarations)
PR c++/11756
        * mangle.c (write_type) [TYPEOF_TYPE]: Just sorry.

From-SVN: r128999
2007-10-03 21:01:00 -04:00
GCC Administrator
a4510cfbba Daily bump.
From-SVN: r128997
2007-10-04 00:17:15 +00:00
Kazu Hirata
1fae2d8044 m68k.c (m68k_output_movem): Use the MOTOROLA if MOTOROLA is to true.
* config/m68k/m68k.c (m68k_output_movem): Use the MOTOROLA if
	MOTOROLA is to true.

From-SVN: r128994
2007-10-03 23:42:32 +00:00
Francois-Xavier Coudert
f7a13f717a re PR fortran/26682 (gfortran fails with -fwhole-program optimization)
PR fortran/26682
	* trans-decl.c (build_function_decl): Set "externally_visible"
	attribute on the MAIN program decl.

From-SVN: r128993
2007-10-03 21:27:39 +00:00
Alexandre Oliva
fea10e3647 decl.c (duplicate_decls): Preserve linkage flags for mere redeclarations of gnu_inline definitions.
2007-10-01  Alexandre Oliva  <aoliva@redhat.com>

	* decl.c (duplicate_decls): Preserve linkage flags for mere
	redeclarations of gnu_inline definitions.

	* g++.dg/ext/gnu-inline-global-redecl.C: New.

From-SVN: r128992
2007-10-03 21:38:01 +02:00
Richard Sandiford
0064fbe9b6 re PR target/33635 (Bootstrap broken on mips-sgi-irix6.5)
gcc/
	PR target/33635
	* config/mips/mips-protos.h (mips_split_64bit_move): Rename to...
	(mips_split_doubleword_move): ...this.
	* config/mips/mips.c (mips_subword): Extend to handle 64-bit words;
	use natural endianness for multi-format FPR values.
	(mips_split_64bit_move): Rename to...
	(mips_split_doubleword_move): ...this and extend to 64-bit words.
	Use move_doubleword_fpr* patterns for moves involving FPRs.
	(mips_save_reg): Update the call to mips_split_64bit_move.
	(mips_secondary_reload_class): Return NO_REGS for any reload of a
	nonzero constant into an FPR if the constant can be forced to memory.
	* config/mips/mips.md: Update the splitter calls to
	mips_split_64bit_move.
	(UNSPEC_LOAD_DF_LOW): Rename to...
	(UNSPEC_LOAD_LOW): ...this.
	(UNSPEC_LOAD_DF_HIGH): Rename to...
	(UNSPEC_LOAD_HIGH): ...this.
	(UNSPEC_STORE_DF_HIGH): Rename to...
	(UNSPEC_STORE_WORD): ...this.
	(SPLITF): New mode iterator.
	(HALFMODE): New mode attribute.
	(movtf): New expander.
	(*movtf_internal): New define_insn_and_split.
	(move_doubleword_fpr<mode>): New expander.
	(load_df_low, load_df_high, store_df_high, mthc1, mfhc1): Replace
	with...
	(load_low<mode>, load_high<mode>, store_word<mode>, mthc1<mode>)
	(mfhc1<mode>): ...these more general patterns.

gcc/testsuite/
	PR target/33635
	* gcc.target/mips/mips.exp (setup_mips_tests): Set mips_isa_rev
	and mips_forced_be.
	(dg-mips-options): Handle -EL and -mel.  Make -mfp64 imply
	-mhard-float and a suitable ISA.  Improve handling of -mipsXrY
	options.
	* gcc.target/mips/fpr-moves-1.c: New test.
	* gcc.target/mips/fpr-moves-2.c: Likewise.
	* gcc.target/mips/fpr-moves-3.c: Likewise.
	* gcc.target/mips/fpr-moves-4.c: Likewise.
	* gcc.target/mips/fpr-moves-5.c: Likewise.
	* gcc.target/mips/fpr-moves-6.c: Likewise.
	* gcc.target/mips/mips32r2-mxhc1.c: Remove -march=mips32r2

From-SVN: r128991
2007-10-03 18:39:30 +00:00
Chris Jefferson
f5783e34f9 moveable.cc: New.
2007-10-03  Chris Jefferson  <chris@bubblescope.net>
	    Benjamin Kosnik  <bkoz@redhat.com>

	* testsuite/20_util/pair/moveable.cc: New. Merge from 
	libstdcxx_so_7-branch.
	* testsuite/23_containers/deque/capacity/moveable.cc: Same.
	* testsuite/23_containers/deque/cons/moveable.cc: Same.
	* testsuite/23_containers/deque/modifiers/moveable.cc: Same.
	* testsuite/23_containers/deque/moveable.cc: Same.
	* testsuite/23_containers/list/moveable.cc: Same.
	* testsuite/23_containers/map/moveable.cc: Same.
	* testsuite/23_containers/multimap/moveable.cc: Same.
	* testsuite/23_containers/multiset/moveable.cc: Same.
	* testsuite/23_containers/set/moveable.cc: Same.
	* testsuite/23_containers/vector/cons/moveable.cc: Same.
	* testsuite/23_containers/vector/modifiers/moveable.cc: Same.
	* testsuite/23_containers/vector/moveable.cc: Same.
	* testsuite/23_containers/vector/resize/moveable.cc: Same.
	* testsuite/25_algorithms/heap/moveable.cc: Same.
	* testsuite/25_algorithms/nth_element/moveable.cc: Same.
	* testsuite/25_algorithms/partial_sort/moveable.cc: Same.
	* testsuite/25_algorithms/partition/moveable.cc: Same.
	* testsuite/25_algorithms/remove_if/moveable.cc: Same.
	* testsuite/25_algorithms/remove/moveable.cc: Same.
	* testsuite/25_algorithms/reverse/moveable.cc: Same.
	* testsuite/25_algorithms/rotate/moveable.cc: Same.
	* testsuite/25_algorithms/sort/moveable.cc: Same.
	* testsuite/25_algorithms/swap_ranges/moveable.cc: Same.
	* testsuite/25_algorithms/unique/moveable.cc: Same.
	* testsuite/util/testsuite_rvalref.h: New.

	* testsuite/25_algorithms/equal/equal.cc: Move to...
	* testsuite/25_algorithms/equal/no_operator_ne.cc: ...this.
	* testsuite/25_algorithms/heap/heap.cc: Move to...
	* testsuite/25_algorithms/heap/1.cc: ...this.
	* testsuite/25_algorithms/lower_bound/lower_bound.cc: Move to...
	* testsuite/25_algorithms/lower_bound/no_operator_ne.cc: ...this.
	* testsuite/25_algorithms/partition/partition.cc: Move to...
	* testsuite/25_algorithms/partition/1.cc: ...this.
	* testsuite/25_algorithms/stable_partition/1.cc: ... and this.
	
	* testsuite/25_algorithms/search/1.cc: Update from merge.
	* testsuite/25_algorithms/search/check_type.cc: Same.

	* testsuite/lib/dg-options.exp (dg-require-rvalref): New.
	* testsuite/lib/libstdc++.exp (check_v3_target_rvalref): New.
	

Co-Authored-By: Benjamin Kosnik <bkoz@redhat.com>

From-SVN: r128990
2007-10-03 17:27:18 +00:00
Francois-Xavier Coudert
53f8671f97 * gfortran.dg/default_format_1.f90: XFAIL on all darwin targets.
From-SVN: r128989
2007-10-03 17:08:19 +00:00
Alexandre Oliva
92ddef6949 * cfgrtl.c (rtl_block_ends_with_call_p): Skip notes at the end.
From-SVN: r128988
2007-10-03 16:58:25 +00:00
Alexandre Oliva
02a4823b86 gcse.c (hash_scan_set): Insert set in insn before note at the end of basic block.
* gcse.c (hash_scan_set): Insert set in insn before note at
the end of basic block.

From-SVN: r128987
2007-10-03 16:57:21 +00:00
Sebastian Pop
05023ea487 re PR tree-optimization/33576 (segfault in extract_muldiv for cpu2006 benchmark)
2007-10-03  Sebastian Pop  <sebastian.pop@amd.com>

        PR tree-optimization/33576
        * testsuite/gcc.dg/tree-ssa/pr33576.c: New.
        * tree-loop-linear.c (linear_transform_loops): Call remove_iv.
        * lambda.h (lambda_loopnest_to_gcc_loopnest): New parameter.
        (remove_iv): Declared.
        * lambda-code.c (remove_iv): Not static.
        (lambda_loopnest_to_gcc_loopnest): New parameter remove_ivs.
        Don't remove ivs there, save ivs in the buffer.

From-SVN: r128986
2007-10-03 15:45:10 +00:00
Kazu Hirata
9783a0510d * no-executables.m4 (GCC_TRY_COMPILE_OR_LINK): New function.
From-SVN: r128985
2007-10-03 15:27:46 +00:00
Tobias Schlüter
04ab6fe45b Fix date on ChangeLog entry.
From-SVN: r128984
2007-10-03 17:00:49 +02:00
François-Xavier Coudert
44a9c79566 default_format_1.f90: XFAIL on ppc-darwin.
* gfortran.dg/default_format_1.f90: XFAIL on ppc-darwin.
	* gfortran.dg/default_format_2.f90: XFAIL on ppc-darwin.

From-SVN: r128983
2007-10-03 14:57:39 +00:00
Richard Sandiford
b6f914f633 no-executables.m4 (GCC_TRY_COMPILE_OR_LINK): New function.
config/
	* no-executables.m4 (GCC_TRY_COMPILE_OR_LINK): New function.
	libstdc++-v3/

libstdc++/
	* acinclude.m4 (GLIBCXX_ENABLE_C99): Temporarily add
	-fno-exceptions to CXXFLAGS.  Use GCC_TRY_COMPILE_OR_LINK.
	Make the tests assign results to volatile variables.  Use -lm
	for link tests in GCC_TRY_COMPILE_OR_LINK.  Fall back to
	compile-only tests if -lm is not available.
	* configure: Regenerate.

From-SVN: r128982
2007-10-03 14:16:57 +00:00
Andrew Haley
6d2c26dec4 re PR java/33639 (gcj generates assembler errors)
2007-10-03  Andrew Haley  <aph@redhat.com>

        PR java/33639
        * class.c (mangled_classname): Detect and replace illegal
        characters in assembly language symbols.
        (gen_indirect_dispatch_tables): Call mangled_classname() on
        the type.

From-SVN: r128981
2007-10-03 12:59:57 +00:00
Tobias Schlüter
448d2cd2f7 re PR fortran/33198 (Derived type in common: Default initializer not rejected)
PR fortran/33198
fortran/
* resolve.c (has_default_initializer): Move to top.  Make bool.
(resolve_common_blocks): Simplify logic.  Add case for derived
type initialization.
(resolve_fl_variable_derived): Split out from ...
(resolve_fl_variable): ... from here, while adapting to new h_d_i
interface.
testsuite/
* gfortran.dg/common_errors_1.f90: New.

From-SVN: r128980
2007-10-03 13:37:44 +02:00
Jason Merrill
a24549d472 re PR c++/15764 (no cleanup if temporary's dtor terminates with an exception)
PR c++/15764
        * cp/decl.c (wrap_cleanups_r): New fn.
        (wrap_temporary_cleanups): New fn.
        (initialize_local_var): Call it.
        * tree-eh.c (same_handler_p): New fn.
        (optimize_double_finally): New fn.
        (refactor_eh_r): New fn.
        (refactor_eh): New fn.
        (pass_refactor_eh): New pass.
        * tree-pass.h: Declare it.
        * passes.c (init_optimization_passes): Add it.

From-SVN: r128979
2007-10-03 06:43:42 -04:00
Doug Kwan
7a3c4b3ef3 re PR debug/31899 (-g and using declaration causing ICE in reference_to_unused)
2007-10-03  Doug Kwan  <dougkwan@google.com>
	Richard Guenther  <rguenther@suse.de>

	PR debug/31899
	* dwarf2out.c (reference_to_unused): Disable sanity checking,
	be conservative instead.

	* g++.dg/debug/using3.C: New testcase.

Co-Authored-By: Richard Guenther <rguenther@suse.de>

From-SVN: r128978
2007-10-03 10:01:43 +00:00
Francois-Xavier Coudert
05dddae134 re PR fortran/26682 (gfortran fails with -fwhole-program optimization)
PR fortran/26682

	* options.c (gfc_post_options): Issue an error when
	-fwhole-program is used.

	* doc/invoke.texi (-fwhole-program): Document that Fortran
	doesn't support this option.

From-SVN: r128977
2007-10-03 09:46:46 +00:00
Kenneth Zadeck
ed1345e8a3 revert accidential change in revision 128957.
From-SVN: r128976
2007-10-03 01:31:47 +00:00
Jerry DeLisle
855ea443d8 re PR libfortran/33253 (namelist: reading back a string with apostrophe)
2007-10-03  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libfortran/33253
	* gfortran.dg/namelist_38.f90: New test.
	* gfortran.dg/namelist_39.f90: New test.

From-SVN: r128975
2007-10-03 00:39:58 +00:00
Paolo Carlini
f5ad31630d re PR libstdc++/33613 (compilation inconsistency upper_bound vs lower_bound with -D_GLIBCXX_DEBUG)
2007-10-03  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/33613
	* include/debug/functions.h (__check_partitioned): Rename to...
	(__check_partioned_lower): ... this.
	(__check_partioned_upper): Add.
	* include/debug/macros.h (__glibcxx_check_partitioned): Rename to...
	(__glibcxx_check_partitioned_lower): ... this, adjust.
	(__glibcxx_check_partitioned_upper): Add.
	* include/debug/debug.h (__glibcxx_requires_partitioned): Rename to...
	(__glibcxx_requires_partitioned_lower): ... this, adjust.
	(__glibcxx_requires_partitioned_upper): Add.
	* include/bits/stl_algo.h (lower_bound, upper_bound, equal_range,
	binary search): Use the above.
	* testsuite/25_algorithms/lower_bound/33613.cc: New.
	* testsuite/25_algorithms/upper_bound/33613.cc: Likewise.

From-SVN: r128974
2007-10-03 00:34:40 +00:00
Jerry DeLisle
af2778d32e re PR libfortran/33253 (namelist: reading back a string with apostrophe)
2007-10-02  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libfortran/33253
	* io/list_read.c (read_character): Use DELIM_APOSTROPHE and DELIM_QUOTE
        and quote value in check of first character in string.

From-SVN: r128973
2007-10-03 00:33:09 +00:00
Kazu Hirata
9e4e09166b revert: no-executables.m4 (GCC_TRY_COMPILE_OR_LINK): New function.
config/
	Revert:
	2007-10-02  Richard Sandiford  <richard@codesourcery.com>
	* no-executables.m4 (GCC_TRY_COMPILE_OR_LINK): New function.

libstdc++/
	Revert:
	2007-10-02  Richard Sandiford  <richard@codesourcery.com>
	* acinclude.m4 (GLIBCXX_ENABLE_C99): Temporarily add
	-fno-exceptions to CXXFLAGS.  Use GCC_TRY_COMPILE_OR_LINK.
	Make the tests assign results to volatile variables.
	* configure: Regenerate.

From-SVN: r128972
2007-10-03 00:25:22 +00:00
GCC Administrator
cfdf678473 Daily bump.
From-SVN: r128970
2007-10-03 00:17:08 +00:00
Francois-Xavier Coudert
e900e0ca88 re PR libfortran/33469 (Default formats for real input are not precise enough)
PR libfortran/33469

	* io/write.c (write_real): Widen the default formats.

	* gfortran.dg/default_format_1.f90: New test.
	* gfortran.dg/default_format_2.f90: New test.
	* gfortran.dg/namelist_print_1.f: Adjust expected output.
	* gfortran.dg/real_const_3.f90: Adjust expected output.

From-SVN: r128967
2007-10-02 23:27:51 +00:00
Richard Sandiford
729fd517d9 mips.exp (setup_mips_tests): Set mips_abi to the default ABI.
gcc/testsuite/
	* gcc.target/mips/mips.exp (setup_mips_tests): Set mips_abi to the
	default ABI.  Split mips_forced_abi into mips_forced_abi and
	mips_forced_regs.
	(is_gp32_flag): Return true for -mabi=32.
	(is_gp64_flag): New function.  Handle 64-bit -mabi options.
	(dg-mips-options): Use is_gp64_flag instead of checking specifically
	for -mgp64.  Update after the mips_forced_abi split.  Handle -mabi=*.
	Don't force an ABI for -mgp32 or -mfp32 if the flags contain -mabi=*.
	* gcc.target/mips/pr33256.c: Remove -mips3 requirement.
	* gcc.target/mips/save-restore-1.c: Use -mabi=32 instead of -mgp32.
	* gcc.target/mips/save-restore-2.c: Likewise.
	* gcc.target/mips/save-restore-3.c: Likewise.
	* gcc.target/mips/save-restore-4.c: Likewise.

From-SVN: r128966
2007-10-02 20:56:47 +00:00
Richard Sandiford
16089886c2 re PR middle-end/33617 (ICE for nonconstant callee-copied constructor arguments)
gcc/
	PR middle-end/33617
	* expr.c (expand_expr_addr_expr_1): Pass CONSTRUCTORs to
	expand_expr.

gcc/testsuite/
	PR middle-end/33617
	* gcc.c-torture/compile/pr33617.c: New test.

From-SVN: r128965
2007-10-02 20:50:46 +00:00
David Daney
966b774d3e mips.md (sync_compare_and_swap<mode>): Handle compare against constant zero.
* config/mips/mips.md (sync_compare_and_swap<mode>): Handle compare
	against constant zero.
	* config/mips/mips.h (MIPS_COMPARE_AND_SWAP):  Handle constant zero
	operand.

From-SVN: r128963
2007-10-02 20:15:34 +00:00
Andreas Tobler
53c666346b stabs-attrib-vect-darwin.c: Change options to use -gstabs+ for extended options.
2007-10-02  Andreas Tobler  <a.tobler@schweiz.org>

	* gcc.target/powerpc/stabs-attrib-vect-darwin.c: Change options to use
	-gstabs+ for extended options.

From-SVN: r128962
2007-10-02 21:56:50 +02:00
Richard Sandiford
b32265748a no-executables.m4 (GCC_TRY_COMPILE_OR_LINK): New function.
config/
	* no-executables.m4 (GCC_TRY_COMPILE_OR_LINK): New function.

libstdc++/
	* acinclude.m4 (GLIBCXX_ENABLE_C99): Temporarily add
	-fno-exceptions to CXXFLAGS.  Use GCC_TRY_COMPILE_OR_LINK.
	Make the tests assign results to volatile variables.
	* configure: Regenerate.

From-SVN: r128959
2007-10-02 17:25:18 +00:00
Benjamin Kosnik
506f93badb 2.cc: Split into...
2007-10-02  Benjamin Kosnik  <bkoz@redhat.com>

	* testsuite/25_algorithms/binary_search/2.cc: Split into...
	* testsuite/25_algorithms/upper_bound/2.cc: ... this.
	* testsuite/25_algorithms/lower_bound/2.cc: ... this.
	* testsuite/25_algorithms/equal_range/2.cc: ... and this.
	* testsuite/25_algorithms/sort/vectorbool.cc: Add from
	libstdcxx_so_7-branch.

From-SVN: r128958
2007-10-02 16:07:01 +00:00
Kenneth Zadeck
ba49cb7bff ra-conflict.c: New file.
2007-09-02  Kenneth Zadeck <zadeck@naturalbridge.com>

	* ra-conflict.c: New file.
	* ra.h: New file.
	* reload.c (push_reload, find_dummy_reload): Change DF_RA_LIVE
	usage to DF_LIVE usage.
	* rtlanal.c (subreg_nregs_with_regno): New function.  
	* df-scan.c (df_def_record_1, df_uses_record): Add code to set
	DF_REF_EXTRACT, DF_REF_STRICT_LOWER_PART, and DF_REF_SUBREG flags.
	(df_has_eh_preds): Removed.
	(df_bb_refs_collect, df_bb_refs_collect, df_bb_refs_collect,
	df_exit_block_uses_collect): Changed call from df_has_eh_preds to
	bb_has_eh_pred.
	* global.c (allocno, max_allocno, conflicts, allocno_row_words,
	reg_allocno, EXECUTE_IF_SET_IN_ALLOCNO_SET): Moved to ra.h
	(SET_ALLOCNO_LIVE, CLEAR_ALLOCNO_LIVE): Moved to ra-conflicts.c.
	(regs_set, record_one_conflict, record_conflicts, mark_reg_store,
	mark_reg_clobber, mark_reg_conflicts, mark_reg_death): Deleted.
	(global_alloc): Turn off rescanning insns after call to
	global_conflicts and added call to set_preferences.
	(global_conflicts): Moved to ra-alloc.c.
	(set_preferences_1, set_preferences): New function.
	(mirror_conflicts): Changed types for various variables.
	(mark_elimination): Change DF_RA_LIVE
	usage to DF_LIVE usage.
	(build_insn_chain): Rewritten from scratch and made local.
	(print_insn_chain, print_insn_chains): New functions.
	(dump_conflicts): Do not print conflicts for fixed_regs.
	(rest_of_handle_global_alloc): Turn off insn rescanning.
	* hard-reg-set.h: Fixed comment.
	* local-alloc.c (update_equiv_regs): Change DF_RA_LIVE
	usage to DF_LIVE usage and delete refs to TOP sets.
	(block_alloc): Mark regs as live if they are in the artificial
	defs at top of block.
	(find_stack_regs): New function.
	(rest_of_handle_local_alloc): Changed urec problem to live
	problem and do not turn off df rescanning.
	* df.h (DF_UREC, DF_UREC_BB_INFO, DF_LIVE_TOP, DF_RA_LIVE_IN,
	DF_RA_LIVE_TOP, DF_RA_LIVE_OUT, df_urec_bb_info, df_urec,
	df_urec_add_problem, df_urec_get_bb_info, df_has_eh_preds): Removed.
	(DF_CHAIN, DF_NOTE, DF_CHAIN): Renumbered.
	(DF_REF_EXTRACT, DF_REF_STRICT_LOWER_PART, DF_REF_SUBREG): New
	fields in df_ref_flags.  The rest have been renumbered.  
	* init-regs.c (initialize_uninitialized_regs): Enhanced debugging
	at -O1.
	* rtl.h (subreg_nregs_with_regno): New function.
	* df-problems.c: (df_get_live_out, df_get_live_in,
	df_get_live_top): Removed reference to DF_RA_LIVE.
	(df_lr_reset, df_lr_transfer_function, df_live_free_bb_info,
	df_live_alloc, df_live_reset, df_live_local_finalize,
	df_live_free): Make top set only if different from in set.
	(df_lr_top_dump, df_live_top_dump): Only print top set if
	different from in set.
	(df_lr_bb_local_compute): Removed unnecessary check.
	(df_urec_problem_data, df_urec_set_bb_info, df_urec_free_bb_info, 
	df_urec_alloc, df_urec_mark_reg_change, earlyclobber_regclass, 
	df_urec_check_earlyclobber, df_urec_mark_reg_use_for_earlyclobber,
	df_urec_mark_reg_use_for_earlyclobber_1, df_urec_bb_local_compute,
	df_urec_local_compute, df_urec_init, df_urec_local_finalize, 
	df_urec_confluence_n, df_urec_transfer_function, df_urec_free, 
	df_urec_top_dump, df_urec_bottom_dump, problem_UREC,
	df_urec_add_problem): Removed.
	(df_simulate_fixup_sets): Changed call from df_has_eh_preds to
	bb_has_eh_pred. 
	* Makefile.in (ra-conflict.o, ra.h): New dependencies.
	* basic_block.h (bb_has_abnormal_pred): New function.
	* reload1.c (compute_use_by_pseudos): Change DF_RA_LIVE
	usage to DF_LIVE usage.

From-SVN: r128957
2007-10-02 13:10:07 +00:00
Revital Eres
746025f4bc Fix committed Changelog
From-SVN: r128956
2007-10-02 12:47:13 +00:00
Paul Thomas
dcd3d96354 re PR fortran/33542 (gfortran does not detect ambigious specific names if they are the same as generic names)
2007-10-02  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/33542
	* interface.c (check_interface1): Specific procedures are
	always ambiguous if they have the same name.

2007-10-02  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/33542
	* gfortran.dg/ambiguous_specific_1.f90: New test.

From-SVN: r128954
2007-10-02 11:45:11 +00:00
Revital Eres
f502740976 Add vec_init support for 750CL paired vectors and fix movv2sf_paired
From-SVN: r128952
2007-10-02 09:22:17 +00:00
Paul Thomas
927171bfea re PR fortran/33566 (fortran : wrong rank of derived type parameters array components)
2007-10-02  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/33566
	* primary.c (gfc_match_rvalue): Make all expressions with array
	references to structure parameters into variable expressions.

2007-10-02  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/33566
	* gfortran.dg/derived_comp_array_ref_5.f90: New test.

From-SVN: r128951
2007-10-02 08:12:11 +00:00