Uros Bizjak
49452c070f
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
2007-05-14 21:42:47 +02:00
Francois-Xavier Coudert
1529b8d9be
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
2007-05-14 19:33:57 +00:00
François-Xavier Coudert
1af5627c40
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
2007-05-14 19:29:33 +00:00
Dave Korn
9c40feebdb
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
2007-05-14 16:46:44 +00:00
Paolo Carlini
2fdff2be24
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
2007-05-14 16:44:31 +00:00
Paolo Carlini
56f78eecdc
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
2007-05-14 14:47:39 +00:00
Rafael Avila de Espindola
ca5ba2a3ea
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
2007-05-14 14:37:17 +00:00
Kazu Hirata
a424273720
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
2007-05-14 13:52:18 +00:00
Roberto Costa
ab6bd6931e
Updated Roberto Costa's address.
...
From-SVN: r124711
2007-05-14 12:34:19 +00:00
Paolo Carlini
1398d72289
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
2007-05-14 10:52:34 +00:00
Paolo Carlini
ee60de3614
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
2007-05-14 10:52:05 +00:00
Thomas Neumann
388cdf0703
* MAINTAINERS (Write After Approval): Add myself.
...
From-SVN: r124708
2007-05-14 06:40:54 +00:00
Mark Mitchell
6d707d0882
* gennews (files): Reference GCC 4.2 web pages.
...
From-SVN: r124664
2007-05-14 00:33:48 +00:00
GCC Administrator
8ec86f64d3
Daily bump.
...
From-SVN: r124661
2007-05-14 00:17:52 +00:00
Dominique d'Humieres
90d80eac40
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
2007-05-14 00:12:39 +00:00
Daniel Berlin
4076455d9b
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
2007-05-13 21:52:10 +00:00
Zdenek Dvorak
3cb960c703
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
2007-05-13 17:32:06 +00:00
Paolo Carlini
de5e4138e5
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
2007-05-13 16:23:20 +00:00
Richard Guenther
cbc862b223
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
2007-05-13 12:18:19 +00:00
Paolo Carlini
c1cd4e0958
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
2007-05-13 10:08:13 +00:00
Revital Eres
8a8b05f463
Extend dse
...
From-SVN: r124651
2007-05-13 07:49:47 +00:00
GCC Administrator
cd2d8c70db
Daily bump.
...
From-SVN: r124645
2007-05-13 00:17:19 +00:00
Steven Bosscher
bae8b6b2c3
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
2007-05-12 18:15:38 +00:00
Steven Bosscher
7f6055d052
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
2007-05-12 18:12:54 +00:00
David Daney
8c0dbf3490
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
2007-05-12 17:37:55 +00:00
Richard Guenther
c4160806e1
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
2007-05-12 17:21:43 +00:00
Richard Sandiford
a747170836
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
2007-05-12 08:00:12 +00:00
Paul Thomas
eb77cddf42
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
2007-05-12 06:19:43 +00:00
GCC Administrator
e39187d4f3
Daily bump.
...
From-SVN: r124631
2007-05-12 00:18:05 +00:00
Steve Ellcey
cf63664aec
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
2007-05-11 22:56:10 +00:00
Paolo Carlini
538075fe42
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
2007-05-11 18:58:08 +00:00
Silvius Rus
79bedddc8f
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
2007-05-11 16:20:08 +00:00
Benjamin Kosnik
8339896e55
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
2007-05-11 16:05:57 +00:00
Silvius Rus
23f24034cb
MAINTAINERS (Write After Approval): Add myself.
...
* MAINTAINERS (Write After Approval): Add myself.
From-SVN: r124620
2007-05-11 15:54:44 +00:00
Zdenek Dvorak
9ba025a2c1
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
2007-05-11 15:52:01 +00:00
Jan Hubicka
7be8227904
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
2007-05-11 12:18:17 +00:00
Paolo Carlini
2a5fce6d48
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
2007-05-11 11:49:29 +00:00
Paul Thomas
fc2d8680dd
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
2007-05-11 11:46:47 +00:00
Paul Thomas
847b053dd2
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
2007-05-11 11:42:56 +00:00
Andreas Krebbel
35dd9a0e6d
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
2007-05-11 08:40:52 +00:00
Paul Thomas
6c12686bc7
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
2007-05-11 06:19:57 +00:00
Paolo Carlini
1b716e906b
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
2007-05-11 00:55:17 +00:00
GCC Administrator
81cfbea3d1
Daily bump.
...
From-SVN: r124607
2007-05-11 00:17:46 +00:00
Zdenek Dvorak
e71d7f88ba
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
2007-05-10 21:33:11 +00:00
Roman Zippel
5635c26e57
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
2007-05-10 21:29:04 +00:00
Roman Zippel
e6fbf387cf
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
2007-05-10 21:20:02 +00:00
Roman Zippel
b5296e520d
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
2007-05-10 21:06:55 +00:00
Dominique d'Humieres
8b42b2fb96
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
2007-05-10 13:11:45 -07:00
Mike Stump
40790141b7
Improve comment...
...
From-SVN: r124597
2007-05-10 18:52:03 +00:00
Bernd Schmidt
b548a9c2c2
bfin.h (MOVE_RATIO): Define.
...
* config/bfin/bfin.h (MOVE_RATIO): Define.
From-SVN: r124596
2007-05-10 13:07:24 +00:00