]> gcc.gnu.org Git - gcc.git/log
gcc.git
13 years agore PR middle-end/45393 (ICE in redirect_eh_edge_1, at tree-eh.c:2135)
Richard Guenther [Wed, 25 Aug 2010 10:47:50 +0000 (10:47 +0000)]
re PR middle-end/45393 (ICE in redirect_eh_edge_1, at tree-eh.c:2135)

2010-08-25  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/45393
* tree-ssa-math-opts.c (execute_cse_sincos_1): Properly transfer
and clean EH info.  Avoid SSA update.
(execute_cse_sincos): Cleanup the CFG if it has changed.

* g++.dg/torture/pr45393.C: New testcase.

From-SVN: r163541

13 years agore PR middle-end/45379 (~10% slowdown on test_fpu at revision 163278)
Richard Guenther [Wed, 25 Aug 2010 10:03:19 +0000 (10:03 +0000)]
re PR middle-end/45379 (~10% slowdown on test_fpu at revision 163278)

2010-08-25  Richard Guenther  <rguenther@suse.de>

PR middle-end/45379
* emit-rtl.c (set_mem_attributes_minus_bitpos): Handle
TARGET_MEM_REF in alignment computation.

From-SVN: r163540

13 years agore PR tree-optimization/45059 (error: invalid operands in binary operation, leads...
Jakub Jelinek [Wed, 25 Aug 2010 09:36:35 +0000 (11:36 +0200)]
re PR tree-optimization/45059 (error: invalid operands in binary operation, leads to ICE: verify_stmts failed)

PR tree-optimization/45059
* tree-ssa-reassoc.c (eliminate_redundant_comparison): Strip useless
type conversions from newop{1,2}.  Assert t is a comparison and
newop{1,2} after the stripping are gimple vals.

* gcc.c-torture/compile/pr45059.c: New test.

From-SVN: r163539

13 years agovmull / vmovl support for Neon.
Tejas Belagod [Wed, 25 Aug 2010 07:23:26 +0000 (08:23 +0100)]
vmull / vmovl support for Neon.

For Tejas Belagod

2010-08-25  Tejas Belagod  <tejas.belagod@arm.com>

* lib/target-supports.exp (check_effective_target_vect_unpack):
Set vect_unpack supported flag to true for neon.

* config/arm/iterators.md (VU, SE, V_widen_l): New.
(V_unpack, US): New.
* config/arm/neon.md (vec_unpack<US>_hi_<mode>): Expansion for
vmovl.
(vec_unpack<US>_lo_<mode>): Likewise.
(neon_vec_unpack<US>_hi_<mode>): Instruction pattern for vmovl.
(neon_vec_unpack<US>_lo_<mode>): Likewise.
(vec_widen_<US>mult_lo_<mode>): Expansion for vmull.
(vec_widen_<US>mult_hi_<mode>): Likewise.
(neon_vec_<US>mult_lo_<mode>"): Instruction pattern for vmull.
(neon_vec_<US>mult_hi_<mode>"): Likewise.
(neon_unpack<US>_<mode>): Widening move intermediate step for
vectorizing without -mvectorize-with-neon-quad.
(neon_vec_<US>mult_<mode>): Widening multiply intermediate step
for vectorizing without -mvectorize-with-neon-quad.
* config/arm/predicates.md (vect_par_constant_high): Check for
high-half lanes of a vector.
(vect_par_constant_low): Check for low-half lanes of a vector.

From-SVN: r163538

13 years agoDaily bump.
GCC Administrator [Wed, 25 Aug 2010 00:17:23 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r163536

13 years agoSpeed-up ifcvt_memrefs_wont_trap caching previous results.
Sebastian Pop [Tue, 24 Aug 2010 23:36:04 +0000 (23:36 +0000)]
Speed-up ifcvt_memrefs_wont_trap caching previous results.

This patch speeds up the ifcvt_memrefs_wont_trap computation by
caching the results of the computations in the data references ->aux
fields.

* tree-if-conv.c (struct ifc_dr): New.
(IFC_DR): New.
(DR_WRITTEN_AT_LEAST_ONCE): New.
(DR_RW_UNCONDITIONALLY): New.
(memref_read_or_written_unconditionally): Use the cached values
when possible.
(write_memref_written_at_least_once): Same.
(if_convertible_loop_p): Initialize and free DR->aux fields.

From-SVN: r163532

13 years agoDo not check whether memory references accessed in every iteration trap.
Sebastian Pop [Tue, 24 Aug 2010 23:35:56 +0000 (23:35 +0000)]
Do not check whether memory references accessed in every iteration trap.

This patch relaxes the checks from gimple_could_trap_p in order to
allow the flag_loop_if_convert_stores to if-convert more loops
in which it is possible to prove that:

- the accesses to an array in a loop do not trap (more than the
  original non-if-converted loop).  This is true when the memory
  accesses are executed at every iteration of the if-converted loop.

- the writes to memory occur on arrays that are not const qualified.
  This is true when there exists at least one unconditional write to
  the array in the analyzed program.  In this patch this analysis is
  limited to the loop to be if-converted.

* gimple.c (gimple_could_trap_p_1): Not static anymore.
Pass an extra bool parameter include_mem.
(gimple_could_trap_p): Adjust call to gimple_could_trap_p_1.
(gimple_assign_rhs_could_trap_p): Same.
* gimple.h (gimple_could_trap_p_1): Declared.
* tree-data-ref.h (same_data_refs_base_objects): New.
(same_data_refs): New.
* tree-if-conv.c (memrefs_read_or_written_unconditionally): New.
(write_memrefs_written_at_least_once): New.
(ifcvt_memrefs_wont_trap): New.
(operations_could_trap): New.
(ifcvt_could_trap_p): New.
(if_convertible_gimple_assign_stmt_p): Call ifcvt_could_trap_p.
Gets a vector of data refs.
(if_convertible_stmt_p): Same.
(if_convertible_loop_p_1): New.
(if_convertible_loop_p): Call if_convertible_loop_p_1.

* gcc.dg/tree-ssa/ifc-5.c: New.

From-SVN: r163531

13 years agoAdd flag -ftree-loop-if-convert-stores.
Sebastian Pop [Tue, 24 Aug 2010 23:35:48 +0000 (23:35 +0000)]
Add flag -ftree-loop-if-convert-stores.

This patch adds a flag that controls the replacement of the memory
writes that are in predicated basic blocks with a full write:

for (...)
  if (cond)
    A[i] = foo

is replaced with:

for (...)
  A[i] = cond ? foo : A[i]

In order to do this, we have to call gimple_could_trap_p instead of
gimple_assign_rhs_could_trap_p, as we have to also check that the LHS
of assign stmts does not trap.

* common.opt (ftree-loop-if-convert-stores): New flag.
* doc/invoke.texi (ftree-loop-if-convert-stores): Documented.
* tree-if-conv.c (ifc_temp_var): Pass an extra parameter GSI.  Insert
the created statement before GSI.
(if_convertible_phi_p): Allow virtual phi nodes when
flag_loop_if_convert_stores is set.
(if_convertible_gimple_assign_stmt_p): Allow memory reads and writes
Do not handle types that do not match is_gimple_reg_type.
Remove loop and bb parameters.  Call gimple_could_trap_p instead of
when flag_loop_if_convert_stores is set, as LHS can contain
memory refs.
(if_convertible_stmt_p): Remove loop and bb parameters.  Update calls
to if_convertible_gimple_assign_stmt_p.
(if_convertible_loop_p): Update call to if_convertible_stmt_p.
(replace_phi_with_cond_gimple_assign_stmt): Renamed
predicate_scalar_phi.  Do not handle virtual phi nodes.
(ifconvert_phi_nodes): Renamed predicate_all_scalar_phis.
Call predicate_scalar_phi.
(insert_gimplified_predicates): Insert the gimplified predicate of a BB
just after the labels for flag_loop_if_convert_stores, otherwise
insert the predicate in the end of the BB.
(predicate_mem_writes): New.
(combine_blocks): Call predicate_all_scalar_phis.  When
flag_loop_if_convert_stores is set, call predicate_mem_writes.
(tree_if_conversion): Call mark_sym_for_renaming when
flag_loop_if_convert_stores is set.
(main_tree_if_conversion): Return TODO_update_ssa_only_virtuals when
flag_loop_if_convert_stores is set.

* gcc.dg/tree-ssa/ifc-4.c: New.
* gcc.dg/tree-ssa/ifc-7.c: New.

From-SVN: r163530

13 years agoMAINTAINERS (OS Port Maintainers): Remove myself from windows ports
Danny Smith [Tue, 24 Aug 2010 22:41:34 +0000 (22:41 +0000)]
MAINTAINERS (OS Port Maintainers): Remove myself from windows ports

* MAINTAINERS (OS Port Maintainers): Remove myself from windows
ports

From-SVN: r163529

13 years agore PR bootstrap/45376 (no such instruction: `pcmpestri $0,(%rdi),%xmm0')
Richard Henderson [Tue, 24 Aug 2010 21:08:05 +0000 (14:08 -0700)]
re PR bootstrap/45376 (no such instruction: `pcmpestri $0,(%rdi),%xmm0')

        PR bootstrap/45376
        * configure.ac (HAVE_SSE4): New check.
        * configure, config.in: Rebuild.
        * lex.c (search_line_sse42): Omit if !HAVE_SSE4.

From-SVN: r163528

13 years agopa.c (hppa_register_move_cost, [...]): New.
Anatoly Sokolov [Tue, 24 Aug 2010 18:52:08 +0000 (22:52 +0400)]
pa.c (hppa_register_move_cost, [...]): New.

* config/pa/pa.c (hppa_register_move_cost, pa_libcall_value,
pa_function_value_regno_p, pa_print_operand_punct_valid_p): New.
(pa_function_value): Make static.
(override_options): Rename to...
(pa_option_override): ...this. Make static.
(TARGET_PRINT_OPERAND_PUNCT_VALID_P, TARGET_REGISTER_MOVE_COST,
TARGET_LIBCALL_VALUE, TARGET_FUNCTION_VALUE_REGNO_P,
TARGET_OPTION_OVERRIDE): Define.
* config/pa/pa.h (OVERRIDE_OPTIONS, FUNCTION_VALUE_REGNO_P,
LIBCALL_VALUE, REGISTER_MOVE_COST, PRINT_OPERAND_PUNCT_VALID_P):
Remove.
* config/pa/pa-protos.h (override_options): Remove.

From-SVN: r163525

13 years agolex.c: Disable init_vectorized_lexer etc.
Rainer Orth [Tue, 24 Aug 2010 17:23:35 +0000 (17:23 +0000)]
lex.c: Disable init_vectorized_lexer etc.

* lex.c [__sun__ && __svr4__]: Disable init_vectorized_lexer
etc. on Solaris 2/x86.

From-SVN: r163522

13 years agore PR middle-end/45379 (~10% slowdown on test_fpu at revision 163278)
Richard Guenther [Tue, 24 Aug 2010 13:25:25 +0000 (13:25 +0000)]
re PR middle-end/45379 (~10% slowdown on test_fpu at revision 163278)

2010-08-24  Richard Guenther  <rguenther@suse.de>

PR middle-end/45379
* tree-ssa-address.c (create_mem_ref_raw): Drop to MEM_REF
if addr->index is NULL or zero.
* tree-ssa-alias.c (indirect_refs_may_alias_p): Handle
TARGET_MEM_REF more properly.
(indirect_ref_may_alias_decl_p): Likewise.
* emit-rtl.c (set_mem_attributes_minus_bitpos): Keep TARGET_MEM_REFs.
* alias.c (ao_ref_from_mem): Handle TARGET_MEM_REF more
properly.

From-SVN: r163519

13 years agocheck loongson targets in vect.exp
Mingjie Xing [Tue, 24 Aug 2010 03:22:07 +0000 (03:22 +0000)]
check loongson targets in vect.exp

From-SVN: r163495

13 years agoDaily bump.
GCC Administrator [Tue, 24 Aug 2010 00:17:23 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r163494

13 years agom32c.c (m32c_function_value_regno_p): Make static.
Anatoly Sokolov [Mon, 23 Aug 2010 19:34:15 +0000 (23:34 +0400)]
m32c.c (m32c_function_value_regno_p): Make static.

* config/m32c/m32c.c (m32c_function_value_regno_p): Make static.
(m32c_override_options): Rename to...
(m32c_option_override): ...this. Make static.
(TARGET_FUNCTION_VALUE_REGNO_P, TARGET_OPTION_OVERRIDE): Define.
* config/m32c/m32c.h (OVERRIDE_OPTIONS, FUNCTION_VALUE_REGNO_P):
Remove.
* config/m32c/m32c-protos.h (m32c_override_options,
m32c_function_value_regno_p): Remove.

From-SVN: r163488

13 years agogcc_release (snapshot_print): Also include an sha1 hash for every tarball.
Gerald Pfeifer [Mon, 23 Aug 2010 18:52:06 +0000 (18:52 +0000)]
gcc_release (snapshot_print): Also include an sha1 hash for every tarball.

* gcc_release (snapshot_print): Also include an sha1 hash for
every tarball.  Slightly tweak indentation.

From-SVN: r163487

13 years agoFix a typo in the previous commit
Changpeng Fang [Mon, 23 Aug 2010 18:50:22 +0000 (18:50 +0000)]
Fix a typo in the previous commit

* tree-ssa-loop-prefetch.c (gather_memory_references_ref): Fix a
typo ("could not taken" --> "could not be taken")

From-SVN: r163485

13 years agore PR fortran/45380 (ICE in gfc_conv_intrinsic_any_all at -O{n>0})
Mikael Morin [Mon, 23 Aug 2010 18:42:21 +0000 (18:42 +0000)]
re PR fortran/45380 (ICE in gfc_conv_intrinsic_any_all at -O{n>0})

2010-08-23  Mikael Morin  <mikael@gcc.gnu.org>

PR fortran/45380
* frontend-passes.c (optimize_equality): Don't optimize array equality

From-SVN: r163484

13 years agotree-vect-loop.c (vect_get_single_scalar_iteraion_cost): Pre-initialize innerloop_ite...
Kai Tietz [Mon, 23 Aug 2010 18:08:47 +0000 (18:08 +0000)]
tree-vect-loop.c (vect_get_single_scalar_iteraion_cost): Pre-initialize innerloop_iters to one.

2010-08-23  Kai Tietz  <kai.tietz@onevision.com>

        * tree-vect-loop.c (vect_get_single_scalar_iteraion_cost):
        Pre-initialize innerloop_iters to one.

From-SVN: r163477

13 years agopr45260 Don't generate prefetch if the address of base could not be taken.
Changpeng Fang [Mon, 23 Aug 2010 17:45:08 +0000 (17:45 +0000)]
pr45260 Don't generate prefetch if the address of base could not be taken.

* tree-flow.h (may_be_nonaddressable_p): New definition. Make the
existing static function global.

*tree-ssa-loop-ivopts.c (may_be_nonaddressable_p): This function
is changed to global.

*tree-ssa-loop-prefetch.c (gather_memory_references_ref): Call
may_be_nonaddressable_p on base, and don't collect this reference
if the address of the base could not be taken.

From-SVN: r163475

13 years agoAdd missing file
Michael Meissner [Mon, 23 Aug 2010 17:31:56 +0000 (17:31 +0000)]
Add missing file

From-SVN: r163473

13 years agoUpdate to use -mveclibabi=mass instead of -mmass
Michael Meissner [Mon, 23 Aug 2010 16:47:01 +0000 (16:47 +0000)]
Update to use -mveclibabi=mass instead of -mmass

From-SVN: r163471

13 years agoAdd -mveclibabi=mass
Michael Meissner [Mon, 23 Aug 2010 16:41:10 +0000 (16:41 +0000)]
Add -mveclibabi=mass

From-SVN: r163470

13 years agore PR libfortran/45323 (warnings compiling libgfortran/io/write.c: array subscript...
Tobias Burnus [Mon, 23 Aug 2010 12:39:20 +0000 (14:39 +0200)]
re PR libfortran/45323 (warnings compiling libgfortran/io/write.c: array subscript has type 'char')

2010-08-23  Tobias Burnus  <burnus@net-b.de>

        PR fortran/45323
        * io/write.c (nml_write_obj, namelist_write): Cast argument
        of toupper to int.

From-SVN: r163469

13 years agore PR fortran/45366 (Problem with procedure pointer dummy in PURE function)
Janus Weil [Mon, 23 Aug 2010 12:26:42 +0000 (14:26 +0200)]
re PR fortran/45366 (Problem with procedure pointer dummy in PURE function)

2010-08-23  Janus Weil  <janus@gcc.gnu.org>

PR fortran/45366
* resolve.c (resolve_procedure_interface): New function split off from
'resolve_symbol'.
(resolve_formal_arglist): Call it here ...
(resolve_symbol): ... and here.

2010-08-23  Janus Weil  <janus@gcc.gnu.org>

PR fortran/45366
* gfortran.dg/proc_ptr_29.f90: New.

From-SVN: r163468

13 years agoDaily bump.
GCC Administrator [Mon, 23 Aug 2010 00:17:17 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r163465

13 years agore PR boehm-gc/34544 (pthread_default_stacksize_np failed.)
John David Anglin [Sun, 22 Aug 2010 16:23:38 +0000 (16:23 +0000)]
re PR boehm-gc/34544 (pthread_default_stacksize_np failed.)

PR boehm-gc/34544
* gthr-posix.h (__gthread_active_init): Delete.
(__gthread_active_p): Do activity check here.
Don't include errno.h on hppa-hpux.  Update comment.
* gthr-posix95.h (__gthread_active_init): Delete.
(__gthread_active_p): Do activity check here.
Don't include errno.h on hppa-hpux.  Update comment.
* config.gcc (hppa[12]*-*-hpux11*): Define extra_parts.
* config/pa/pa64-hpux.h (LIB_SPEC): When -static is specified, only
add -lpthread when -mt or -pthread is specified.
* config/pa/pa-hpux11.h (LIB_SPEC): likewise.
(LINK_GCC_C_SEQUENCE_SPEC): Define.
* config/pa/t-pa-hpux11 (LIBGCCSTUB_OBJS): Define.
(stublib.c, pthread_default_stacksize_np-stub.o,
pthread_mutex_lock-stub.o, pthread_mutex_unlock-stub.o,
$(T)libgcc_stub.a): Add methods.
* config/pa/t-pa64 (LIBGCCSTUB_OBJS): Add pthread stubs.
(stublib.c, pthread_default_stacksize_np-stub.o,
pthread_mutex_lock-stub.o, pthread_mutex_unlock-stub.o): Add methods.
* config/pa/stublib.c (pthread_default_stacksize_np, pthread_mutex_lock,
pthread_mutex_unlock): New stubs.

From-SVN: r163461

13 years agore PR fortran/45367 (FAIL: gfortran.dg/bessel_6.f90 and gfortran.dg/bessel_7.f90)
Tobias Burnus [Sun, 22 Aug 2010 14:05:26 +0000 (16:05 +0200)]
re PR fortran/45367 (FAIL: gfortran.dg/bessel_6.f90 and gfortran.dg/bessel_7.f90)

2010-08-22  Tobias Burnus  <burnus@net-b.de>
            Dominique d'Humieres <dominiq@lps.ens.fr>

        PR fortran/45367
        * gfortran.dg/bessel_6.f90: Further reduce required accuracy.

Co-Authored-By: Dominique d'Humieres <dominiq@lps.ens.fr>
From-SVN: r163460

13 years agoMakefile.in (gccspec.o, cppspec.o): Update dependencies.
Joseph Myers [Sun, 22 Aug 2010 12:19:01 +0000 (13:19 +0100)]
Makefile.in (gccspec.o, cppspec.o): Update dependencies.

* Makefile.in (gccspec.o, cppspec.o): Update dependencies.
* common.opt (L, nodefaultlibs, nostdlib, pg, static): New
options.
* config/avr/avr.h (LIBSTDCXX): Remove initial "-l".
* config/freebsd.h (MATH_LIBRARY_PROFILE): Remove initial "-l".
* config/i386/djgpp.h (LIBSTDCXX): Remove initial "-l".
* config/rs6000/aix.h (LIBSTDCXX_STATIC): Remove initial "-l".
* config/s390/tpf.h (MATH_LIBRARY, LIBSTDCXX): Remove initial
"-l".
* cppspec.c: Include opts.h.
(lang_specific_driver): Use cl_decoded_option structures.
* doc/tm.texi.in (MATH_LIBRARY): Update documentation.
* doc/tm.texi: Regenerate.
* gcc.c (translate_options): Translate -d to -foutput-class-dir=.
(driver_handle_option): Allow driver options needing no special
processing.
(process_command): Decode options before call to
lang_specific_driver.  Pass decoded options to
lang_specific_driver.
* gcc.h (lang_specific_driver): Update prototype.
* gccspec.c: Include opts.h.
(lang_specific_driver): Use cl_decoded_option structures.
* opts-common.c (option_ok_for_language, generate_option,
generate_option_input_file): New.
(decode_cmdline_option): Use option_ok_for_language.
(decode_cmdline_options_to_array): Use generate_option_input_file.
(handle_generated_option): Use generate_option.
* opts.h (generate_option, generate_option_input_file): Declare.

cp:
* Make-lang.in (g++spec.o): Update dependencies.
* g++spec.c: Include opts.h
(MATH_LIBRARY, LIBSTDCXX): Remove initial "-l".
(lang_specific_driver): Use cl_decoded_option structures.

fortran:
* Make-lang.in (gfortranspec.o): Update dependencies.
* gfortranspec.c: Include coretypes.h before gcc.h.  Include
opts.h.
(MATH_LIBRARY, FORTRAN_LIBRARY): Remove initial "-l".
(ADD_ARG_LIBGFORTRAN, Option, lookup_option): Remove.
(g77_xargc): Make unsigned.
(g77_xargv): Change to g77_x_decoded_options.
(g77_newargc): Make unsigned.
(g77_newargv): Change to g77_new_decoded_options.
(strings_same, options_same): New.
(append_arg): Use cl_decoded_option structures.
(append_option): New.
(add_arg_libgfortran): New.
(lang_specific_driver): Use cl_decoded_option structures.

java:
* Make-lang.in (jvspec.o): Update dependencies.
* jvspec.c: Include opts.h.
(PARAM_ARG): Remove.
(find_spec_file): Do not add leading -specs=.
(lang_specific_driver): Use cl_decoded_option structures.
* lang.opt (C, CLASSPATH, D, bootclasspath, classpath, encoding,
extdirs, fmain=, s-bc-abi): New options.

From-SVN: r163459

13 years agore PR fortran/45367 (FAIL: gfortran.dg/bessel_6.f90 and gfortran.dg/bessel_7.f90)
Tobias Burnus [Sun, 22 Aug 2010 10:24:49 +0000 (12:24 +0200)]
re PR fortran/45367 (FAIL: gfortran.dg/bessel_6.f90 and gfortran.dg/bessel_7.f90)

2010-08-22  Tobias Burnus  <burnus@net-b.de>

        PR fortran/45367
        * gfortran.dg/bessel_6.f90: Fix numeric tolerence.

From-SVN: r163458

13 years agoReally commit the following change:
Tobias Burnus [Sun, 22 Aug 2010 10:09:34 +0000 (12:09 +0200)]
Really commit the following change:

2010-08-22  Tobias Burnus  <burnus@net-b.de>
            Dominique d'Humieres <dominiq@lps.ens.fr>

        PR fortran/45367
        * gfortran.dg/bessel_6.f90: Increase numeric tolerence.

From-SVN: r163457

13 years agomips.c (mips_override_options): Rename to...
Anatoly Sokolov [Sun, 22 Aug 2010 09:33:45 +0000 (13:33 +0400)]
mips.c (mips_override_options): Rename to...

* config/mips/mips.c (mips_override_options): Rename to...
(mips_option_override): ...this. Make static.
(TARGET_OPTION_OVERRIDE): Define.
(mips_in_small_data_p): Update comment.
* config/mips/mips.h (OVERRIDE_OPTIONS): Remove.
(FIXED_REGISTERS): Update comment.
* config/mips/mips-protos.h (mips_override_options): Remove.

From-SVN: r163456

13 years agore PR fortran/36158 (Transformational function BESSEL_YN(n1,n2,x) and BESSEL_JN missing)
Tobias Burnus [Sun, 22 Aug 2010 08:39:48 +0000 (10:39 +0200)]
re PR fortran/36158 (Transformational function BESSEL_YN(n1,n2,x) and BESSEL_JN missing)

2010-08-22  Tobias Burnus  <burnus@net-b.de>

        PR fortran/36158
        * gfortran.dg/bessel_7.f90: Disable accidently enabled debug
        output.

From-SVN: r163455

13 years agore PR fortran/45367 (FAIL: gfortran.dg/bessel_6.f90 and gfortran.dg/bessel_7.f90)
Tobias Burnus [Sun, 22 Aug 2010 08:34:14 +0000 (10:34 +0200)]
re PR fortran/45367 (FAIL: gfortran.dg/bessel_6.f90 and gfortran.dg/bessel_7.f90)

2010-08-22  Tobias Burnus  <burnus@net-b.de>
            Dominique d'Humieres <dominiq@lps.ens.fr>

        PR fortran/45367
        PR fortran/36158
        * gfortran.dg/bessel_6.f90: Increase numeric tolerence.
        * gfortran.dg/bessel_7.f90: Increase numeric tolerence.

Co-Authored-By: Dominique d'Humieres <dominiq@lps.ens.fr>
From-SVN: r163454

13 years agoDaily bump.
GCC Administrator [Sun, 22 Aug 2010 00:17:35 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r163453

13 years agoFix formatting of recently added ChangeLog entry.
Olivier Hainque [Sat, 21 Aug 2010 20:54:18 +0000 (20:54 +0000)]
Fix formatting of recently added ChangeLog entry.

From-SVN: r163449

13 years agovxworks.h (TARGET_OS_CPP_BUILTINS): Define __PPC__.
Olivier Hainque [Sat, 21 Aug 2010 20:53:16 +0000 (20:53 +0000)]
vxworks.h (TARGET_OS_CPP_BUILTINS): Define __PPC__.

        * config/rs6000/vxworks.h (TARGET_OS_CPP_BUILTINS): Define __PPC__.

From-SVN: r163448

13 years agovxworks.h: (PREFERRED_STACK_BOUNDARY...
Olivier Hainque [Sat, 21 Aug 2010 20:48:34 +0000 (20:48 +0000)]
vxworks.h: (PREFERRED_STACK_BOUNDARY...

        * config/rs6000/vxworks.h:  (PREFERRED_STACK_BOUNDARY,
        ABI_STACK_BOUNDARY): Ensure STACK_BOUNDARY is honored despite EABI.

From-SVN: r163447

13 years agoVectorize fast path of _cpp_clean_line.
Richard Henderson [Sat, 21 Aug 2010 19:05:40 +0000 (12:05 -0700)]
Vectorize fast path of _cpp_clean_line.

* configure.ac (AC_C_BIGENDIAN, AC_TYPE_UINTPTR_T): New tests.
(ssize_t): Check via AC_TYPE_SSIZE_T instead of AC_CHECK_TYPE.
(ptrdiff_t): Check via AC_CHECK_TYPE.
* config.in, configure: Rebuild.
* system.h: Include stdint.h, if available.
* lex.c (WORDS_BIGENDIAN): Provide default.
(acc_char_mask_misalign, acc_char_replicate, acc_char_cmp,
acc_char_index, search_line_acc_char, repl_chars, search_line_mmx,
search_line_sse2, search_line_sse42, init_vectorized_lexer,
search_line_fast): New.
(_cpp_clean_line): Use search_line_fast.  Restructure the fast
loop to make it clear when we're leaving the loop.  Stay in the
fast loop for non-trigraph '?'.

Co-Authored-By: Andi Kleen <ak@linux.intel.com>
Co-Authored-By: David S. Miller <davem@davemloft.net>
From-SVN: r163446

13 years agore PR fortran/45271 ([OOP] Polymorphic code breaks when changing order of USE statements)
Janus Weil [Sat, 21 Aug 2010 14:50:57 +0000 (16:50 +0200)]
re PR fortran/45271 ([OOP] Polymorphic code breaks when changing order of USE statements)

2010-08-21  Janus Weil  <janus@gcc.gnu.org>

PR fortran/45271
PR fortran/45290
* class.c (add_proc_comp): Add static initializer for PPCs.
(add_procs_to_declared_vtab): Modified comment.
* module.c (mio_component): Add argument 'vtype'. Don't read/write the
initializer if the component is part of a vtype.
(mio_component_list): Add argument 'vtype', pass it on to
'mio_component'.
(mio_symbol): Modified call to 'mio_component_list'.
* trans.h (gfc_conv_initializer): Modified prototype.
(gfc_trans_assign_vtab_procs): Removed.
* trans-common.c (create_common): Modified call to
'gfc_conv_initializer'.
* trans-decl.c (gfc_get_symbol_decl,get_proc_pointer_decl,
gfc_emit_parameter_debug_info): Modified call to
'gfc_conv_initializer'.
(build_function_decl): Remove assertion.
* trans-expr.c (gfc_conv_derived_to_class,gfc_trans_class_assign):
Removed call to 'gfc_trans_assign_vtab_procs'.
(gfc_conv_initializer): Add argument 'procptr'.
(gfc_conv_structure): Modified call to 'gfc_conv_initializer'.
(gfc_trans_assign_vtab_procs): Removed.
* trans-stmt.c (gfc_trans_allocate): Removed call to
'gfc_trans_assign_vtab_procs'.

2010-08-21  Janus Weil  <janus@gcc.gnu.org>

PR fortran/44863
PR fortran/45271
PR fortran/45290
* gfortran.dg/dynamic_dispatch_10.f03: New (PR 44863 comment #1).
* gfortran.dg/pointer_init_5.f90: New (PR 45290 comment #6).
* gfortran.dg/typebound_call_18.f03: New (PR 45271 comment #3).

From-SVN: r163445

13 years ago* tracebak.c: Fix typo in comment.
Eric Botcazou [Sat, 21 Aug 2010 13:25:33 +0000 (13:25 +0000)]
* tracebak.c: Fix typo in comment.

From-SVN: r163444

13 years agotree-pass.h (pass_ipa_cdtor_merge): New function.
Jan Hubicka [Sat, 21 Aug 2010 12:36:19 +0000 (14:36 +0200)]
tree-pass.h (pass_ipa_cdtor_merge): New function.

* tree-pass.h (pass_ipa_cdtor_merge): New function.
* cgraphunit.c (static_ctors, static_dtors): Move to ipa.c; make
heap allocated.
(record_cdtor_fn): Move to ipa.c; do not test for
have_ctors_dtors.
(build_cdtor): Move to ipa.c; add code avoiding construction
when target have ctors/dtors and there is only one ctor/dtor at given
priority.
(compare_ctor, compare_dtor): Move to ipa.c; use DECL_UID to stabilize sort;
reverse order of constructors.
(cgraph_build_cdtor_fns):Move to ipa.c; rename to build_cdtor_fns.
(cgraph_finalize_function): Do not call record_cdtor_fn.
(cgraph_finalize_compilation_unit): Do not call cgraph_build_cdtor_fns.
(cgraph_build_static_cdtor): Move to ipa.c.
* ipa.c: Include target.h and tree-iterator.h.
(cgraph_build_static_cdtor, static_ctors, static_dtors,
record_cdtor_fn, build_cdtor, compare_ctor, compare_dtor,
build_cdtor_fns, ipa_cdtor_merge, gate_ipa_cdtor_merge,
pass_ipa_cdtor_merge): New.
* passes.c (init_optimization_passes): Enqueue pass_ipa_cdtor_merge.
* ipa-prop.c (update_indirect_edges_after_inlining): Avoid out of bounds access.

From-SVN: r163443

13 years agoFix previous commit.
Jan Hubicka [Sat, 21 Aug 2010 12:24:41 +0000 (12:24 +0000)]
Fix previous commit.

From-SVN: r163442

13 years agoFix misquoting in stdint.m4.
Ralf Wildenhues [Sat, 21 Aug 2010 12:18:02 +0000 (12:18 +0000)]
Fix misquoting in stdint.m4.

config/:
PR target/45084
* stdint.m4 (GCC_HEADER_STDINT): Use m4 quotes for arguments
of AC_MSG_ERROR.

libdecnumber/:
* configure: Regenerate.

libgfortran/:
* configure: Regenerate.

libgomp/:
* configure: Regenerate.

libstdc++-v3/:
* configure: Regenerate.

From-SVN: r163441

13 years agore PR fortran/36158 (Transformational function BESSEL_YN(n1,n2,x) and BESSEL_JN missing)
Tobias Burnus [Sat, 21 Aug 2010 10:12:53 +0000 (12:12 +0200)]
re PR fortran/36158 (Transformational function BESSEL_YN(n1,n2,x) and BESSEL_JN missing)

2010-08-21  Tobias Burnus  <burnus@net-b.de>

        PR fortran/36158
        PR fortran/33197
        * intrinsic.c (add_sym): Init value attribute.
        (set_attr_value): New function.
        (add_functions) Use it and add JN/YN resolvers.
        * symbol.c (gfc_copy_formal_args_intr): Copy value attr.
        * intrinsic.h (gfc_resolve_bessel_n2): New prototype.
        * gfortran.h (gfc_intrinsic_arg): Add value attribute.
        * iresolve.c (gfc_resolve_bessel_n2): New function.
        * trans-intrinsic.c (gfc_get_symbol_for_expr): Create
        formal arg list.
        (gfc_conv_intrinsic_function,gfc_is_intrinsic_libcall):
        Add GFC_ISYM_JN2/GFC_ISYM_YN2 as case value.
        * simplify.c (): For YN set to -INF if previous values
        was -INF.
        * trans-expr.c (gfc_conv_procedure_call): Don't crash
        if sym->as is NULL.
        * iresolve.c (gfc_resolve_extends_type_of): Set the
        type of the dummy argument to the one of the actual.

2010-08-21  Tobias Burnus  <burnus@net-b.de>

        PR fortran/36158
        PR fortran/33197
        * m4/bessel.m4: Implement bessel_jn and bessel_yn.
        * gfortran.map: Add the generated bessel_jn_r{4,8,10,16}
        and bessel_yn_r{4,8,10,16}.
        * Makefile.am: Add bessel.m4.
        * Makefile.in: Regenerated.
        * generated/bessel_r4.c: Generated.
        * generated/bessel_r16.c: Generated.
        * generated/bessel_r8.c: Generated.
        * generated/bessel_r10.c: Generated.

2010-08-21  Tobias Burnus  <burnus@net-b.de>

        PR fortran/36158
        PR fortran/33197
        * gfortran.dg/bessel_6.f90: New.
        * gfortran.dg/bessel_7.f90: New.

From-SVN: r163440

13 years agore PR middle-end/45307 (Stores expanding to no RTL not removed by tree optimizers...
Jan Hubicka [Sat, 21 Aug 2010 09:46:15 +0000 (11:46 +0200)]
re PR middle-end/45307 (Stores expanding to no RTL not removed by tree optimizers, Empty ctors/dtors not eliminated)

PR c++/45307
PR c++/17736
* cgraph.h (cgraph_only_called_directly_p,
cgraph_can_remove_if_no_direct_calls_and_refs_p): Handle
static cdtors.
* cgraphunit.c (cgraph_decide_is_function_needed): Static cdtors
are not needed.
(cgraph_finalize_function): Static cdtors are reachable.
(cgraph_mark_functions_to_output): Use cgraph_only_called_directly_p.

* gcc.dg/ipa/ctor-empty-1.c: Add testcase.
* g++.dg/tree-ssa/empty-2.C: Check that constructor got optimized out.

From-SVN: r163439

13 years agolto-cgraph.c (lto_output_edge): Use gimple_has_body_p instead of flag_wpa.
Jan Hubicka [Sat, 21 Aug 2010 08:13:27 +0000 (10:13 +0200)]
lto-cgraph.c (lto_output_edge): Use gimple_has_body_p instead of flag_wpa.

* lto-cgraph.c (lto_output_edge): Use gimple_has_body_p instead of flag_wpa.
* lto-streamer-out.c (lto_output): Likewise.
* passes.c (ipa_write_optimization_summaries): Initialize statement uids.

* lto.c (lto_1_to_1_map): Be prepared for node to have no file data.
(lto_wpa_write_files): Update comments.

From-SVN: r163438

13 years agoDaily bump.
GCC Administrator [Sat, 21 Aug 2010 00:16:55 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r163437

13 years agopex-common.c (pex_read_err): Set stderr_pipe to -1 if a corresponding stream has...
Maciej W. Rozycki [Fri, 20 Aug 2010 22:39:58 +0000 (22:39 +0000)]
pex-common.c (pex_read_err): Set stderr_pipe to -1 if a corresponding stream has been opened.

* pex-common.c (pex_read_err): Set stderr_pipe to -1 if a
corresponding stream has been opened.
(pex_free): Close pipe file descriptors corresponding to child's
stdout and stderr before waiting.

From-SVN: r163426

13 years agotree.h (alias_diag_flags): New enum.
Olivier Hainque [Fri, 20 Aug 2010 22:08:41 +0000 (22:08 +0000)]
tree.h (alias_diag_flags): New enum.

        * tree.h (alias_diag_flags): New enum.
        (alias_pair): Add an 'emitted_diags' field.
        * varasm.c (finish_aliases_1): Honor and update
        * p->emitted_diags.
        (assemble_alias): Initialize emitted_diags of new pairs.

From-SVN: r163425

13 years agoaix.h (STACK_CHECK_STATIC_BUILTIN): Define to 1.
Eric Botcazou [Fri, 20 Aug 2010 21:22:16 +0000 (21:22 +0000)]
aix.h (STACK_CHECK_STATIC_BUILTIN): Define to 1.

* config/rs6000/aix.h (STACK_CHECK_STATIC_BUILTIN): Define to 1.
* config/rs6000/linux.h (STACK_CHECK_STATIC_BUILTIN): Likewise.
* config/rs6000/linux64.h (STACK_CHECK_STATIC_BUILTIN): Likewise.
(STACK_CHECK_PROTECT): Define.
* config/rs6000/rs6000.c (rs6000_emit_probe_stack_range): New function.
(output_probe_stack_range): Likewise.
(rs6000_emit_prologue): Invoke rs6000_emit_probe_stack_range if static
builtin stack checking is enabled.
* config/rs6000/rs6000-protos.h (output_probe_stack_range): Declare.
* config/rs6000/rs6000.md (UNSPECV_PROBE_STACK_RANGE): New constant.
(probe_stack_range): New insn.

From-SVN: r163424

13 years agoCast to unsigned short/char first for _mm_extract_epi16/_mm_extract_epi8.
H.J. Lu [Fri, 20 Aug 2010 20:57:56 +0000 (20:57 +0000)]
Cast to unsigned short/char first for _mm_extract_epi16/_mm_extract_epi8.

gcc/

2010-08-20  H.J. Lu  <hongjiu.lu@intel.com>

PR target/45336
* config/i386/emmintrin.h (_mm_extract_epi16): Cast to unsigned
short first.

* config/i386/smmintrin.h (_mm_extract_epi8): Cast to unsigned
char first.

gcc/testsuite/

2010-08-20  H.J. Lu  <hongjiu.lu@intel.com>

PR target/45336
* gcc.target/i386/pr45336-1.c: New.
* gcc.target/i386/pr45336-2.c: Likewise.
* gcc.target/i386/pr45336-3.c: Likewise.
* gcc.target/i386/pr45336-4.c: Likewise.

From-SVN: r163421

13 years agore PR target/45336 (pextr{b,w,d}, (worse than) redundant extensions)
Jakub Jelinek [Fri, 20 Aug 2010 20:54:25 +0000 (22:54 +0200)]
re PR target/45336 (pextr{b,w,d}, (worse than) redundant extensions)

PR target/45336
* config/i386/sse.md (*sse4_1_pextrb): Add SWI48 mode iterator
to cover zero extension into 64-bit register.
(*sse2_pextrw): Likewise.
(*sse4_1_pextrd_zext): New insn.

From-SVN: r163420

13 years agorevert r163410, partially revert r163267.
Iain Sandoe [Fri, 20 Aug 2010 20:10:42 +0000 (20:10 +0000)]
revert r163410, partially revert r163267.

* config/rs6000/darwin.h (LIB_SPEC): Remove.
* config/darwin.h (REAL_LIBGCC_SPEC): Link lgcc for all
Darwin versions.

From-SVN: r163419

13 years agore PR testsuite/45361 (gcc.target/i386/volatile-2.c failed)
Uros Bizjak [Fri, 20 Aug 2010 19:23:52 +0000 (21:23 +0200)]
re PR testsuite/45361 (gcc.target/i386/volatile-2.c failed)

PR testsuite/45361
* gcc.target/i386/volatile-2.c: Update scan strings to also
include (%rip) for the memory reference on x86_64.

From-SVN: r163416

13 years agore PR middle-end/44974 (Function with attribute noreturn omits a call to another...
Jakub Jelinek [Fri, 20 Aug 2010 18:49:46 +0000 (20:49 +0200)]
re PR middle-end/44974 (Function with attribute noreturn omits a call to another function with noreturn)

PR middle-end/44974
* builtins.c (expand_builtin): Don't optimize away
calls to DECL_LOOPING_CONST_OR_PURE_P builtins.

* gcc.dg/pr44974.c: New test.

From-SVN: r163415

13 years agoi386.md (ashift RSP splitter): Remove splitter.
Uros Bizjak [Fri, 20 Aug 2010 18:40:56 +0000 (20:40 +0200)]
i386.md (ashift RSP splitter): Remove splitter.

* config/i386/i386.md (ashift RSP splitter): Remove splitter.
(pro_epilogue_adjust_stack_di_2): Use "l" constraint for
alternative 1 of operand 2.

From-SVN: r163414

13 years agosimplify-rtx.c (simplify_unary_operation_1): Optimize (sign_extend (zero_extend ...
Jakub Jelinek [Fri, 20 Aug 2010 18:08:10 +0000 (20:08 +0200)]
simplify-rtx.c (simplify_unary_operation_1): Optimize (sign_extend (zero_extend ()) and ({sign,zero}_extend (lshiftrt...

* simplify-rtx.c (simplify_unary_operation_1): Optimize
(sign_extend (zero_extend ()) and
({sign,zero}_extend (lshiftrt (ashift X (const_int I)) (const_int I))).

Co-Authored-By: Paolo Bonzini <bonzini@gnu.org>
From-SVN: r163413

13 years agore PR rtl-optimization/45353 (ICE: RTL check: expected elt 3 type 'B', have '0' ...
Jakub Jelinek [Fri, 20 Aug 2010 18:07:12 +0000 (20:07 +0200)]
re PR rtl-optimization/45353 (ICE: RTL check: expected elt 3 type 'B', have '0' (rtx barrier) in sel_bb_head, at sel-sched-ir.c:4329 with -fselective-scheduling and __builtin_unreachable())

PR rtl-optimization/45353
* sel-sched-ir.c (sel_bb_head): Return NULL even if next_nonnote_insn
after bb_note is a BARRIER.

* gcc.dg/pr45353.c: New test.

From-SVN: r163412

13 years agodarwin.h (LIB_SPEC): New.
Iain Sandoe [Fri, 20 Aug 2010 16:12:14 +0000 (16:12 +0000)]
darwin.h (LIB_SPEC): New.

* config/rs6000/darwin.h (LIB_SPEC): New. Provide save/restFP by
linking libgcc.a.

From-SVN: r163410

13 years agotree-ssa-address.c (tree_mem_ref_addr): Convert offset to sizetype.
Jakub Jelinek [Fri, 20 Aug 2010 15:56:14 +0000 (17:56 +0200)]
tree-ssa-address.c (tree_mem_ref_addr): Convert offset to sizetype.

* tree-ssa-address.c (tree_mem_ref_addr): Convert offset to
sizetype.

Co-Authored-By: Michael Matz <matz@suse.de>
From-SVN: r163409

13 years ago* lang.opt (MD, MMD): Use NoDriverArg instead of NoArgDriver.
Joseph Myers [Fri, 20 Aug 2010 15:27:29 +0000 (16:27 +0100)]
* lang.opt (MD, MMD): Use NoDriverArg instead of NoArgDriver.

From-SVN: r163408

13 years agoggc-common.c (ggc_mark_root_tab): New function, split out from...
Nathan Froyd [Fri, 20 Aug 2010 15:26:56 +0000 (15:26 +0000)]
ggc-common.c (ggc_mark_root_tab): New function, split out from...

* ggc-common.c (ggc_mark_root_tab): New function, split out from...
(ggc_mark_roots): ...here.

From-SVN: r163407

13 years agogfortranspec.c (lang_specific_driver): Refer to -lgfortran in comment, not -lg2c.
Joseph Myers [Fri, 20 Aug 2010 15:25:03 +0000 (16:25 +0100)]
gfortranspec.c (lang_specific_driver): Refer to -lgfortran in comment, not -lg2c.

* gfortranspec.c (lang_specific_driver): Refer to -lgfortran in
comment, not -lg2c.

From-SVN: r163406

13 years agoReplace has_analyzed_clone with has_analyzed_clone_p.
H.J. Lu [Fri, 20 Aug 2010 14:42:28 +0000 (14:42 +0000)]
Replace has_analyzed_clone with has_analyzed_clone_p.

2010-08-20  H.J. Lu  <hongjiu.lu@intel.com>

PR bootstrap/45357
* lto.c (lto_materialize_function): Replace has_analyzed_clone
with has_analyzed_clone_p.

From-SVN: r163405

13 years agolto.c (has_analyzed_clone_p): New function
Jan Hubicka [Fri, 20 Aug 2010 13:29:36 +0000 (15:29 +0200)]
lto.c (has_analyzed_clone_p): New function

* lto.c (has_analyzed_clone_p): New function
(lto_materialize_function): Use callgraph to determine if
body is needed.
(materialize_cgraph): Remove DECL_IS_BUILTIN check.

From-SVN: r163403

13 years agomissed from rest of commit
Nathan Sidwell [Fri, 20 Aug 2010 12:59:40 +0000 (12:59 +0000)]
missed from rest of commit

missed from rest of commit
* gimplify.c (gimplify_modify_expr): When assigning to volatiles,
copy the src value and return a copy.
* doc/extend.texi (Volatiles): Move from C++ to C and expand.
(C++ Volatiles): Adjust to describe C++ semantics only.

From-SVN: r163402

13 years agovec.h (FOR_EACH_VEC_ELT): Define.
Nathan Froyd [Fri, 20 Aug 2010 12:48:59 +0000 (12:48 +0000)]
vec.h (FOR_EACH_VEC_ELT): Define.

gcc/
* vec.h (FOR_EACH_VEC_ELT): Define.
* c-decl.c: Use it.
* cfgloop.c: Likewise.
* cfgloopmanip.c: Likewise.
* cgraph.c: Likewise.
* cgraphunit.c: Likewise.
* combine.c: Likewise.
* config/bfin/bfin.c: Likewise.
* config/mips/mips.c: Likewise.
* config/rs6000/rs6000.c: Likewise.
* dbxout.c: Likewise.
* df-scan.c: Likewise.
* dominance.c: Likewise.
* dse.c: Likewise.
* dwarf2out.c: Likewise.
* except.c: Likewise.
* expr.c: Likewise.
* function.c: Likewise.
* gcse.c: Likewise.
* genattr.c: Likewise.
* ggc-common.c: Likewise.
* gimplify.c: Likewise.
* graphite-blocking.c: Likewise.
* graphite-clast-to-gimple.c: Likewise.
* graphite-dependences.c: Likewise.
* graphite-interchange.c: Likewise.
* graphite-poly.c: Likewise.
* graphite-scop-detection.c: Likewise.
* graphite-sese-to-poly.c: Likewise.
* graphite.c: Likewise.
* haifa-sched.c: Likewise.
* ifcvt.c: Likewise.
* implicit-zee.c: Likewise.
* ipa-prop.c: Likewise.
* ipa-struct-reorg.c: Likewise.
* ipa.c: Likewise.
* ira-build.c: Likewise.
* ira-color.c: Likewise.
* ira-emit.c: Likewise.
* lambda-code.c: Likewise.
* loop-invariant.c: Likewise.
* loop-unroll.c: Likewise.
* lower-subreg.c: Likewise.
* lto-cgraph.c: Likewise.
* lto-opts.c: Likewise.
* lto-streamer-in.c: Likewise.
* lto-streamer-out.c: Likewise.
* lto-streamer.c: Likewise.
* lto-symtab.c: Likewise.
* matrix-reorg.c: Likewise.
* opts.c: Likewise.
* predict.c: Likewise.
* print-tree.c: Likewise.
* sdbout.c: Likewise.
* sel-sched-dump.c: Likewise.
* sel-sched-ir.c: Likewise.
* sel-sched.c: Likewise.
* sese.c: Likewise.
* stor-layout.c: Likewise.
* tree-cfg.c: Likewise.
* tree-cfgcleanup.c: Likewise.
* tree-chrec.c: Likewise.
* tree-data-ref.c: Likewise.
* tree-emutls.c: Likewise.
* tree-inline.c: Likewise.
* tree-into-ssa.c: Likewise.
* tree-loop-distribution.c: Likewise.
* tree-loop-linear.c: Likewise.
* tree-mudflap.c: Likewise.
* tree-outof-ssa.c: Likewise.
* tree-parloops.c: Likewise.
* tree-predcom.c: Likewise.
* tree-pretty-print.c: Likewise.
* tree-scalar-evolution.c: Likewise.
* tree-ssa-live.c: Likewise.
* tree-ssa-loop-im.c: Likewise.
* tree-ssa-loop-ivcanon.c: Likewise.
* tree-ssa-loop-ivopts.c: Likewise.
* tree-ssa-loop-manip.c: Likewise.
* tree-ssa-loop-niter.c: Likewise.
* tree-ssa-loop-prefetch.c: Likewise.
* tree-ssa-phiprop.c: Likewise.
* tree-ssa-pre.c: Likewise.
* tree-ssa-reassoc.c: Likewise.
* tree-ssa-sccvn.c: Likewise.
* tree-ssa-structalias.c: Likewise.
* tree-ssa.c: Likewise.
* tree-vect-data-refs.c: Likewise.
* tree-vect-loop-manip.c: Likewise.
* tree-vect-loop.c: Likewise.
* tree-vect-patterns.c: Likewise.
* tree-vect-slp.c: Likewise.
* tree-vect-stmts.c: Likewise.
* tree-vrp.c: Likewise.
* tree.c: Likewise.
* value-prof.c: Likewise.
* var-tracking.c: Likewise.
* varasm.c: Likewise.
* vmsdbgout.c: Likewise.

gcc/ada/
* gcc-interface/decl.c: Use FOR_EACH_VEC_ELT.
* gcc-interface/trans.c: Likewise.
* gcc-interface/utils.c: Likewise.

gcc/c-family/
* c-common.c: Use FOR_EACH_VEC_ELT.
* c-gimplify.c: Likewise.
* c-pragma.c: Likewise.

gcc/cp/
* call.c: Use FOR_EACH_VEC_ELT.
* class.c: Likewise.
* decl.c: Likewise.
* decl2.c: Likewise.
* error.c: Likewise.
* except.c: Likewise.
* mangle.c: Likewise.
* method.c: Likewise.
* name-lookup.c: Likewise.
* parser.c: Likewise.
* pt.c: Likewise.
* repo.c: Likewise.
* semantics.c: Likewise.
* typeck2.c: Likewise.

gcc/fortran/
* trans-openmp.c: Use FOR_EACH_VEC_ELT.

gcc/java/
* class.c: Use FOR_EACH_VEC_ELT.
* expr.c: Likewise.
* jcf-parse.c: Likewise.
* resource.c: Likewise.

gcc/lto/
* lto.c: Use FOR_EACH_VEC_ELT.

From-SVN: r163401

13 years agogimplify.c (gimplify_modify_expr): When assigning to volatiles, copy the src value...
Nathan Sidwell [Fri, 20 Aug 2010 12:22:11 +0000 (12:22 +0000)]
gimplify.c (gimplify_modify_expr): When assigning to volatiles, copy the src value and return a copy.

gcc/
* gimplify.c (gimplify_modify_expr): When assigning to volatiles,
copy the src value and return a copy.
* doc/extend.texi (Volatiles): Move from C++ to C and expand.
(C++ Volatiles): Adjust to describe C++ semantics only.

gcc/testsuite/
* gcc.target/i386/volatile-2.c: New.

From-SVN: r163400

13 years agotm.texi.in (PIC_OFFSET_TABLE_REG_CALL_CLOBBERED): Document to be zero or nonzero.
Joseph Myers [Fri, 20 Aug 2010 11:14:38 +0000 (12:14 +0100)]
tm.texi.in (PIC_OFFSET_TABLE_REG_CALL_CLOBBERED): Document to be zero or nonzero.

2010-08-20  Joseph Myers  <joseph@codesourcery.com>

gcc/
* doc/tm.texi.in (PIC_OFFSET_TABLE_REG_CALL_CLOBBERED): Document to
be zero or nonzero.
* doc/tm.texi: Regenerate.
* defaults.h (PIC_OFFSET_TABLE_REG_CALL_CLOBBERED): Define.
* df-scan.c (df_get_exit_block_use_set), reginfo.c
(init_reg_sets_1), rtlanal.c (rtx_unstable_p, rtx_varies_p):
Handle new PIC_OFFSET_TABLE_REG_CALL_CLOBBERED semantics.
* config/ia64/ia64.h (PIC_OFFSET_TABLE_REG_CALL_CLOBBERED): Define
to 1.

From-SVN: r163399

13 years agore PR rtl-optimization/44691 (ICE: RTL check: expected code 'reg', have 'plus' in...
Andrey Belevantsev [Fri, 20 Aug 2010 08:07:17 +0000 (12:07 +0400)]
re PR rtl-optimization/44691 (ICE: RTL check: expected code 'reg', have 'plus' in rhs_regno, at rtl.h:1050)

        PR rtl-optimization/44691
        * gfortran.dg/pr44691.f: New test.

From-SVN: r163396

13 years agosparc.c (sparc_asm_function_epilogue): Don't output an extra nop past a sibling call...
Olivier Hainque [Fri, 20 Aug 2010 08:03:41 +0000 (08:03 +0000)]
sparc.c (sparc_asm_function_epilogue): Don't output an extra nop past a sibling call at the very end.

        * config/sparc/sparc.c (sparc_asm_function_epilogue): Don't output
        an extra nop past a sibling call at the very end.

        testsuite/
        * gcc.target/sparc/sibcall-dslot.c: New testcase.

From-SVN: r163395

13 years agopass41-frag.cxx (dg-prune-output): New dg directive.
Uros Bizjak [Fri, 20 Aug 2010 07:14:00 +0000 (09:14 +0200)]
pass41-frag.cxx (dg-prune-output): New dg directive.

* testsuite/libmudflap.c++/pass41-frag.cxx (dg-prune-output):
New dg directive.

From-SVN: r163394

13 years agoDaily bump.
GCC Administrator [Fri, 20 Aug 2010 00:17:15 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r163393

13 years agore PR bootstrap/45350 (Failed to bootstrap on Linux/ia64)
Bernd Schmidt [Thu, 19 Aug 2010 23:34:07 +0000 (23:34 +0000)]
re PR bootstrap/45350 (Failed to bootstrap on Linux/ia64)

PR bootstrap/45350
* combine.c (try_combine): Initialize i1_is_used and i2_is_used.  Fix
a comment.

From-SVN: r163389

13 years agore PR fortran/45108 (Namelist read: Not aborted when reading from STDIN)
Jerry DeLisle [Thu, 19 Aug 2010 20:28:09 +0000 (20:28 +0000)]
re PR fortran/45108 (Namelist read: Not aborted when reading from STDIN)

2010-08-19  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libfortran/45108
* io/list_read.c (namelist_read): If namelist reading fails, use
generate_error and then continue the read loop.

From-SVN: r163387

13 years agotarget.def (function_arg, [...]): Remove const qualifier on CUMULATIVE_ARGS parameter.
Nathan Froyd [Thu, 19 Aug 2010 20:12:33 +0000 (20:12 +0000)]
target.def (function_arg, [...]): Remove const qualifier on CUMULATIVE_ARGS parameter.

* target.def (function_arg, function_incoming_arg): Remove const
qualifier on CUMULATIVE_ARGS parameter.
* targhooks.h (default_function_arg, default_function_incoming_arg):
Likewise.
* targhooks.c (default_function_arg, default_function_incoming_arg):
Likewise.
* config/i386/i386.c (ix86_function_arg): Likewise.

From-SVN: r163386

13 years agore PR target/45336 (pextr{b,w,d}, (worse than) redundant extensions)
Jakub Jelinek [Thu, 19 Aug 2010 17:43:50 +0000 (19:43 +0200)]
re PR target/45336 (pextr{b,w,d}, (worse than) redundant extensions)

PR target/45336
* simplify-rtx.c (simplify_unary_operation_1): Optimize nested
SIGN_EXTENDs or ZERO_EXTENDs.

From-SVN: r163384

13 years agore PR tree-optimization/42172 (inefficient bit fields assignments)
Bernd Schmidt [Thu, 19 Aug 2010 17:31:57 +0000 (17:31 +0000)]
re PR tree-optimization/42172 (inefficient bit fields assignments)

PR target/42172
* combine.c (combine_validate_cost): New arg I0.  All callers changed.
Take its cost into account if nonnull.
(insn_a_feeds_b): New static function.
(combine_instructions): Look for four-insn combinations.
(can_combine_p): New args PRED2, SUCC2.  All callers changed.  Take
them into account when computing all_adjacent and looking for other
uses.
(combinable_i3pat): New args I0DEST, I0_NOT_IN_SRC.  All callers
changed.  Treat them like I1DEST and I1_NOT_IN_SRC.
(try_combine): New arg I0.  Handle four-insn combinations.
(distribute_notes): New arg ELIM_I0.  All callers changed.  Treat it
like ELIM_I1.

From-SVN: r163383

13 years agocall.c (reference_related_p): Check for error_mark_node.
Jason Merrill [Thu, 19 Aug 2010 17:24:19 +0000 (13:24 -0400)]
call.c (reference_related_p): Check for error_mark_node.

* call.c (reference_related_p): Check for error_mark_node.
(add_function_candidate): Check it instead of
same_type_ignoring_top_level_qualifiers_p.

From-SVN: r163382

13 years agore PR c++/45315 (ICE: tree check: expected aggr_init_expr, have call_expr in build_va...
Jason Merrill [Thu, 19 Aug 2010 17:01:01 +0000 (13:01 -0400)]
re PR c++/45315 (ICE: tree check: expected aggr_init_expr, have call_expr in build_value_init, at cp/init.c:317)

PR c++/45315
* init.c (build_new_1): Don't use build_value_init in a template.
(build_value_init): Make sure we don't.

From-SVN: r163381

13 years agore PR middle-end/45307 (Stores expanding to no RTL not removed by tree optimizers...
Jason Merrill [Thu, 19 Aug 2010 17:00:51 +0000 (13:00 -0400)]
re PR middle-end/45307 (Stores expanding to no RTL not removed by tree optimizers, Empty ctors/dtors not eliminated)

PR c++/45307
* gimplify.c (gimplify_init_constructor): Just return GS_UNHANDLED
if ctor is empty.
(gimplify_modify_expr_rhs): Adjust.

From-SVN: r163380

13 years agoexcept.c (pending_noexcept, [...]): New.
Jason Merrill [Thu, 19 Aug 2010 16:59:37 +0000 (12:59 -0400)]
except.c (pending_noexcept, [...]): New.

* except.c (pending_noexcept, pending_noexcept_checks): New.
(perform_deferred_noexcept_checks): New.
(maybe_noexcept_warning): Split from...
(finish_noexcept_expr): ...here.  Adjust.
* decl2.c (cp_write_global_declarations): Call
perform_deferred_noexcept_checks.
* cp-tree.h: And declare it.

From-SVN: r163379

13 years agocfgloop.c (get_loop_body_in_bfs_order): Avoid redundant call to bitmap_bit_p.
Nathan Froyd [Thu, 19 Aug 2010 16:51:39 +0000 (16:51 +0000)]
cfgloop.c (get_loop_body_in_bfs_order): Avoid redundant call to bitmap_bit_p.

* cfgloop.c (get_loop_body_in_bfs_order): Avoid redundant call to
bitmap_bit_p.
* config/bfin/bifn.c (bfin_discover_loop): Likewise.
* dominance.c (iterate_fix_dominators): Likewise.
* dse.c (set_usage_bits): Likewise.
(set_position_unneeded, record_store): Likewise.
* gimple-fold.c (get_maxval_strlen): Likewise.
* haifa-sched.c (fix_inter_tick, fix_recovery_deps): Likewise.
* ipa-inline.c (update_caller_keys): Likewise.
* ipa-split.c (verify_non_ssa_vars): Likewise.
* ipa-type-escape.c (mark_type, close_type_seen): Likewise.
(close_type_exposed_parameter, close_type_full_escape): Likewise.
(close_addressof_down): Likewise.
* ira-color.c (assign_hard_reg, push_allocno_to_stack): Likewise.
(setup_allocno_left_conflicts_size): Likewise.
(ira_reassign_conflict_allocnos): Likewise.
(ira_reassign_pseudos): Likewise.
* ira-emit.c (change_loop): Likewise.
* loop-invariant.c (mark_regno_live, mark_regno_death): Likewise.
* lto-streamer-out.c (write_symbol): Likewise.
* predict.c (expr_expected_value_1): Likewise.
* regstat.c (regstat_bb_compute_ri): Likewise.
* sel-sched.c (create_block_for_bookkeeping): Likewise.
(track_scheduled_insns_and_blocks, sel_sched_region_1): Likewise.
* stmt.c (expand_case): Likewise.
* tree-eh.c (emit_eh_dispatch): Likewise.
* tree-into-ssa.c (prune_unused_phi_nodes): Likewise.
* tree-loop-distribution.c (make_nodes_having_upstream_mem_writes):
Likewise.
(rdg_flag_vertex, rdg_flag_loop_exits): Likewise.
(rdg_build_components): Likewise.
* tree-object-size.c (collect_object_sizes_for): Likewise.
* tree-sra.c (convert_callers): Likewise.
* tree-ssa-coalesce.c (live_track_add_partition): Likewise.
* tree-ssa-live.c (mark_all_vars_used_1): Likewise.
* tree-ssa-pre.c (bitmap_set_replace_value): Likewise.

From-SVN: r163378

13 years agore PR fortran/29785 (Fortran 2003: POINTER Rank Remapping)
Daniel Kraft [Thu, 19 Aug 2010 16:02:30 +0000 (18:02 +0200)]
re PR fortran/29785 (Fortran 2003: POINTER Rank Remapping)

2010-08-19  Daniel Kraft  <d@domob.eu>

PR fortran/29785
PR fortran/45016
* trans.h (struct gfc_se): New flag `byref_noassign'.
* trans-array.h (gfc_conv_shift_descriptor_lbound): New method.
(gfc_conv_array_extent_dim), (gfc_conv_descriptor_size): New methods.
* expr.c (gfc_check_pointer_assign): Allow bounds and rank remapping
and check for compile-time errors with those.
* trans-decl.c (trans_associate_var): Use new routine
`gfc_conv_shift_descriptor_lbound' instead of doing it manually.
* trans-array.c (gfc_conv_shift_descriptor_lbound): New method.
(gfc_conv_array_extent_dim), (gfc_conv_descriptor_size): New methods.
(gfc_array_init_size): Use new `gfc_conv_array_extent_dim'.
(gfc_conv_expr_descriptor): Handle new flag `byref_noassign'.
* trans-expr.c (gfc_trans_pointer_assignment): Handle bounds and
rank remapping for assignment.

2010-08-19  Daniel Kraft  <d@domob.eu>

PR fortran/29785
PR fortran/45016
* gfortran.dg/pointer_assign_5.f90: Remove 'not implemented' error.
* gfortran.dg/pointer_remapping_1.f90: New test.
* gfortran.dg/pointer_remapping_2.f03: New test.
* gfortran.dg/pointer_remapping_3.f08: New test.
* gfortran.dg/pointer_remapping_4.f03: New test.
* gfortran.dg/pointer_remapping_5.f08: New test.
* gfortran.dg/pointer_remapping_6.f08: New test.

From-SVN: r163377

13 years agoi386.md (*lea_1): Use P mode iterator.
Uros Bizjak [Thu, 19 Aug 2010 15:55:01 +0000 (17:55 +0200)]
i386.md (*lea_1): Use P mode iterator.

2010-08-19  Uros Bizjak  <ubizjak@gmail.com>

* config/i386/i386.md (*lea_1): Use P mode iterator.
(lea add splitter): Also handle DImode operands.
(DImode lea add splitter): Use x86_64_immediate_operand for operand 2
predicate.  Do not use ix86_lea_for_add_ok.
(zext DImode lea add splitter): Use ix86_lea_for_add_ok.
(lea ashift splitter): Also handle DImode operands.
(DImode lea ashift splitter): Remove splitter.

2010-08-19  Uros Bizjak  <ubizjak@gmail.com>

* config/i386/i386.md (*add<SWI:mode>3_cconly_overflow): Do not use
ix86_binary_operator_ok.

From-SVN: r163375

13 years agoAlso scan movb.
Uros Bizjak [Thu, 19 Aug 2010 14:18:18 +0000 (16:18 +0200)]
Also scan movb.

2010-08-19  Uros Bizjak  <ubizjak@gmail.com>

PR testsuite/45324
* gcc.target/i386/volatile-bitfields-1.c: Also scan movb.

From-SVN: r163372

13 years agovect-1.c (foo): Fix last commit.
Ramana Radhakrishnan [Thu, 19 Aug 2010 10:23:50 +0000 (10:23 +0000)]
vect-1.c (foo): Fix last commit.

2010-08-19  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

* gcc.dg/vect/vect-1.c (foo): Fix last commit.

From-SVN: r163370

13 years agore PR rtl-optimization/44691 (ICE: RTL check: expected code 'reg', have 'plus' in...
Andrey Belevantsev [Thu, 19 Aug 2010 10:03:39 +0000 (14:03 +0400)]
re PR rtl-optimization/44691 (ICE: RTL check: expected code 'reg', have 'plus' in rhs_regno, at rtl.h:1050)

PR rtl-optimization/44691
* sel-sched.c (count_occurrences_1): Also punt when SUBREG_REG
is not a register.

From-SVN: r163369

13 years agoFor Tejas Belagod
Tejas Belagod [Thu, 19 Aug 2010 08:30:59 +0000 (09:30 +0100)]
For Tejas Belagod

2010-08-19  Tejas Belagod  <tejas.belagod@arm.com>

* gcc.dg/vect/vect-1.c (foo): Change inner loop index
variable.

From-SVN: r163368

13 years agoFor Ian Bolton <ian.bolton@arm.com>
Ian Bolton [Thu, 19 Aug 2010 08:27:59 +0000 (08:27 +0000)]
For Ian Bolton <ian.bolton@arm.com>

2010-08-19  Ian Bolton  <ian.bolton@arm.com>

PR target/45070
* gcc.c-torture/execute/pr45070.c: New.
* config/arm/arm.c (arm_output_epilogue): Ensure that return
 value of size 1-3 is handled correctly.

From-SVN: r163367

13 years agoFor Ian Bolton <ian.bolton@arm.com>
Ian Bolton [Thu, 19 Aug 2010 08:12:31 +0000 (08:12 +0000)]
For Ian Bolton <ian.bolton@arm.com>

* tree-switch-conversion.c (gen_inbound_check): Ensure that the
type for the conditional has wide enough range.

* testsuite/g++.dg/pr44328.C: New test.

From-SVN: r163366

13 years agointrinsic.texi (Bessel_jn, Bessel_yn): Fix typo.
Tobias Burnus [Thu, 19 Aug 2010 07:34:05 +0000 (09:34 +0200)]
intrinsic.texi (Bessel_jn, Bessel_yn): Fix typo.

2010-08-19  Tobias Burnus  <burnus@net-b.de>

        * intrinsic.texi (Bessel_jn, Bessel_yn): Fix typo.
        * * simplify.c (gfc_simplify_bessel_yn): Change recursive
        into recurrence.

From-SVN: r163365

13 years agore PR fortran/36158 (Transformational function BESSEL_YN(n1,n2,x) and BESSEL_JN missing)
Tobias Burnus [Thu, 19 Aug 2010 07:28:17 +0000 (09:28 +0200)]
re PR fortran/36158 (Transformational function BESSEL_YN(n1,n2,x) and BESSEL_JN missing)

2010-08-19  Tobias Burnus  <burnus@net-b.de>

        PR fortran/36158
        PR fortran/33197
        * check.c (gfc_check_bessel_n2): New function.
        * gfortran.h (gfc_isym_id): Add GFC_ISYM_JN2 and GFC_ISYM_YN2.
        * intrinsic.c (add_functions): Add transformational version
        of the Bessel_jn/yn intrinsics.
        * intrinsic.h (gfc_check_bessel_n2,gfc_simplify_bessel_jn2,
        gfc_simplify_bessel_yn2): New prototypes.
        * intrinsic.texi (Bessel_jn, Bessel_yn): Document
        transformational variant.
        * simplify.c (gfc_simplify_bessel_jn, gfc_simplify_bessel_yn):
        Check for negative order.
        (gfc_simplify_bessel_n2,gfc_simplify_bessel_jn2,
        gfc_simplify_bessel_yn2): New functions.

2010-08-19  Tobias Burnus  <burnus@net-b.de>

        PR fortran/36158
        PR fortran/33197
        * gfortran.dg/bessel_3.f90: New.
        * gfortran.dg/bessel_4.f90: New.
        * gfortran.dg/bessel_5.f90: New.

From-SVN: r163364

13 years agore PR fortran/41859 (ICE on invalid expression involving DT with pointer components...
Jerry DeLisle [Thu, 19 Aug 2010 02:35:45 +0000 (02:35 +0000)]
re PR fortran/41859 (ICE on invalid expression involving DT with pointer components in I/O)

2010-08-19  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR fortran/41859
* resolve.c (resolve_transfer): Traverse operands and set expression
to be checked to a non EXPR_OP type.

From-SVN: r163363

13 years agoDaily bump.
GCC Administrator [Thu, 19 Aug 2010 00:16:55 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r163362

13 years agore PR target/45327 (ICE: SIGSEGV in rtx_equal_p (rtl.c:496) with -O1 -funroll-loops...
Uros Bizjak [Wed, 18 Aug 2010 22:37:03 +0000 (00:37 +0200)]
re PR target/45327 (ICE: SIGSEGV in rtx_equal_p (rtl.c:496) with -O1 -funroll-loops -fnon-call-exceptions)

PR target/45327
* config/i386/i386.md (<any_or:code><SWI:mode>_3): Do not use
ix86_binary_operator_ok.

From-SVN: r163357

13 years agore PR fortran/45290 ([F08] pointer initialization)
Janus Weil [Wed, 18 Aug 2010 22:32:22 +0000 (00:32 +0200)]
re PR fortran/45290 ([F08] pointer initialization)

2010-08-19  Janus Weil  <janus@gcc.gnu.org>

PR fortran/45290
* gfortran.h (gfc_add_save): Modified prototype.
* decl.c (add_init_expr_to_sym): Defer checking of proc pointer init.
(match_pointer_init): New function to match F08 pointer initialization.
(variable_decl,match_procedure_decl,match_ppc_decl): Use
'match_pointer_init'.
(match_attr_spec): Module variables are implicitly SAVE.
(gfc_match_save): Modified call to 'gfc_add_save'.
* expr.c (gfc_check_assign_symbol): Extra checks for pointer
initialization.
* primary.c (gfc_variable_attr): Handle SAVE attribute.
* resolve.c (resolve_structure_cons): Add new argument and do pointer
initialization checks.
(gfc_resolve_expr): Modified call to 'resolve_structure_cons'.
(resolve_values): Call 'resolve_structure_cons' directly with init arg.
(resolve_fl_variable): Handle SAVE_IMPLICIT.
* symbol.c (gfc_add_save,gfc_copy_attr,save_symbol): Handle
SAVE_IMPLICIT.
* trans-decl.c (gfc_create_module_variable): Module variables with
TARGET can already exist.
* trans-expr.c (gfc_conv_variable): Check for 'current_function_decl'.
(gfc_conv_initializer): Implement non-NULL pointer
initialization.

2010-08-19  Janus Weil  <janus@gcc.gnu.org>

PR fortran/45290
* gfortran.dg/proc_ptr_comp_3.f90: Modified.
* gfortran.dg/pointer_init_2.f90: New.
* gfortran.dg/pointer_init_3.f90: New.
* gfortran.dg/pointer_init_4.f90: New.

From-SVN: r163356

13 years ago* tracebak.c (i386): Use GCC unwinder on Linux with GCC > 4.5.
Eric Botcazou [Wed, 18 Aug 2010 21:07:29 +0000 (21:07 +0000)]
* tracebak.c (i386): Use GCC unwinder on Linux with GCC > 4.5.

From-SVN: r163352

This page took 0.103357 seconds and 5 git commands to generate.