Paolo Carlini [Mon, 14 May 2007 20:21:34 +0000 (20:21 +0000)]
re PR c++/29928 (typeid of unknown bound array)
/cp
2007-05-14 Paolo Carlini <pcarlini@suse.de>
PR c++/29928
* rtti.c (get_tinfo_decl_dynamic, get_typeid): Try to complete the
type only if is a class type (5.2.8/4).
/testsuite
2007-05-14 Paolo Carlini <pcarlini@suse.de>
PR c++/29928
* g++.dg/rtti/typeid5.C: New.
From-SVN: r124724
Uros Bizjak [Mon, 14 May 2007 19:42:47 +0000 (21:42 +0200)]
builtins.c (expand_builtin_mathfn): Use EXPAND_NORMAL instead of 0 in the call to expand_expr().
* builtins.c (expand_builtin_mathfn): Use EXPAND_NORMAL instead
of 0 in the call to expand_expr().
(expand_builtin_mathfn_3): Ditto.
(expand_builtin_interclass_mathfn): Ditto.
(expand_builtin_cexpi): Ditto.
(expand_builtin_int_roundingfn): Ditto.
(expand_builtin_int_roundingfn_2): Ditto.
(expand_builtin_pow): Ditto.
(expand_builtin_powi): Ditto.
(expand_builtin_bswap): Ditto.
(expand_builtin_unop): Ditto.
(expand_builtin_fabs): Ditto.
(get_builtin_sync_mem): Use NULL_RTX instead of NULL in
the call to expand_expr().
(expand_builtin_sync_operation): Ditto.
(expand_builtin_compare_and_swap): Ditto.
(expand_builtin_lock_test_and_set): Ditto.
* except.c (expand_builtin_eh_return_data_regno): Use EXPAND_NORMAL
instead of 0 in the call to expand_expr().
(expand_builtin_extract_return_addr): Ditto.
(expand_builtin_eh_return): Ditto.
(expand_eh_return): Ditto.
* explow.c (expr_size): Ditto.
* expr.c (optimize_bitfield_assignment_op): Ditto.
(expand_assignement): Ditto.
(store_expr): Ditto.
(store_field): Ditto.
(expand_expr_addr_expr_1): Use NULL_RTX instead of NULL in
the call to expand_expr().
(expand_expr_real_1) [COMPLEX_CST]: Use EXPAND_NORMAL instead of 0
in the call to expand_expr().
[CONSTRUCTOR, PLUS_EXPR, MINUS_EXPR, NEGATE_EXPR, ABS_EXPR,
BIT_NOT_EXPR, LSHIFT_EXPR, LT_EXPR, TRUTH_NOT_EXPR]: Ditto.
[VEC_UNPACK_HI_EXPR, VEC_UNPACK_LO]: Use expand_normal() instead
of expand_expr().
* optabs.c (expand_vec_shift_expr): Ditto.
(expand_vec_cond_expr): Ditto.
(vector_compare_rtx): Use EXPAND_STACK_PARM instead of 1 in the
call to expand_expr().
* stmt.c (expand_return): Use EXPAND_NORMAL instead of 0
in the call to expand_expr().
From-SVN: r124722
Francois-Xavier Coudert [Mon, 14 May 2007 19:33:57 +0000 (19:33 +0000)]
re PR fortran/30723 (Freeing memory doesn't need to call a library function)
PR fortran/30723
* trans.h (gfor_fndecl_internal_malloc, gfor_fndecl_internal_malloc64,
gfor_fndecl_internal_free): Remove prototypes.
(gfor_fndecl_os_error, gfc_call_free, gfc_call_malloc): Add prototypes.
* trans.c (gfc_call_malloc, gfc_call_free): New functions.
* f95-lang.c (gfc_init_builtin_functions): Add __builtin_free
and __builtin_malloc builtins.
* trans-decl.c (gfor_fndecl_internal_malloc,
gfor_fndecl_internal_malloc64, gfor_fndecl_internal_free): Remove.
(gfor_fndecl_os_error): Add.
(gfc_build_builtin_function_decls): Don't create internal_malloc,
internal_malloc64 and internal_free library function declaration.
Create os_error library call function declaration.
* trans-array.c (gfc_trans_allocate_array_storage,
gfc_trans_auto_array_allocation, gfc_trans_dummy_array_bias,
gfc_conv_array_parameter, gfc_duplicate_allocatable): Use
gfc_call_malloc and gfc_call_free instead of building calls to
internal_malloc and internal_free.
* trans-expr.c (gfc_conv_string_tmp): Likewise.
* trans-stmt.c (gfc_do_allocate, gfc_trans_assign_need_temp,
gfc_trans_pointer_assign_need_temp, gfc_trans_forall_1,
gfc_trans_where_2: Likewise.
* trans-intrinsic.c (gfc_conv_intrinsic_ctime,
gfc_conv_intrinsic_fdate, gfc_conv_intrinsic_ttynam,
gfc_conv_intrinsic_array_transfer, gfc_conv_intrinsic_trim): Likewise.
* runtime/memory.c (internal_malloc, internal_malloc64,
internal_free): Remove.
* runtime/error.c (os_error): Export function.
* intrinsics/move_alloc.c: Include stdlib.h.
(move_alloc): Call free instead of internal_free.
(move_alloc_c): Wrap long lines.
* libgfortran.h (os_error): Export prototype.
(internal_free): Remove prototype.
* gfortran.map (GFORTRAN_1.0): Remove _gfortran_internal_free,
_gfortran_internal_malloc and _gfortran_internal_malloc64.
Add _gfortran_os_error.
From-SVN: r124721
François-Xavier Coudert [Mon, 14 May 2007 19:29:33 +0000 (19:29 +0000)]
re PR fortran/31725 ([4.1 only] substring bound evaluated multiple times: wrong code for string(function():) = 'X')
PR fortran/31725
* trans-expr.c (gfc_conv_substring): Evaluate substring bounds
only once.
* gfortran.dg/substr_4.f: New test.
From-SVN: r124720
Dave Korn [Mon, 14 May 2007 16:46:44 +0000 (16:46 +0000)]
genautomata.c (gen_regexp_el): Allocate correct size for regexp.
2007-05-14 Dave Korn <dave.korn@artimi.com>
* genautomata.c (gen_regexp_el): Allocate correct size for regexp.
From-SVN: r124718
Paolo Carlini [Mon, 14 May 2007 16:44:31 +0000 (16:44 +0000)]
testsuite_io.h: Only include <ios>.
2007-05-14 Paolo Carlini <pcarlini@suse.de>
* testsuite/util/testsuite_io.h: Only include <ios>.
From-SVN: r124717
Paolo Carlini [Mon, 14 May 2007 14:47:39 +0000 (14:47 +0000)]
allocator.h: Do not include cpp_type_traits.h.
2007-05-14 Paolo Carlini <pcarlini@suse.de>
* include/bits/allocator.h: Do not include cpp_type_traits.h.
From-SVN: r124716
Rafael Avila de Espindola [Mon, 14 May 2007 14:37:17 +0000 (14:37 +0000)]
c-common.c (warnings_for_convert_and_check): Use unsigned_type_for instead of c_common_unsigned_type.
gcc/
* c-common.c (warnings_for_convert_and_check): Use unsigned_type_for
instead of c_common_unsigned_type.
(c_common_unsigned_type): Remove.
(shorten_compare): Use c_common_signed_or_unsigned_type instead of
c_common_unsigned_type.
(c_common_nodes_and_builtins): Use unsigned_type_for instead of
c_common_unsigned_type.
* c-common.h (c_common_unsigned_type): Remove.
* c-decl.c (grokdeclarator): Use unsigned_type_for instead of
c_common_unsigned_type.
* c-format.c (check_format_types): Use unsigned_type_for instead of
c_common_unsigned_type.
* c-objc-common.h (LANG_HOOKS_UNSIGNED_TYPE): Remove.
* c-typeck.c (convert_for_assignment): Use unsigned_type_for instead of
c_common_unsigned_type.
* convert.c (convert_to_integer): Use unsigned_type_for instead of
lang_hooks.types.unsigned_type.
* expmed.c (make_tree): Use unsigned_type_for instead of
lang_hooks.types.unsigned_type.
* fold-const.c (fold_negate_expr): Use unsigned_type_for instead of
lang_hooks.types.unsigned_type.
(build_range_check): Likewise.
(fold_unary): Likewise.
(fold_binary): Likewise.
(fold_ternary): Likewise.
* langhooks-def.h (LANG_HOOKS_UNSIGNED_TYPE): Remove.
* langhooks.h (lang_hooks_for_types): Remove unsigned_type.
* tree.c (get_unsigned_type): New.
(unsigned_type_for): Use get_unsigned_type instead of
lang_hooks.types.unsigned_type
gcc/ada
* misc.c (LANG_HOOKS_UNSIGNED_TYPE): Remove.
gcc/cp
* cp-objcp-common.h (LANG_HOOKS_UNSIGNED_TYPE): Remove.
* decl.c (grokdeclarator): Use unsigned_type_for instead of
c_common_unsigned_type.
gcc/fortran
* f95-lang.c (LANG_HOOKS_UNSIGNED_TYPE): Remove.
* trans-intrinsic.c (gfc_conv_intrinsic_ishft): Use unsigned_type_for
instead of gfc_unsigned_type.
* trans-stmt.c (gfc_trans_do): Use unsigned_type_for instead of
gfc_unsigned_type.
* trans-types.c (gfc_unsigned_type): Remove.
* trans-types.h (gfc_unsigned_type): Remove.
gcc/java
* expr.c (build_java_binop): Use unsigned_type_for instead of
java_unsigned_type.
* java-tree.h (java_unsigned_type): Remove.
* lang.c (LANG_HOOKS_UNSIGNED_TYPE): Remove.
* typeck.c (java_unsigned_type): Remove.
gcc/treelang
* treetree.c (tree_lang_unsigned_type): Remove.
(LANG_HOOKS_UNSIGNED_TYPE): Remove.
From-SVN: r124715
Kazu Hirata [Mon, 14 May 2007 13:52:18 +0000 (13:52 +0000)]
m68k-protos.h: Rename m68k_interrupt_function_p to m68k_get_function_kind.
gcc/
* config/m68k/m68k-protos.h: Rename m68k_interrupt_function_p
to m68k_get_function_kind. Update its prototype.
* config/m68k/m68k.c (m68k_attribute_table): Add an entry for
interrupt_thread.
(m68k_interrupt_function_p): Return enum m68k_function_type
instead of bool. Rename to m68k_get_function_kind.
(m68k_handle_fndecl_attribute): Reject interrupt_thread if the
target is not fido.
(m68k_compute_frame_layout): Don't mark any register for save
if an interrupt_thread attribute is specified.
(m68k_hard_regno_rename_ok): Update a use of
m68k_interrupt_function_p.
* config/m68k/m68k.h (EPILOGUE_USES): Update a use of
m68k_interrupt_function_p.
(m68k_function_type): New.
* config/m68k/m68k.md (*return): Output a 'sleep' instruction
for a function with an interrupt_thread attribute.
* doc/extend.texi: Document the interrupt_thread attribute.
gcc/testsuite/
* gcc.target/m68k/interrupt_thread-1.c,
gcc.target/m68k/interrupt_thread-2.c,
gcc.target/m68k/interrupt_thread-3.c: New.
* gcc.target/m68k/m68k.exp: Accept fido.
From-SVN: r124713
Roberto Costa [Mon, 14 May 2007 12:34:19 +0000 (12:34 +0000)]
Updated Roberto Costa's address.
From-SVN: r124711
Paolo Carlini [Mon, 14 May 2007 10:52:34 +0000 (10:52 +0000)]
postypes.h (class fpos<>): Remove redundant forward declaration.
2007-05-14 Paolo Carlini <pcarlini@suse.de>
* include/bits/postypes.h (class fpos<>): Remove redundant forward
declaration.
From-SVN: r124710
Paolo Carlini [Mon, 14 May 2007 10:52:05 +0000 (10:52 +0000)]
postypes.h (class fpos<>): Remove redundant forward declaration.
2007-05-14 Paolo Carlini <pcarlini@suse.de>
* include/bits/postypes.h (class fpos<>): Remove redundant forward
declaration.
From-SVN: r124709
Thomas Neumann [Mon, 14 May 2007 06:40:54 +0000 (06:40 +0000)]
* MAINTAINERS (Write After Approval): Add myself.
From-SVN: r124708
Mark Mitchell [Mon, 14 May 2007 00:33:48 +0000 (00:33 +0000)]
* gennews (files): Reference GCC 4.2 web pages.
From-SVN: r124664
GCC Administrator [Mon, 14 May 2007 00:17:52 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r124661
Dominique d'Humieres [Mon, 14 May 2007 00:12:39 +0000 (00:12 +0000)]
alloc_comp_basics_1.f90: Fix dg directive.
2007-05-13 Dominique d'Humières <dominiq@lps.ens.fr>
* alloc_comp_basics_1.f90: Fix dg directive.
* altreturn_3.f90: Likewise.
* assumed_dummy_1.f90: Likewise.
* default_numeric_type_1.f90: Likewise.
* inquire_iolength.f90: Likewise.
* module_naming_1.f90: Likewise.
* oldstyle_2.f90: Likewise.
* operator_2.f90: Likewise.
* parameter_array_element_1.f90: Likewise.
* used_types_11.f90: Likewise.
* zero_array_components_1.f90: Likewise.
* fmt_zero_precision.f90: Fix dg-output directives.
* parameter_array_dummy.f90: Likewise.
* real_const_3.f90: Likewise.
From-SVN: r124658
Daniel Berlin [Sun, 13 May 2007 21:52:10 +0000 (21:52 +0000)]
re PR tree-optimization/31911 (Short function (md4) takes very long to compile)
2007-05-13 Daniel Berlin <dberlin@dberlin.org>
Fix PR tree-optimization/31911
* tree-ssa-pre.c (phi_translate): Make sure to cache results even
if they didn't change the expression.
From-SVN: r124657
Zdenek Dvorak [Sun, 13 May 2007 17:32:06 +0000 (19:32 +0200)]
tree-scalar-evolution.c (resolve_mixers): Exported.
* tree-scalar-evolution.c (resolve_mixers): Exported.
* tree-scalar-evolution.h (resolve_mixers): Declare.
* tree-data-ref.c (object_analysis, ptr_decl_may_alias_p,
ptr_ptr_may_alias_p, may_alias_p, record_ptr_differ_p,
record_record_differ_p, record_array_differ_p, array_ptr_differ_p,
base_object_differ_p, base_addr_differ_p, analyze_array_indexes,
init_array_ref, init_pointer_ref, analyze_indirect_ref,
strip_conversion, analyze_offset_expr, address_analysis,
object_analysis, analyze_offset): Removed.
(dr_analyze_innermost, dr_analyze_indices, dr_analyze_alias,
split_constant_offset, canonicalize_base_object_address,
object_address_invariant_in_loop_p, disjoint_objects_p,
dr_may_alias_p, dr_address_invariant_p): New functions.
(create_data_ref): Use dr_analyze_innermost, dr_analyze_indices
and dr_analyze_alias.
(initialize_data_dependence_relation): Use dr_may_alias_p
and object_address_invariant_in_loop_p.
(compute_self_dependence): Handle the case when DDR_ARE_DEPENDENT (ddr)
is chrec_dont_know.
(find_data_references_in_stmt): Restrict the analysis of data references
to the given loop nest.
(find_data_references_in_loop): Made static. Pass loop nest to
find_data_references_in_stmt.
(compute_data_dependences_for_loop): Use DR_VOPS.
(free_data_ref): Free DR_VOPS.
* tree-data-ref.h (struct first_location_in_loop): Replaced by ...
(struct innermost_loop_behavior): ... new.
(struct base_object_info): Replaced by ...
(struct indices): ... new.
(struct dr_alias): New.
(enum data_ref_type): Removed.
(struct data_reference): Consist of struct innermost_loop_behavior,
struct indices and struct dr_alias.
(DR_SET_ACCESS_FNS, DR_FREE_ACCESS_FNS): Removed.
(DR_MEMTAG): Renamed to ...
(DR_SYMBOL_TAG): ... this.
(find_data_references_in_loop): Declaration removed.
* tree-vect-analyze.c (vect_compute_data_ref_alignment): Use DR_INIT
instead of DR_OFFSET_MISALIGNMENT. DR_ALIGNED_TO is never NULL.
(vect_analyze_data_refs): Use DR_SYMBOL_TAG instead of DR_MEMTAG.
* tree-vect-transform.c (vect_create_data_ref_ptr): Ditto.
* gcc.dg/vect/no-section-anchors-vect-69.c: Fix outcome.
* gcc.dg/tree-ssa/loop-30.c: New test.
From-SVN: r124655
Paolo Carlini [Sun, 13 May 2007 16:23:20 +0000 (16:23 +0000)]
stl_tempbuf.h (return_temporary_buffer(_Tp*)): Inline.
2007-05-13 Paolo Carlini <pcarlini@suse.de>
* include/bits/stl_tempbuf.h (return_temporary_buffer(_Tp*)): Inline.
From-SVN: r124654
Richard Guenther [Sun, 13 May 2007 12:18:19 +0000 (12:18 +0000)]
pr17141-1.c: Scan in forwprop2, xfail scanning forwprop1.
2007-05-13 Richard Guenther <rguenther@suse.de>
* gcc.dg/tree-ssa/pr17141-1.c: Scan in forwprop2, xfail
scanning forwprop1.
* g++.dg/tree-ssa/pr31146.C: Likewise.
From-SVN: r124653
Paolo Carlini [Sun, 13 May 2007 10:08:13 +0000 (10:08 +0000)]
type_traitsfwd.h: Fix include guard typo.
2007-05-13 Paolo Carlini <pcarlini@suse.de>
* include/tr1/type_traitsfwd.h: Fix include guard typo.
From-SVN: r124652
Revital Eres [Sun, 13 May 2007 07:49:47 +0000 (07:49 +0000)]
Extend dse
From-SVN: r124651
GCC Administrator [Sun, 13 May 2007 00:17:19 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r124645
Steven Bosscher [Sat, 12 May 2007 18:15:38 +0000 (18:15 +0000)]
gcse.c (gcse_main): Do jump bypassing in CPROP2.
* gcse.c (gcse_main): Do jump bypassing in CPROP2.
* passes.c (init_optimization_passes): Move pass_jump_bypass
after loop2.
* basic-block.h (bb_has_eh_pred): Fix style issue.
From-SVN: r124640
Steven Bosscher [Sat, 12 May 2007 18:12:54 +0000 (18:12 +0000)]
re PR rtl-optimization/31848 (Invalid loop optimization causes bootstrap failure in genautomata)
PR rtl-optimization/31848
* loop-invariant.c (move_invariant_reg): If we move an insn
with a REG_EQUAL note, and that insn is not always executed,
remove the REG_EQUAL note.
From-SVN: r124639
David Daney [Sat, 12 May 2007 17:37:55 +0000 (17:37 +0000)]
re PR libgcj/29324 (add wait handling hook)
PR libgcj/29324
* include/posix-threads.h (_Jv_BlockSigchld): Declare.
(_Jv_UnBlockSigchld): Same.
* posix-threads.cc: Include posix-threads.h.
(block_sigchld) Rename to...
(_Jv_BlockSigchld) ... this.
(_Jv_UnBlockSigchld): New function.
(_Jv_InitThreads): Call _Jv_BlockSigchld in place of block_sigchld.
(_Jv_ThreadStart): Same.
* java/lang/PosixProcess$ProcessManager.h: Regenerate.
* java/lang/PosixProcess.java: Clean up imports.
(ProcessManager): Make final.
(ProcessManager.queue): Genericise and make private.
(ProcessManager.pidToProcess): Remove.
(ProcessManager.liveProcesses): New field.
(ProcessManager.reaperPID): Remove.
(ProcessManager.nativeData): New field.
(ProcessManager.removeProcessFromMap): Remove.
(ProcessManager.addProcessToMap):Remove.
(ProcessManager.addToLiveProcesses): New method.
(ProcessManager.run): Rewritten.
(ProcessManager.reap): Change method signature,
(getErrorStream): Correct formatting.
(getInputStream): Same.
(spawn): Add process to liveProcesses list.
(pid): Make package private.
* java/lang/PosixProcess.h: Regenerate.
* java/lang/natPosixProcess.cc: Include posix.h and posix-threads.h.
Add useing namespace java::lang.
(ProcessManagerInternal): New struct.
(sigchld_handler): Rewritten.
(init): Rewritten.
(waitForSignal): Same.
(reap): Same.
(signalReaper): Same.
(nativeDestroy): Call kill as ::kill.
(nativeSpawn): Correct formatting.
* classpath/lib/java/lang/PosixProcess$EOFInputStream.class: Regenerate.
* classpath/lib/java/lang/PosixProcess.class: Same.
* classpath/lib/java/lang/PosixProcess$ProcessManager.class: Same.
From-SVN: r124638
Richard Guenther [Sat, 12 May 2007 17:21:43 +0000 (17:21 +0000)]
re PR tree-optimization/31797 (infinite loop in tree-ssa-pre or ICE)
2007-05-12 Richard Guenther <rguenther@suse.de>
PR tree-optimization/31797
* tree-ssa-forwprop.c (forward_propagate_addr_expr): Do not
propagate into a stmt that has volatile ops.
* gcc.c-torture/compile/pr31797.c: New testcase.
From-SVN: r124637
Richard Sandiford [Sat, 12 May 2007 08:00:12 +0000 (08:00 +0000)]
configure.ac (gcc_gxx_include_dir): Use $(libsubdir_to_prefix).
gcc/
* configure.ac (gcc_gxx_include_dir): Use $(libsubdir_to_prefix).
(gcc_tooldir): Likewise.
* configure: Regenerate.
* Makefile.in (libsubdir_to_prefix): New variable, based on the
old configure.ac gcc_tooldir setting.
(prefix_to_exec_prefix): New variable.
(DRIVER_DEFINES): Use $(libsubdir_to_prefix)$(prefix_to_exec_prefix)
rather than $(unlibsubdir)/../ to derive TOOLDIR_BASE_PREFIX.
From-SVN: r124634
Paul Thomas [Sat, 12 May 2007 06:19:43 +0000 (06:19 +0000)]
re PR fortran/30746 (50th Anniversary Bug - Forward reference to contained function)
2007-05-12 Paul Thomas <pault@gcc.gnu.org>
PR fortran/30746
* resolve.c (check_host_association): New function that detects
incorrect host association and corrects it.
(gfc_resolve_expr): Call the new function for variables and
functions.
* match.h : Remove prototype for gfc_match_rvalue.
* gfortran.h : Add prototype for gfc_match_rvalue.
2007-05-12 Paul Thomas <pault@gcc.gnu.org>
PR fortran/30746
* gfortran.dg/host_assoc_function_1.f90: New test.
From-SVN: r124633
GCC Administrator [Sat, 12 May 2007 00:18:05 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r124631
Steve Ellcey [Fri, 11 May 2007 22:56:10 +0000 (22:56 +0000)]
re PR c++/31829 (FAIL: g++.dg/warn/multiple-overflow-warn-3.C (test for warnings, line 8))
PR c++/31829
* g++.dg/warn/multiple-overflow-warn-3.C: Change wchar_t to short.
From-SVN: r124628
Paolo Carlini [Fri, 11 May 2007 18:58:08 +0000 (18:58 +0000)]
pod_char_traits.h (char_traits<>::move): Use __builtin_memmove.
2007-05-11 Paolo Carlini <pcarlini@suse.de>
* include/ext/pod_char_traits.h (char_traits<>::move):
Use __builtin_memmove.
* include/bits/locale_classes.h (locale::_Impl::_M_check_same_name,
collate_byname(const char*, size_t)): Use __builtin_strcmp.
* include/bits/locale_facets.h: Use __builtin_mem* and
__builtin_str* everywhere.
* include/bits/codecvt.h (codecvt_byname(const char*, size_t)):
Use __builtin_strcmp.
* include/bits/char_traits.h: Use __builtin_mem* everywhere.
* include/bits/fstream.tcc (basic_filebuf<>::underflow, imbue):
Use __builtin_memcpy and __builtin_memmove.
* include/bits/locale_facets_nonio.h (moneypunct_byname(const char*,
size_t __refs)): Use __builtin_strcmp.
* include/std/bitset (bitset<>::_M_do_reset): Use __builtin_memset.
* config/locale/gnu/c_locale.h: Use __builtin_strlen, __builtin_strcmp,
and __builtin_memcpy.
* config/locale/gnu/messages_members.h: Likewise.
* config/locale/gnu/time_members.h: Likewise.
* config/locale/generic/c_locale.h: Likewise.
* config/locale/generic/messages_members.h: Likewise.
* config/locale/generic/time_members.h: Likewise.
* config/os/gnu-linux/ctype_noninline.h: Likewise, avoid strdup.
* config/os/tpf/ctype_noninline.h: Likewise.
* config/locale/generic/codecvt_members.cc: Include <cstring>.
* config/locale/generic/ctype_members.cc: Likewise.
* config/locale/generic/collate_members.cc: Likewise.
* config/locale/gnu/c++locale_internal.h: Likewise.
* config/locale/darwin/ctype_members.cc: Likewise.
* src/ctype.cc: Likewise.
* testsuite/19_diagnostics/logic_error/what-1.cc: Likewise.
* testsuite/19_diagnostics/logic_error/what-2.cc: Likewise.
* testsuite/19_diagnostics/runtime_error/what-1.cc: Likewise.
* testsuite/19_diagnostics/runtime_error/what-2.cc: Likewise.
* testsuite/19_diagnostics/runtime_error/what-3.cc: Likewise.
* config/locale/gnu/messages_members.cc: Avoid strdup.
* config/locale/gnu/monetary_members.cc: Likewise.
* config/locale/gnu/time_members.cc: Likewise.
* config/locale/gnu/time_members.cc: Likewise.
* config/locale/generic/c_locale.cc: Likewise.
From-SVN: r124623
Silvius Rus [Fri, 11 May 2007 16:20:08 +0000 (16:20 +0000)]
Makefile.in (OBJS-common): Add tree-ssa-alias-warnings.o.
gcc/
* Makefile.in (OBJS-common): Add tree-ssa-alias-warnings.o.
* c-common.c (strict_aliasing_warning): Modify -Wstrict-aliasing logic.
* c-common.h (strict_aliasing_warning): Change return type.
* c-opts.c (c_common_handle_option): Add call to set_Wstrict_aliasing.
* c-typeck.c (build_indirect_ref): Add call to strict_aliasing_warning.
(build_c_cast): Condition call to strict_aliasing_warning.
* doc/invoke.texi: Update description of -Wstrict-aliasing[=n].
* flags.h (set_Wstrict_aliasing): Declare.
* opts.c (set_Wstrict_alising): Define, add call to.
* tree-flow.h (strict_aliasing_warning_backend): Declare.
* tree-ssa-alias-warnings.c: New file.
* tree-ssa-alias.c (compute_may_aliases): Add call to
strict_aliasing_warning_backend.
gcc/cp
* cp/typeck.c (build_indirect_ref): Add call to
strict_aliasing_warning.
(build_reinterpret_cast_1): Condition call to
strict_aliasing_warning.
gcc/testsuite
* gcc.dg/Wstrict-aliasing-bogus-const-ptr-nonconst-ptr.c: New test.
* gcc.dg/Wstrict-aliasing-bogus-never-dereferenced.c: New test.
* gcc.dg/Wstrict-aliasing-bogus-struct-included.c: New test.
* gcc.dg/Wstrict-aliasing-converted-assigned.c: New test.
* gcc.dg/Wstrict-aliasing-float-ptr-int-obj.c: New test.
* gcc.dg/alias-1.c: Update option: -Wstrict-aliasing=2.
* gcc.dg/alias-9.c: Update option: -Wstrict-aliasing=2.
* g++.dg/warn/Wstrict-aliasing-7.C: Update option: -Wstrict-aliasing=2.
* g++.dg/warn/Wstrict-aliasing-bogus-base-derived.C: New test.
* g++.dg/warn/Wstrict-aliasing-bogus-char-1.C: New test.
* g++.dg/warn/Wstrict-aliasing-bogus-const.C: New test.
* g++.dg/warn/Wstrict-aliasing-bogus-nested-arrays.C: New test.
* g++.dg/warn/Wstrict-aliasing-bogus-signed-unsigned.C: New test.
* g++.dg/warn/Wstrict-aliasing-bogus-struct-included.C: New test.
* g++.dg/warn/Wstrict-aliasing-bogus-union.C: New test.
* g++.dg/warn/Wstrict-aliasing-float-ref-int-obj.C: New test.
From-SVN: r124622
Benjamin Kosnik [Fri, 11 May 2007 16:05:57 +0000 (16:05 +0000)]
stdexcept: Remove extra spacing.
2007-05-11 Benjamin Kosnik <bkoz@redhat.com>
* include/std/stdexcept: Remove extra spacing.
* testsuite/19_diagnostics/stdexceptions.cc: Break into...
* testsuite/19_diagnostics/bad_exception: ...this. Populate.
* testsuite/19_diagnostics/logic_error: ... this.
* testsuite/19_diagnostics/logic_error/what-1.cc: ...this.
* testsuite/19_diagnostics/logic_error/what-2.cc: ...this.
* testsuite/19_diagnostics/runtime_error: ...this.
* testsuite/19_diagnostics/runtime_error/what-1.cc: ...this.
* testsuite/19_diagnostics/runtime_error/what-2.cc: ...this.
* testsuite/19_diagnostics/runtime_error/what-3.cc: ...this.
* testsuite/19_diagnostics/23591_thread-1.c: Move...
* testsuite/19_diagnostics/bad_exception/23591_thread-1.c: ...here.
From-SVN: r124621
Silvius Rus [Fri, 11 May 2007 15:54:44 +0000 (15:54 +0000)]
MAINTAINERS (Write After Approval): Add myself.
* MAINTAINERS (Write After Approval): Add myself.
From-SVN: r124620
Zdenek Dvorak [Fri, 11 May 2007 15:52:01 +0000 (17:52 +0200)]
tree-loop-linear.c (gather_interchange_stats, [...]): Use loop_depth and loop_outer accessor functions.
* tree-loop-linear.c (gather_interchange_stats, try_interchange_loops):
Use loop_depth and loop_outer accessor functions.
* tree-ssa-loop-im.c (outermost_invariant_loop, set_level,
determine_invariantness_stmt, move_computations_stmt): Ditto.
* cfgloopmanip.c (fix_bb_placement, fix_loop_placement, remove_path,
add_loop, loopify, unloop, fix_loop_structure): Ditto.
* tree-ssa-loop-manip.c (find_uses_to_rename_use): Ditto.
* tree-scalar-evolution.c (interpret_loop_phi,
compute_scalar_evolution_in_loop, analyze_scalar_evolution_in_loop,
instantiate_parameters_1, scev_const_prop): Ditto.
* cfghooks.c (make_forwarder_block): Ditto.
* cfgloopanal.c (mark_irreducible_loops, mark_loop_exit_edges): Ditto.
* modulo-sched.c (loop_canon_p): Ditto.
* tree-vectorizer.c (slpeel_tree_duplicate_loop_to_edge_cfg,
slpeel_can_duplicate_loop_p): Ditto.
* lambda-code.c (invariant_in_loop_and_outer_loops): Ditto.
* tree-cfg.c (tree_duplicate_sese_region): Ditto.
* cfgloop.c (flow_loop_dump, flow_loop_nodes_find, rescan_loop_exit,
cancel_loop, verify_loop_structure): Ditto.
(flow_loop_nested_p, superloop_at_depth, flow_loop_free,
add_bb_to_loop, remove_bb_from_loops, find_common_loop): Use the
superloops vector instead of "pred" array.
(establish_preds): Take father loop as an argument. Initialize the
superloops vector.
(flow_loop_tree_node_add): Pass father loop to establish_preds. Do not
initialize loop->outer.
(flow_loop_tree_node_remove): Truncate the superloops vector.
* cfgloop.h (struct loop): Removed field "outer", fields "depth" and
"pred" merged to "superloops" vector.
(loop_depth, loop_outer): New.
(fel_init): Use loop_outer.
From-SVN: r124619
Jan Hubicka [Fri, 11 May 2007 12:18:17 +0000 (14:18 +0200)]
semantics.c (expand_or_defer_fn): Do not call c_record_cdtor_fn.
* semantics.c (expand_or_defer_fn): Do not call c_record_cdtor_fn.
* decl2.c (start_objects): ctors and dtors are no longer public.
(cp_write_global_declarations): Do not call c_build_cdtor_fns.
* cgraphunit.c: Include gt-cgraphunit.h
(static_ctors, static_dtors): New static vars.
(record_cdtor_fn, build_cdtor, cgraph_build_cdtor_fns): New functions,
based on implementation in c-common.c
(cgraph_finalize_function): Call record_cdtor_fn.
(cgraph_optimize): Call cgraph_build_cdtor_fns.
* decl.c (finish_function): Do not call c_record_cdtor_fn.
(c_write_global_declarations): Do not call c_build_cdtor_fns.
* c-common.c (static_ctors, static_dtors, c_record_cdtor_fn,
build_cdtor, c_build_cdtor_fns): Remove.
* c-common.h (static_ctors, static_dtors, c_record_cdtor_fn,
c_build_cdtor_fns): Remove prototype.
From-SVN: r124618
Paolo Carlini [Fri, 11 May 2007 11:49:29 +0000 (11:49 +0000)]
re PR other/31852 (Missing __builtin_memchr)
2007-05-11 Paolo Carlini <pcarlini@suse.de>
PR other/31852
* builtin-types.def: Add BT_FN_PTR_CONST_PTR_INT_SIZE.
* builtins.def: Add BUILT_IN_MEMCHR, use the latter.
* builtins.c (fold_builtin_memchr): New.
(expand_builtin_memchr): Call the latter.
(expand_builtin, fold_builtin_3): Deal with BUILT_IN_MEMCHR.
* doc/extend.texi ([Other built-in functions provided by GCC]):
Document memchr.
/testsuite
2007-05-11 Paolo Carlini <pcarlini@suse.de>
PR other/31852
* gcc.c-torture/execute/builtins/memchr.c: New.
* gcc.c-torture/execute/builtins/memchr-lib.c: New.
* gcc.c-torture/execute/builtins/lib/memchr.c: New.
From-SVN: r124617
Paul Thomas [Fri, 11 May 2007 11:46:47 +0000 (11:46 +0000)]
re PR fortran/30876 (Array valued recursive function rejected)
2007-05-11 Paul Thomas <pault@gcc.gnu.org>
PR fortran/30876
* trans-expr.c (gfc_conv_function_call): Reduce indirection for
direct assignments of recursive array valued functions.
* primary.c (gfc_match_rvalue): Correct error for recursive
function calls such that directly recursive calls of scalar
function without an explicit result are disallowed.
2007-05-11 Paul Thomas <pault@gcc.gnu.org>
PR fortran/30876
* gfortran.dg/recursive_reference_1.f90: Put error at correct
line.
* gfortran.dg/recursive_reference_2.f90: New test.
From-SVN: r124616
Paul Thomas [Fri, 11 May 2007 11:42:56 +0000 (11:42 +0000)]
re PR fortran/30878 (Rejects function f1; namelist /nml/ f1)
2007-05-11 Paul Thomas <pault@gcc.gnu.org>
PR fortran/30878
* resolve.c (resolve_fl_namelist): It is not an error if the
namelist element is the result variable of the enclosing
function. Search for the symbol in current and all parent
namespaces for a potential conflict.
* symbol.c (check_conflict): Remove the conflict between
'in_namelist' and 'FL_PROCEDURE' because the symbol info
is not available to exclude function result variables.
* trans-io.c (nml_get_addr_expr): Use the fake result decl
if the symbol is an implicit result variable.
2007-05-11 Paul Thomas <pault@gcc.gnu.org>
PR fortran/30878
* gfortran.dg/namelist_29.f90: New test.
From-SVN: r124615
Andreas Krebbel [Fri, 11 May 2007 08:40:52 +0000 (08:40 +0000)]
s390.md (GPR0_REGNUM, [...]): Constants added.
2007-05-11 Andreas Krebbel <krebbel1@de.ibm.com>
* config/s390/s390.md (GPR0_REGNUM, FPR0_REGNUM, FPR2_REGNUM,
PFPO_CONVERT, PFPO_OP_TYPE_SF, PFPO_OP_TYPE_DF, PFPO_OP_TYPE_TF,
PFPO_OP_TYPE_SD, PFPO_OP_TYPE_DD, PFPO_OP_TYPE_TD, PFPO_OP0_TYPE_SHIFT,
PFPO_OP1_TYPE_SHIFT): Constants added.
(DFP_ALL): Mode macro defined.
("*trunc<BFP:mode><DFP_ALL:mode>2", "*trunc<DFP_ALL:mode><BFP:mode>2",
"*extend<BFP:mode><DFP_ALL:mode>2", "*extend<DFP_ALL:mode><BFP:mode>2"):
Insn definitions added.
("trunc<BFP:mode><DFP_ALL:mode>2", "trunc<DFP_ALL:mode><BFP:mode>2",
"extend<BFP:mode><DFP_ALL:mode>2", "extend<DFP_ALL:mode><BFP:mode>2"):
Expanders added.
From-SVN: r124614
Paul Thomas [Fri, 11 May 2007 06:19:57 +0000 (06:19 +0000)]
re PR fortran/31474 (ENTRY & procedural pointer: insert_bbt(): Duplicate key found!)
2007-05-11 Paul Thomas <pault@gcc.gnu.org>
PR fortran/31474
* decl.c (get_proc_name): If an entry has already been declared
as a module procedure, pick up the symbol and the symtree and
use them for the entry.
2007-05-11 Paul Thomas <pault@gcc.gnu.org>
PR fortran/31474
* gfortran.dg/entry_10.f90: New test.
From-SVN: r124613
Paolo Carlini [Fri, 11 May 2007 00:55:17 +0000 (00:55 +0000)]
11.cc: Include <cstring>.
2007-05-10 Paolo Carlini <pcarlini@suse.de>
* 27_io/objects/wchar_t/11.cc: Include <cstring>.
* 27_io/objects/wchar_t/10.cc: Likewise.
* 27_io/objects/wchar_t/12.cc: Likewise.
* 27_io/basic_streambuf/sputbackc/char/9538.cc: Likewise.
* 27_io/basic_streambuf/sgetn/char/1.cc: Likewise.
* 27_io/basic_streambuf/overflow/char/1.cc: Likewise.
* 27_io/basic_streambuf/sgetc/char/1.cc: Likewise.
* 27_io/basic_streambuf/sputn/wchar_t/1.cc: Likewise.
* 27_io/basic_streambuf/sputn/char/1.cc: Likewise.
* 27_io/basic_ios/cons/char/3.cc: Likewise.
* 27_io/basic_stringbuf/setbuf/char/2.cc: Likewise.
* 27_io/basic_stringbuf/setbuf/char/3.cc: Likewise.
* 27_io/basic_stringbuf/setbuf/char/4.cc: Likewise.
* 27_io/basic_istream/extractors_character/char/4.cc: Likewise.
* 27_io/fpos/mbstate_t/1.cc: Likewise.
* 27_io/basic_filebuf/setbuf/char/2.cc: Likewise.
* 27_io/basic_filebuf/setbuf/char/3.cc: Likewise.
* 25_algorithms/copy/streambuf_iterators/char/2.cc: Likewise.
* 25_algorithms/copy/streambuf_iterators/char/4.cc: Likewise.
* 19_diagnostics/stdexceptions.cc: Likewise.
* 21_strings/char_traits/requirements/short/1.cc: Likewise.
* 21_strings/basic_string/compare/char/1.cc: Likewise.
* 21_strings/basic_string/capacity/1.cc: Likewise.
* ext/codecvt/char-1.cc: Likewise.
* ext/codecvt/char-2.cc: Likewise.
* ext/codecvt/1.cc: Likewise.
* ext/stdio_sync_filebuf/wchar_t/1.cc: Likewise.
* ext/stdio_sync_filebuf/char/1.cc: Likewise.
* ext/stdio_filebuf/char/2.cc: Likewise.
* ext/stdio_filebuf/char/10063-1.cc: Likewise.
* 22_locale/ctype/narrow/char/19955.cc: Likewise.
* 22_locale/codecvt/unshift/wchar_t/1.cc: Likewise.
* 22_locale/codecvt/unshift/wchar_t/2.cc: Likewise.
* 22_locale/codecvt/unshift/wchar_t/3.cc: Likewise.
* 22_locale/codecvt/unshift/wchar_t/4.cc: Likewise.
* 22_locale/codecvt/unshift/char/1.cc: Likewise.
* 22_locale/codecvt/length/wchar_t/1.cc: Likewise.
* 22_locale/codecvt/length/wchar_t/2.cc: Likewise.
* 22_locale/codecvt/length/wchar_t/3.cc: Likewise.
* 22_locale/codecvt/length/wchar_t/4.cc: Likewise.
* 22_locale/codecvt/length/wchar_t/5.cc: Likewise.
* 22_locale/codecvt/length/wchar_t/6.cc: Likewise.
* 22_locale/codecvt/length/wchar_t/7.cc: Likewise.
* 22_locale/codecvt/always_noconv/char/1.cc: Likewise.
* 22_locale/codecvt/encoding/char/1.cc: Likewise.
* 22_locale/codecvt/in/wchar_t/1.cc: Likewise.
* 22_locale/codecvt/in/wchar_t/2.cc: Likewise.
* 22_locale/codecvt/in/wchar_t/3.cc: Likewise.
* 22_locale/codecvt/in/wchar_t/4.cc: Likewise.
* 22_locale/codecvt/in/wchar_t/5.cc: Likewise.
* 22_locale/codecvt/in/wchar_t/6.cc: Likewise.
* 22_locale/codecvt/in/wchar_t/7.cc: Likewise.
* 22_locale/codecvt/in/wchar_t/8.cc: Likewise.
* 22_locale/codecvt/in/wchar_t/9.cc: Likewise.
* 22_locale/codecvt/in/char/1.cc: Likewise.
* 22_locale/codecvt/max_length/char/1.cc: Likewise.
* 22_locale/codecvt/out/wchar_t/1.cc: Likewise.
* 22_locale/codecvt/out/wchar_t/2.cc: Likewise.
* 22_locale/codecvt/out/wchar_t/3.cc: Likewise.
* 22_locale/codecvt/out/wchar_t/4.cc: Likewise.
* 22_locale/codecvt/out/wchar_t/5.cc: Likewise.
* 22_locale/codecvt/out/wchar_t/6.cc: Likewise.
* 22_locale/codecvt/out/wchar_t/7.cc: Likewise.
* 22_locale/codecvt/out/char/1.cc: Likewise.
* 22_locale/locale/cons/5.cc: Likewise.
* 22_locale/collate_byname/named_equivalence.cc: Likewise.
From-SVN: r124610
GCC Administrator [Fri, 11 May 2007 00:17:46 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r124607
Zdenek Dvorak [Thu, 10 May 2007 21:33:11 +0000 (23:33 +0200)]
re PR tree-optimization/31885 (Not removing empty loop, scev not finding the correct result)
PR tree-optimization/31885
* tree-chrec.c (chrec_contains_undetermined): Do not consider NULL_TREE
to be undetermined.
(automatically_generated_chrec_p): Return false for NULL.
* gcc.dg/tree-ssa/loop-29.c: New test.
From-SVN: r124602
Roman Zippel [Thu, 10 May 2007 21:29:04 +0000 (21:29 +0000)]
ffi.c (ffi_prep_incoming_args_SYSV, [...]): New, add closure support.
* src/m68k/ffi.c (ffi_prep_incoming_args_SYSV,
ffi_closure_SYSV_inner,ffi_prep_closure): New, add closure support.
* src/m68k/sysv.S(ffi_closure_SYSV,ffi_closure_struct_SYSV): Likewise.
* src/m68k/ffitarget.h (FFI_TRAMPOLINE_SIZE): Likewise.
(FFI_CLOSURES): Enable closure support.
From-SVN: r124601
Roman Zippel [Thu, 10 May 2007 21:20:02 +0000 (21:20 +0000)]
configure.ac (HAVE_AS_CFI_PSEUDO_OP): New test.
* configure.ac (HAVE_AS_CFI_PSEUDO_OP): New test.
* configure: Regenerate.
* fficonfig.h.in: Regenerate.
* src/m68k/sysv.S (CFI_STARTPROC,CFI_ENDPROC,
CFI_OFFSET,CFI_DEF_CFA): New macros.
(ffi_call_SYSV): Add callframe annotation.
From-SVN: r124600
Roman Zippel [Thu, 10 May 2007 21:06:55 +0000 (21:06 +0000)]
ffi.c (ffi_prep_args,ffi_prep_cif_machdep): Fix numerous test suite failures.
* src/m68k/ffi.c (ffi_prep_args,ffi_prep_cif_machdep): Fix
numerous test suite failures.
* src/m68k/sysv.S (ffi_call_SYSV): Likewise.
From-SVN: r124599
Dominique d'Humieres [Thu, 10 May 2007 20:11:45 +0000 (13:11 -0700)]
assumed_dummy_1.f90: Fix dg directive.
2007-05-10 Dominique d'Humieres <dominiq@lps.ens.fr>
* assumed_dummy_1.f90: Fix dg directive.
* char_initialiser_actual.f90: Likewise.
* nested_modules_2.f90: Likewise.
* shift-alloc.f90: Likewise.
From-SVN: r124598
Mike Stump [Thu, 10 May 2007 18:52:03 +0000 (18:52 +0000)]
Improve comment...
From-SVN: r124597
Bernd Schmidt [Thu, 10 May 2007 13:07:24 +0000 (13:07 +0000)]
bfin.h (MOVE_RATIO): Define.
* config/bfin/bfin.h (MOVE_RATIO): Define.
From-SVN: r124596
Richard Sandiford [Thu, 10 May 2007 11:15:07 +0000 (11:15 +0000)]
config.gcc (sparc-wrs-vxworks): New target.
gcc/
* config.gcc (sparc-wrs-vxworks): New target.
* config/sparc/vxworks.h, config/sparc/t-vxworks: New files.
* config/sparc/sparc-protos.h (sparc_emit_call_insn): Declare.
* config/sparc/sparc.h: Include vxworks-dummy.h.
(PRINT_OPERAND_ADDRESS): Extend SYMBOL_REF handling to
include LABEL_REFs too.
* config/sparc/sparc.c (sparc_expand_move): Don't assume that
_GLOBAL_OFFSET_TABLE_ - label_ref is a link-time constant on
VxWorks.
(legitimize_pic_address): Handle LABEL_REFs like SYMBOL_REFs
on VxWorks.
(load_pic_register): Use gen_vxworks_load_got for VxWorks.
(sparc_emit_call_insn): New function.
(sparc_function_ok_for_sibcall): Restrict sibcalls to locally-binding
functions when generating VxWorks PIC.
* config/sparc/sparc.md (vxworks_load_got): New pattern.
(call, call_value): Use sparc_emit_call_insn instead of
emit_call_insn.
libgcc/
* config.host (sparc-wrs-vxworks): New target.
From-SVN: r124595
Andreas Krebbel [Thu, 10 May 2007 07:53:37 +0000 (07:53 +0000)]
20070507-1.c: Disable for non-pic targets.
2007-05-10 Andreas Krebbel <krebbel1@de.ibm.com>
* gcc.dg/
20070507-1.c: Disable for non-pic targets.
From-SVN: r124593
Jerry DeLisle [Thu, 10 May 2007 03:22:40 +0000 (03:22 +0000)]
re PR libfortran/31880 ([4.2 only] silent data corruption in gfortran read statement)
2007-05-09 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/31880
* gfortran.dg/unf_read_corrupted_2.f90: Fix test.
From-SVN: r124591
Jerry DeLisle [Thu, 10 May 2007 01:09:57 +0000 (01:09 +0000)]
re PR libfortran/31880 ([4.2 only] silent data corruption in gfortran read statement)
2007-05-09 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/31880
* gfortran.dg/unf_read_corrupted_2.f90: New test.
From-SVN: r124590
Mike Stump [Thu, 10 May 2007 01:02:55 +0000 (01:02 +0000)]
* g++.dg/parse/attr-externally-visible-1.C: Likewise.
From-SVN: r124589
Jerry DeLisle [Thu, 10 May 2007 01:01:27 +0000 (01:01 +0000)]
re PR libfortran/31880 ([4.2 only] silent data corruption in gfortran read statement)
2007-05-09 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/31880
* io/unix.c (fd_alloc_r_at): Fix calculation of physical offset.
From-SVN: r124588
GCC Administrator [Thu, 10 May 2007 00:18:09 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r124586
Mike Stump [Wed, 9 May 2007 21:57:09 +0000 (21:57 +0000)]
Fix whitespacing
From-SVN: r124583
Mike Stump [Wed, 9 May 2007 19:37:38 +0000 (19:37 +0000)]
* g++.dg/other/first-global.C: Add -fpie for darwin.
From-SVN: r124580
Bob Wilson [Wed, 9 May 2007 19:13:59 +0000 (19:13 +0000)]
* config/xtensa/xtensa.c (xtensa_output_literal): Don't use #if.
From-SVN: r124579
Bob Wilson [Wed, 9 May 2007 17:05:14 +0000 (17:05 +0000)]
xtensa.c (xtensa_output_literal): Mask out high bits for floating-point values if HOST_BITS_PER_LONG > 32.
* config/xtensa/xtensa.c (xtensa_output_literal): Mask out high bits
for floating-point values if HOST_BITS_PER_LONG > 32. Use split_double
instead of operand_subword.
From-SVN: r124578
Bernd Schmidt [Wed, 9 May 2007 11:57:49 +0000 (11:57 +0000)]
bfin.h (LOCAL_ALIGNMENT): Define.
* config/bfin/bfin.h (LOCAL_ALIGNMENT): Define.
* config/bfin/bfin.c (bfin_local_alignment): New function.
* config/bfin/bfin-protos.h (bfin_local_alignment): Declare it.
From-SVN: r124570
Andreas Krebbel [Wed, 9 May 2007 07:40:52 +0000 (07:40 +0000)]
20070507-1.c: New testcase.
2007-05-09 Andreas Krebbel <krebbel1@de.ibm.com>
* gcc.dg/
20070507-1.c: New testcase.
From-SVN: r124567
Mark Mitchell [Wed, 9 May 2007 05:31:15 +0000 (05:31 +0000)]
Remove conflict marker
From-SVN: r124566
Mark Mitchell [Wed, 9 May 2007 05:21:36 +0000 (05:21 +0000)]
cxxabi.h (_GLIBCXX_NOTHROW): New macro.
* libstdc++-v3/libsupc++/cxxabi.h (_GLIBCXX_NOTHROW): New macro.
(__cxa_atexit): Use it.
* testsuite/lib/libstdc++.exp (v3_target_compile_as_c): For
installed-tree testing, search more include directories.
From-SVN: r124565
Andrew Pinski [Wed, 9 May 2007 00:46:11 +0000 (00:46 +0000)]
typeck.c (build_unary_op): Remove code that used to handle non lvalue increments/decrements.
2007-05-07 Andrew Pinski <andrew_pinski@playstation.sony.com>
* typeck.c (build_unary_op): Remove code that used to
handle non lvalue increments/decrements.
From-SVN: r124564
GCC Administrator [Wed, 9 May 2007 00:17:15 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r124562
Chao-ying Fu [Tue, 8 May 2007 22:53:25 +0000 (22:53 +0000)]
* gcc.target/mips/msub-1.c, gcc.target/mips/msub-2.c,
* gcc.target/mips/msub-3.c, gcc.target/mips/msub-4.c,
* gcc.target/mips/msubu-1.c, gcc.target/mips/msubu-2.c,
* gcc.target/mips/msubu-3.c, gcc.target/mips/msubu-4.c: New tests.
From-SVN: r124559
Chao-ying Fu [Tue, 8 May 2007 22:51:14 +0000 (22:51 +0000)]
md.texi (msub@var{m}@var{n}4, [...]): Document.
* doc/md.texi (msub@var{m}@var{n}4, usub@var{m}@var{n}4): Document.
* optabs.h (OTI_smsub_widen, OTI_umsub_widen): New optab_indexes.
(smsub_widen_optab, umsub_widen_optab): Define.
* optabs.c (init_optabs): Initialize smsub_widen_optab and
umsub_widen_optab.
* genopinit.c (optabs): Fill in smsub_widen_optab and
umsub_widen_optab.
* expr.c (expand_expr_real_1): Try to use smsub_widen_optab
and umsub_widen_optab to implement multiply-subtract sequences.
* config/mips/mips.md (*msac<u>_di): Rename to...
(<u>msubsidi4): ...this. Extend condition to include
GENERATE_MADD_MSUB and TARGET_DSPR2. Change the constraint
of operand 0 to "ka" and use the three-operand form of msub<u>
for TARGET_DSPR2.
* config/mips/mips-dspr2.md (mips_msub, mips_msubu): Convert
to define_expands.
From-SVN: r124558
Kaz Kojima [Tue, 8 May 2007 22:22:49 +0000 (22:22 +0000)]
re PR rtl-optimization/28011 ([SH] g++ generates wrong code, if '-fno-exceptions' and '-O' options are specified)
PR rtl-optimization/28011
* reload.c (push_reload): Set dont_share if IN appears in OUT
also when IN is a PLUS rtx.
(reg_overlap_mentioned_for_reload_p): Return true if X and IN
are same PLUS rtx.
From-SVN: r124557
Kazu Hirata [Tue, 8 May 2007 21:26:29 +0000 (21:26 +0000)]
emit-rtl.c (unshare_all_rtl_1): Don't copy DECL_RTL.
* emit-rtl.c (unshare_all_rtl_1): Don't copy DECL_RTL. Don't
call unshare_all_decls.
(unshare_all_rtl): Adjust the call to unshare_all_rtl_1.
(unshare_all_decls): Remove.
From-SVN: r124556
Simon Martin [Tue, 8 May 2007 15:33:56 +0000 (15:33 +0000)]
re PR tree-optimization/31847 (Printing to dump file broken)
2007-05-08 Simon Martin <simartin@users.sourceforge.net>
PR 31847
* tree-dump.c (dump_options): Don't use TDF_DIAGNOSTIC in "*-all" tree
dumps.
From-SVN: r124551
Paul Thomas [Tue, 8 May 2007 14:40:58 +0000 (14:40 +0000)]
re PR fortran/31630 (ICE on nasty derived types code)
2007-05-08 Paul Thomas <pault@gcc.gnu.org>
PR fortran/31630
* resolve.c (resolve_symbol): Remove the flagging mechanism from the
formal namespace resolution and instead check that the formal
namespace is not the current namespace.
From-SVN: r124550
Paul Thomas [Tue, 8 May 2007 12:45:31 +0000 (12:45 +0000)]
re PR fortran/31692 (Wrong code when passing function name as result to procedures)
2007-05-08 Paul Thomas <pault@gcc.gnu.org>
PR fortran/31692
* trans-array.c (gfc_conv_array_parameter): Convert full array
references to the result of the procedure enclusing the call.
2007-05-08 Paul Thomas <pault@gcc.gnu.org>
PR fortran/31692
* gfortran.dg/actual_array_result_1.f90: New test.
From-SVN: r124546
Sandra Loosemore [Tue, 8 May 2007 12:44:21 +0000 (08:44 -0400)]
mips.h (MAX_FPRS_PER_FMT): Renamed from FP_INC.
2007-05-08 Sandra Loosemore <sandra@codesourcery.com>
Nigel Stephens <nigel@mips.com>
gcc/
* config/mips/mips.h (MAX_FPRS_PER_FMT): Renamed from FP_INC.
Update comments and all uses.
(MIN_FPRS_PER_FMT): Define.
* config/mips/mips.c (function_arg): Fix to correctly handle
the -mips32r2 -mfp64 -mabi=32 case.
(override_options): Enable use of odd-numbered registers for
SFmode values on MIPS32.
(mips_save_reg_p): Save whole floating-point register pair if
either half is used.
(compute_frame_size): Fix comment.
Co-Authored-By: Nigel Stephens <nigel@mips.com>
From-SVN: r124545
Jie Zhang [Tue, 8 May 2007 12:33:23 +0000 (12:33 +0000)]
bfin-protos.h (enum bfin_cpu): Add BFIN_CPU_BF534, BFIN_CPU_BF536 and BFIN_CPU_BF561.
* config/bfin/bfin-protos.h (enum bfin_cpu): Add
BFIN_CPU_BF534, BFIN_CPU_BF536 and BFIN_CPU_BF561.
* config/bfin/bfin.c (bfin_handle_option): Handle
-mcpu=bf534, -mcpu=bf536 and -mcpu=bf561.
* config/bfin/bfin.h (TARGET_CPU_CPP_BUILTINS):
Support bf534, bf536 and bf561.
* doc/invoke.texi (Blackfin Options): Document -mcpu and -msim.
From-SVN: r124544
Benjamin Kosnik [Tue, 8 May 2007 12:10:48 +0000 (12:10 +0000)]
type_traits (make_signed): Remove specializations for floating point types.
2007-05-08 Benjamin Kosnik <bkoz@redhat.com>
* include/std/type_traits (make_signed): Remove specializations
for floating point types.
(make_unsigned): Same.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Fix.
* testsuite/20_util/make_signed/requirements/typedefs-1.cc: Same.
* testsuite/20_util/make_signed/requirements/typedefs-2.cc: Same.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Same.
* testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Same.
* testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Same.
From-SVN: r124543
Jie Zhang [Tue, 8 May 2007 11:59:08 +0000 (11:59 +0000)]
bfin-protos.h (bfin_expand_epilogue): Add a third argument of type bool.
* config/bfin/bfin-protos.h (bfin_expand_epilogue): Add a third
argument of type bool.
* config/bfin/bfin.c (add_to_reg): Add epilogue_p as a fourth
argument. Safely select temporary P register according to it.
(do_link): Change call site of add_to_reg accordingly.
(do_unlink): Add epilogue_p as a fourth argument and pass it
to add_to_reg.
(expand_interrupt_handler_epilogue): Change call of do_unlink
accordingly.
(bfin_expand_prologue): Add a third argument sibcall_p.
* config/bfin/bfin.md (epilogue): Change call of
bfin_expand_epilogue accordingly.
(sibcall_epilogue): Likewise.
(eh_return_internal): Likewise.
From-SVN: r124542
Paul Thomas [Tue, 8 May 2007 11:58:25 +0000 (11:58 +0000)]
re PR fortran/29397 (Constant logical expression with parameter array)
2007-05-08 Paul Thomas <pault@gcc.gnu.org>
PR fortran/29397
PR fortran/29400
* decl.c (add_init_expr_to_sym): Expand a scalar initializer
for a parameter array into an array expression with the right
shape.
* array.c (spec_dimen_size): Remove static attribute.
* gfortran.h : Prototype for spec_dimen_size.
2007-05-08 Paul Thomas <pault@gcc.gnu.org>
PR fortran/29397
* gfortran.dg/parameter_array_init_1.f90: New test.
PR fortran/29400
* gfortran.dg/parameter_array_init_2.f90: New test.
From-SVN: r124541
Benjamin Kosnik [Tue, 8 May 2007 10:44:37 +0000 (10:44 +0000)]
types_std_c++0x_neg.cc: New.
2007-05-08 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/26_numerics/headers/cmath/types_std_c++0x_neg.cc: New.
From-SVN: r124540
Jason Merrill [Tue, 8 May 2007 06:50:32 +0000 (02:50 -0400)]
cxxabi-internal.h: Remove, to be replaced by...
* libsupc++/cxxabi-internal.h: Remove, to be replaced by...
* libsupc++/cxxabi-forced.h: ...this new file.
* include/ext/vstring.tcc: Include cxxabi-forced.h instead.
* include/bits/istream.tcc: Likewise.
* include/bits/ostream.tcc: Likewise.
* include/bits/basic_string.tcc: Likewise.
* include/bits/ostream_insert.h: Likewise.
* include/bits/fstream.tcc: Likewise.
* include/std/bitset: Likewise.
* libsupc++/cxxabi.h: Restore previous contents.
* Makefile.am (headers): Add cxxabi-forced.h.
* Makefile.in: Regenerate.
From-SVN: r124539
Uros Bizjak [Tue, 8 May 2007 06:48:15 +0000 (08:48 +0200)]
re PR target/31854 (internal compiler error: in cgraph_local_info, at cgraph.c:618)
PR target/31854
* config/i386/i386.c (ix86_function_regparm): Process local
functions only when TREE_CODE (decl) equals FUNCTION_DECL.
From-SVN: r124538
Benjamin Kosnik [Tue, 8 May 2007 06:04:52 +0000 (06:04 +0000)]
testsuite_abi.cc: Add CXXABI_1.3.2.
2007-05-08 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/util/testsuite_abi.cc: Add CXXABI_1.3.2.
* libsupc++/cxxabi-internal.h (__foreign_exception::__pure): To
__pure_virtual.
From-SVN: r124537
Jason Merrill [Tue, 8 May 2007 05:09:44 +0000 (01:09 -0400)]
include cstring as well
From-SVN: r124536
Janis Johnson [Tue, 8 May 2007 03:16:25 +0000 (03:16 +0000)]
* gcc.dg/pch/pch.exp: XFAIL largefile on Solaris 10 x86.
From-SVN: r124535
Mike Stump [Tue, 8 May 2007 01:31:24 +0000 (01:31 +0000)]
invoke.texi (Warning Options): Document that -Wempty-body also checks for and while statements in C++.
* doc/invoke.texi (Warning Options): Document that -Wempty-body
also checks for and while statements in C++.
cp:
* parser.c (check_empty_body): Add.
(cp_parser_iteration_statement): Add call to check_empty_body.
testsuite:
* g++.old-deja/g++.mike/empty.C: Add.
From-SVN: r124534
Eric Christopher [Tue, 8 May 2007 01:21:48 +0000 (01:21 +0000)]
invalid-call-1.c: Fix options for 32-bit x86.
2007-05-07 Eric Christopher <echristo@apple.com>
* gcc.dg/invalid-call-1.c: Fix options for 32-bit x86.
From-SVN: r124533
Nathan Froyd [Tue, 8 May 2007 00:37:39 +0000 (00:37 +0000)]
libiberty.h (writeargv): Declare.
include/
2007-05-07 Nathan Froyd <froydnj@codesourcery.com>
* libiberty.h (writeargv): Declare.
libiberty/
2007-05-07 Nathan Froyd <froydnj@codesourcery.com>
* argv.c (writeargv): New function.
gcc/
2007-05-07 Nathan Froyd <froydnj@codesourcery.com>
* gcc.c (at_file_supplied): New variable.
(main): Set it if we expanded argv.
(do_spec_1): Pass an @-file to the linker if we were called with
an @-file argument and HAVE_GNU_LD.
* collect2.c (at_file_supplied): New variable.
(response_file): New variable.
(collect_exit): Unlink response_file if necessary.
(handler): Likewise.
(do_wait): Likewise.
(main): Set at_file_supplied if we expanded argv.
(collect_execute): Pass an @-file to subprocesses if we were called
with an @-file argument.
* configure.ac: Add define for HAVE_GNU_LD.
* configure: Regenerate.
* config.in: Regenerate.
From-SVN: r124532
Ian Lance Taylor [Tue, 8 May 2007 00:29:43 +0000 (00:29 +0000)]
re PR java/31842 (r124338 causes java Divide_1 and pr6388 to fail)
PR java/31842
* java/lang/natString.cc (_Jv_FormatInt): Avoid undefined signed
overflow.
From-SVN: r124530
GCC Administrator [Tue, 8 May 2007 00:17:39 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r124527
Naveen.H.S [Mon, 7 May 2007 23:46:02 +0000 (23:46 +0000)]
muldiv.md (mulhisi3_c): Limit the mode of the 2nd operand to HI mode.
* config/m32c/muldiv.md (mulhisi3_c): Limit the mode of the 2nd
operand to HI mode.
(mulsi3): New.
(divsi3): New.
(udivsi3): New.
From-SVN: r124524
Jayant Sonar [Mon, 7 May 2007 23:13:15 +0000 (23:13 +0000)]
m32c.c (SYMBOL_FLAG_FUNCVEC_FUNCTION): Define.
* config/m32c/m32c.c (SYMBOL_FLAG_FUNCVEC_FUNCTION): Define.
(TARGET_ENCODE_SECTION_INFO): Re-define.
(m32c_encode_section_info): New
(function_vector_handler): New
(current_function_special_page_vector): New
(m32c_special_page_vector_p): New.
* config/m32c/m32c-protos.h (m32c_special_page_vector_p):
Prototype.
* config/m32c/jump.md: Added instruction JSRS for functions
with attribute "function_vector".
* doc/extend.texi (function_vector): Added description
for M16C, M32C targets.
From-SVN: r124523
Jason Merrill [Mon, 7 May 2007 22:44:54 +0000 (18:44 -0400)]
* include/bits/ostream.tcc (operator<<(char*)): Add __s.
From-SVN: r124522
DJ Delorie [Mon, 7 May 2007 22:14:05 +0000 (18:14 -0400)]
re PR target/31794 (Problem while compiling gcc for m32c-elf)
PR 31794
* config/m32c/shift.md (ashlpsi3_i, ashrpsi3_i, ashlpsi3,
ashrpsi3, lshrpsi3): Update shift count constraint.
From-SVN: r124521
Jason Merrill [Mon, 7 May 2007 21:49:50 +0000 (17:49 -0400)]
gnu.ver: Fix symbol versions.
* config/abi/pre/gnu.ver: Fix symbol versions.
* config/abi/pre/gnu-versioned-namespace.ver: Likewise.
From-SVN: r124520
Danny Smith [Mon, 7 May 2007 21:38:16 +0000 (21:38 +0000)]
* config/os/mingw32/os_defines.h (NOMINMAX): Update comment.
From-SVN: r124519
Jason Merrill [Mon, 7 May 2007 21:27:54 +0000 (17:27 -0400)]
re PR other/28145 (C++ (throw() and catch(...) {/* fall through */ } ) and pthread cancellation are incompatible (at least with NPTL))
PR c++/28145
* libsupc++/cxxabi.h (__forced_unwind, __foreign_exception):
New classes.
* libsupc++/eh_exception.cc: Define their destructors.
* config/abi/pre/gnu.ver: Export their type_infos.
* config/abi/pre/gnu-versioned-namespace.ver: Likewise.
* libsupc++/eh_personality.cc: A handler for abi::__forced_unwind
matches a forced unwind, and a handler for abi::__foreign_exception
matches a foreign exception.
* include/bits/istream.tcc: Rethrow forced unwind.
* include/bits/ostream.tcc: Likewise.
* include/bits/ostream_insert.h: Likewise.
* include/bits/basic_string.tcc (operator>>, getline): Likewise.
* include/bits/fstream.tcc (basic_filebuf::close): Likewise.
* include/ext/vstring.cc (operator>>, getline): Likewise.
* src/istream.cc: Likewise.
* src/compatibility.cc (basic_istream::ignore): Likewise.
* include/std/bitset (operator>>): Likewise.
* include/std/fstream (basic_filebuf::close): Remove throw() spec.
* libsupc++/cxxabi-internal.h: Split out from...
* libsupc++/cxxabi.h: ...here.
From-SVN: r124517
Keith Seitz [Mon, 7 May 2007 20:48:01 +0000 (20:48 +0000)]
Jdwp.class: Regenerate.
* classpath/lib/gnu/classpath/jdwp/Jdwp.class: Regenerate.
* classpath/lib/gnu/classpath/jdwp/Jdwp$1.class: Regenerate.
* classpath/lib/gnu/classpath/jdwp/event/Event.class:
Regenerate.
* classpath/lib/gnu/classpath/jdwp/transport/JdwpConnection.class:
Regenerate.
* gnu/classpath/jdwp/Jdwp.h: Regenerate.
* gnu/classpath/jdwp/event/Event.h: Regenerate.
* gnu/classpath/jdwp/transport/JdwpConnection.h: Regenerate.
From-SVN: r124515
Keith Seitz [Mon, 7 May 2007 20:45:21 +0000 (20:45 +0000)]
Jdwp.java (notify): Rewrite to call new array-based method.
* gnu/classpath/jdwp/Jdwp.java (notify): Rewrite to call
new array-based method.
(notify): New function.
(sendEvent): Rewrite to use sendEvents.
(sendEvents): New method.
* gnu/classpath/jdwp/event/Event.java (toPacket): Make static.
Change parameters to use arrays for events and requests.
Add suspendPolicy parameter.
Move per-event data transformation to...
(_toData): ... here.
* gnu/classpath/jdwp/transport/JdwpConnection.java
(sendEvent): Renamed to ...
(sendEvents): ... this.
Change parameters to use arrays for events and requests.
Add suspendPolicy parameter.
From-SVN: r124514