hp [Fri, 5 Oct 2007 22:02:19 +0000 (22:02 +0000)]
* gthr-single.h: Revert last change.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@129040
138bc75d-0d04-0410-961f-
82ee72b054a4
matz [Fri, 5 Oct 2007 17:56:52 +0000 (17:56 +0000)]
gcc/
PR middle-end/33667
* lower-subreg.c (decompose_multiword_subregs): Use
validate_unshare_change().
testsuite/
* gcc.dg/pr33667.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@129038
138bc75d-0d04-0410-961f-
82ee72b054a4
bergner [Fri, 5 Oct 2007 17:55:18 +0000 (17:55 +0000)]
* ra-conflict.c: Include "sparseset.h".
(conflicts): Change to HOST_WIDEST_FAST_INT.
(allocnos_live): Redefine variable as a sparseset.
(SET_ALLOCNO_LIVE, CLEAR_ALLOCNO_LIVE, GET_ALLOCNO_LIVE): Delete macros.
(allocno_row_words): Removed global variable.
(partial_bitnum, max_bitnum, adjacency_pool, adjacency): New variables.
(CONFLICT_BITNUM, CONFLICT_BITNUM_FAST): New defines.
(conflict_p, set_conflict_p, set_conflicts_p): New functions.
(record_one_conflict_between_regnos): Cache allocno values and reuse.
Use set_conflict_p.
(record_one_conflict): Update uses of allocnos_live to use
the sparseset routines. Use set_conflicts_p.
(mark_reg_store): Likewise.
(set_reg_in_live): Likewise.
(global_conflicts): Update uses of allocnos_live.
Use the new adjacency list to visit an allocno's neighbors
rather than iterating over all possible allocnos.
Call set_conflicts_p to setup conflicts rather than adding
them manually.
* global.c: Comments updated.
(CONFLICTP): Delete define.
(regno_compare): New function. Add prototype.
(global_alloc): Sort the allocno to regno mapping according to
which basic blocks the regnos are referenced in. Modify the
conflict bit matrix to a compressed triangular bitmatrix.
Only allocate the conflict bit matrix and adjacency lists if
we are actually going to allocate something.
(expand_preferences): Use conflict_p. Update uses of allocnos_live.
(prune_preferences): Use the FOR_EACH_CONFLICT macro to visit an
allocno's neighbors rather than iterating over all possible allocnos.
(mirror_conflicts): Removed function.
(dump_conflicts): Iterate over regnos rather than allocnos so
that all dump output will be sorted by regno number.
Use the FOR_EACH_CONFLICT macro.
* ra.h: Comments updated.
(conflicts): Update prototype to HOST_WIDEST_FAST_INT.
(partial_bitnum, max_bitnum, adjacency, adjacency_pool): Add prototypes.
(ADJACENCY_VEC_LENGTH, FOR_EACH_CONFLICT): New defines.
(adjacency_list_d, adjacency_iterator_d): New types.
(add_neighbor, adjacency_iter_init, adjacency_iter_done,
adjacency_iter_next, regno_basic_block): New static inline functions.
(EXECUTE_IF_SET_IN_ALLOCNO_SET): Removed define.
(conflict_p): Add function prototype.
* sparseset.h, sparseset.c: New files.
* Makefile.in (OBJS-common): Add sparseset.o.
(sparseset.o): New rule.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@129037
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Fri, 5 Oct 2007 16:33:25 +0000 (16:33 +0000)]
2007-10-05 Richard Guenther <rguenther@suse.de>
PR middle-end/33666
* fold-const.c (fold_unary): Do not fold (long long)(int)ptr
to (long long)ptr.
* gcc.dg/pr33666.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@129036
138bc75d-0d04-0410-961f-
82ee72b054a4
matz [Fri, 5 Oct 2007 15:36:16 +0000 (15:36 +0000)]
gcc/
PR inline-asm/33600
* function.c (match_asm_constraints_1): Check for input
being used in the outputs.
testsuite/
* gcc.target/i386/pr33600.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@129035
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Fri, 5 Oct 2007 12:33:07 +0000 (12:33 +0000)]
* gfortran.h (gfc_get_data_variable, gfc_get_data_value,
gfc_get_data): Move to decl.c.
(global_used): Rename into gfc_global_used.
(gfc_formalize_init_value, gfc_get_section_index,
gfc_assign_data_value, gfc_assign_data_value_range,
gfc_advance_section): Move to data.h.
(gfc_set_in_match_data): Remove.
* decl.c (gfc_get_data_variable, gfc_get_data_value,
gfc_get_data): Move here.
(gfc_set_in_match_data): Rename into set_in_match_data.
(gfc_match_data): Likewise.
(add_global_entry): Rename global_used into gfc_global_used.
* data.c: Include data.h.
* trans.h (gfc_todo_error): Remove.
* trans-array.c (gfc_trans_array_constructor,
gfc_conv_ss_startstride, gfc_conv_loop_setup): Change
gfc_todo_error into assertions.
* resolve.c (resolve_global_procedure): Rename global_used into
gfc_global_used.
* parse.c (gfc_global_used, parse_module, add_global_procedure,
add_global_program): Likewise.
* trans-intrinsic.c (gfc_walk_intrinsic_function): Rename
global_used into gfc_global_used.
* Make-lang.in: Add dependencies on fortran/data.h.
* data.h: New file.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@129034
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Fri, 5 Oct 2007 12:20:18 +0000 (12:20 +0000)]
2007-10-05 Richard Guenther <rguenther@suse.de>
* tree-cfg.c (verify_gimple_expr): Accept OBJ_TYPE_REF.
* g++.dg/tree-ssa/obj-type-ref.C: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@129033
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Fri, 5 Oct 2007 08:39:58 +0000 (08:39 +0000)]
Add NOMIPS16 to last commit (will be in gcc-patches@ message).
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@129032
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Fri, 5 Oct 2007 08:34:01 +0000 (08:34 +0000)]
gcc/
PR target/33635
* config/mips/mips.c (mips_register_move_cost): Rewrite to use
subset checks. Make the cost of FPR -> FPR moves depend on
mips_mode_ok_for_mov_fmt_p.
gcc/testsuite/
PR target/33635
* gcc.target/mips/pr33635-1.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@129031
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Fri, 5 Oct 2007 05:35:46 +0000 (05:35 +0000)]
2007-09-13 Doug Kwan <dougkwan@google.com>
* gcc/gthr-posix.h (__gthread_cond_broadcast, __gthread_cond_wait,
__gthread_cond_wait_recursive): Add to extend interface for POSIX
conditional variables. (__GTHREAD_HAS_COND): Macro defined to signify
support of conditional variables.
* gcc/gthr-posix95.h (__gthread_cond_broadcast, __gthread_cond_wait,
__gthread_cond_wait_recursive): Add to extend interface for POSIX
conditional variables. (__GTHREAD_HAS_COND): Macro defined to signify
support of conditional variables.
* gcc/gthr-single.h (__gthread_cond_broadcast, __gthread_cond_wait,
__gthread_cond_wait_recursive): Add to extend interface for POSIX
conditional variables.
* gcc/gthr.h: Update comments to document new interface.
* libstdc++-v3/include/ext/concurrent.h (class __mutex,
class __recursive_mutex): Add new method gthread_mutex to access
inner gthread mutex.
[__GTHREAD_HAS_COND] (class __concurrence_broadcast_error,
class __concurrence_wait_error, class __cond): Add.
* guard.cc (recursive_push, recursive_pop): Delete.
(init_in_progress_flag, set_init_in_progress_flag): Add to
replace recursive_push and recursive_pop.
(throw_recursive_init_exception): Add.
(acquire, __cxa_guard_acquire, __cxa_guard_abort and
__cxa_guard_release): [__GTHREAD_HAS_COND] Use a conditional
for synchronization of static variable initialization.
The global mutex is only held briefly when guards are
accessed. [!__GTHREAD_HAS_COND] Fall back to the old code,
which deadlocks.
* testsuite/thread/guard.cc: Add new test. It deadlocks with the
old locking code in libstdc++-v3/libsup++/guard.cc.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@129030
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Fri, 5 Oct 2007 00:17:11 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@129028
138bc75d-0d04-0410-961f-
82ee72b054a4
geoffk [Thu, 4 Oct 2007 21:24:03 +0000 (21:24 +0000)]
* cgraphunit.c (cgraph_build_static_cdtor): Don't set
DECL_IGNORED_P.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@129024
138bc75d-0d04-0410-961f-
82ee72b054a4
aesok [Thu, 4 Oct 2007 21:18:12 +0000 (21:18 +0000)]
* config/avr/avr.c (expand_epilogue): Don't set RTX_FRAME_RELATED_P.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@129023
138bc75d-0d04-0410-961f-
82ee72b054a4
tkoenig [Thu, 4 Oct 2007 20:26:24 +0000 (20:26 +0000)]
2007-10-04 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/33539
* resolve.c: Only warn if the string length is
less than zero.
2007-10-04 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/33539
* zero_length_2.f90: Omit warning for zero-length string.
* repeat_2.f90: Likewise.
* repeat_4.f90: Likewise.
* char_length_2.f90: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@129022
138bc75d-0d04-0410-961f-
82ee72b054a4
spark [Thu, 4 Oct 2007 18:58:49 +0000 (18:58 +0000)]
2006-10-04 Seongbae Park <seongbae.park@gmail.com>
* MAINTAINERS (Register allocation reviewer): Add myself.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@129021
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Thu, 4 Oct 2007 17:58:07 +0000 (17:58 +0000)]
PR c++/20416
* call.c (initialize_reference): Handle local static reference
temps properly.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@129020
138bc75d-0d04-0410-961f-
82ee72b054a4
jvdelisle [Thu, 4 Oct 2007 16:02:42 +0000 (16:02 +0000)]
2007-10-04 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/33253
* gfortran.dg/namelist_39.f90: Revise to use long names.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@129018
138bc75d-0d04-0410-961f-
82ee72b054a4
jvdelisle [Thu, 4 Oct 2007 15:59:54 +0000 (15:59 +0000)]
Fix ChangeLog.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@129017
138bc75d-0d04-0410-961f-
82ee72b054a4
jvdelisle [Thu, 4 Oct 2007 15:57:28 +0000 (15:57 +0000)]
2007-10-04 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/33253
* io/list_read.c (read_character): Use line_buffer to scan ahead for
object name or string when no delimiter is found.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@129016
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Thu, 4 Oct 2007 15:39:11 +0000 (15:39 +0000)]
2007-10-04 H.J. Lu <hongjiu.lu@intel.com>
PR fortran/33646
* gfortran.dg/pr33646.f90: New file.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@129015
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Thu, 4 Oct 2007 15:18:48 +0000 (15:18 +0000)]
PR libfortran/32021
* runtime/environ.c (init_mem, show_mem, init_round, show_round,
init_precision, show_precision, init_signal, show_signal): Remove.
(variable_table): Remove GFORTRAN_MEM_INIT, GFORTRAN_MEM_CHECK,
GFORTRAN_SIGHUP, GFORTRAN_SIGINT, GFORTRAN_FPU_ROUND and
GFORTRAN_FPU_PRECISION.
* libgfortran.h (options_t): Remove mem_check, fpu_round,
fpu_precision, sighup, sigint, allocate_init_flag and
allocate_init_value.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@129014
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Thu, 4 Oct 2007 15:12:34 +0000 (15:12 +0000)]
2007-10-04 Paolo Carlini <pcarlini@suse.de>
* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
Adjust dg-error line number.
* testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
Likewise.
* testsuite/23_containers/vector/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
Adjust dg-error line number.
* testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
Likewise.
* testsuite/23_containers/deque/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
Adjust dg-error line number.
* testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
Likewise.
* testsuite/23_containers/list/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/
constructor_2_neg.cc: Likewise.
2007-10-04 Chris Jefferson <chris@bubblescope.net>
Paolo Carlini <pcarlini@suse.de>
* include/bits/stl_list.h (list<>::list(list&&),
list<>::operator=(list&&)): Add.
(list<>::swap): Adjust.
(swap(list&&, list& __y), swap(list&, list&& __y)): Add.
* include/bits/stl_vector.h (vector<>::vector(vector&&),
vector<>::operator=(vector&&)): Add.
(vector<>::swap): Adjust.
(swap(vector&&, vector& __y), swap(vector&, vector&& __y)): Add.
* include/bits/stl_bvector.h (vector<>::vector(vector&&),
vector<>::operator=(vector&&)): Add.
(vector<>::swap): Adjust.
* include/bits/stl_deque.h (deque<>::deque(deque&&),
deque<>::operator=(deque&&)): Add.
(deque<>::swap): Adjust.
(swap(deque&&, deque& __y), swap(deque&, deque&& __y)): Add.
* include/bits/stl_set.h (set<>::set(set&&),
set<>::operator=(set&&)): Add.
(set<>::swap): Adjust.
(swap(set&&, set& __y), swap(set&, set&& __y)): Add.
* include/bits/stl_map.h (map<>::map(map&&),
map<>::operator=(map&&)): Add.
(map<>::swap): Adjust.
(swap(map&&, map& __y), swap(map&, map&& __y)): Add.
* include/bits/stl_multiset.h (multiset<>::multiset(multiset&&),
multiset<>::operator=(multiset&&)): Add.
(smultiet<>::swap): Adjust.
(swap(multiset&&, multiset& __y),
swap(multiset&, multiset&& __y)): Add.
* include/bits/stl_multimap.h (multimap<>::multimap(multimap&&),
multimap<>::operator=(multimap&&)): Add.
(multimap<>::swap): Adjust.
(swap(multimap&&, multimap& __y),
swap(multimap&, multimap&& __y)): Add.
2007-10-04 Paolo Carlini <pcarlini@suse.de>
Avoid copying some allocator objects.
* include/bits/stl_list.h (_List_impl::_List_impl(),
_List_base::_List_base(), list<>::list()): Add.
* include/bits/stl_vector.h (_Vector_impl::_Vector_impl(),
_Vector_base::_Vector_base(), vector<>::vector()): Add.
* include/bits/stl_bvector.h (_Bvector_impl::_Bvector_impl(),
_Bvector_base::_Bvector_base(), vector<>::vector()): Add.
* include/bits/stl_deque.h (_Deque_impl::_Deque_impl(),
_Deque_base::_Deque_base(), deque<>::deque()): Add.
* include/bits/stl_tree.h (_Rb_tree_impl<>::_Rb_tree_impl(),
_Rb_tree_impl<>::_M_initialize): Add.
(_Rb_tree<>::_Rb_tree(const _Compare&, const allocator_type&),
_Rb_tree(const _Rb_tree&)): Adjust.
* include/bits/stl_set.h (set<>::set(),
set(_InputIterator, _InputIterator)): Use _M_t default constructor.
* include/bits/stl_map.h (map<>::map(), set(_InputIterator,
_InputIterator)): Use _M_t default constructor.
* include/bits/stl_multiset.h (multiset<>::multiset(),
multiset(_InputIterator, _InputIterator)): Use _M_t default
constructor.
* include/bits/stl_multimap.h (multimap<>::multimap(),
multimap(_InputIterator, _InputIterator)): Use _M_t default
constructor.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@129013
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Thu, 4 Oct 2007 15:08:14 +0000 (15:08 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@129012
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Thu, 4 Oct 2007 15:04:09 +0000 (15:04 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@129011
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Thu, 4 Oct 2007 14:35:32 +0000 (14:35 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@129010
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Thu, 4 Oct 2007 13:42:48 +0000 (13:42 +0000)]
Mention PR fortran/33646 in revision 129000.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@129008
138bc75d-0d04-0410-961f-
82ee72b054a4
matz [Thu, 4 Oct 2007 13:35:06 +0000 (13:35 +0000)]
PR rtl-optimization/33653
* gcc.dg/pr33653.c: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@129007
138bc75d-0d04-0410-961f-
82ee72b054a4
matz [Thu, 4 Oct 2007 13:34:09 +0000 (13:34 +0000)]
PR rtl-optimization/33653
* dce.c (deletable_insn_p_1): Use volatile_refs_p().
* dse.c (scan_insn): Same.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@129006
138bc75d-0d04-0410-961f-
82ee72b054a4
kazu [Thu, 4 Oct 2007 12:59:49 +0000 (12:59 +0000)]
* config.gcc: Remove USE_GAS for m68k targets.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@129005
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Thu, 4 Oct 2007 09:37:04 +0000 (09:37 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@129004
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Thu, 4 Oct 2007 08:48:23 +0000 (08:48 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@129003
138bc75d-0d04-0410-961f-
82ee72b054a4
tobi [Thu, 4 Oct 2007 07:34:38 +0000 (07:34 +0000)]
PR fortran/33626
fortran/
* resolve.c (resolve_operator): Always copy the type for
expressions in parentheses.
testsuite/
* gfortran.dg/parens_6.f90: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@129002
138bc75d-0d04-0410-961f-
82ee72b054a4
aesok [Thu, 4 Oct 2007 06:51:38 +0000 (06:51 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@129001
138bc75d-0d04-0410-961f-
82ee72b054a4
pault [Thu, 4 Oct 2007 04:45:41 +0000 (04:45 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@129000
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Thu, 4 Oct 2007 01:01:00 +0000 (01:01 +0000)]
PR c++/11756
* mangle.c (write_type) [TYPEOF_TYPE]: Just sorry.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128999
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Thu, 4 Oct 2007 00:17:15 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128997
138bc75d-0d04-0410-961f-
82ee72b054a4
kazu [Wed, 3 Oct 2007 23:42:32 +0000 (23:42 +0000)]
* config/m68k/m68k.c (m68k_output_movem): Use the MOTOROLA if
MOTOROLA is to true.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128994
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Wed, 3 Oct 2007 21:27:39 +0000 (21:27 +0000)]
PR fortran/26682
* trans-decl.c (build_function_decl): Set "externally_visible"
attribute on the MAIN program decl.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128993
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Wed, 3 Oct 2007 19:38:01 +0000 (19:38 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128992
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Wed, 3 Oct 2007 18:39:30 +0000 (18:39 +0000)]
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
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128991
138bc75d-0d04-0410-961f-
82ee72b054a4
bkoz [Wed, 3 Oct 2007 17:27:18 +0000 (17:27 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128990
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Wed, 3 Oct 2007 17:08:19 +0000 (17:08 +0000)]
* gfortran.dg/default_format_1.f90: XFAIL on all darwin targets.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128989
138bc75d-0d04-0410-961f-
82ee72b054a4
aoliva [Wed, 3 Oct 2007 16:58:25 +0000 (16:58 +0000)]
* cfgrtl.c (rtl_block_ends_with_call_p): Skip notes at the end.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128988
138bc75d-0d04-0410-961f-
82ee72b054a4
aoliva [Wed, 3 Oct 2007 16:57:21 +0000 (16:57 +0000)]
* gcse.c (hash_scan_set): Insert set in insn before note at
the end of basic block.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128987
138bc75d-0d04-0410-961f-
82ee72b054a4
spop [Wed, 3 Oct 2007 15:45:10 +0000 (15:45 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128986
138bc75d-0d04-0410-961f-
82ee72b054a4
kazu [Wed, 3 Oct 2007 15:27:46 +0000 (15:27 +0000)]
* no-executables.m4 (GCC_TRY_COMPILE_OR_LINK): New function.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128985
138bc75d-0d04-0410-961f-
82ee72b054a4
tobi [Wed, 3 Oct 2007 15:00:49 +0000 (15:00 +0000)]
Fix date on ChangeLog entry.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128984
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Wed, 3 Oct 2007 14:57:39 +0000 (14:57 +0000)]
* gfortran.dg/default_format_1.f90: XFAIL on ppc-darwin.
* gfortran.dg/default_format_2.f90: XFAIL on ppc-darwin.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128983
138bc75d-0d04-0410-961f-
82ee72b054a4
kazu [Wed, 3 Oct 2007 14:16:57 +0000 (14:16 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128982
138bc75d-0d04-0410-961f-
82ee72b054a4
aph [Wed, 3 Oct 2007 12:59:57 +0000 (12:59 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128981
138bc75d-0d04-0410-961f-
82ee72b054a4
tobi [Wed, 3 Oct 2007 11:37:44 +0000 (11:37 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128980
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 3 Oct 2007 10:43:42 +0000 (10:43 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128979
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Wed, 3 Oct 2007 10:01:43 +0000 (10:01 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128978
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Wed, 3 Oct 2007 09:46:46 +0000 (09:46 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128977
138bc75d-0d04-0410-961f-
82ee72b054a4
zadeck [Wed, 3 Oct 2007 01:31:47 +0000 (01:31 +0000)]
revert accidential change in revision 128957.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128976
138bc75d-0d04-0410-961f-
82ee72b054a4
jvdelisle [Wed, 3 Oct 2007 00:39:58 +0000 (00:39 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128975
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Wed, 3 Oct 2007 00:34:40 +0000 (00:34 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128974
138bc75d-0d04-0410-961f-
82ee72b054a4
jvdelisle [Wed, 3 Oct 2007 00:33:09 +0000 (00:33 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128973
138bc75d-0d04-0410-961f-
82ee72b054a4
kazu [Wed, 3 Oct 2007 00:25:22 +0000 (00:25 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128972
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Wed, 3 Oct 2007 00:17:08 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128970
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Tue, 2 Oct 2007 23:27:51 +0000 (23:27 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128967
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Tue, 2 Oct 2007 20:56:47 +0000 (20:56 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128966
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Tue, 2 Oct 2007 20:50:46 +0000 (20:50 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128965
138bc75d-0d04-0410-961f-
82ee72b054a4
daney [Tue, 2 Oct 2007 20:15:34 +0000 (20:15 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128963
138bc75d-0d04-0410-961f-
82ee72b054a4
andreast [Tue, 2 Oct 2007 19:56:50 +0000 (19:56 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128962
138bc75d-0d04-0410-961f-
82ee72b054a4
kazu [Tue, 2 Oct 2007 17:25:18 +0000 (17:25 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128959
138bc75d-0d04-0410-961f-
82ee72b054a4
bkoz [Tue, 2 Oct 2007 16:07:01 +0000 (16:07 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128958
138bc75d-0d04-0410-961f-
82ee72b054a4
zadeck [Tue, 2 Oct 2007 13:10:07 +0000 (13:10 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128957
138bc75d-0d04-0410-961f-
82ee72b054a4
revitale [Tue, 2 Oct 2007 12:47:13 +0000 (12:47 +0000)]
Fix committed Changelog
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128956
138bc75d-0d04-0410-961f-
82ee72b054a4
pault [Tue, 2 Oct 2007 11:45:11 +0000 (11:45 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128954
138bc75d-0d04-0410-961f-
82ee72b054a4
revitale [Tue, 2 Oct 2007 09:22:17 +0000 (09:22 +0000)]
Add vec_init support for 750CL paired vectors and fix movv2sf_paired
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128952
138bc75d-0d04-0410-961f-
82ee72b054a4
pault [Tue, 2 Oct 2007 08:12:11 +0000 (08:12 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128951
138bc75d-0d04-0410-961f-
82ee72b054a4
pault [Tue, 2 Oct 2007 08:03:07 +0000 (08:03 +0000)]
2007-10-02 Paul Thomas <pault@gcc.gnu.org>
PR fortran/33554
* trans-decl.c (init_intent_out_dt): New function.
(gfc_trans_deferred_vars): Remove the code for default
initialization of INTENT(OUT) derived types and put it
in the new function. Call it earlier than before, so
that array offsets and lower bounds are available.
2007-10-02 Paul Thomas <pault@gcc.gnu.org>
PR fortran/33554
* gfortran.dg/intent_out_2.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128950
138bc75d-0d04-0410-961f-
82ee72b054a4
pault [Tue, 2 Oct 2007 07:53:05 +0000 (07:53 +0000)]
2007-10-02 Paul Thomas <pault@gcc.gnu.org>
PR fortran/33550
* decl.c (get_proc_name): Return rc if rc is non-zero; ie. if
the name is a reference to an ambiguous symbol.
2007-10-02 Paul Thomas <pault@gcc.gnu.org>
PR fortran/33550
* gfortran.dg/ambiguous_reference_1.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128949
138bc75d-0d04-0410-961f-
82ee72b054a4
pault [Tue, 2 Oct 2007 07:17:01 +0000 (07:17 +0000)]
2007-10-02 Paul Thomas <pault@gcc.gnu.org>
PR fortran/31154
PR fortran/31229
PR fortran/33334
* decl.c : Declare gfc_function_kind_locs and
gfc_function_type_locus.
(gfc_match_kind_spec): Add second argument kind_expr_only.
Store locus before trying to match the expression. If the
current state corresponds to a function declaration and there
is no match to the expression, read to the parenthesis, return
kind = -1, dump the expression and return.
(gfc_match_type_spec): Renamed from match_type_spec and all
references changed. If an interface or an external function,
store the locus, set kind = -1 and return. Otherwise, if kind
is already = -1, use gfc_find_symbol to try to find a use
associated or imported type.
match.h : Prototype for gfc_match_type_spec.
* parse.c (match_deferred_characteristics): New function.
(parse_spec): If in a function, statement is USE or IMPORT
or DERIVED_DECL and the function kind=-1, call
match_deferred_characteristics. If kind=-1 at the end of the
specification expressions, this is an error.
* parse.h : Declare external gfc_function_kind_locs and
gfc_function_type_locus.
2007-10-02 Paul Thomas <pault@gcc.gnu.org>
PR fortran/31154
PR fortran/31229
PR fortran/33334
* gfortran.dg/function_kinds_1.f90: New test.
* gfortran.dg/function_kinds_2.f90: New test.
* gfortran.dg/derived_function_interface_1.f90: Correct illegal
use association into interfaces.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128948
138bc75d-0d04-0410-961f-
82ee72b054a4
danglin [Tue, 2 Oct 2007 02:17:50 +0000 (02:17 +0000)]
PR testsuite/31828
gcc.dg/float-range-3.c (INFINITY): Define if not defined.
(overflow): Use INFINITY, not FP_INFINITE.
gcc.dg/float-range-4.c: Likewise.
gcc.dg/float-range-5.c: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128947
138bc75d-0d04-0410-961f-
82ee72b054a4
aoliva [Tue, 2 Oct 2007 01:28:06 +0000 (01:28 +0000)]
Revert patches that should have been installed in the vta branch only.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128933
138bc75d-0d04-0410-961f-
82ee72b054a4
aoliva [Tue, 2 Oct 2007 01:12:19 +0000 (01:12 +0000)]
* tree-ssa-live.c (remove_unused_scope_block_p): Don't change
generated code depending on -g. Reverts part of 2007-07-26's
patch.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128932
138bc75d-0d04-0410-961f-
82ee72b054a4
aoliva [Tue, 2 Oct 2007 01:10:18 +0000 (01:10 +0000)]
* ChangeLog.vta: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128931
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Tue, 2 Oct 2007 00:17:00 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128929
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Mon, 1 Oct 2007 20:49:39 +0000 (20:49 +0000)]
* src/valarray-inst.cc, include/ext/atomicity.h,
include/ext/concurrence.h, include/bits/basic_string.h,
include/bits/fstream.tcc, include/ext/vstring.h: Fix comment typos.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128915
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Mon, 1 Oct 2007 20:39:08 +0000 (20:39 +0000)]
* docs/html/test.html, docs/html/ext/mt_allocator.html,
docs/html/ext/tr1.html, docs/html/17_intro/contribute.html,
docs/html/documentation.html, docs/html/20_util/allocator.html:
Update docs to refer to Subversion not CVS. Fix markup.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128914
138bc75d-0d04-0410-961f-
82ee72b054a4
aoliva [Mon, 1 Oct 2007 20:39:03 +0000 (20:39 +0000)]
* tree-ssa-sink.c (sink_code_in_bb): Don't stop sinking after
sinking the last stmt in a BB.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128913
138bc75d-0d04-0410-961f-
82ee72b054a4
aoliva [Mon, 1 Oct 2007 20:27:22 +0000 (20:27 +0000)]
* compare-debug: Avoid spurious errors when .stripped files
exist.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128911
138bc75d-0d04-0410-961f-
82ee72b054a4
aoliva [Mon, 1 Oct 2007 19:56:46 +0000 (19:56 +0000)]
* scripts/check_jni_methods.sh: Don't depend on diff -b ignoring
a single trailing whitespace.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128910
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Mon, 1 Oct 2007 19:55:41 +0000 (19:55 +0000)]
* docs/html/Makefile: Follow up to libstdc++/14991, remove target.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128909
138bc75d-0d04-0410-961f-
82ee72b054a4
aoliva [Mon, 1 Oct 2007 16:35:55 +0000 (16:35 +0000)]
PR middle-end/22156
* tree-sra.c (struct sra_elt): Add in_bitfld_block.
(sra_hash_tree): Handle BIT_FIELD_REFs.
(sra_elt_hash): Don't hash bitfld blocks.
(sra_elt_eq): Skip them in parent compares as well. Handle
BIT_FIELD_REFs.
(build_element_name_1): Handle BIT_FIELD_REFs.
(instantiate_element): Propagate nowarn from parents. Create
BIT_FIELD_REF for variables that are widened by scalarization.
Gimple-zero-initialize all bit-field variables that are not
part of parameters that are going to be scalarized on entry.
(instantiate_missing_elements_1): Return the sra_elt.
(canon_type_for_field): New.
(try_instantiate_multiple_fields): New. Infer widest possible
access mode from decl or member type, but clip it at word
size, and only widen it if a field crosses an alignment
boundary.
(instantiate_missing_elements): Use them.
(generate_one_element_ref): Handle BIT_FIELD_REFs.
(scalar_bitfield_p): New.
(sra_build_assignment): Optimize assignments from scalarizable
BIT_FIELD_REFs. Use BITS_BIG_ENDIAN to determine shift
counts.
(REPLDUP): New.
(sra_build_bf_assignment): New. Optimize assignments to
scalarizable BIT_FIELD_REFs.
(sra_build_elt_assignment): New. Optimize BIT_FIELD_REF
assignments to full variables.
(generate_copy_inout): Use the new macros and functions.
(generate_element_copy): Likewise. Handle bitfld differences.
(generate_element_zero): Don't recurse for blocks. Use
sra_build_elt_assignment.
(generate_one_element_init): Take elt instead of var. Use
sra_build_elt_assignment.
(generate_element_init_1): Adjust.
(bitfield_overlap_info): New struct.
(bitfield_overlaps_p): New.
(sra_explode_bitfield_assignment): New. Adjust widened
variables to account for endianness.
(sra_sync_for_bitfield_assignment): New.
(scalarize_use): Re-expand assignment to/from scalarized
BIT_FIELD_REFs. Explode or sync needed members for
BIT_FIELD_REFs accesses or assignments. Use REPLDUP.
(scalarize_copy): Use REPLDUP.
(scalarize_ldst): Move assert before dereference. Adjust EH
handling.
(dump_sra_elt_name): Handle BIT_FIELD_REFs.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128908
138bc75d-0d04-0410-961f-
82ee72b054a4
bonzini [Mon, 1 Oct 2007 15:14:29 +0000 (15:14 +0000)]
2007-10-01 Paolo Bonzini <bonzini@gnu.org>
* simplify-rtx.c (comparison_result, simplify_relational_operation_1):
Rename CR_* constants to CMP_*. Fix spacing.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128906
138bc75d-0d04-0410-961f-
82ee72b054a4
nickc [Mon, 1 Oct 2007 09:43:41 +0000 (09:43 +0000)]
Fix test to work with 16-bit targets
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128903
138bc75d-0d04-0410-961f-
82ee72b054a4
bonzini [Mon, 1 Oct 2007 07:15:42 +0000 (07:15 +0000)]
2007-10-01 Paolo Bonzini <bonzini@gnu.org>
* Makefile.tpl (AR_FOR_BUILD, AS_FOR_BUILD, CXX_FOR_BUILD,
DLLTOOL_FOR_BUILD, GCJ_FOR_BUILD, GFORTRAN_FOR_BUILD,
LDFLAGS_FOR_BUILD, LD_FOR_BUILD, NM_FOR_BUILD, RANLIB_FOR_BUILD,
WINDMC_FOR_BUILD, WINDRES_FOR_BUILD): Use autoconf substitutions.
* configure.ac: Default them to host tools for $host = $build.
Subst them.
* configure: Regenerate.
* Makefile.in: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128902
138bc75d-0d04-0410-961f-
82ee72b054a4
gerald [Mon, 1 Oct 2007 06:21:10 +0000 (06:21 +0000)]
* gcc_release: Do not include copies of faq.html in releases,
and remove all the explicit support code to pull in web pages.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128901
138bc75d-0d04-0410-961f-
82ee72b054a4
manu [Mon, 1 Oct 2007 02:38:31 +0000 (02:38 +0000)]
2007-10-01 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
PR other/33585
* Makefile.in (build_html_dir/gccinstall): gccinstall.texi needs
to be processed with the special script doc/install.texi2html.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128900
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Mon, 1 Oct 2007 00:17:16 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128898
138bc75d-0d04-0410-961f-
82ee72b054a4
manu [Sun, 30 Sep 2007 23:54:19 +0000 (23:54 +0000)]
2007-09-30 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
* doc/invoke.texi (Wall): List the options enabled by Wall.
(Wstrict-aliasing): Add missing @option.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128895
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Sun, 30 Sep 2007 22:50:02 +0000 (22:50 +0000)]
gcc/
* config/mips/mips.c (mips_split_64bit_move): Use gen_rtx_REG_offset
rather than gen_lowpart to change a register from DImode to DFmode.
(mips_cannot_change_mode_class): Only allow FPRs to change mode if
both FROM and TO are integer modes that are no bigger than 4 bytes.
(mips_mode_ok_for_mov_fmt_p): New function.
(mips_preferred_reload_class): Use it instead of FLOAT_MODE_P.
(mips_secondary_reload_class): Tweak formatting and comments.
Use reg_class_subset_p instead of direct comparisons with
classes. Only allow direct FPR<->FPR moves for modes that
satisfy mips_mode_ok_for_mov_fmt_p. Only allow loads and stores
for 4- and 8-byte types. Handle reloads in which X is an FPR.
* config/mips/mips.md (*movdi_gp32_fp64): Remove f<-f alternative.
(*movdi_64bit): Likewise.
(*movsi_internal): Likewise.
(*movhi_internal): Likewise.
(*movqi_internal): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128894
138bc75d-0d04-0410-961f-
82ee72b054a4
dnovillo [Sun, 30 Sep 2007 16:00:36 +0000 (16:00 +0000)]
PR 33593
* tree-ssa-ter.c (is_replaceable_p): Return false if STMT may
throw an exception.
testsuite/ChangeLog
PR 33593
* g++.dg/tree-ssa/pr33593.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128893
138bc75d-0d04-0410-961f-
82ee72b054a4
jvdelisle [Sun, 30 Sep 2007 14:36:40 +0000 (14:36 +0000)]
2007-09-30 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/33400
* gfortran.dg/PR19872.f: Fix test condition.
* gfortran.dg/list_read_7.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128892
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Sun, 30 Sep 2007 12:45:32 +0000 (12:45 +0000)]
PR tree-optimization/33597
* tree-vect-analyze.c (vect_build_slp_tree): Check if optab handler
for LSHIFT_EXPR and RSHIFT_EXPR is available for vec_mode.
testsuite/ChangeLog:
PR tree-optimization/33597
* gcc.dg/vect/pr33597.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128891
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Sun, 30 Sep 2007 02:41:39 +0000 (02:41 +0000)]
PR c++/33094
* decl.c (make_rtl_for_nonlocal_decl): It's ok for a member
constant to not have DECL_EXTERNAL if it's file-local.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128890
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Sun, 30 Sep 2007 00:17:02 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128888
138bc75d-0d04-0410-961f-
82ee72b054a4