David S. Miller [Mon, 5 Jan 2009 06:09:07 +0000 (06:09 +0000)]
sparc.h (SECONDARY_MEMORY_NEEDED_RTX): Delete.
* config/sparc/sparc.h (SECONDARY_MEMORY_NEEDED_RTX): Delete.
(STARTING_FRAME_OFFSET): Always set to zero.
From-SVN: r143069
GCC Administrator [Mon, 5 Jan 2009 00:16:50 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r143067
Paul Thomas [Sun, 4 Jan 2009 23:17:37 +0000 (23:17 +0000)]
re PR fortran/38665 (ICE in check_host_association)
2009-01-05 Paul Thomas <pault@gcc.gnu.org>
PR fortran/38665
* gfortran.h : Add bit to gfc_expr 'user_operator'
* interface.c (gfc_extend_expr): Set the above if the operator
is substituted by a function.
* resolve.c (check_host_association): Return if above is set.
2009-01-05 Paul Thomas <pault@gcc.gnu.org>
PR fortran/38665
* gfortran.dg/host_assoc_function_5.f90: New test.
From-SVN: r143064
Ben Elliston [Sun, 4 Jan 2009 23:02:02 +0000 (23:02 +0000)]
configure.ac: Exchange the order of GLIBCXX_ENABLE_THREADS and GLIBCXX_ENABLE_ATOMIC_BUILTINS...
* configure.ac: Exchange the order of GLIBCXX_ENABLE_THREADS and
GLIBCXX_ENABLE_ATOMIC_BUILTINS macro invocations.
* configure: Regenerate.
From-SVN: r143062
Richard Sandiford [Sun, 4 Jan 2009 22:14:39 +0000 (22:14 +0000)]
tree.def (LSHIFT_EXPR, [...]): Add commentary.
gcc/
* tree.def (LSHIFT_EXPR, RSHIFT_EXPR): Add commentary.
* tree-cfg.c (verify_gimple_assign_binary): Allow shifts of
fixed-point types, and vectors of the same.
From-SVN: r143061
Richard Sandiford [Sun, 4 Jan 2009 22:08:29 +0000 (22:08 +0000)]
sync.md (*mb_barrier): Rename to...
gcc/
* config/mips/sync.md (*mb_barrier): Rename to...
(*memory_barrier): ...this.
From-SVN: r143060
Richard Guenther [Sun, 4 Jan 2009 19:51:18 +0000 (19:51 +0000)]
re PR libstdc++/38720 (_Relative_pointer_impl invokes undefined behavior)
2009-01-04 Richard Guenther <rguenther@suse.de>
PR libstdc++/38720
* include/ext/pointer.h (_Relative_pointer_impl): Use an unsigned
integer type for storage, arithmetic and comparisons.
* testsuite/ext/ext_pointer/1_neg.cc: Adjust line numbers.
From-SVN: r143058
Mikael Morin [Sun, 4 Jan 2009 19:12:16 +0000 (20:12 +0100)]
re PR fortran/35681 (wrong result for vector subscripted array expression in MVBITS)
2009-01-04 Mikael Morin <mikael.morin@tele2.fr>
PR fortran/35681
* ChangeLog-2008: Fix function name.
PR fortran/38487
* dependency.c (gfc_check_argument_var_dependency):
Move the check for pointerness inside the if block
so that it doesn't affect the return value.
PR fortran/38669
* trans-stmt.c (gfc_trans_call):
Add the dependency code after the loop bounds calculation one.
2009-01-04 Mikael Morin <mikael.morin@tele2.fr>
PR fortran/38669
* gfortran.dg/elemental_dependency_3.f90: New test.
* gfortran.dg/elemental_subroutine_7.f90: New test.
From-SVN: r143057
Uros Bizjak [Sun, 4 Jan 2009 17:51:05 +0000 (18:51 +0100)]
struct-ret-3.c: Include unistd.h.
* gcc.dg/struct-ret-3.c: Include unistd.h.
(main): Exit early if system memory page size is
larger than 4096 bytes.
From-SVN: r143056
Daniel Franke [Sun, 4 Jan 2009 16:07:56 +0000 (11:07 -0500)]
intrinsic.c (do_simplify): Removed already implemented TODO.
2009-01-04 Daniel Franke <franke.daniel@gmail.com>
* intrinsic.c (do_simplify): Removed already implemented TODO.
From-SVN: r143054
Daniel Franke [Sun, 4 Jan 2009 16:05:42 +0000 (11:05 -0500)]
re PR fortran/38718 (some simplifiers for elemental intrinsics missing; required for init expressions)
gcc/fortran:
2009-01-04 Daniel Franke <franke.daniel@gmail.com>
PR fortran/38718
* simplify.c (gfc_simplify_merge): New.
* intrinsic.h (gfc_simplify_merge): New prototype.
* intrinsic.c (add_functions): Added simplification for MERGE.
gcc/testsuite:
2009-01-04 Daniel Franke <franke.daniel@gmail.com>
PR fortran/38718
* gfortran.dg/merge_init_expr.f90: New.
From-SVN: r143053
Paolo Carlini [Sun, 4 Jan 2009 13:55:25 +0000 (13:55 +0000)]
re PR libstdc++/38719 (_Fwd_list_iterator::_M_next() returns reference to local memory)
2009-01-04 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/38719
* include/bits/forward_list.h (_Fwd_list_iterator<>::_M_next,
_Fwd_list_const_iterator::_M_next): Fix return type.
From-SVN: r143052
Jonathan Wakely [Sun, 4 Jan 2009 13:38:11 +0000 (13:38 +0000)]
extend.texi (Function Attributes): Move @cindex after @item for 'artifical' and 'flatten'.
* doc/extend.texi (Function Attributes): Move @cindex after @item
for 'artifical' and 'flatten'. Fix grammar for 'externally_visible'
and put in alphabetical order. Fix 'target' name and put in order.
* doc/invoke.texi (-Wstrict-null-sentinel, -fipa-matrix-reorg): Fix
typos.
From-SVN: r143051
Mikael Morin [Sun, 4 Jan 2009 13:01:12 +0000 (14:01 +0100)]
re PR fortran/38536 (ICE with C_LOC in resolve.c due to not properly going through expr->ref)
2009-01-04 Mikael Morin <mikael.morin@tele2.fr>
PR fortran/38536
* gfortran.h (gfc_is_data_pointer): Added prototype
* resolve.c (gfc_iso_c_func_interface):
Use gfc_is_data_pointer to test for pointer attribute.
* dependency.c (gfc_is_data_pointer):
Support pointer-returning functions.
2009-01-04 Mikael Morin <mikael.morin@tele2.fr>
PR fortran/38536
* gfortran.dg/c_loc_tests_13.f90: New test.
* gfortran.dg/c_loc_tests_14.f90: New test.
From-SVN: r143050
Uros Bizjak [Sun, 4 Jan 2009 11:45:50 +0000 (12:45 +0100)]
s390.md (UNSPEC_MB): Rename from UNSPECV_MB.
* config/s390/s390.md (UNSPEC_MB): Rename from UNSPECV_MB.
(memory_barrier): Expand as unspec instead of unspec_volatile.
Remove mem:BLK from insn operands. Use Pmode scratch register.
(*memory_barrier): Define as unspec instead of unspec_volatile.
Use (match_dup 0) as input operand.
* config/sparc/sparc.md (UNSPEC_MEMBAR): Rename from UNSPECV_MEMBAR.
* config/sparc/sync.md (memory_barrier): Expand as unspec instead of
unspec_volatile. Remove mem:BLK from insn operands. Use Pmode
scratch register. Remove operand 1.
(*stbar): Define as unspec instead of unspec_volatile.
Use (match_dup 0) as input operand, remove (const_int 8).
(*membar): Define as unspec instead of unspec_volatile.
Use (match_dup 0) as input operand, remove input operand 2.
* config/xtensa/xtensa.md (UNSPEC_MEMW): Rename from UNSPECV_MEMW.
(memory_barrier): Expand as unspec instead of unspec_volatile.
Remove mem:BLK from insn operands. Use Pmode scratch register.
(*memory_barrier): Define as unspec instead of unspec_volatile.
Use (match_dup 0) as input operand.
* config/ia64/sync.md (memory_barrier): Redefine as expander pattern.
Remove mem:BLK from insn operands. Use Pmode scratch register.
Set volatile flag on operand 0.
(*memory_barrier): New insn pattern.
* config/rs6000/sync.md (memory_barrier): Remove mem:BLK from
insn operands.
(*memory_barrier): Use (match_dup 0) as input operand.
* config/mips/sync.md (memory_barrier): Redefine as expander pattern.
Remove mem:BLK from insn operands. Use Pmode scratch register.
Set volatile flag on operand 0.
(*memory_barrier): New insn pattern.
* config/alpha/sync.md (*memory_barrier): Rename from *mb_internal.
From-SVN: r143047
GCC Administrator [Sun, 4 Jan 2009 00:17:14 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r143044
Steven Bosscher [Sun, 4 Jan 2009 00:15:58 +0000 (00:15 +0000)]
re PR middle-end/38586 (quadratic behaviour in find_temp_slot_from_address.)
PR middle-end/38586
* function.c (struct temp_slot): Move to the section of the file
that deals with temp slots. Remove field 'address'.
(temp_slot_address_table): New hash table of address -> temp slot.
(struct temp_slot_address_entry): New struct, items for the table.
(temp_slot_address_compute_hash, temp_slot_address_hash,
temp_slot_address_eq, insert_temp_slot_address): Support functions
for the new table.
(find_temp_slot_from_address): Rewrite to use the new hash table.
(remove_unused_temp_slot_addresses): Remove addresses of temp
slots that have been made available.
(remove_unused_temp_slot_addresses_1): Call-back for htab_traverse,
worker function for remove_unused_temp_slot_addresses.
(assign_stack_temp_for_type): Don't clear the temp slot address list.
Add the temp slot address to the address -> temp slot map.
(update_temp_slot_address): Update via insert_temp_slot_address.
(free_temp_slots): Call remove_unused_temp_slot_addresses.
(pop_temp_slots): Likewise.
(init_temp_slots): Allocate the address -> temp slot map, or empty
the map if it is already allocated.
(prepare_function_start): Initialize temp slot processing.
From-SVN: r143041
Steven Bosscher [Sun, 4 Jan 2009 00:15:08 +0000 (00:15 +0000)]
re PR middle-end/38584 (Inline heuristics run even at -O0)
PR middle-end/38584
* cfgexpand.c (estimate_stack_frame_size): Simplify the estimate:
Calculate the size of all stack vars assuming no packing of stack
vars will happen, replacing a quadratic algorithm with a linear one.
From-SVN: r143040
Daniel Franke [Sat, 3 Jan 2009 23:20:11 +0000 (18:20 -0500)]
symbol.c (save_symbol): Don't SAVE function results.
gcc/fortran:
2009-01-03 Daniel Franke <franke.daniel@gmail.com>
* symbol.c (save_symbol): Don't SAVE function results.
gcc/testsuite:
2009-01-03 Daniel Franke <franke.daniel@gmail.com>
* gfortran.dg/func_result_4.f90: New.
From-SVN: r143039
Paolo Carlini [Sat, 3 Jan 2009 22:32:08 +0000 (22:32 +0000)]
2009-01-03 Paolo Carlini <paolo.carlini@oracle.com>
* Revert last commit, reopen and suspend libstdc++/38678.
From-SVN: r143038
Jakub Jelinek [Sat, 3 Jan 2009 21:11:30 +0000 (22:11 +0100)]
re PR target/38707 (gcc.c-torture/execute/
20050121-1.c ICEs with -march=pentium-m)
PR target/38707
* expmed.c (store_bit_field_1): Don't modify op0 if movstrict insn
can't be used.
From-SVN: r143036
Diego Novillo [Sat, 3 Jan 2009 20:07:47 +0000 (15:07 -0500)]
contrib.texi: Update contributions.
* doc/contrib.texi: Update contributions.
From-SVN: r143034
Diego Novillo [Sat, 3 Jan 2009 20:04:52 +0000 (15:04 -0500)]
MAINTAINERS: Remove myself from alias maintainership.
* MAINTAINERS: Remove myself from alias maintainership.
From-SVN: r143033
Paul Thomas [Sat, 3 Jan 2009 17:47:20 +0000 (17:47 +0000)]
re PR fortran/38594 (module function name mangled improperly if contained function of same name exists)
2009-01-03 Paul Thomas <pault@gcc.gnu.org>
PR fortran/38594
* resolve.c (resolve_call): When searching for proper host
association, use symtree rather than symbol. For everything
except generic subroutines, substitute the symtree in the call
rather than the symbol.
2009-01-03 Paul Thomas <pault@gcc.gnu.org>
PR fortran/38594
* gfortran.dg/host_assoc_call_3.f90: Make sure that the generic
interface still works, in addition to original tests.
* gfortran.dg/host_assoc_call_6.f90: New test.
From-SVN: r143032
Jakub Jelinek [Sat, 3 Jan 2009 00:54:40 +0000 (01:54 +0100)]
re PR c++/38705 (ICE: canonical types differ for identical types const int and const AlpsNodeIndex_t)
PR c++/38705
* builtins.c (fold_builtin_memory_op): Give up if either operand
is volatile. Set srctype or desttype to non-qualified version
of the other type.
* g++.dg/torture/pr38705.C: New test.
From-SVN: r143029
Jakub Jelinek [Sat, 3 Jan 2009 00:52:51 +0000 (01:52 +0100)]
re PR c/38700 (ICE with __builtin_expect and label)
PR c/38700
* builtins.c (fold_builtin_expect): Only check DECL_WEAK for VAR_DECLs
and FUNCTION_DECLs.
* gcc.dg/pr38700.c: New test.
From-SVN: r143028
Kenneth Zadeck [Sat, 3 Jan 2009 00:31:39 +0000 (00:31 +0000)]
re PR tree-optimization/35805 ([ira] error in start_allocno_priorities, at ira-color.c:1806)
2009-01-02 Kenneth Zadeck <zadeck@naturalbridge.com>
PR rtl-optimization/35805
* df-problems.c (df_lr_finalize): Add recursive call to resolve lr
problem if fast dce is able to remove any instructions.
* dce.c (dce_process_block): Fix dump message.
From-SVN: r143027
Jason Merrill [Sat, 3 Jan 2009 00:27:19 +0000 (19:27 -0500)]
fix tests
From-SVN: r143026
Jason Merrill [Sat, 3 Jan 2009 00:19:55 +0000 (19:19 -0500)]
re PR c++/38698 (ICE initializing union with initializer list)
PR c++/38698
* typeck2.c (process_init_constructor_union): Handle excess
initializers.
(process_init_constructor_record): Likewise.
PR c++/38684
* typeck2.c (digest_init_r): Don't use process_init_constructor
for non-aggregate classes.
From-SVN: r143024
GCC Administrator [Sat, 3 Jan 2009 00:16:41 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r143022
Richard Guenther [Fri, 2 Jan 2009 18:16:09 +0000 (18:16 +0000)]
Add gcc/ChangeLog-2008.
From-SVN: r143015
Mark Mitchell [Fri, 2 Jan 2009 18:04:28 +0000 (18:04 +0000)]
re PR tree-optimization/33649 (cc1 segfaults when multiple tree opts disabled)
PR 33649
* tree-ssa-pre.c (compute_antic): Correct loop bounds.
From-SVN: r143014
Jakub Jelinek [Fri, 2 Jan 2009 14:38:05 +0000 (15:38 +0100)]
re PR middle-end/38690 (Missing parentheses for (a-1)/2 in final_cleanup)
PR middle-end/38690
* tree-flow.h (op_code_prio, op_prio): New prototypes.
* tree-pretty-print.c (op_code_prio): New function.
(op_prio): No longer static. Use op_code_prio.
* gimple-pretty-print.c (dump_unary_rhs, dump_binary_rhs):
Use op_prio and op_code_prio to determine if () should be
printed around operand(s) or not.
* gimple-pretty-print.c (dump_unary_rhs, dump_binary_rhs,
dump_gimple_call, dump_gimple_switch, dump_gimple_cond,
dump_gimple_label, dump_gimple_try, dump_symbols, dump_gimple_phi,
dump_gimple_mem_ops, dump_bb_header, dump_bb_end, pp_cfg_jump): Use
pp_character instead of pp_string for single letter printing.
From-SVN: r143012
Richard Sandiford [Fri, 2 Jan 2009 11:54:57 +0000 (11:54 +0000)]
extend.texi: Fix '#pragma GCC option' typo.
gcc/
* doc/extend.texi: Fix '#pragma GCC option' typo.
From-SVN: r143010
David Ayers [Fri, 2 Jan 2009 11:49:06 +0000 (11:49 +0000)]
MAINTAINERS: Update e-mail address.
2009-01-02 David Ayers <ayers@fsfe.org>
* MAINTAINERS: Update e-mail address.
From-SVN: r143009
Richard Sandiford [Fri, 2 Jan 2009 11:43:05 +0000 (11:43 +0000)]
composite-type.c: Update wording of messages.
gcc/testsuite/
* gcc.dg/fixed-point/composite-type.c: Update wording of messages.
Allow extra informative notes.
From-SVN: r143008
Richard Guenther [Fri, 2 Jan 2009 10:39:59 +0000 (10:39 +0000)]
install.texi (--enable-checking): Mention different default for stage1.
2009-01-02 Richard Guenther <rguenther@suse.de>
* doc/install.texi (--enable-checking): Mention different
default for stage1.
(--enable-stage1-checking): Document.
From-SVN: r143007
Andrew Pinski [Fri, 2 Jan 2009 00:33:54 +0000 (16:33 -0800)]
Fix typo.
From-SVN: r143006
GCC Administrator [Fri, 2 Jan 2009 00:16:58 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r143004
Andrew Pinski [Fri, 2 Jan 2009 00:14:47 +0000 (16:14 -0800)]
re PR middle-end/30142 ([meta-bug] invalid gimple)
2009-01-01 Andrew Pinski <pinskia@gmail.com>
PR middle-end/30142
* tree-cfg.c (verify_expr): Add INDIRECT_REF case. Change MODIFY_EXPR
case to be an error.
From-SVN: r143001
Ben Elliston [Thu, 1 Jan 2009 22:12:50 +0000 (22:12 +0000)]
fp-bit.h (pack_d): Constify argument.
* config/fp-bit.h (pack_d): Constify argument.
* config/fp-bit.c (makenan): Constify return type. Remove casts.
(isnan): Constify argument.
(isinf): Likewise.
(iszero): Likewise.
(pack_d): Likewise.
(_fpadd_parts): Constify return type.
(_fpmul_parts): Likewise.
(_fpdiv_parts): Likewise.
From-SVN: r142999
Jakub Jelinek [Thu, 1 Jan 2009 19:40:03 +0000 (20:40 +0100)]
re PR c/36489 (Warning "initialized field overwritten" wrongly triggers with multidimensional arrays)
PR c/36489
* c-typeck.c (add_pending_init): Add IMPLICIT argument. Only
warn about overwriting initializer with side-effects or
-Woverride-init if !IMPLICIT.
(output_init_element): Likewise. Pass IMPLICIT down to
add_pending_init.
(process_init_element): Add IMPLICIT argument. Pass it down
to output_init_element.
(push_init_element, pop_init_level, set_designator): Adjust
process_init_element callers.
(set_nonincremental_init, set_nonincremental_init_from_string):
Adjust add_pending_init callers.
(output_pending_init_elements): Adjust output_init_element callers.
* c-tree.h (process_init_element): Adjust prototype.
* c-parser.c (c_parser_initelt, c_parser_initval): Adjust
process_init_element callers.
* gcc.dg/pr36489.c: New test.
From-SVN: r142998
Paolo Carlini [Thu, 1 Jan 2009 10:08:31 +0000 (10:08 +0000)]
re PR libstdc++/38678 ([DR XXX] istream::read() calls streambuf::sgetn())
2009-01-01 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/38678
* include/std/istream (basic_istream<>::_M_read): New.
* include/bits/istream.tcc (basic_istream<>::_M_read): Define.
(basic_istream<>::read, basic_istream<>::readsome): Use it.
* include/std/ostream (basic_ostream<>::_M_write_): New.
(basic_ostream<>::_M_write): Adjust.
* include/bits/ostream.tcc (basic_ostream<>::_M_write_): Define.
* testsuite/27_io/basic_istream/read/char/38678.cc: New.
* testsuite/27_io/basic_istream/read/wchar_t/38678.cc: Likewise.
* testsuite/27_io/basic_ostream/write/char/38678.cc: Likewise.
* testsuite/27_io/basic_ostream/write/wchar_t/38678.cc: Likewise.
From-SVN: r142994
GCC Administrator [Thu, 1 Jan 2009 00:16:46 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r142992
Andreas Tobler [Wed, 31 Dec 2008 23:00:17 +0000 (23:00 +0000)]
inclhack.def (openbsd_null_definition): Redefine NULL to (void *)0 in case of C.
2009-01-01 Andreas Tobler <a.tobler@schweiz.org>
* inclhack.def (openbsd_null_definition): Redefine NULL to (void *)0
in case of C.
* fixincl.x: Regenerate.
From-SVN: r142989
Uros Bizjak [Wed, 31 Dec 2008 15:36:44 +0000 (16:36 +0100)]
sched-deps.c (sched_analyze_2): Flush pending memory loads and stores.
* sched-deps.c (sched_analyze_2) [UNSPEC_VOLATILE]: Flush pending
memory loads and stores.
From-SVN: r142983
Daniel Franke [Wed, 31 Dec 2008 14:21:44 +0000 (09:21 -0500)]
check.c (dim_rank_check): Fixed checking of dimension argument if array is of type EXPR_ARRAY.
gcc/fortran:
2008-12-31 Daniel Franke <franke.daniel@gmail.com>
* check.c (dim_rank_check): Fixed checking of dimension argument
if array is of type EXPR_ARRAY.
gcc/testsuite:
2008-12-31 Daniel Franke <franke.daniel@gmail.com>
* gfortran.dg/mapping_2.f90: Fixed testcase.
From-SVN: r142981
Andreas Tobler [Wed, 31 Dec 2008 13:52:53 +0000 (13:52 +0000)]
re PR target/35460 (undefined reference to `__builtin_stdarg_start' when compiling 2/29 snapshot on OpenBSD)
2008-12-31 Andreas Tobler <a.tobler@schweiz.org>
PR target/35460
* inclhack.def (openbsd_va_start): Use __builtin_va_start
for OpenBSD.
* fixincl.x: Regenerate.
From-SVN: r142980
Jakub Jelinek [Wed, 31 Dec 2008 11:46:18 +0000 (12:46 +0100)]
re PR c++/38647 (ICE using __FUNCTION__ as template parameter)
PR c++/38647
* parser.c (cp_parser_primary_expression) <case RID_FUNCTION_NAME>:
Return error_mark_node if cp_parser_non_integral_constant_expression
returns true.
* g++.dg/template/function1.C: New test.
From-SVN: r142978
GCC Administrator [Wed, 31 Dec 2008 00:16:54 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r142976
Jakub Jelinek [Tue, 30 Dec 2008 23:52:06 +0000 (00:52 +0100)]
re PR c++/38640 (ICE with decltype of template value parameter)
PR c++/38640
* semantics.c (finish_decltype_type): Handle TEMPLATE_PARM_INDEX.
* g++.dg/cpp0x/decltype15.C: New test.
From-SVN: r142973
Jakub Jelinek [Tue, 30 Dec 2008 23:34:28 +0000 (00:34 +0100)]
re PR middle-end/38505 (Revision 142061 caused ICE on __builtin_memcpy)
PR middle-end/38505
* tree-ssa-ccp.c (may_propagate_address_into_dereference): Return
false if ADDR's operand has incomplete type.
Revert:
2008-12-15 Jakub Jelinek <jakub@redhat.com>
PR middle-end/38505
* tree-ssa.c (useless_type_conversion_p_1): Return
false if inner_type is incomplete and outer_type is complete.
From-SVN: r142972
Jakub Jelinek [Tue, 30 Dec 2008 23:20:45 +0000 (00:20 +0100)]
re PR middle-end/38676 (ICE during regimplification of GIMPLE_SWITCH)
PR middle-end/38676
* gimplify.c (gimple_regimplify_operands): For GIMPLE_SWITCH
only regimplify switch index.
* gcc.dg/gomp/pr38676.c: New test.
From-SVN: r142970
Richard Guenther [Tue, 30 Dec 2008 21:20:08 +0000 (21:20 +0000)]
re PR tree-optimization/38645 (ICE with volatile)
2008-12-30 Richard Guenther <rguenther@suse.de>
PR tree-optimization/38645
* tree-ssa-ccp.c (fold_gimple_assign): Use the correct pointer
type.
* tree-ssa-dom.c (cprop_operand): Simplify. Do not propagate
volatileness changing operands.
* gcc.dg/pr38645.c: New testcase.
From-SVN: r142967
Steven Bosscher [Tue, 30 Dec 2008 20:44:41 +0000 (20:44 +0000)]
tree-cfg.c (verify_eh_throw_stmt_node): Return nonzero, to visit all EH statement and fix EH checking.
* tree-cfg.c (verify_eh_throw_stmt_node): Return nonzero,
to visit all EH statement and fix EH checking.
From-SVN: r142966
Seongbae Park [Tue, 30 Dec 2008 18:59:51 +0000 (18:59 +0000)]
revert: tree-profile.c (tree_init_ic_make_global_vars): Make static variables TLS.
2008-12-31 Seongbae Park <seongbae.park@gmail.com>
Revert:
2008-12-29 Seongbae Park <seongbae.park@gmail.com>
* tree-profile.c (tree_init_ic_make_global_vars): Make static
variables TLS.
From-SVN: r142965
Andrew Pinski [Tue, 30 Dec 2008 16:27:29 +0000 (08:27 -0800)]
re PR tree-optimization/38661 (ICE: vector VEC(constructor_elt,base) push domain error, in build_constructors at tree-switch-conversion.c:450)
2008-12-30 Andrew Pinski <pinskia@gmail.com>
PR middle-end/38661
* tree-switch-conversion.c (build_constructors): Test for wrapping of
pos case.
2008-12-30 Andrew Pinski <pinskia@gmail.com>
PR middle-end/38661
* gcc.c-torture/compile/pr38661.c: New testcase.
* gcc.c-torture/compile/pr38661-1.c: New testcase.
From-SVN: r142964
Steven Bosscher [Tue, 30 Dec 2008 13:35:00 +0000 (13:35 +0000)]
re PR middle-end/38584 (Inline heuristics run even at -O0)
PR middle-end/38584
* ipa-inline.c (compute_inline_parameters): When not optimizing,
don't compute the inline parameters, just set them to 0 instead.
From-SVN: r142963
Paolo Bonzini [Tue, 30 Dec 2008 10:36:39 +0000 (10:36 +0000)]
re PR middle-end/38572 (ICE in set_value_range, at tree-vrp.c:398)
2008-12-30 Paolo Bonzini <bonzini@gnu.org>
PR tree-optimization/38572
* tree-vrp.c (vrp_visit_phi_node): Look out for invalid ranges
and change them to VARYING.
From-SVN: r142962
Richard Guenther [Tue, 30 Dec 2008 10:28:01 +0000 (10:28 +0000)]
re PR tree-optimization/38564 (Revision 142662 caused ICE in insert_into_preds_of_block)
2008-12-30 Richard Guenther <rguenther@suse.de>
PR middle-end/38564
* fold-const.c (fold_comparison): Use the correct result type.
* gcc.c-torture/compile/pr38564.c: New testcase.
From-SVN: r142961
Gerald Pfeifer [Tue, 30 Dec 2008 07:45:13 +0000 (07:45 +0000)]
* MAINTAINERS: Make whitespace consistent.
From-SVN: r142960
Dorit Nuzman [Tue, 30 Dec 2008 06:58:57 +0000 (06:58 +0000)]
re PR tree-optimization/38529 (ICE with nested loops)
PR tree-optimization/38529
* tree-vect-transform (vect_transform_stmt): Handle inner-loop stmts
whose DEF is used in the loop-nest that is being vectorized, but
outside the immediately enclosing loop.
Co-Authored-By: Ira Rosen <irar@il.ibm.com>
From-SVN: r142959
GCC Administrator [Tue, 30 Dec 2008 00:17:00 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r142957
Seongbae Park [Mon, 29 Dec 2008 20:10:21 +0000 (20:10 +0000)]
tree-profile.c (tree_init_ic_make_global_vars): Make static variables TLS.
2008-12-29 Seongbae Park <seongbae.park@gmail.com>
* tree-profile.c (tree_init_ic_make_global_vars): Make static
variables TLS.
From-SVN: r142953
John David Anglin [Mon, 29 Dec 2008 20:10:00 +0000 (20:10 +0000)]
re PR fortran/31832 (FAIL: gfortran.dg/integer_exponentiation_2.f90 at -O1 and above)
PR fortran/31832
* acinclude.m4 (LIBGFOR_CHECK_FOR_BROKEN_POWF): New autoconf check for
broken powf.
* configure.ac (LIBGFOR_CHECK_FOR_BROKEN_POWF): Use it.
* intrinsics/c99_functions.c: Use internal powf implementation if
HAVE_BROKEN_POWF is defined.
* configure: Rebuilt.
* config.h.in: Rebuilt.
From-SVN: r142952
Jakub Jelinek [Mon, 29 Dec 2008 18:27:03 +0000 (19:27 +0100)]
re PR c++/38635 (ICE parsing broken code)
PR c++/38635
* parser.c (cp_parser_condition): Use cp_parser_require
instead of cp_lexer_consume_token to consume =.
* g++.dg/parse/cond4.C: New test.
From-SVN: r142951
Jakub Jelinek [Mon, 29 Dec 2008 18:25:19 +0000 (19:25 +0100)]
re PR middle-end/36191 (can't use complex in a eh region if non-call-exceptions is enabled)
PR c++/36191
* tree-complex.c (expand_complex_libcall): Call
maybe_clean_or_replace_eh_stmt and gimple_purge_dead_eh_edges
instead of passing true as 3rd argument to gsi_replace.
* g++.dg/torture/pr36191.C: New test.
From-SVN: r142950
Uros Bizjak [Mon, 29 Dec 2008 12:36:24 +0000 (13:36 +0100)]
re PR middle-end/38652 (dse.c: In function get_call_args: dse.c:2309: error: target undeclared)
PR middle-end/38652
* dse.c: Include target.h.
* Makefile.in (dse.o): Depend on $(TARGET_H).
From-SVN: r142949
Hariharan Sandanagobalane [Mon, 29 Dec 2008 10:31:14 +0000 (10:31 +0000)]
fprintf.x: Disable test for freestanding targets.
* gcc.c-torture/execute/builtins/fprintf.x: Disable test for
freestanding targets.
* gcc.c-torture/execute/pr37573.x: Disable test for 16-bit targets.
* gcc.c-torture/execute/
20081117-1.x: Disable test for 16-bit targets.
* gcc.c-torture/compile/limits-stringlit.c: Disable test for picochip.
* gcc.dg/array-quals-1.c: Disable test for picochip.
* lib/target-supports.exp: Add support for freestanding ports and
disable picochip for profiling tests.
From-SVN: r142948
Jakub Jelinek [Mon, 29 Dec 2008 08:32:21 +0000 (09:32 +0100)]
re PR driver/38381 (-b option seems to be broken)
PR driver/38381
* gcc.c (process_command): Accept also -b with configuration name
in the next argument.
* doc/invoke.texi (-b): Document that no hyphen is required if
configuration name is in the next argument after -b.
From-SVN: r142947
Jakub Jelinek [Mon, 29 Dec 2008 08:28:06 +0000 (09:28 +0100)]
re PR c++/38637 (ICE with template declaration of enum)
PR c++/38637
* decl.c (start_enum): If enumtype is error_mark_node, exit early.
* g++.dg/cpp0x/enum2.C: New test.
From-SVN: r142946
Andrew Pinski [Mon, 29 Dec 2008 02:16:45 +0000 (18:16 -0800)]
re PR libobjc/36610 (objc_msg_sendv is broken for targets which pass argument via registers)
2008-12-28 Andrew Pinski <pinskia@gmail.com>
PR libobjc/36610
* objc/execute/forward-1.m: New test.
From-SVN: r142945
GCC Administrator [Mon, 29 Dec 2008 00:16:43 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r142943
Jakub Jelinek [Sun, 28 Dec 2008 20:06:00 +0000 (21:06 +0100)]
re PR c++/38650 (Trouble with volatile and #pragma omp for)
PR c++/38650
* semantics.c (finish_omp_for): Don't add CLEANUP_POINT_EXPR
around volatile iteration var in condition and/or increment
expression.
* testsuite/libgomp.c/pr38650.c: New test.
* testsuite/libgomp.c++/pr38650.C: New test.
From-SVN: r142940
GCC Administrator [Sun, 28 Dec 2008 00:17:08 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r142938
Jakub Jelinek [Sat, 27 Dec 2008 19:38:20 +0000 (20:38 +0100)]
re PR middle-end/38641 (VEC_EXTRACT_EVEN_EXPR/VEC_EXTRACT_ODD_EXPR no longer print out correctly in the tree dumps)
PR middle-end/38641
* gimple-pretty-print.c (dump_binary_rhs): Print
VEC_WIDEN_MULT_HI_EXPR, VEC_WIDEN_MULT_LO_EXPR,
VEC_PACK_TRUNC_EXPR, VEC_PACK_SAT_EXPR, VEC_PACK_FIX_TRUNC_EXPR,
VEC_EXTRACT_EVEN_EXPR, VEC_EXTRACT_ODD_EXPR
VEC_INTERLEAVE_HIGH_EXPR and VEC_INTERLEAVE_LOW_EXPR similarly
to COMPLEX_EXPR, MIN_EXPR and MAX_EXPR.
From-SVN: r142935
Jakub Jelinek [Sat, 27 Dec 2008 15:38:22 +0000 (16:38 +0100)]
re PR middle-end/38633 (ICE with #pragma omp parallel and struct declaration)
PR middle-end/38633
* tree-cfg.c (replace_block_vars_by_duplicates): Only call
replace_by_duplicate_decl for VAR_DECLs or CONST_DECLs.
* gcc.dg/gomp/pr38633.c: New test.
* g++.dg/gomp/pr38633.C: New test.
From-SVN: r142934
Jakub Jelinek [Sat, 27 Dec 2008 15:24:52 +0000 (16:24 +0100)]
re PR c++/38639 (ICE with invalid use of auto in parallel for-loop)
PR c++/38639
* pt.c (tsubst_omp_for_iterator): RECUR on whole init_expr instead of
just its type.
* g++.dg/gomp/pr38639.C: New test.
From-SVN: r142933
Jakub Jelinek [Sat, 27 Dec 2008 15:20:28 +0000 (16:20 +0100)]
* testsuite/libgomp.c/collapse-1.c (main): Add private(k) clause.
From-SVN: r142932
GCC Administrator [Sat, 27 Dec 2008 00:16:57 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r142930
Uros Bizjak [Fri, 26 Dec 2008 16:35:22 +0000 (17:35 +0100)]
atomic-6.c: Add -mieee for alpha*-*-* targets.
* testsuite/libgomp.c/atomic-6.c: Add -mieee for alpha*-*-* targets.
From-SVN: r142927
GCC Administrator [Fri, 26 Dec 2008 00:16:45 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r142925
GCC Administrator [Thu, 25 Dec 2008 00:16:52 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r142919
Kazu Hirata [Wed, 24 Dec 2008 17:00:52 +0000 (17:00 +0000)]
Makefile.in (GTFILES): Add $(srcdir)/expr.h.
* Makefile.in (GTFILES): Add $(srcdir)/expr.h.
* expr.h: Fix the declaration of block_clear_fn.
From-SVN: r142914
GCC Administrator [Wed, 24 Dec 2008 00:17:03 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r142911
Andrew Pinski [Tue, 23 Dec 2008 16:21:32 +0000 (08:21 -0800)]
[multiple changes]
2008-12-23 Andrew Pinski <pinski@gmail.com>
PR middle-end/38590
* fold-const.c (fold_binary): Call fold_convert on arguments to
fold_build2 for negative divide optimization.
2008-12-23 Andrew Pinski <pinskia@gmail.com>
PR middle-end/38590
* gcc.c-torture/compile/pr38590-1.c: New testcase.
* gcc.c-torture/compile/pr38590-2.c: New testcase.
From-SVN: r142906
Jonathan Larmour [Tue, 23 Dec 2008 03:10:35 +0000 (03:10 +0000)]
concurrence.h: Fix __gthread_cond_t initialisation function macro name.
2008-12-22 Jonathan Larmour <jifl@eCosCentric.com>
* include/ext/concurrence.h: Fix __gthread_cond_t initialisation
function macro name.
From-SVN: r142901
Jerry DeLisle [Tue, 23 Dec 2008 01:39:00 +0000 (01:39 +0000)]
Fix PR number referenced in ChangeLog.
From-SVN: r142900
Benjamin Kosnik [Tue, 23 Dec 2008 01:27:39 +0000 (01:27 +0000)]
stdheader.cc: Add cstdlib include.
2008-12-22 Benjamin Kosnik <bkoz@redhat.com>
* doc/doxygen/stdheader.cc: Add cstdlib include.
* doc/doxygen/user.cfg.in: Regenerate for doxygen 1.5.7.
From-SVN: r142897
GCC Administrator [Tue, 23 Dec 2008 00:16:49 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r142895
Jakub Jelinek [Mon, 22 Dec 2008 23:41:17 +0000 (00:41 +0100)]
re PR middle-end/31150 (Not promoting an whole array to be static const)
PR middle-end/31150
* dse.c (struct store_info): Add const_rhs field.
(clear_rhs_from_active_local_stores): Clear also const_rhs.
(record_store): Try also cselib_expand_value_rtx to get a constant.
(find_shift_sequence, get_stored_val): Use const_rhs instead of
rhs if worthwhile.
* cselib.c (cselib_record_sets): If !cselib_record_memory and
there is just one set from read-only MEM, look at REG_EQUAL or
REG_EQUIV note.
* dse.c (struct store_info): Add redundant_reason field.
(record_store): When storing the same constant as has been
stored by an earlier store, set redundant_reason field
to the earlier store's insn_info_t. Don't delete cannot_delete
insns.
(find_shift_sequence): Remove read_info argument, add read_mode
and require_cst arguments. Return early if require_cst and
constant wouldn't be returned.
(get_stored_val): New function.
(replace_read): Use it.
(scan_insn): Put even cannot_delete insns with exactly 1 store
into active_local_stores.
(dse_step1): Don't delete cannot_delete insns. Remove redundant
constant stores if contains_cselib_groups and earlier store storing
the same value hasn't been eliminated.
(dse_step6): Renamed to dse_step7. New function.
(dse_step7): Renamed from dse_step6.
(rest_of_handle_dse): Call dse_step6 and dse_step7 at the end.
* cselib.c (cselib_expand_value_rtx): Don't wrap CONST_INTs
into CONST unless really necessary. Handle SUBREG, unary,
ternary, bitfield and compares specially, to be able to simplify
operations on constants.
(expand_loc): Try to optimize LO_SUM.
* dse.c (get_call_args): New function.
(scan_insn): Don't handle BUILT_IN_BZERO. For memset, attempt
to get call arguments and if successful and both len and val are
constants, handle the call as (mem:BLK) (const_int) store.
* dse.c (struct store_info): Add is_large bool field, change
positions_needed into a union of a bitmask and bitmap + count.
(free_store_info): Free bitmap if is_large.
(set_usage_bits): Don't look at stores where
offset + width >= MAX_OFFSET.
(set_position_unneeded, set_all_positions_unneeded,
any_positions_needed_p, all_positions_needed_p): New static inline
functions.
(record_store): Handle BLKmode stores of CONST_INT, if
MEM_SIZE is set on the MEM. Use the new positions_needed
accessor inlines.
(replace_read): Handle reads from BLKmode CONST_INT stores.
(check_mem_read_rtx): Use all_positions_needed_p function.
(dse_step1): Free large positions_needed bitmaps and clear is_large.
* dse.c (struct store_info): Change begin and end types to
HOST_WIDE_INT.
* dse.c (record_store): Fix check for unused store.
* expr.c (block_clear_fn): No longer static.
* expr.h (block_clear_fn): Declare.
* dse.c (scan_insn): Memset and bzero can just read their
arguments.
* gcc.c-torture/execute/
20081218-1.c: New test.
From-SVN: r142892
Jakub Jelinek [Mon, 22 Dec 2008 23:34:07 +0000 (00:34 +0100)]
re PR target/38488 (x86_64 generates much larger and slightly slower code for memset)
* config/i386/i386.c (expand_setmem_via_rep_stos): Add ORIG_VALUE
argument. If ORIG_VALUE is const0_rtx and COUNT is constant,
set MEM_SIZE on DESTMEM.
(ix86_expand_setmem): Adjust callers.
PR target/38488
* expr.h (get_mem_align_offset): New prototype.
* emit-rtl.c (get_mem_align_offset): New function.
* config/i386/i386.c (expand_movmem_via_rep_mov): Set MEM_SIZE correctly.
(expand_constant_movmem_prologue, expand_constant_setmem_prologue):
New functions.
(ix86_expand_movmem): Optimize if COUNT_EXP
is constant, desired_align > align and dst & (desired_align - 1)
is computable at compile time.
(ix86_expand_setmem): Likewise.
* builtins.c (get_memory_rtx): Try to derive MEM_ATTRS from not yet
resolved SAVE_EXPR or POINTER_PLUS_EXPR.
From-SVN: r142891
Paul Thomas [Mon, 22 Dec 2008 23:16:44 +0000 (23:16 +0000)]
re PR fortran/35780 (internal compiler error for complicated PARAMETER expressions)
2008-12-22 Paul Thomas <pault@gcc.gnu.org>
PR fortran/35780
* gfortran.dg/alloc_comp_optional_1.f90: New test.
From-SVN: r142890
Paul Thomas [Mon, 22 Dec 2008 23:11:29 +0000 (23:11 +0000)]
re PR fortran/35780 (internal compiler error for complicated PARAMETER expressions)
2008-12-22 Paul Thomas <pault@gcc.gnu.org>
PR fortran/35780
* trans-decl.c (init_intent_out_dt): Allow for optional args.
From-SVN: r142889
Uros Bizjak [Mon, 22 Dec 2008 17:49:52 +0000 (18:49 +0100)]
re PR target/34571 (Segfault in alpha_expand_mov at -O3)
* config/alpha/alpha.h (ASM_OUTPUT_EXTERNAL): New macro.
PR target/34571
* config/alpha/predicates.md (symbolic_operand): Return 1 for a
label_ref with an offset.
From-SVN: r142885
Jerry DeLisle [Mon, 22 Dec 2008 14:53:37 +0000 (14:53 +0000)]
re PR fortran/37472 (bad output on default-format write of double in common block with -m64)
2008-12-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/37472
* io/write_float.def (output_float_FMT_G_): Modify calculation of temp
to avoid sensitivity to round-off.
From-SVN: r142884
GCC Administrator [Mon, 22 Dec 2008 00:16:47 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r142882
Ben Elliston [Sun, 21 Dec 2008 22:51:59 +0000 (22:51 +0000)]
re PR c++/38362 (AltiVec context-sensitive keywords broke test for __vector bool)
PR c++/38362
* g++.dg/ext/altivec-types-1.C (dg-options): Pass -std=c++98.
From-SVN: r142879
Andrew Pinski [Sun, 21 Dec 2008 22:27:18 +0000 (14:27 -0800)]
Index...
Index: config/ChangeLog
+2008-12-21 Andrew Pinski <pinskia@gmail.com>
+
+ PR target/38300
+ * unwind_ipinfo.m4: Darwin before 9 does not have _Unwind_GetIPInfo.
+
Index: gcc/ChangeLog
+2008-12-21 Andrew Pinski <pinskia@gmail.com>
+
+ PR target/38300
+ * configure: Regenerate.
Index: libstdc++-v3/ChangeLog
+2008-12-21 Andrew Pinski <pinskia@gmail.com>
+
+ PR target/38300
+ * configure: Regenerate.
+
Index: libjava/ChangeLog
+2008-12-21 Andrew Pinski <pinskia@gmail.com>
+
+ PR target/38300
+ * configure: Regenerate.
From-SVN: r142877
Jerry DeLisle [Sun, 21 Dec 2008 22:06:34 +0000 (22:06 +0000)]
re PR fortran/38398 (g0.w edit descriptor: Update for F2008 Tokyo meeting changes)
2008-12-21 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/38398
* gfortran.dg/fmt_g0_1.f08: Revise.
From-SVN: r142876