GCC Administrator [Tue, 13 May 2008 00:17:49 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r135250
Arnaud Charlet [Mon, 12 May 2008 23:58:11 +0000 (23:58 +0000)]
re PR ada/31808 (cross-built gnattools installs vxaddr2line regardless of target triplet)
PR ada/31808
* Makefile.in (gnattools-cross): Do not build vxaddr2line
From-SVN: r135239
Janis Johnson [Mon, 12 May 2008 23:37:59 +0000 (23:37 +0000)]
pr11832.c: XFAIL for mips and powerpc-linux, then ignore ICE message to avoid a second failure.
* gcc.c-torture/compile/pr11832.c: XFAIL for mips and powerpc-linux,
then ignore ICE message to avoid a second failure.
* gcc.c-torture/compile/pr33009.c: Ditto.
* lib/gcc-dg.exp: Explain in comment how to XFAIL an ICE.
From-SVN: r135238
Kaz Kojima [Mon, 12 May 2008 23:23:51 +0000 (23:23 +0000)]
sh.c (sh_expand_prologue): Don't clear RTX_FRAME_RELATED_P for push insns.
* config/sh/sh.c (sh_expand_prologue): Don't clear
RTX_FRAME_RELATED_P for push insns.
From-SVN: r135237
Andy Hutchinson [Mon, 12 May 2008 21:52:38 +0000 (21:52 +0000)]
pr34457-1.c: Skip for target without trampolines.
* gcc.dg/pr34457-1.c: Skip for target without trampolines.
* gcc.dg/
20050607-1.c: Ditto.
* gcc.dg/trampoline-1.c: Ditto.
* gcc.dg/debug/debug-3.c: Ditto.
* gcc.dg/debug/debug-5.c: Ditto.
From-SVN: r135235
Andy Hutchinson [Mon, 12 May 2008 21:37:41 +0000 (21:37 +0000)]
* config/avr/avr.h (MAX_OFILE_ALIGNMENT): Define.
From-SVN: r135234
Anatoly Sokolov [Mon, 12 May 2008 20:39:51 +0000 (00:39 +0400)]
avr.h (machine_function): Add 'is_leaf' field.
* config/avr/avr.h (machine_function): Add 'is_leaf' field.
* config/avr/avr.c (avr_regs_to_save): Compute 'machine->is_leaf'.
Use 'machine->is_leaf' instead of 'leaf_func_p'.
From-SVN: r135231
Samuel Tardieu [Mon, 12 May 2008 20:34:31 +0000 (20:34 +0000)]
sem_ch3.adb (Build_Derived_Record_Type): Accept statically matching constraint expressions.
gcc/ada/
* sem_ch3.adb (Build_Derived_Record_Type): Accept statically matching
constraint expressions.
gcc/testsuite/
* gnat.dg/specs/statically_matching.ads: New.
From-SVN: r135230
H.J. Lu [Mon, 12 May 2008 20:29:37 +0000 (20:29 +0000)]
sse.md (*sse_concatv4sf): Renamed to ...
gcc/
2008-05-12 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/sse.md (*sse_concatv4sf): Renamed to ...
(*vec_concatv4sf_sse): This.
(*sse2_concatv2si): Renamed to ...
(*vec_concatv2si_sse2): This.
(*sse1_concatv2si): Renamed to ...
(*vec_concatv2si_sse): This.
(*vec_concatv2di_rex): Renamed to ...
(*vec_concatv2di_rex64): This.
(*vec_concatv2si_sse4_1): New.
(*vec_concatv2di_rex64_sse4_1): Likewise.
gcc/testsuite
2008-05-12 H.J. Lu <hongjiu.lu@intel.com>
* gcc.target/i386/sse2-set-epi32-1.c: New.
* gcc.target/i386/sse2-set-epi64x-1.c: Likewise.
* gcc.target/i386/sse4_1-set-epi32-1.c: Likewise.
* gcc.target/i386/sse4_1-set-epi64x-1.c: Likewise.
From-SVN: r135229
Uros Bizjak [Mon, 12 May 2008 16:55:43 +0000 (18:55 +0200)]
re PR rtl-optimization/36111 (GCC 4.4.0-
20080501 failed to compile openmpi's malloc.c file.)
PR rtl-optimization/36111
* recog.c (validate_replace_rtx_1): Unshare new RTL expression
that was created for swappable operands.
testsuite/ChangeLog:
PR rtl-optimization/36111
* gcc.dg/pr36111.c: New test.
From-SVN: r135221
Samuel Tardieu [Mon, 12 May 2008 16:25:07 +0000 (16:25 +0000)]
re PR ada/36001 ($(GNATMAKE) not defined with 'cd gcc && make')
2008-05-12 Samuel Tardieu <sam@rfc1149.net>
Paolo Bonzini <bonzini@gnu.org>
PR ada/36001
* acx.m4: Add optional parameter to ACX_PROG_GNAT.
gcc:
2008-05-12 Samuel Tardieu <sam@rfc1149.net>
Paolo Bonzini <bonzini@gnu.org>
PR ada/36001
* Makefile.in: Substitute GNATMAKE and GNATBIND.
* configure.ac: Add call to ACX_PROG_GNAT.
Co-Authored-By: Paolo Bonzini <bonzini@gnu.org>
From-SVN: r135220
François-Xavier Coudert [Mon, 12 May 2008 15:51:27 +0000 (15:51 +0000)]
re PR fortran/36176 (TRANSFER of constant substrings)
PR fortran/36176
* target-memory.c (gfc_target_expr_size): Correctly treat
substrings.
(gfc_target_encode_expr): Likewise.
(gfc_interpret_complex): Whitespace change.
* gfortran.dg/transfer_simplify_9.f90: New test.
From-SVN: r135219
Paolo Carlini [Mon, 12 May 2008 15:18:52 +0000 (15:18 +0000)]
re PR c++/35331 (ICE with invalid specialization of variadic template)
/cp
2008-05-12 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/35331
* semantics.c (begin_class_definition): Extend checks on the first
argument.
/testsuite
2008-05-12 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/35331
* g++.dg/cpp0x/vt-35331.C: New.
* g++.dg/cpp0x/pr32125.C: Adjust.
* g++.dg/cpp0x/pr32126.C: Likewise.
* g++.dg/cpp0x/pr31438.C: Likewise.
* g++.dg/cpp0x/variadic81.C: Likewise.
* g++.dg/cpp0x/vt-34055.C: Likewise.
* g++.dg/cpp0x/vt-34606.C: Likewise.
From-SVN: r135216
Tomas Bily [Mon, 12 May 2008 14:20:35 +0000 (16:20 +0200)]
* utils2.c (known_alignment, contains_save_expr_p)
(gnat_mark_addressable): Use CASE_CONVERT.
* decl.c (annotate_value): Likewise.
* trans.c (maybe_stabilize_reference): Likewise.
* utils2.c (build_binary_op): Use CONVERT_EXPR_P.
* utils.c (rest_of_record_type_compilation): Likewise.
* trans.c (protect_multiple_eval, Attribute_to_gnu)
(protect_multiple_eval): Likewise.
From-SVN: r135215
Tomas Bily [Mon, 12 May 2008 13:32:05 +0000 (15:32 +0200)]
typeck2.c (digest_init): Use CONVERT_EXPR_P.
* typeck2.c (digest_init): Use CONVERT_EXPR_P.
* call.c (build_over_call): Likewise.
* error.c (dump_expr): Use CASE_CONVERT.
* class.c (fixed_type_or_null): Likewise.
From-SVN: r135213
Tomas Bily [Mon, 12 May 2008 13:08:27 +0000 (15:08 +0200)]
objc-act.c (objc_generate_write_barrier, [...]): Use CONVERT_EXPR_P.
* objc-act.c (objc_generate_write_barrier,
objc_finish_message_expr): Use CONVERT_EXPR_P.
From-SVN: r135212
Ira Rosen [Mon, 12 May 2008 12:15:17 +0000 (12:15 +0000)]
ChangeLog: Fix the date.
* ChangeLog: Fix the date.
From-SVN: r135211
Ira Rosen [Mon, 12 May 2008 11:03:11 +0000 (11:03 +0000)]
pr36119.f: Rename to ...
* gfortran.dg/vect/pr36119.f: Rename to ...
* gfortran.dg/vect/O3-pr36119.f90: ... this. Compile for all targets
with -O3.
From-SVN: r135209
Stefano Soffia [Mon, 12 May 2008 10:15:34 +0000 (12:15 +0200)]
vector (vector<>::_M_requires_reallocation): Just use this->capacity().
2008-05-12 Stefano Soffia <soffia@cs.unipr.it>
Paolo Carlini <paolo.carlini@oracle.com>
* include/debug/vector (vector<>::_M_requires_reallocation): Just
use this->capacity().
(vector<>::capacity): Move non-pedantic / pedantic logic here.
* testsuite/23_containers/vector/
debug_mode_requires_reallocation-2.cc: New.
* testsuite/23_containers/vector/debug_mode_requires_reallocation.cc:
Rename to debug_mode_requires_reallocation-1.cc
Co-Authored-By: Paolo Carlini <paolo.carlini@oracle.com>
From-SVN: r135208
Adam Nemet [Mon, 12 May 2008 02:07:56 +0000 (02:07 +0000)]
mips.exp: Move passing -DMIPS16=...
* gcc.target/mips/mips.exp: Move passing -DMIPS16=... from here ...
* lib/target-supports.exp (add_options_for_mips16_attribute):
... to here.
From-SVN: r135202
GCC Administrator [Mon, 12 May 2008 00:17:30 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r135200
Thomas Koenig [Sun, 11 May 2008 20:28:52 +0000 (20:28 +0000)]
re PR fortran/35719 (pointer to zero sized array not associated)
2008-05-11 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/35719
* trans.c (gfc_call_malloc): If size equals zero, allocate one
byte; don't return a null pointer.
2008-05-11 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/35719
* gfortran.dg/associated_5.f90: New test.
From-SVN: r135187
Volker Reichelt [Sun, 11 May 2008 19:52:18 +0000 (19:52 +0000)]
parser.c (cp_parser_omp_clause_reduction): Add missing "expected" in error message.
* parser.c (cp_parser_omp_clause_reduction): Add missing "expected"
in error message.
(cp_parser_omp_clause_schedule): Remove superfluous "expected"
in error message.
From-SVN: r135184
Volker Reichelt [Sun, 11 May 2008 19:43:00 +0000 (19:43 +0000)]
* optc-gen.awk: Fix comment typo.
From-SVN: r135183
Jerry DeLisle [Sun, 11 May 2008 15:02:41 +0000 (15:02 +0000)]
re PR libfortran/36202 ([mingw] Namelist read fails with CRLF)
2008-05-11 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/36202
* io/list_read (eat_separator): Handle the CR-LF case correctly.
From-SVN: r135177
Joseph Myers [Sun, 11 May 2008 13:44:11 +0000 (14:44 +0100)]
* zh_CN.po: Update.
From-SVN: r135173
Richard Sandiford [Sun, 11 May 2008 12:03:07 +0000 (12:03 +0000)]
scc-1.c: Require mips16_attribute, and add the associated options.
gcc/testsuite/
* gcc.target/mips/scc-1.c: Require mips16_attribute, and add
the associated options.
* gcc.target/mips/scc-3.c: Likewise.
From-SVN: r135172
Aaron W. LaFramboise [Sun, 11 May 2008 10:06:57 +0000 (04:06 -0600)]
pretty-print.c (pp_integer_with_precision): Use HOST_LONG_LONG_FORMAT.
2008-05-11 Aaron W. LaFramboise <aaronavay62@aaronwl.com>
* pretty-print.c (pp_integer_with_precision): Use
HOST_LONG_LONG_FORMAT.
From-SVN: r135171
Francois-Xavier Coudert [Sun, 11 May 2008 09:55:34 +0000 (09:55 +0000)]
default_format_1.f90: Move denormals tests to gfortran.dg/default_format_denormal_1.f90.
* gfortran.dg/default_format_1.f90: Move denormals tests to
gfortran.dg/default_format_denormal_1.f90.
* gfortran.dg/default_format_denormal_1.f90: Added denormal tests.
From-SVN: r135170
GCC Administrator [Sun, 11 May 2008 00:17:58 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r135168
Francois-Xavier Coudert [Sat, 10 May 2008 22:30:17 +0000 (22:30 +0000)]
* gfortran.dg/nint_2.f90: XFAIL on mingw.
From-SVN: r135164
Francois-Xavier Coudert [Sat, 10 May 2008 20:57:42 +0000 (20:57 +0000)]
streamio_15.f90: Take care of Windows CRLF line terminator.
* gfortran.dg/streamio_15.f90: Take care of Windows CRLF line
terminator.
From-SVN: r135162
Francois-Xavier Coudert [Sat, 10 May 2008 20:47:41 +0000 (20:47 +0000)]
fseek.f90: Take care of Windows CRLF line terminator.
* gfortran.dg/fseek.f90: Take care of Windows CRLF line
terminator.
From-SVN: r135161
Francois-Xavier Coudert [Sat, 10 May 2008 20:32:40 +0000 (20:32 +0000)]
fmt_t_5.f90: Take care of Windows CRLF line terminator.
* gfortran.dg/fmt_t_5.f90: Take care of Windows CRLF line
terminator.
From-SVN: r135160
Kenneth Zadeck [Sat, 10 May 2008 20:28:19 +0000 (20:28 +0000)]
re PR c++/36185 (wrong code with -O2 -fgcse-sm)
2008-05-10 Kenneth Zadeck <zadeck@naturalbridge.com>
* gcse.c (store_killed_in_insn): Negated call to RTL_CONST_CALL_P.
2008-05-10 Kenneth Zadeck <zadeck@naturalbridge.com>
PR rtl-optimization/36185
* g++.dg/opt/pr36185.C
From-SVN: r135159
Francois-Xavier Coudert [Sat, 10 May 2008 19:37:45 +0000 (19:37 +0000)]
write_to_null.f90: Rename to write_to_null.F90.
* write_to_null.f90: Rename to write_to_null.F90.
* write_to_null.F90: On Windows, "nul" is the equivalent of the
Unix /dev/null.
From-SVN: r135158
Francois-Xavier Coudert [Sat, 10 May 2008 16:39:27 +0000 (16:39 +0000)]
re PR fortran/36197 ([4.4 Regressio]: gfortran.dg/initialization_12.f90)
PR fortran/36197
* module.c (quote_string): Fix sprintf format.
From-SVN: r135154
Roberto Bagnara [Sat, 10 May 2008 15:02:34 +0000 (17:02 +0200)]
vector (vector<>::_M_requires_reallocation): Fix macro.
2008-05-10 Roberto Bagnara <bagnara@cs.unipr.it>
Paolo Carlini <paolo.carlini@oracle.com>
* include/debug/vector (vector<>::_M_requires_reallocation): Fix macro.
* testsuite/23_containers/vector/debug_mode_requires_reallocation.cc:
New.
Co-Authored-By: Paolo Carlini <paolo.carlini@oracle.com>
From-SVN: r135151
H.J. Lu [Sat, 10 May 2008 12:56:45 +0000 (12:56 +0000)]
i386.c (bdesc_ptest): Removed.
2008-05-10 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/i386.c (bdesc_ptest): Removed.
(ix86_builtin_type): Add INT_FTYPE_V2DI_V2DI_PTEST.
(bdesc_args): Add __builtin_ia32_ptestz128,
__builtin_ia32_ptestc128 and __builtin_ia32_ptestnzc128.
(ix86_init_mmx_sse_builtins): Updated.
(ix86_expand_args_builtin): Handle INT_FTYPE_V2DI_V2DI_PTEST.
(ix86_expand_builtin): Updated.
From-SVN: r135144
Richard Sandiford [Sat, 10 May 2008 12:18:24 +0000 (12:18 +0000)]
tree-cfg.c (valid_fixed_convert_types_p): New function.
gcc/
* tree-cfg.c (valid_fixed_convert_types_p): New function.
(verify_gimple_expr): Handle FIXED_CONVERT_EXPR.
From-SVN: r135143
Richard Sandiford [Sat, 10 May 2008 12:00:37 +0000 (12:00 +0000)]
re PR rtl-optimization/33642 (unrecognizable insn for -frtl-abstract-sequences)
gcc/testsuite/
PR rtl-optimization/33642
* gcc.c-torture/compile/pr11832.c: Skip for MIPS.
* gcc.c-torture/compile/pr33009.c: Likewise.
From-SVN: r135142
Uros Bizjak [Sat, 10 May 2008 11:55:25 +0000 (13:55 +0200)]
value-prof.c (interesting_stringop_to_profile): Do not return early for BUILT_IN_MEMPCPY.
* value-prof.c (interesting_stringop_to_profile): Do not
return early for BUILT_IN_MEMPCPY.
From-SVN: r135141
Richard Sandiford [Sat, 10 May 2008 11:37:47 +0000 (11:37 +0000)]
* MAINTAINERS: Update my email address.
From-SVN: r135140
Paolo Carlini [Sat, 10 May 2008 10:38:37 +0000 (10:38 +0000)]
MAINTAINERS: Update my email address.
2008-05-10 Paolo Carlini <paolo.carlini@oracle.com>
* MAINTAINERS: Update my email address.
From-SVN: r135137
Tom Tromey [Sat, 10 May 2008 00:48:58 +0000 (00:48 +0000)]
* gcc.dg/pr22231.c: Fix dg-error call.
From-SVN: r135136
H.J. Lu [Sat, 10 May 2008 00:41:39 +0000 (00:41 +0000)]
calls.c (expand_call): Don't use callgraph to increase preferred_stack_boundary.
2008-05-09 H.J. Lu <hongjiu.lu@intel.com>
* calls.c (expand_call): Don't use callgraph to increase
preferred_stack_boundary.
* cgraph.h (cgraph_rtl_info): Use unsigned on
preferred_incoming_stack_boundary.
* final.c (rest_of_clean_state): Use unsigned on
preferred_stack_boundary.
From-SVN: r135134
GCC Administrator [Sat, 10 May 2008 00:17:45 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r135132
Tom Tromey [Fri, 9 May 2008 22:17:00 +0000 (22:17 +0000)]
re PR preprocessor/22231 (-MG ignores missing headers even with -c)
gcc
PR preprocessor/22231:
* c-opts.c (sanitize_cpp_opts): Disallow -MG if compilation is
proceeding.
gcc/testsuite
PR preprocessor/22231:
* gcc.dg/pr22231.c: New file.
From-SVN: r135128
Richard Biener [Fri, 9 May 2008 20:04:57 +0000 (20:04 +0000)]
re PR tree-optimization/36187 (Partitioning problem with SFTs (again))
2008-05-09 Richard Guenther <rguenther@suse.de>
PR tree-optimization/36187
* g++.dg/opt/pr36187.C: New testcase.
From-SVN: r135126
Uros Bizjak [Fri, 9 May 2008 18:21:05 +0000 (20:21 +0200)]
re PR tree-optimization/36129 (ICE with -fprofile-use)
PR tree-optimization/36129
* tree-ssa-cpp.c: Include value-prof.h.
(execute_fold_all_builtins): Call gimple_remove_stmt_histograms if
built-in function was folded to a constant.
* Makefile.in (tree-ssa-cpp.c): Depend on value-prof.h
From-SVN: r135123
Jan Sjodin [Fri, 9 May 2008 16:17:47 +0000 (16:17 +0000)]
tree-scalar-evolution.c: Document instantiate_scev.
2008-05-09 Jan Sjodin <jan.sjodin@amd.com>
Sebastian Pop <sebastian.pop@amd.com>
* tree-scalar-evolution.c: Document instantiate_scev.
(instantiate_parameters_1): Renamed instantiate_scev_1.
Don't use the same loop for instantiation_loop and evolution_loop.
(instantiate_scev): New.
(instantiate_parameters): Moved...
(resolve_mixers): Update call to instantiate_scev_1 to pass the
same loop twice. Maintains the semantics for this function.
* tree-scalar-evolution.h (instantiate_scev): Declare.
(instantiate_parameters): ...here. Now static inline.
* tree-data-ref.c (dr_analyze_indices): Call instantiate_scev
instead of resolve_mixers.
Co-Authored-By: Sebastian Pop <sebastian.pop@amd.com>
From-SVN: r135116
Maxim Kuvyrkov [Fri, 9 May 2008 15:44:15 +0000 (15:44 +0000)]
* rtl-factoring.c (collect_pattern_seqs): Fix typo.
From-SVN: r135115
Tomas Bily [Fri, 9 May 2008 14:57:39 +0000 (16:57 +0200)]
pa.c (reloc_needed): Use CASE_CONVERT.
* config/pa/pa.c (reloc_needed): Use CASE_CONVERT.
* tree-cfg.c (verify_expr, verify_gimple_expr): Likewise.
* tree-ssa-structalias.c (get_constraint_for): Likewise.
* c-common.c (c_common_truthvalue_conversion): Likewise.
* tree-object-size.c (compute_object_offset): Likewise.
* tree-inline.c (estimate_num_insns_1): Likewise.
* varasm.c (const_hash_1, compare_constant, copy_constant)
(compute_reloc_for_constant, output_addressed_constants)
(initializer_constant_valid_p): Likewise.
* c-omp.c (check_omp_for_incr_expr): Likewise.
* gimplify.c (gimplify_expr): Likewise.
* c-typeck.c (c_finish_return): Likewise.
* tree-vectorizer.c (supportable_widening_operation)
(supportable_narrowing_operation): Likewise.
* c-pretty-print.c (pp_c_cast_expression, pp_c_expression):
Likewise.
* matrix-reorg.c (can_calculate_expr_before_stmt): Likewise.
* expr.c (highest_pow2_factor, expand_expr_real_1): Likewise.
* dwarf2out.c (loc_descriptor_from_tree_1, add_bound_info)
(descr_info_loc): Likewise.
* tree-ssa-loop-ivopts.c (may_be_nonaddressable_p): Likewise.
* fold-const.c (operand_equal_p, make_range, extract_muldiv_1)
(fold_unary): Likewise.
* builtins.c (get_pointer_alignment): Likewise.
* tree-scalar-evolution.c (interpret_rhs_modify_stmt)
(instantiate_parameters_1): Likewise.
* tree.c (expr_align, stabilize_reference): Likewise.
* tree-pretty-print.c (dump_generic_node, op_prio): Likewise.
* tree-ssa-loop-niter.c (derive_constant_upper_bound): Likewise.
* convert.c (strip_float_extensions): Use CONVERT_EXPR_P.
* tree-ssa-threadedge.c (simplify_control_stmt_condition):
Likewise.
* config/alpha/alpha.c (va_list_skip_additions): Likewise.
* c-common.c (c_alignof_expr, check_function_arguments_recurse):
Likewise.
* tree-ssa.c (tree_ssa_useless_type_conversion): Likewise.
* varasm.c (initializer_constant_valid_p, output_constant):
Likewise.
* tree-ssa-forwprop.c (get_prop_source_stmt, can_propagate_from)
(forward_propagate_addr_expr_1, forward_propagate_addr_expr)
(forward_propagate_comparison)
(tree_ssa_forward_propagate_single_use_vars): Likewise.
* cfgexpand.c (discover_nonconstant_array_refs_r): Likewise.
* emit-rtl.c (component_ref_for_mem_expr)
(set_mem_attributes_minus_bitpos): Likewise.
* tree-ssa-phiopt.c (conditional_replacement): Likewise.
* gimplify.c (gimplify_conversion, goa_lhs_expr_p,
gimplify_expr): Likewise.
* c-typeck.c (default_function_array_conversion,
build_indirect_ref)
(build_function_call, pointer_diff, build_compound_expr)
(c_finish_return): Likewise.
* tree-vect-analyze.c (vect_determine_vectorization_factor):
Likewise.
* matrix-reorg.c (get_inner_of_cast_expr,
may_flatten_matrices_1): Likewise.
* tree-ssa-ifcombine.c (recognize_single_bit_test): Likewise.
* expr.c (is_aligning_offset): Likewise.
* tree-ssa-alias.c (is_escape_site): Likewise.
* tree-stdarg.c (va_list_counter_bump, check_va_list_escapes)
(check_all_va_list_escapes): Likewise.
* tree-ssa-loop-ivopts.c (determine_base_object)
(determine_common_wider_type): Likewise.
* dojump.c (do_jump): Likewise.
* tree-ssa-sccvn.c (simplify_unary_expression): Likewise.
* tree-gimple.c (is_gimple_cast): Likewise.
* fold-const.c (decode_field_reference, )
(fold_sign_changed_comparison, fold_unary, fold_comparison)
(fold_binary): Likewise.
* tree-ssa-alias-warnings.c (find_alias_site_helper)
(already_warned_in_frontend_p): Likewise.
* builtins.c (get_memory_rtx, fold_builtin_next_arg): Likewise.
* tree.c (really_constant_p, get_unwidened): Likewise.
* tree-ssa-loop-niter.c (expand_simple_operations): Likewise.
* tree-ssa-loop-im.c (rewrite_bittest): Likewise.
* tree-vrp.c (register_edge_assert_for_2,
register_edge_assert_for_1): Likewise.
* tree.h (STRIP_NOPS, STRIP_SIGN_NOPS, STRIP_TYPE_NOPS): Use
CONVERT_EXPR_P.
(CONVERT_EXPR_P): Define.
(CASE_CONVERT): Define.
From-SVN: r135114
Kenneth Zadeck [Fri, 9 May 2008 12:14:57 +0000 (12:14 +0000)]
re PR middle-end/36177 (g++.dg/opt/pr23714.C ICEs with 135041 -> 135057)
2008-05-08 Kenneth Zadeck <zadeck@naturalbridge.com>
PR middle-end/36117
* dce.c (deletable_insn_p): Do not delete calls if
df_in_progress.
(delete_unmarked_insns): When deleting a call, call
delete_unreachable_blocks.
* rtl.texi (RTL_CONST_CALL_P, RTL_PURE_CALL_P,
RTL_CONST_OR_PURE_CALL_P, RTL_LOOPING_CONST_OR_PURE_CALL_P): Fixed
doc.
From-SVN: r135113
Julian Brown [Fri, 9 May 2008 10:10:53 +0000 (10:10 +0000)]
Makefile.am (LTLDFLAGS): New.
libgfortran/
* Makefile.am (LTLDFLAGS): New.
(libgfortran_la_LDFLAGS): Use above.
* Makefile.in: Regenerate.
libffi/
* Makefile.am (LTLDFLAGS): New.
(libffi_la_LDFLAGS): Use above.
* Makefile.in: Regenerate.
libobjc/
* Makefile.in (LTLDFLAGS): New.
(libobjc$(libsuffix).la, libobjc_gc$(libsuffix).la): Use above.
From-SVN: r135112
Richard Guenther [Fri, 9 May 2008 09:37:36 +0000 (09:37 +0000)]
invoke.texi (-fdump-tree-salias): Remove documentation.
2008-05-08 Richard Guenther <rguenther@suse.de>
* doc/invoke.texi (-fdump-tree-salias): Remove documentation.
(-ftree-salias): Likewise.
(salias-max-implicit-fields): Remove param documentation.
(salias-max-array-elements): Likewise.
* tree-pass.h (pass_create_structure_vars): Remove.
* params.h (SALIAS_MAX_IMPLICIT_FIELDS): Remove.
(SALIAS_MAX_ARRAY_ELEMENTS): Likewise.
* tree-ssa-alias.c (create_structure_vars): Remove.
(gate_structure_vars): Likewise.
(pass_create_structure_vars): Likewise.
(gate_build_alias): Likewise.
(pass_build_alias): Adjust to run always and dump the function.
* common.opt (ftree-salias): Hide.
* passes.c (init_optimization_passes): Remove
pass_create_structure_vars, adjust comment.
* params.def (PARAM_SALIAS_MAX_IMPLICIT_FIELDS): Remove.
(PARAM_SALIAS_MAX_ARRAY_ELEMENTS): Likewise.
* opts.c (decode_options): Do not set flag_tree_salias.
(common_handle_option): Add OPT_ftree_salias to the backward
compatibility section.
* gcc.dg/tree-ssa/
20040911-1.c: Adjust.
* gcc.dg/tree-ssa/
20040517-1.c: Likewise.
* gcc.dg/tree-ssa/pr26421.c: Likewise.
* gcc.dg/tree-ssa/pr23382.c: Likewise.
* gcc.dg/tree-ssa/alias-15.c: Likewise.
* gcc.dg/tree-ssa/inline_asm-1.c: Likewise.
* gcc.dg/tree-ssa/inline_asm-2.c: Likewise.
* gcc.dg/tree-ssa/pta-fp.c: Likewise.
* gcc.dg/tree-ssa/
20031015-1.c: Likewise.
* gcc.dg/tree-ssa/alias-12.c: Likewise.
From-SVN: r135111
Richard Guenther [Fri, 9 May 2008 09:32:51 +0000 (09:32 +0000)]
tree-flow-inline.h (var_can_have_subvars): Move ...
2008-05-08 Richard Guenther <rguenther@suse.de>
* tree-flow-inline.h (var_can_have_subvars): Move ...
* tree-ssa-structalias.c (var_can_have_subvars): ... here.
* tree-flow.h (var_can_have_subvars): Remove.
(push_fields_onto_fieldstack): Remove.
(sort_fieldstack): Likewise.
(struct fieldoff): Move ...
* tree-ssa-structalias.c (struct fieldoff): ... here. Remove
alias_set and base_for_components fields.
(sort_fieldstack): Make static.
(push_fields_onto_fieldstack): Likewise. Remove code that
handles anything but RECORD_TYPEs. Remove alias_set and
base_for_components handling.
(create_variable_info_for): Adjust.
From-SVN: r135110
Francois-Xavier Coudert [Fri, 9 May 2008 08:02:52 +0000 (08:02 +0000)]
re PR fortran/36162 (Non-ASCII character in module string gives ICE)
PR fortran/36162
* module.c (quote_string, unquote_string,
mio_allocated_wide_string): New functions.
(mio_expr): Call mio_allocated_wide_string where needed.
* gfortran.dg/module_widestring_1.f90: New test.
From-SVN: r135109
Ben Elliston [Fri, 9 May 2008 02:57:20 +0000 (12:57 +1000)]
Formatting fix.
From-SVN: r135106
GCC Administrator [Fri, 9 May 2008 00:17:37 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r135101
Seongbae Park [Thu, 8 May 2008 22:57:55 +0000 (22:57 +0000)]
common.opt (Wframe-larger-than=): Shorten the help message to one line.
2008-05-08 Seongbae Park <seongbae.park@gmail.com>
* common.opt (Wframe-larger-than=): Shorten the help message
to one line.
* doc/invoke.texi (Wframe-larger-than=): Add more description.
From-SVN: r135097
Rafael Avila de Espindola [Thu, 8 May 2008 22:16:59 +0000 (22:16 +0000)]
tree-complex.c (expand_complex_div_wide): Don't create CONDs that trap.
* tree-complex.c (expand_complex_div_wide): Don't create CONDs that
trap.
* tree-gimple.c (is_gimple_condexpr): Check that the expression doesn't
trap and that both operands are gimple values.
(canonicalize_cond_expr_cond): Use is_gimple_condexpr.
* gcc/tree-eh.c (tree_could_trap_p): Correctly detect if a comparison
is a fp operation.
* gcc/testsuite/gcc.dg/vect/vect-111.c: Rename to no-trapping-math-vect-111.c
* gcc/testsuite/gcc.dg/vect/vect-ifcvt-11.c: Rename to no-trapping-math-vect-ifcvt-11.c
* gcc/testsuite/gcc.dg/vect/vect-ifcvt-12.c: Rename to no-trapping-math-vect-ifcvt-12.c
* gcc/testsuite/gcc.dg/vect/vect-ifcvt-13.c: Rename to no-trapping-math-vect-ifcvt-13.c
* gcc/testsuite/gcc.dg/vect/vect-ifcvt-14.c: Rename to no-trapping-math-vect-ifcvt-14.c
* gcc/testsuite/gcc.dg/vect/vect-ifcvt-15.c: Rename to no-trapping-math-vect-ifcvt-15.c
From-SVN: r135093
Richard Sandiford [Thu, 8 May 2008 21:29:00 +0000 (21:29 +0000)]
read-rtl.c (join_c_conditions): Return the first string if the two strings are equal.
gcc/
* read-rtl.c (join_c_conditions): Return the first string if the
two strings are equal.
From-SVN: r135091
Richard Sandiford [Thu, 8 May 2008 21:28:27 +0000 (21:28 +0000)]
gensupport.h (pred_data): Add a "num_codes" field.
gcc/
* gensupport.h (pred_data): Add a "num_codes" field.
(add_predicate_code): Declare.
* gensupport.c (add_predicate_code): New function.
(std_pred_table): Add an "allows_const_p" field.
(std_preds): Set this field for predicates that allow RTX_CONST_OBJs.
Remove the (incomplete) list of such codes from the codes field.
(init_predicate_table): Use add_predicate_code. Add all
RTX_CONST_OBJs if allows_const_p is true.
* genrecog.c (process_define_predicate): Use add_predicate_code.
From-SVN: r135090
David Daney [Thu, 8 May 2008 17:04:12 +0000 (17:04 +0000)]
target-supports.exp (check_effective_target_sync_int_long): Add mips*-*-*.
2008-05-08 David Daney <ddaney@avtrex.com>
* lib/target-supports.exp (check_effective_target_sync_int_long): Add
mips*-*-*.
(check_effective_target_sync_char_short): Same.
2008-05-08 David Daney <ddaney@avtrex.com>
Richard Sandiford <rsandifo@nildram.co.uk>
* config/mips/mips.md (mips_expand_compare_and_swap_12): Handle
special case of constant zero operands.
* config/mips/mips.c (mips_expand_compare_and_swap_12): Zero extend
old and new values. Special case constant zero values.
* config/mips/mips.h (MIPS_COMPARE_AND_SWAP): Skip 'sync' if compare
fails.
(MIPS_COMPARE_AND_SWAP_12): Handle constant zero operands.
(MIPS_COMPARE_AND_SWAP_12_0): New macro.
Co-Authored-By: Richard Sandiford <rsandifo@nildram.co.uk>
From-SVN: r135088
Paolo Bonzini [Thu, 8 May 2008 16:35:56 +0000 (16:35 +0000)]
re PR target/36090 (ppc64 cacoshl miscompilation)
2008-05-08 Paolo Bonzini <bonzini@gnu.org>
PR target/36090
* simplify-rtx.c (simplify_plus_minus): Create CONST of
similar RTX_CONST_OBJ before CONST_INT.
From-SVN: r135086
Steve Ellcey [Thu, 8 May 2008 16:22:27 +0000 (16:22 +0000)]
* stmt.c (expand_stack_restore): Change sa mode if needed.
From-SVN: r135085
Sebastian Pop [Thu, 8 May 2008 15:14:47 +0000 (15:14 +0000)]
patch_tester.sh (report): Do not print "Checker: ".
2008-05-08 Sebastian Pop <sebastian.pop@amd.com>
* patch_tester.sh (report): Do not print "Checker: ".
From-SVN: r135083
Uros Bizjak [Thu, 8 May 2008 13:26:02 +0000 (15:26 +0200)]
ChangeLog: Whitespace fixes.
* ChangeLog: Whitespace fixes.
* testsuite/Changelog: Ditto.
From-SVN: r135081
Richard Guenther [Thu, 8 May 2008 12:25:39 +0000 (12:25 +0000)]
i386-protos.h (ix86_return_in_memory): Adjust return type to bool.
2008-05-08 Richard Guenther <rguenther@suse.de>
* config/i386/i386-protos.h (ix86_return_in_memory): Adjust
return type to bool.
(ix86_sol10_return_in_memory): Likewise.
(ix86_i386elf_return_in_memory): Likewise.
(ix86_i386interix_return_in_memory): Likewise.
* config/i386/i386.c (ix86_return_in_memory): Likewise.
(ix86_sol10_return_in_memory): Likewise.
(ix86_i386elf_return_in_memory): Likewise.
(ix86_i386interix_return_in_memory): Likewise.
From-SVN: r135080
Kai Tietz [Thu, 8 May 2008 11:32:55 +0000 (11:32 +0000)]
calls.c (compute_argument_block_size ): Add ATTRIBUTE_UNUSED to fndecl argument.
2008-05-08 Kai Tietz <kai.tietz@onevision.com>
PR/36180
* calls.c (compute_argument_block_size ): Add ATTRIBUTE_UNUSED to
fndecl argument.
(emit_library_call_value_1): Add ATTRIBUTE_UNUSED to variable
fndecl.
* target-def.h: Check that TARGET_RETURN_IN_MEMORY isn't declared in front.
From-SVN: r135079
Andreas Schwab [Thu, 8 May 2008 11:11:05 +0000 (11:11 +0000)]
utils.c (handle_pure_attribute, [...]): Rename DECL_IS_PURE to DECL_PURE_P.
* utils.c (handle_pure_attribute, init_gigi_decls): Rename
DECL_IS_PURE to DECL_PURE_P.
From-SVN: r135078
Richard Guenther [Thu, 8 May 2008 09:27:29 +0000 (09:27 +0000)]
tree-data-ref.c (dr_analyze_alias): Do not set DR_SUBVARS.
2008-05-08 Richard Guenther <rguenther@suse.de>
* tree-data-ref.c (dr_analyze_alias): Do not set DR_SUBVARS.
* tree-data-ref.h (struct dr_alias): Remove subvars field.
(DR_SUBVARS): Remove.
* tree-dfa.c (dump_subvars_for): Remove.
(debug_subvars_for): Likewise.
(dump_variable): Do not dump subvars.
(remove_referenced_var): Do not remove subvars.
* tree-flow-inline.h (clear_call_clobbered): SFTs no longer exist.
(lookup_subvars_for_var): Remove.
(get_subvars_for_var): Likewise.
(get_subvars_at): Likewise.
(get_first_overlapping_subvar): Likewise.
(overlap_subvar): Likewise.
* tree-flow.h (subvar_t): Remove.
(struct var_ann_d): Remove subvars field.
* tree-ssa-alias.c (mark_aliases_call_clobbered): Remove queued
argument. Remove special handling of SFTs.
(compute_tag_properties): Likewise.
(set_initial_properties): Likewise.
(compute_call_clobbered): Likewise.
(count_mem_refs): Likewise.
(compute_memory_partitions): Likewise.
(compute_flow_insensitive_aliasing): Likewise.
(setup_pointers_and_addressables): Likewise.
(new_type_alias): Likewise.
(struct used_part): Remove.
(used_portions): Likewise.
(struct used_part_map): Likewise.
(used_part_map_eq): Likewise.
(used_part_map_hash): Likewise.
(free_used_part_map): Likewise.
(up_lookup): Likewise.
(up_insert): Likewise.
(get_or_create_used_part_for): Likewise.
(create_sft): Likewise.
(create_overlap_variables_for): Likewise.
(find_used_portions): Likewise.
(create_structure_vars): Likewise.
* tree.def (STRUCT_FIELD_TAG): Remove.
* tree.h (MTAG_P): Adjust.
(struct tree_memory_tag): Remove base_for_components and
unpartitionable flags.
(struct tree_struct_field_tag): Remove.
(SFT_PARENT_VAR): Likewise.
(SFT_OFFSET): Likewise.
(SFT_SIZE): Likewise.
(SFT_NONADDRESSABLE_P): Likewise.
(SFT_ALIAS_SET): Likewise.
(SFT_UNPARTITIONABLE_P): Likewise.
(SFT_BASE_FOR_COMPONENTS_P): Likewise.
(union tree_node): Remove sft field.
* alias.c (get_alias_set): Remove special handling of SFTs.
* print-tree.c (print_node): Remove handling of SFTs.
* tree-dump.c (dequeue_and_dump): Likewise.
* tree-into-ssa.c (mark_sym_for_renaming): Likewise.
* tree-nrv.c (dest_safe_for_nrv_p): Remove special handling of SFTs.
* tree-predcom.c (set_alias_info): Do not set subvars.
* tree-pretty-print.c (dump_generic_node): Do not handle SFTs.
* tree-ssa-loop-ivopts.c (get_ref_tag): Likewise.
* tree-ssa-operands.c (access_can_touch_variable): Likewise.
(add_vars_for_offset): Remove.
(add_virtual_operand): Remove special handling of SFTs.
(add_call_clobber_ops): Likewise.
(add_call_read_ops): Likewise.
(get_asm_expr_operands): Likewise.
(get_modify_stmt_operands): Likewise.
(get_expr_operands): Likewise.
(add_to_addressable_set): Likewise.
* tree-ssa.c (verify_ssa_name): Do not handle SFTs.
* tree-tailcall.c (suitable_for_tail_opt_p): Likewise.
* tree-vect-transform.c (vect_create_data_ref_ptr): Do not
set subvars.
* tree.c (init_ttree): Remove STRUCT_FIELD_TAG initialization.
(tree_code_size): Remove STRUCT_FIELD_TAG handling.
(tree_node_structure): Likewise.
* tree-ssa-structalias.c (set_uids_in_ptset): Remove special
handling of SFTs.
(find_what_p_points_to): Likewise.
From-SVN: r135077
Kai Tietz [Thu, 8 May 2008 08:53:39 +0000 (08:53 +0000)]
pr36172.c: Replace unsigned long by __SIZE_TYPE__.
2008-05-08 Kai Tietz <kai.tietz@onevision.com>
* gcc.c-torture/compile/pr36172.c: Replace unsigned long by
__SIZE_TYPE__.
From-SVN: r135076
Sa Liu [Thu, 8 May 2008 08:45:15 +0000 (08:45 +0000)]
fixed subti3 pattern
From-SVN: r135075
Sa Liu [Thu, 8 May 2008 08:42:38 +0000 (08:42 +0000)]
test subti3
From-SVN: r135074
Sa Liu [Thu, 8 May 2008 08:39:45 +0000 (08:39 +0000)]
fixed subti3 pattern
From-SVN: r135073
Richard Guenther [Thu, 8 May 2008 08:20:45 +0000 (08:20 +0000)]
re PR middle-end/36154 (internal compiler error: in get_constraint_for_component_ref, at tree-ssa-structalias.c:2727)
2008-05-08 Richard Guenther <rguenther@suse.de>
PR middle-end/36154
* tree-ssa-structalias.c (push_fields_onto_fieldstack): Make
sure to create a representative for trailing arrays for PTA.
* gcc.c-torture/compile/pr36154.c: New testcase.
From-SVN: r135071
Richard Guenther [Thu, 8 May 2008 08:19:16 +0000 (08:19 +0000)]
re PR middle-end/36172 (ice for legal code with -O3)
2008-05-08 Richard Guenther <rguenther@suse.de>
PR middle-end/36172
* fold-const.c (operand_equal_p): Two objects which types
differ in pointerness are not equal.
* gcc.c-torture/compile/pr36172.c: New testcase.
From-SVN: r135070
Kai Tietz [Thu, 8 May 2008 07:10:49 +0000 (09:10 +0200)]
2008-05-07 Kai Tietz <kai,tietz@onevision.com>
* calls.c (compute_argument_block_size): Add argument tree fndecl.
(OUTGOING_REG_PARM_STACK_SPACE): Add function type argument.
(emit_library_call_value_1): Add new variable fndecl initialized by
NULL_TREE. It should be the decl type of orgfun, but this information
seems not to be available here, so it uses the default calling abi.
* config/arm/arm.c (arm_return_in_memory): Add fntype argumen.
* config/arm/arm.h (RETURN_IN_MEMORY): Replace RETURN_IN_MEMORY
by TARGET_RETURN_IN_MEMORY.
* config/i386/i386-interix.h: Likewise.
* config/i386/i386.h: Likewise.
* config/i386/i386elf.h: Likewise.
* config/i386/ptx4-i.h: Likewise.
* config/i386/sol2-10.h: Likewise.
* config/i386/sysv4.h: Likewise.
* config/i386/vx-common.h: Likewise.
* config/cris/cris.h: Removed #if 0 clause.
* config/arm/arm-protos.h (arm_return_in_memory): Add fntype
argument.
* config/i386/i386-protos.h (ix86_return_in_memory): Add fntype
argument.
(ix86_sol10_return_in_memory): Likewise.
(ix86_i386elf_return_in_memory): New.
(ix86_i386interix_return_in_memory): New.
* config/mt/mt-protos.h (mt_return_in_memory): New.
* config/mt/mt.c: Likewise.
* config/mt/mt.h (OUTGOING_REG_PARM_STACK_SPACE): Add FNTYPE argument.
(RETURN_IN_MEMORY): Replace by TARGET_RETURN_IN_MEMORY.
* config/bfin/bfin.h: Likewise.
* config/bfin/bfin-protos.h (bfin_return_in_memory): Add fntype
argument.
* config/bfin/bfin.c: Likewise.
* config/pa/pa.h (OUTGOING_REG_PARM_STACK_SPACE): Add FNTYPE argument.
* config/alpha/unicosmk.h: Likewise.
* config/i386/cygming.h: Likewise.
* config/iq2000/iq2000.h: Likewise.
* config/mips/mips.h: Likewise.
* config/mn10300/mn10300.h: Likewise.
* config/rs6000/rs6000.h: Likewise.
* config/score/score.h: Likewise.
* config/spu/spu.h: Likewise.
* config/v850/v850.h: Likewise.
* defaults.h: Likewise.
* doc/tm.texi (OUTGOING_REG_PARM_STACK_SPACE): Adjust documentation.
* expr.c (emit_block_move): Adjust use of OUTGOING_REG_PARM_STACK_SPACE.
* function.c (STACK_DYNAMIC_OFFSET): Adjust use of
OUTGOING_REG_PARM_STACK_SPACE.
* targhooks.c (default_return_in_memory): Remove RETURN_IN_MEMORY.
From-SVN: r135069
GCC Administrator [Thu, 8 May 2008 00:17:37 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r135064
Jakub Jelinek [Wed, 7 May 2008 23:15:50 +0000 (01:15 +0200)]
re PR debug/35896 (gfortran TLS symbols broken with debug info)
PR debug/35896
* dwarf2out.c (dw_expand_expr, common_check): Removed.
(fortran_common): New function.
(gen_variable_die): Call fortran_common instead of common_check,
adjust for it returning tree instead of rtx. Formatting.
From-SVN: r135060
Jakub Jelinek [Wed, 7 May 2008 23:14:13 +0000 (01:14 +0200)]
tree-parloops.c (create_parallel_loop): Set OMP_RETURN_NOWAIT on OMP_RETURN for OMP_FOR.
* tree-parloops.c (create_parallel_loop): Set OMP_RETURN_NOWAIT
on OMP_RETURN for OMP_FOR.
From-SVN: r135059
Kenneth Zadeck [Wed, 7 May 2008 20:48:07 +0000 (20:48 +0000)]
[multiple changes]
2008-05-07 Kenneth Zadeck <zadeck@naturalbridge.com>
PATCH rtl/7335
PATCH rtl/33826
* see.c (see_copy_insn): Copy new pure const attributes for new
call.
* c-decl.c (merge_decls): Ditto.
* postreload.c (record_opr_changes): Change CONST_OR_PURE_CALL_P
to RTL_CONST_OR_PURE_CALL_P.
* tree.c (define_local_buitin): Rename DECL_IS_PURE to
DECL_PURE_P. Initialized DECL_LOOPING_CONST_PURE.
(process_call_operands): Set tree_side_effects properly.
* tree.h (TREE_READONLY_DECL_P): Removed.
(DECL_IS_PURE): Renamed to DECL_PURE_P.
(DECL_LOOPING_OR_CONST_P): New macro.
(struct tree_function_decl): Added looping_const_or_pure_p.
(ECF_*) Renumbered.
(ECF_LOOPING_OR_CONST_P): New macro,
* rtlanal.c (pure_const_p): Removed.
* builtins.c (expand_builtin): Rename DECL_IS_PURE to DECL_PURE_P.
* reorg.c (delete_prior_computation) Changed CONST_OR_PURE_CALL_P
to RTL_CONST_CALL_P.
* ipa-pure-const.c (pure_const_state_e): Added looping field.
(check_decl, check_tree, check_call, scan_function): Initialize
looping.
(analyze_function): Rename DECL_IS_PURE to DECL_PURE_P.
(static_execute): Set looping true for recursive functions.
Undo setting state to IPA_NEITHER for recursive functions.
* cse.c (cse_insn):
* ifcvt.c (noce_can_store_speculate_p): Changed
CONST_OR_PURE_CALL_P and pure_call_p to RTL_CONST_CALL_P or
RTL_CONST_OR_PURE_CALL_P.
* dse.c (scan_insn): Ditto.
* local-alloc.c (validate_equiv_mem, memref_used_between_p): Ditto.
* gcse.c (oprs_not_seen_p) Changed CONST_OR_PURE_CALL_P to
RTL_CONST_OR_PURE_CALL_P.
(store_killed_in_insn): Changed CONST_OR_PURE_CALL_P and
pure_call_p to RTL_CONST_CALL_P.
* gimplify.c (gimplify_call_expr): Clear side effects for
non-looping pure and constant calls.
* calls.c (emit_call_1): Set rtl flags from ecf flags.
(flags_from_decl_or_type): Set ecf flags from decl flags.
(initialize_argument_information): Turn off
ECF_LOOPING_CONST_OR_PURE when turning off ECF_CONST.
Change const to pure if callee_copies is true rather than just
turning off const.
(expand_call): Turn off ECF_LOOPING_PURE_CONST_CALL and remove old
way of marking pure calls.
(emit_library_call_value_1): Turn off ECF_LOOPING_PURE_CONST_CALL.
Remove hack that was supposed to fix pr7335 and remove old
way of marking pure calls.
* emit-rtl.c (emit_copy_of_insn_after): Copy RTL_CONST_CALL_P,
RTL_PURE_CALL_P, RTL_LOOPING_CONST_OR_PURE_CALL_P.
* cselib.c (cselib_process_insn): Changed CONST_OR_PURE_CALL_P to
RTL_CONST_OR_PURE_CALL_P.
* tree-ssa-pre.c (can_value_number_call): Fixed spacing.
* loop-invariant.c (find_exits, find_invariant_bb): Changed
CONST_OR_PURE_CALL_P to RTL_CONST_OR_PURE_CALL_P.
* sched-deps.c (schedule_analyze): Ditto.
* rtl.h (struct rtx_def): Use call field, unchanging field, and
return_val field of calls to represent pure and const function
info.
(CONST_OR_PURE_CALL_P): Deleted macro.
(RTL_CONST_CALL_P, RTL_PURE_CALL_P,
RTL_LOOPING_CONST_OR_PURE_CALL_P, RTL_CONST_OR_PURE_P): New macros.
* tree-inline.c (copy_body_r): Changed TREE_READONLY_DECL_P to
TREE_READONLY.
* tree-optimize.c (execute_fixup_cfg): Added test for
ECF_LOOPING_CONST_OR_PURE.
* c-common.c (handle_pure_attribute): Changed DECL_IS_PURE to
DECL_PURE_P.
* tree-cfg.c (update_call_expr_flags): Do not clear tree side
effects for looping pure or const calls.
(verify_gimple_expr): Added verification code.
* config/alpha/alpha.c (alpha_legitimize_address,
alpha_emit_xfloating_libcall): Changed CONST_OR_PURE_CALL_P to
RTL_CONST_CALL_P.
* config/s390/s390.c (s390_emit_tls_call_insn): Ditto.
* config/rs6000/rs6000.c (rs6000_legitimize_tls_address): Ditto.
* config/mips/mips.c (mips_call_tls_get_addr): Ditto.
* cfgrtl.c (need_fake_edge_p): Changed CONST_OR_PURE_CALL_P to
RTL_CONST_OR_PURE_CALL_P.
* dce.c (deletable_insn_p): Allow non looping, non sibling, pure
and const calls to be deleted.
java:
2008-05-07 Kenneth Zadeck <zadeck@naturalbridge.com>
* decl.c (java_init_decl_processing): Change DECL_IS_PURE to
DECL_PURE_P.
cp:
2008-05-07 Kenneth Zadeck <zadeck@naturalbridge.com>
* decl.c (duplicate_decls): Merge in DECL_PURE_P, TREE_READONLY,
DECL_LOOPING_CONST_OR_PURE_P attributes.
* rtti.c (build_dynamic_cast_1): Rename DECL_IS_PURE to
DECL_PURE_P.
gfortran:
2008-05-07 Kenneth Zadeck <zadeck@naturalbridge.com>
* trans-decl.c (gfc_get_extern_function_decl, build_function_decl):
Rename DECL_IS_PURE to DECL_PURE_P.
From-SVN: r135053
Joseph Myers [Wed, 7 May 2008 20:43:26 +0000 (21:43 +0100)]
* sv.po: Update.
From-SVN: r135049
Uros Bizjak [Wed, 7 May 2008 19:08:53 +0000 (21:08 +0200)]
i386.c (struct_builtin_description): Use CODE_FOR_sse_loadhps_exp.
* config/i386/i386.c (struct_builtin_description)
[IX86_BUILTIN_LOADHPS]: Use CODE_FOR_sse_loadhps_exp.
[IX86_BUILTIN_STOREHPS]: Use CODE_FOR_sse_loadlps_exp.
[IX86_BUILTIN_LOADHPD]: Use CODE_FOR_sse2_loadhpd_exp.
[IX86_BUILTIN_LOADLPD]: Use CODE_FOR_sse2_loadlpd_exp.
[IX86_BUILTIN_MOVHLPS]: Use CODE_FOR_sse_movhlps_exp.
[IX86_BUILTIN_MOVLHPS]: Use CODE_FOR_sse_movlhps_exp.
[IX86_BUILTIN_UNPCKHPD]: Use FOR_sse2_unpckhpd_exp.
[IX86_BUILTIN_UNPCKLPD]: Use FOR_sse2_unpcklpd_exp.
From-SVN: r135047
Uros Bizjak [Wed, 7 May 2008 13:12:02 +0000 (15:12 +0200)]
re PR target/35714 (x86 poor code with pmaddwd)
PR target/35714
* config/i386/mmx.md (mmx_subv2sf3): New expander.
(*mmx_subv2sf3): Rename from mmx_subv2sf3 insn pattern.
(*mmx_eqv2sf3): Rename from mmx_eqv2sf3 insn pattern.
(mmx_eqv2sf3): New expander. Use ix86_fixup_binary_operands_no_copy
to handle nonimmediate operands.
(*mmx_paddwd): Rename from mmx_paddwd insn pattern.
(mmx_paddwd): New expander. Use ix86_fixup_binary_operands_no_copy
to handle nonimmediate operands.
(*mmx_pmulhrwv4hi3): Rename from mmx_pmulhrwv4hi3 insn pattern.
(mmx_pmulhrwv4hi3): New expander. Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
(*sse2_umulv1siv1di3): Rename from sse2_umulv1siv1di3 insn pattern.
(sse2_umulv1siv1di3): New expander. Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
(*mmx_eq<mode>3): Rename from mmx_eq<mode>3 insn pattern.
(mmx_eq<mode>3): New expander. Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
(*mmx_uavgv8qi3): Rename from mmx_uavgv8qi3 insn pattern.
(mmx_uavgv8qi3): New expander. Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
(*mmx_uavgv4hi3): Rename from mmx_uavgv4hi3 insn pattern.
(mmx_uavgv4hi3): New expander. Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
* config/i386/sse.md
(*sse_movhlps): Rename from sse_movhlps insn pattern.
(sse_movhlps): New expander. Use ix86_fixup_binary_operands
to handle nonimmediate operands.
(*sse_movlhps): Rename from sse_movlhps insn pattern.
(sse_movlhps): New expander. Use ix86_fixup_binary_operands
to handle nonimmediate operands.
(*sse_loadhps): Rename from sse_loadhps insn pattern.
(sse_loadhps): New expander. Use ix86_fixup_binary_operands
to handle nonimmediate operands.
(*sse_loadlps): Rename from sse_loadlps insn pattern.
(sse_loadlps): New expander. Use ix86_fixup_binary_operands
to handle nonimmediate operands.
(*sse2_unpckhpd): Rename from sse2_unpckhpd insn pattern.
(sse2_unpckhpd): New expander. Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
(*sse2_unpcklpd): Rename from sse2_unpcklpd insn pattern.
(sse2_unpcklpd): New expander. Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
(*sse_loadhpd): Rename from sse_loadhpd insn pattern.
(sse_loadhpd): New expander. Use ix86_fixup_binary_operands
to handle nonimmediate operands.
(*sse_loadlpd): Rename from sse_loadlpd insn pattern.
(sse_loadlpd): New expander. Use ix86_fixup_binary_operands
to handle nonimmediate operands.
(*sse2_<plusminus_insn><mode>3): Rename from
sse2_<plusminus_insn><mode>3 insn pattern.
(sse2_<plusminus_insn><mode>3): New expander. Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
(*sse2_umulv2siv2di3): Rename from sse2_umulv2siv2di3 insn pattern.
(sse2_umulv2siv2di3): New expander. Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
(*sse4_1_mulv2siv2di3): Rename from sse4_1_mulv2siv2di3 insn pattern.
(sse4_1_mulv2siv2di3): New expander. Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
(*sse2_pmaddwd): Rename from sse2_pmaddwd insn pattern.
(sse2_pmaddwd): New expander. Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
(*sse2_eq<mode>3): Rename from sse2_eq<mode>3 insn pattern.
(sse2_eq<mode>3): New expander. Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
(*sse4_1_eqv2di3): Rename from sse4_1_eqv2di3 insn pattern.
(sse4_1_eqv2di3): New expander. Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
(*sse2_uavgv16qi3): Rename from sse2_uavgv16qi3 insn pattern.
(sse2_uavgv16qi3): New expander. Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
(*sse2_uavgv16qi3): Rename from sse2_uavgv16qi3 insn pattern.
(sse2_uavgv16qi3): New expander. Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
(*sse2_uavgv8hi3): Rename from sse2_uavgv8hi3 insn pattern.
(sse2_uavgv8hi3): New expander. Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
(*ssse3_pmulhrswv8hi3): Rename from ssse3_pmulhrswv8hi3 insn pattern.
(ssse3_pmulhrswv8hi3): New expander. Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
(*ssse3_pmulhrswv4hi3): Rename from ssse3_pmulhrswv4hi3 insn pattern.
(ssse3_pmulhrswv4hi3): New expander. Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
(<sse>_vm<plusminus_insn><mode>3): Do not use ix86_binary_operator_ok.
(<sse>_vmmul<mode>3): Ditto.
(divv4sf3): Do not use ix86_fixup_binary_operands_no_copy.
(divv2df3): Ditto.
(ssse3_pmaddubsw128): Use register_operand for operand 1.
(ssse3_pmaddubsw): Ditto.
* config/i386/sse.md (ix86_fixup_binary_operands): Assert that src1
and src2 must have the same mode when swapped.
(ix86_expand_binop_builtin): Do not use ix86_fixup_binary_operands
and ix86_binary_operator_ok. Do not force operands in registers
when optimizing.
testsuite/ChangeLog:
PR target/35714
* gcc.target/i386/pr35714.c: New test.
From-SVN: r135041
Johannes Singler [Wed, 7 May 2008 11:14:05 +0000 (11:14 +0000)]
quicksort.h: (parallel_sort_qs_conquer) Explicitly request number of threads in the parallel...
2008-05-07 Johannes Singler <singler@ira.uka.de>
* include/parallel/quicksort.h:
(parallel_sort_qs_conquer) Explicitly request number of threads
in the parallel clause.
(parallel_sort_qs) Remove setting the number of threads globally.
From-SVN: r135038
Jan Hubicka [Wed, 7 May 2008 09:44:30 +0000 (11:44 +0200)]
cgraph.c (dump_cgraph_node): Update.
* cgraph.c (dump_cgraph_node): Update.
* cgraph.h (cgraph_local_info): Break out inline summary.
* cgraphunit.c (cgraph_process_new_functions): Use inliner analysis
hook.
* ipa-inline (inline_summary): New accestor function.
(cgraph_clone_inlined_nodes, cgraph_check_inline_limits,
cgraph_decide_inlining, compute_inline_parameters): Update.
* ipa.c (cgraph_remove_unreachable_nodes): Remove statistics.
From-SVN: r135037
Maxim Kuvyrkov [Wed, 7 May 2008 08:09:27 +0000 (08:09 +0000)]
Cleanup ColdFire scheduling support and add V4 pipeline model.
* config/m68k/m68k.md (UNSPEC_TIE): New constant.
(define_attr cpu): Add cfv4 value.
(define_attr type, define_attr type1): Merge into a single 'type'
attribute. Update all uses.
(define_attr opx_type, define_attr opy_type, define_attr opx_access):
Rearrange and update. Rename value 'reg' to 'Rn', add value 'FPn'.
Update all uses.
(define_attr opx_mem, define_attr opy_mem): Remove.
(define_attr op_mem): Clean up, update comment.
(define_attr size): Use specific values instead of general int.
(define_attr guess, define_attr split): Remove. Update all uses.
(movdf_internal, tstsi_internal, tsthi_internal, tstqi_internal,
tst<mode>_68881, pushexthisi_const, movsi_const0_68000_10,
movsi_const0_68040_60, movsi_const0, movsi_cf, movstrictqi_cf,
zero_extendhisi2_cf, zero_extendqisi2_cfv4, cfv4_extendhisi2,
68k_extendhisi2, extendqihi2, cfv4_extendqisi2, 68k_extendqisi2,
floatsi<mode>2_68881, ftrunc<mode>2_68881, ftrunc<mode>2_cf,
fix<mode>qi2_68881, fix<mode>hi2_68881, fix<mode>si2_68881,
adddi_dishl32, addsi3_5200, add<mode>3_floatsi_68881,
add<mode>3_floathi_68881, add<mode>3_floatqi_68881,
add<mode>3_68881, add<mode>3_cf, subdi_dishl32, subsi3,
sub<mode>3_floatsi_68881, sub<mode>3_floathi_68881,
sub<mode>3_floatqi_68881, sub<mode>3_68881, sub<mode>3_cf,
mulhi3, mulhisi3, mulhisisi3_s, mulsi3_68020, mulsi3_cf,
umulhisi3, mulhisisi3_z, mul<mode>3_floatsi_68881,
mul<mode>3_floathi_68881, mul<mode>3_floatqi_68881, fmul<mode>3_cf,
div<mode>3_cf, sqrt<mode>2_cf, abs<mode>2_cf, clzsi2,
one_cmplsi2_5200, subreghi1ashrdi_const32, ashrsi3, lshrsi3,
bsetmemqi, bsetmemqi_ext, bclrmemqi, bclrmemqi_ext,
beq, bne, bgt, blt, bordered, bunordered, buneq, bunge, bungt, bunle,
bunlt, bltgt, tablejump_internal, call, non_symbolic_call_value,
symbolic_call_value_jsr, symbolic_call_value_bsr, link):
Update or set attributes.
(stack_tie): New fake instruction.
* config/m68k/m68k.h (TUNE_CFV4): New macro.
(m68k_sched_attr_size): Update declaration.
(m68k_sched_attr_type2): Remove.
(m68k_sched_address_bypass_p, m68k_sched_indexed_address_bypass_p):
Declare new bypass predicates.
* config/m68k/m68k.c (m68k_sched_issue_rate,
m68k_sched_first_cycle_multipass_dfa_lookahead): Declare hook
implementations.
(TARGET_SCHED_ISSUE_RATE,
TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD): Override hooks.
(override_options): Handle scheduling for ColdFire V4 core.
(m68k_expand_prologue): Emit stack_tie.
(enum attr_op_type): Split value 'OP_TYPE_REG' to 'OP_TYPE_RN' and
'OP_TYPE_FPN'. Update all uses.
(sched_guess_p): Remove.
(sched_address_type): Handle symbolic addresses.
(sched_get_operand): New static function.
(sched_operand_type): Merge into sched_attr_op_type.
(sched_attr_op_type): Handle FP registers, handle quick constants,
update.
(m68k_sched_attr_opx_type, m68k_sched_attr_opy_type): Update.
(m68k_sched_attr_size): Update. Move logic to ...
(sched_get_attr_size_int): New static function.
(sched_get_opxy_mem_type): New static function.
(m68k_sched_attr_op_mem): Update.
(m68k_sched_attr_type2): Remove.
(sched_cfv4_bypass_data): New static variable.
(m68k_sched_adjust_cost): Handle ColdFire V4 bypass.
(m68k_sched_issue_rate): Implement scheduler hook.
(struct _sched_ib: enabled_p): New field.
(m68k_sched_variable_issue): Update. Handle V4.
(SCHED_DUMP_TODO, SCHED_DUMP_DONE, SCHED_DUMP_NOTHING,
sched_dump_class_func_t, sched_dump_split_class,
sched_dump_dfa_guess_unit_code, sched_dump_dfa_state,
sched_dump_dfa_class, m68k_sched_dump): Remove.
(m68k_sched_first_cycle_multipass_dfa_lookahead): Implement scheduler
hook.
(m68k_sched_init_global): Remove statisctics dumping, introduce
sanity check that all instructions have pipeline reservations. Handle
ColdFire V4 core.
(m68k_sched_dfa_pre_advance_cycle, m68k_sched_dfa_post_advance_cycle):
Handle ColdFire V4 core.
(sched_mem_operand_p, sched_get_reg_operand, sched_get_mem_operand):
New static functions.
(m68k_sched_address_bypass_p): New bypass predicate.
(sched_get_indexed_address_scale): New static function.
(m68k_sched_indexed_address_bypass_p): New bypass predicate.
* cf.md: Update comments.
(define_attr type2): Remove. Use 'type' attribute instead.
Update all uses.
(cf_ib): Rename to cfv123_ib. Update all uses.
(cf_oep): Rename to cfv123_oep. Update all uses.
(cf_chr): Rename to cfv123_chr. Update all uses.
(cf_mem): Rename to cfv123_mem. Update all uses.
(cf_mac): Move to more appropriate place.
(cfv123_guess): New automaton and cpu_unit.
(cfv123_*, cfv12_*, cfv1_*, cfv2_*, cfv3_*): Use type attribute.
Update uses of 'size' attribute. Handle before reload scheduling.
(cfv123_guess): New dummy reservation for unhandled instructions.
(cfv4_*): Pipeline description of ColdFire V4 core.
(ignore): New reservation to handle 'ignore' type.
From-SVN: r135033
Ian Lance Taylor [Wed, 7 May 2008 07:45:17 +0000 (09:45 +0200)]
re PR middle-end/36013 (Wrong code involving restricted pointers to non-restricted pointers)
PR middle-end/36013
* gimplify.c (find_single_pointer_decl_1): Don't look through
indirections.
(find_single_pointer_decl): Adjust comments.
* gcc.c-torture/execute/
20080506-2.c: New test.
From-SVN: r135029
Jakub Jelinek [Wed, 7 May 2008 07:40:01 +0000 (09:40 +0200)]
re PR middle-end/36137 (gcc can't do math)
PR middle-end/36137
* fold-const.c (fold_binary): Use STRIP_SIGN_NOPS instead of
STRIP_NOPS on arguments even for MIN_EXPR and MAX_EXPR.
* gcc.c-torture/execute/
20080506-1.c: New test.
From-SVN: r135028
Jakub Jelinek [Wed, 7 May 2008 07:28:14 +0000 (09:28 +0200)]
re PR middle-end/36106 (#pragma omp atomic issues with floating point types)
PR middle-end/36106
* omp-low.c (expand_omp_atomic_pipeline): Load value using the
integral type rather than floating point, then VIEW_CONVERT_EXPR
to the floating point type.
* testsuite/libgomp.c/atomic-5.c: New test.
* testsuite/libgomp.c/atomic-6.c: New test.
* testsuite/libgomp.c/autopar-1.c: New test.
From-SVN: r135027
Uros Bizjak [Wed, 7 May 2008 07:19:01 +0000 (09:19 +0200)]
i386.c (ix86_expand_copysign): Force non-zero constant TFmode op0 to register.
* config/i386/i386.c (ix86_expand_copysign): Force non-zero constant
TFmode op0 to register.
From-SVN: r135025
Jerry DeLisle [Wed, 7 May 2008 02:28:45 +0000 (02:28 +0000)]
re PR libfortran/34974 (null bytes when reverse-tabbing long records (regression vs. g77))
2008-05-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/34974
gfortran.dg/fmt_t_7.f: XFAIL this until we get issue resolved.
From-SVN: r135017
Alan Modra [Wed, 7 May 2008 01:46:50 +0000 (01:46 +0000)]
c-decl.c (grokdeclarator): Comment typo.
* c-decl.c (grokdeclarator): Comment typo.
From-SVN: r135016
Benjamin Kosnik [Wed, 7 May 2008 00:55:51 +0000 (00:55 +0000)]
mutex (mutex::mutex): Fix usage of initializing macro.
2008-05-06 Benjamin Kosnik <bkoz@redhat.com>
* include/std/mutex (mutex::mutex): Fix usage of initializing macro.
(recursive_mutex::recursive_mutex): Same.
(once_flag::once_flag): Same.
* testsuite/30_threads/mutex/cons/assign_neg.cc: Fix line numbers.
* testsuite/30_threads/mutex/cons/copy_neg.cc: Same.
* testsuite/30_threads/recursive_mutex/cons/assign_neg.cc: Same.
* testsuite/30_threads/recursive_mutex/cons/copy_neg.cc: Same.
From-SVN: r135015
GCC Administrator [Wed, 7 May 2008 00:17:45 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r135013
Aldy Hernandez [Tue, 6 May 2008 22:16:50 +0000 (22:16 +0000)]
tree-flow.h: Remove prototype for computed_goto_p.
* tree-flow.h: Remove prototype for computed_goto_p.
* tree-cfg.c (computed_goto_p): Make static.
From-SVN: r135009
H.J. Lu [Tue, 6 May 2008 21:35:33 +0000 (21:35 +0000)]
re PR testsuite/36155 (UTF tests doesn't work on Linux)
2008-05-06 H.J. Lu <hongjiu.lu@intel.com>
PR testsuite/36155
* g++.dg/ext/utf32-4.C: Fix a typo.
From-SVN: r135008