Ramana Radhakrishnan [Thu, 22 Jul 2010 08:30:36 +0000 (08:30 +0000)]
re PR target/43698 (Wrong use of ARMv6 REV instruction for endian bytewapping with -Os or -O2 optimizations)
Fix PR target/43698
2010-07-22 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
PR target/43698
* config/arm/arm.md: Split arm_rev into *arm_rev
and *thumb1_rev. Set *arm_rev to be predicable.
2010-07-22 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
PR target/43698
* gcc.target/arm/pr43698.c: New test.
From-SVN: r162404
Iain Sandoe [Thu, 22 Jul 2010 08:02:20 +0000 (08:02 +0000)]
darwin.h (LINK_COMMAND_SPEC): Split into...
* config/darwin.h (LINK_COMMAND_SPEC): Split into...
(LINK_COMMAND_SPEC_A): New.
(DSYMUTIL): New.
(DSYMUTIL_SPEC): New.
* config/darwin9.h (LINK_COMMAND_SPEC): Remove.
(DSYMUTIL_SPEC): Update for darwin >= 9 requirements.
-This line, and those below, will be ignored--
M ChangeLog
M config/darwin.h
M config/darwin9.h
From-SVN: r162403
Iain Sandoe [Thu, 22 Jul 2010 07:59:50 +0000 (07:59 +0000)]
calls.c (load_register_parameters): Move check for zero sized items so that only the call to ...
* calls.c (load_register_parameters): Move check for zero
sized items so that only the call to
mem_overlaps_already_clobbered_arg_p () is protected.
From-SVN: r162402
GCC Administrator [Thu, 22 Jul 2010 00:17:17 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r162396
Jan Hubicka [Wed, 21 Jul 2010 22:56:27 +0000 (00:56 +0200)]
ipa-pure-const.c (varying_state): Break out from ...
* ipa-pure-const.c (varying_state): Break out from ...
(get_function_state): ... here; always return varying_state
when state would be NULL otherwise.
(remove_node_data): Do not free varying state.
From-SVN: r162392
Bernd Schmidt [Wed, 21 Jul 2010 22:51:13 +0000 (22:51 +0000)]
function.c (record_hard_reg_sets): Restrict the previous change to cases where the incoming nominal mode is the...
* function.c (record_hard_reg_sets): Restrict the previous change
to cases where the incoming nominal mode is the same as the
incoming promoted mode and everything happens in MODE_INT.
From-SVN: r162391
Bernd Schmidt [Wed, 21 Jul 2010 22:48:14 +0000 (22:48 +0000)]
re PR bootstrap/44970 (Revision 162270 failed to bootstrap)
PR bootstrap/44970
PR middle-end/45009
* postreload.c: Include "target.h".
(reload_combine_closest_single_use): Don't take DEBUG_INSNs
into account.
(fixup_debug_insns): Don't copy the rtx.
(reload_combine_recognize_const_pattern): DEBUG_INSNs can't
have uses. Don't copy when replacing. Call fixup_debug_insns
in the case where we merged one add with another.
(reload_combine_recognize_pattern): Fail if there aren't any
uses. Try harder to determine whether we're picking a valid
index register. Don't set store_ruid for an insn we're going
to scan in the next iteration.
(reload_combine): Remove unused code.
(reload_combine_note_use): When updating use information for
an old insn, ignore a use that occurs after store_ruid.
* Makefile.in (postreload.o): Update dependencies.
From-SVN: r162390
Steven G. Kargl [Wed, 21 Jul 2010 22:34:07 +0000 (22:34 +0000)]
re PR fortran/44929 ([OOP] Parsing error of derived type name starting with 'REAL')
2010-07-21 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/44929
* Revert my commit r162325 for this PR.
From-SVN: r162386
Jakub Jelinek [Wed, 21 Jul 2010 19:11:55 +0000 (21:11 +0200)]
re PR debug/45015 (ICE in cselib.c caused by fix for PR43051)
PR debug/45015
* var-tracking.c (adjust_mems): Ignore ASM_OPERANDS with non-zero
ASM_OPERANDS_OUTPUT_IDX.
(adjust_insn): For inline asm with multiple sets ensure first
ASM_OPERANDS vectors are used by all following ASM_OPERANDS in
the insn.
* gcc.target/m68k/pr45015.c: New test.
From-SVN: r162385
Richard Henderson [Wed, 21 Jul 2010 18:50:02 +0000 (11:50 -0700)]
Eliminate the computed goto in x64 varargs.
Use a simple test and branch vs 0 instead. Which also allows us
to avoid funny code emission problems as well.
From-SVN: r162384
Jeffrey Yasskin [Wed, 21 Jul 2010 18:46:40 +0000 (18:46 +0000)]
IA64 uses // instead of # for comments in its assembly file.
PR c++/44641
* lib/scanasm.exp (dg-function-on-line): Fix regex for IA64's
comments.
From-SVN: r162383
Changpeng Fang [Wed, 21 Jul 2010 15:44:24 +0000 (15:44 +0000)]
Fix PR 44955: Strip off the real and complex parts.
2010-07-21 Changpeng Fang <changpeng.fang@amd.com>
PR tree-optimization/44955
* tree-ssa-loop-prefetch.c (analyze_ref): Strip off the real
and imagine parts of a complex, so that they can have the same
base and fall into the same group.
From-SVN: r162381
Richard Guenther [Wed, 21 Jul 2010 15:09:00 +0000 (15:09 +0000)]
re PR lto/45018 (ICE: tree check: did not expect class 'type', have 'type' (record_type) in contains_placeholder_p, at tree.c:2749)
2010-07-21 Richard Guenther <rguenther@suse.de>
PR lto/45018
* tree.c (find_decls_types_r): Do not follow TREE_CHAIN
of TYPE_DECLs. Do not follow TYPE_NEXT_VARIANT,
TYPE_NEXT_PTR_TO, nor TYPE_NEXT_REF_TO or TYPE_CANONICAL.
* g++.dg/lto/
20100721-1_0.C: New testcase.
From-SVN: r162380
Pascal Obry [Wed, 21 Jul 2010 15:02:09 +0000 (15:02 +0000)]
* make-temp-file.c (choose_tmpdir): Append a dot to P_tmpdir if needed.
From-SVN: r162379
Jason Merrill [Wed, 21 Jul 2010 14:38:12 +0000 (10:38 -0400)]
* tree.c (cp_tree_equal): Fix CONSTRUCTOR handling.
From-SVN: r162378
Jason Merrill [Wed, 21 Jul 2010 14:37:56 +0000 (10:37 -0400)]
parser.c (cp_parser_init_declarator): Pass LOOKUP_NORMAL to cp_finish_decl.
* parser.c (cp_parser_init_declarator): Pass LOOKUP_NORMAL
to cp_finish_decl.
From-SVN: r162377
Martin Jambor [Wed, 21 Jul 2010 14:17:11 +0000 (16:17 +0200)]
re PR tree-optimization/44900 (The variable of SSE will be broken)
2010-07-21 Martin Jambor <mjambor@suse.cz>
PR tree-optimization/44900
* tree-sra.c (load_assign_lhs_subreplacements): Updated comments.
(sra_modify_assign): Move gsi to the next statmenent unconditionally.
* testsuite/g++.dg/torture/pr44900.C: New test.
From-SVN: r162375
Daniel Kraft [Wed, 21 Jul 2010 13:44:38 +0000 (15:44 +0200)]
trans.h (gfc_get_return_label): Removed.
2010-07-21 Daniel Kraft <d@domob.eu>
* trans.h (gfc_get_return_label): Removed.
(gfc_generate_return): New method.
(gfc_trans_deferred_vars): Update gfc_wrapped_block rather than
returning a tree directly.
* trans-stmt.c (gfc_trans_return): Use `gfc_generate_return'.
(gfc_trans_block_construct): Update for new interface to
`gfc_trans_deferred_vars'.
* trans-decl.c (current_function_return_label): Removed.
(current_procedure_symbol): New variable.
(gfc_get_return_label): Removed.
(gfc_trans_deferred_vars): Update gfc_wrapped_block rather than
returning a tree directly.
(get_proc_result), (gfc_generate_return): New methods.
(gfc_generate_function_code): Clean up and do init/cleanup here
also with gfc_wrapped_block. Remove return-label but rather
return directly.
From-SVN: r162373
Bernd Schmidt [Wed, 21 Jul 2010 12:36:44 +0000 (12:36 +0000)]
re PR middle-end/44738 (c-c++-common/uninit-17.c failed)
PR middle-end/44738
* tree-ssa.c (warn_uninit): Avoid emitting an unnecessary message.
PR middle-end/44738
* c-c++-common/uninit-17.c: Correct expected error.
From-SVN: r162372
Richard Guenther [Wed, 21 Jul 2010 11:45:27 +0000 (11:45 +0000)]
re PR middle-end/45013 (Failed to build 483.xalancbmk in SPEC CPU 2006)
2010-07-21 Richard Guenther <rguenther@suse.de>
PR middle-end/45013
* tree-ssa.c (useless_type_conversion_p): Dispatch to
gimple_types_compatible_p only when in lto.
* gimple.c (gimple_types_compatible_p): Use canonical types
to speed up comparison.
From-SVN: r162371
Richard Guenther [Wed, 21 Jul 2010 09:46:11 +0000 (09:46 +0000)]
tree-flow.h (referenced_var): Move define ...
2010-07-21 Richard Guenther <rguenther@suse.de>
* tree-flow.h (referenced_var): Move define ...
* tree-flow-inline.h (referenced_var): ... here as an inline
function. Assert here ...
* tree-dfa.c (referenced_var_lookup): ... instead of here.
* tree-ssa.c (maybe_optimize_var): Check if the variable
is in referenced vars.
(execute_update_addresses_taken): Remove old broken check.
* gimple-pretty-print.c (pp_points_to_solution): Use
referenced_var_lookup.
* tree-into-ssa.c (dump_decl_set): Likewise.
From-SVN: r162368
Jakub Jelinek [Wed, 21 Jul 2010 08:50:57 +0000 (10:50 +0200)]
re PR debug/45003 (VTA issues with sign/zero extension and debug temporaries)
PR debug/45003
* var-tracking.c (reverse_op): Also handle {SIGN,ZERO}_EXTEND of
a MEM.
* dwarf2out.c (loc_descriptor): Don't handle SIGN_EXTEND nor
ZERO_EXTEND here.
* gcc.dg/guality/pr45003-2.c: New test.
* gcc.dg/guality/pr45003-3.c: New test.
From-SVN: r162364
Jakub Jelinek [Wed, 21 Jul 2010 08:12:36 +0000 (10:12 +0200)]
* gcc.dg/guality/asm-1.c: New test.
From-SVN: r162363
Jerry DeLisle [Wed, 21 Jul 2010 04:20:58 +0000 (04:20 +0000)]
re PR fortran/44697 (I/O testsuite failures: \r\n vs \n - gfortran.dg/ftell_3.f90)
2010-07-20 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/44697
* gfortran.dg/ftell_3.f90: Take care of cr-lf record endings.
From-SVN: r162362
Benjamin Kosnik [Wed, 21 Jul 2010 02:02:42 +0000 (02:02 +0000)]
appendix_contributing.xml: Update for new reality.
2010-07-19 Benjamin Kosnik <bkoz@redhat.com>
* doc/xml/manual/appendix_contributing.xml: Update for new reality.
* doc/Makefile.am (doc-xml): New default rule for XML output.
(doc-xml-single-doxygen): Standardize output names.
* doc/Makefile.in: Regenerate.
* doc/doxygen/user.cfg.in: Tweak.
From-SVN: r162361
GCC Administrator [Wed, 21 Jul 2010 00:17:15 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r162360
Richard Henderson [Tue, 20 Jul 2010 23:09:58 +0000 (16:09 -0700)]
* vxworks.c (vxworks_emutls_var_fields): Pass locus to build_decls.
From-SVN: r162356
Bernd Schmidt [Tue, 20 Jul 2010 20:50:44 +0000 (20:50 +0000)]
arm.md (thumb1_addsi3): Add alternative and split for computing the sum of the stack pointer and a...
* config/arm/arm.md (thumb1_addsi3): Add alternative and split for
computing the sum of the stack pointer and a large constant.
* config/arm/constraints.md (M): Remove superfluous parentheses.
(Pc): New constraint.
From-SVN: r162355
Jeffrey Yasskin [Tue, 20 Jul 2010 20:16:53 +0000 (20:16 +0000)]
re PR c++/44641 (Generated constructors and destructors get wrong debug location when a typedef uses a forward declaration of the type before the definition)
PR c++/44641
* gcc/cp/pt.c (instantiate_class_template): Propagate the
template's location to its instance.
* gcc/testsuite/lib/scanasm.exp (dg-function-on-line): Test
that a function is defined on the current line.
* gcc/testsuite/g++.dg/debug/dwarf2/lineno-simple1.C: New.
Line number sanity test.
* gcc/testsuite/g++.dg/debug/dwarf2/pr44641.C: New.
From-SVN: r162349
Jakub Jelinek [Tue, 20 Jul 2010 18:57:14 +0000 (20:57 +0200)]
re PR debug/45006 (Failed to bootstrap)
PR debug/45006
* cfgexpand.c (expand_debug_expr): Only look at TYPE_UNSIGNED of
operand's type if exp is tcc_unary class tree.
From-SVN: r162348
Jeffrey Yasskin [Tue, 20 Jul 2010 18:55:39 +0000 (18:55 +0000)]
Add myself to MAINTAINERS.
From-SVN: r162347
Nathan Froyd [Tue, 20 Jul 2010 18:38:50 +0000 (18:38 +0000)]
rs6000.md (abs<mode>2_isel, [...]): Reverse sense of if_then_else condition.
* config/rs6000/rs6000.md (abs<mode>2_isel, nabs<mode>2_isel):
Reverse sense of if_then_else condition.
From-SVN: r162346
Jason Merrill [Tue, 20 Jul 2010 18:22:34 +0000 (14:22 -0400)]
re PR c++/44967 ([C++0x] decltype of method call dependent on pack expansion crashes)
PR c++/44967
* pt.c (tsubst_copy_and_build): Rework last change.
From-SVN: r162345
Nathan Froyd [Tue, 20 Jul 2010 17:43:06 +0000 (17:43 +0000)]
rs6000.opt (mblock-move-inline-limit): New option.
gcc/
* config/rs6000/rs6000.opt (mblock-move-inline-limit): New option.
* config/rs6000/rs6000.c (rs6000_override_options): Set
rs6000_block_move_inline_limit appropriately.
(expand_block_move): Use rs6000_block_move_inline_limit.
* doc/invoke.texi (mblock-move-inline-limit): Document.
gcc/testsuite/
* gcc.target/powerpc/block-move-1.c: New test.
* gcc.target/powerpc/block-move-2.c: New test.
From-SVN: r162344
Jason Merrill [Tue, 20 Jul 2010 17:34:18 +0000 (13:34 -0400)]
re PR c++/44967 ([C++0x] decltype of method call dependent on pack expansion crashes)
PR c++/44967
* pt.c (tsubst_copy_and_build): Handle partial substitution of
CALL_EXPR.
From-SVN: r162343
Bernd Schmidt [Tue, 20 Jul 2010 15:33:35 +0000 (15:33 +0000)]
postreload.c (fixup_debug_insns): Remove arg REGNO.
* postreload.c (fixup_debug_insns): Remove arg REGNO. New args
FROM and TO. All callers changed. Don't look for tracked uses,
just scan the RTL for DEBUG_INSNs and substitute.
(reload_combine_recognize_pattern): Call fixup_debug_insns.
(reload_combine): Ignore DEBUG_INSNs.
From-SVN: r162342
Richard Guenther [Tue, 20 Jul 2010 15:05:59 +0000 (15:05 +0000)]
re PR lto/42696 (lto1 error with -fsigned-char and char comparison)
2010-07-20 Richard Guenther <rguenther@suse.de>
PR lto/42696
* gcc.dg/lto/
20100720-4_0.c: New testcase.
From-SVN: r162341
Richard Guenther [Tue, 20 Jul 2010 13:06:32 +0000 (13:06 +0000)]
re PR lto/43221 ([LTO] ICE in get_alias_set, at alias.c:717)
2010-07-20 Richard Guenther <rguenther@suse.de>
PR lto/43221
* gcc.dg/lto/
20100720-2_0.c: New testcase.
* gcc.dg/lto/
20100720-2_1.c: Likewise.
From-SVN: r162339
Richard Guenther [Tue, 20 Jul 2010 13:03:10 +0000 (13:03 +0000)]
re PR lto/43208 (lto1: error: invalid conversion in return statement)
2010-07-20 Richard Guenther <rguenther@suse.de>
PR lto/43208
* gcc.dg/lto/
20100720-1_0.c: New testcase.
* gcc.dg/lto/
20100720-1_1.c: Likewise.
From-SVN: r162338
Jakub Jelinek [Tue, 20 Jul 2010 12:58:59 +0000 (14:58 +0200)]
var-tracking.c (vt_expand_loc, [...]): Bump maximum depth to 8 from 5.
* var-tracking.c (vt_expand_loc, vt_expand_loc_dummy): Bump maximum
depth to 8 from 5.
From-SVN: r162337
Jakub Jelinek [Tue, 20 Jul 2010 12:58:03 +0000 (14:58 +0200)]
re PR debug/45003 (VTA issues with sign/zero extension and debug temporaries)
PR debug/45003
* cfgexpand.c (expand_debug_expr) <case NOP_EXPR>: Use ZERO_EXTEND
or SIGN_EXTEND depending on TYPE_UNSIGNED of the operand's type
instead of the result's type.
* gcc.dg/guality/pr45003-1.c: New test.
From-SVN: r162336
Richard Guenther [Tue, 20 Jul 2010 12:41:20 +0000 (12:41 +0000)]
re PR tree-optimization/44977 (ice in propagate_rhs_into_lhs, at tree-ssa-dom.c:2728)
2010-07-20 Richard Guenther <rguenther@suse.de>
PR tree-optimization/44977
* tree-ssa-dom.c (propagate_rhs_into_lhs): Do not create invalid
SSA form.
* gcc.dg/torture/pr44977.c: New testcase.
From-SVN: r162334
Bingfeng Mei [Tue, 20 Jul 2010 12:20:33 +0000 (12:20 +0000)]
20090313_0.c: Use dg-require-effective-target sync_char_short
2010-07-20 Bingfeng Mei <bmei@broadcom.com>
* gcc.dg/lto/20090313_0.c: Use dg-require-effective-target
sync_char_short
From-SVN: r162331
Richard Guenther [Tue, 20 Jul 2010 12:05:59 +0000 (12:05 +0000)]
lto-symtab.c (lto_symtab_merge): Use gimple_types_compatible_p.
2010-07-20 Richard Guenther <rguenther@suse.de>
* lto-symtab.c (lto_symtab_merge): Use gimple_types_compatible_p.
(lto_symtab_merge_decls_2): Likewise.
* gimple.h (gimple_types_compatible_p): Declare.
* gimple.c (gimple_queue_type_fixup): Remove.
(gimple_fixup_complete_and_incomplete_subtype_p): Likewise.
(gimple_compatible_complete_and_incomplete_type_p): New
function.
(gimple_types_compatible_p): Adjust.
(gimple_register_type): Remove type fixup code.
(print_gimple_types_stats): Adjust.
(free_gimple_type_tables): Likewise.
* lto-streamer-in.c (input_gimple_stmt): Use gimple_types_compatible_p.
* tree-ssa.c (useless_type_conversion_p): Likewise.
From-SVN: r162330
Richard Guenther [Tue, 20 Jul 2010 11:28:56 +0000 (11:28 +0000)]
re PR debug/44971 (-fcompare-debug failure with uninitialized read in walk_gimple_stmt)
2010-07-20 Richard Guenther <rguenther@suse.de>
PR middle-end/44971
PR middle-end/44988
* tree-ssa.c (maybe_optimize_var): New function split out from ...
(execute_update_addresses_taken): ... here.
(non_rewritable_mem_ref_base): Likewise.
(execute_update_addresses_taken): Do not iterate over all referenced
vars but just all local decls and parms.
Properly check call and asm arguments and rewrite call arguments.
* gcc.dg/pr44971.c: New testcase.
* gcc.c-torture/compile/pr44988.c: Likewise.
From-SVN: r162329
Paolo Carlini [Tue, 20 Jul 2010 09:44:01 +0000 (09:44 +0000)]
[multiple changes]
2010-07-20 Paolo Carlini <paolo.carlini@oracle.com>
* libsupc++/unwind-cxx.h: Minor formatting / stylistic tweaks.
2010-07-20 Mikael Pettersson <mikpe@it.uu.se>
PR libstdc++/44902
* libsupc++/unwind-cxx.h (__cxa_type_match): Correct prototype.
(__cxa_begin_cleanup): Likewise.
From-SVN: r162328
Benjamin Kosnik [Tue, 20 Jul 2010 06:43:02 +0000 (06:43 +0000)]
Makefile.am (doc-texinfo): New rule.
2010-07-19 Benjamin Kosnik <bkoz@redhat.com>
* doc/Makefile.am (doc-texinfo): New rule.
(doc-texinfo-docbook): New rule.
(DB2TEXI_FLAGS): New.
(doc-xml-single-docbook): Just the manual, not the set. Tweak flags.
* doc/Makefile.in: Regenerate.
From-SVN: r162327
Steven G. Kargl [Tue, 20 Jul 2010 04:01:32 +0000 (04:01 +0000)]
re PR fortran/44929 ([OOP] Parsing error of derived type name starting with 'REAL')
2010-07-19 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/44929
* gfortran.dg/allocate_with_typespec.f90: New test.
* gfortran.dg/allocate_derived_1.f90: Update error message.
2010-07-19 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/44929
* fortran/match.c (match_type_spec): Check for derived type before
intrinsic types.
From-SVN: r162325
Jason Merrill [Tue, 20 Jul 2010 01:31:42 +0000 (21:31 -0400)]
re PR c++/44996 ([C++0x] decltype produces rvalue reference type for parenthesized id-expression)
PR c++/44996
* semantics.c (finish_decltype_type): Correct decltype
of parenthesized rvalue reference variable.
From-SVN: r162323
GCC Administrator [Tue, 20 Jul 2010 00:17:25 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r162322
Maxim Kuvyrkov [Mon, 19 Jul 2010 20:05:46 +0000 (20:05 +0000)]
config.gcc (LIBC_GLIBC, [...]): Move constants to top level.
* config.gcc (LIBC_GLIBC, LIBC_UCLIBC, LIBC_BIONIC): Move constants
to top level.
* config/linux.h (LINUX_TARGET_OS_CPP_BUILTINS): Move Android-specific
definitions ...
* config/linux-android.h (ANDROID_TARGET_OS_CPP_BUILTINS): ... here.
New macro.
* config/arm/linux-eabi.h (TARGET_OS_CPP_BUILTINS): Use it.
From-SVN: r162315
Richard Sandiford [Mon, 19 Jul 2010 19:38:42 +0000 (19:38 +0000)]
gengtype.c (start_root_entry): New function, split out from write_root.
gcc/
* gengtype.c (start_root_entry): New function, split out from
write_root. Check whether V is null and raise an error if so.
(write_field_root): Check for V being null. Don't raise an error here;
set V to null instead.
(write_root): Update comment above function. Use start_root_entry.
From-SVN: r162314
Paul Thomas [Mon, 19 Jul 2010 18:48:44 +0000 (18:48 +0000)]
re PR fortran/42385 ([OOP] poylmorphic operators do not work)
2010-07-19 Paul Thomas <pault@gcc.gnu.org>
PR fortran/42385
* interface.c (matching_typebound_op): Add argument for the
return of the generic name for the procedure.
(build_compcall_for_operator): Add an argument for the generic
name of an operator procedure and supply it to the expression.
(gfc_extend_expr, gfc_extend_assign): Use the generic name in
calls to the above procedures.
* resolve.c (resolve_typebound_function): Catch procedure
component calls for CLASS objects, check that the vtable is
complete and insert the $vptr and procedure components, to make
the call.
(resolve_typebound_function): The same.
* trans-decl.c (gfc_trans_deferred_vars): Do not deallocate
an allocatable scalar if it is a result.
2010-07-19 Paul Thomas <pault@gcc.gnu.org>
PR fortran/42385
* gfortran.dg/class_defined_operator_1.f03 : New test.
From-SVN: r162313
Peter Bergner [Mon, 19 Jul 2010 17:32:19 +0000 (12:32 -0500)]
slp-perm-1.c (main): Make sure loops aren't vectorized.
* gcc.dg/vect/slp-perm-1.c (main): Make sure loops aren't vectorized.
* gcc.dg/vect/slp-perm-2.c (main): Likewise.
* gcc.dg/vect/slp-perm-3.c (main): Likewise. Fix loop limit.
* gcc.dg/vect/slp-perm-4.c (main): Fix loop limit.
From-SVN: r162311
Xinliang David Li [Mon, 19 Jul 2010 16:32:57 +0000 (16:32 +0000)]
Fix PR44932
From-SVN: r162310
Richard Guenther [Mon, 19 Jul 2010 15:39:51 +0000 (15:39 +0000)]
re PR rtl-optimization/44941 (ICE: RTL check: expected code 'mem', have 'reg' in emit_block_move_hints, at expr.c:1189)
2010-07-19 Richard Guenther <rguenther@suse.de>
PR middle-end/44941
* expr.c (emit_block_move_hints): Move zero size check first.
Move asserts to more useful places.
* calls.c (load_register_parameters): Check for zero size.
* gcc.c-torture/compile/pr44941.c: New testcase.
From-SVN: r162308
Jason Merrill [Mon, 19 Jul 2010 14:50:52 +0000 (10:50 -0400)]
re PR c++/44969 ([C++0x] <type_traits> std::is_constructible broken for fundamental types.)
PR c++/44969
* tree.c (cp_tree_equal): Compare type of *CAST_EXPR.
* pt.c (iterative_hash_template_arg): Hash type of *CAST_EXPR.
From-SVN: r162307
Richard Henderson [Mon, 19 Jul 2010 14:42:50 +0000 (07:42 -0700)]
Reliably change cgraph_state to SSA form.
From-SVN: r162306
H.J. Lu [Mon, 19 Jul 2010 13:35:19 +0000 (06:35 -0700)]
Remove gfortran.dg/data_implied_do_2.f90.
2010-07-19 H.J. Lu <hongjiu.lu@intel.com>
PR fortran/44353
* gfortran.dg/data_implied_do_2.f90: Removed.
From-SVN: r162305
Jerry DeLisle [Mon, 19 Jul 2010 13:11:54 +0000 (13:11 +0000)]
re PR fortran/44953 (FAIL: gfortran.dg/char4_iunit_1.f03 * execution test)
2010-07-19 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/44953
* io/unix.c (mem_alloc_w4): Return gfc_char4_t instead of char type
pointer. (mem_write4): Remove cast to gfc_char4_t.
* io/transfer.c (write_block): Use a gfc_char4_t pointer.
(memset4): New helper function. (next_record_w): Use new helper
function rather than sset for internal units. Don't attempt to pad
with spaces if it is not needed.
* io/unix.h: Update prototype for mem_alloc_w4.
* io/write.c (memset4): Use gfc_char4_t pointer and chracter type.
Don't use multiply by 4 to compute offset. (memcpy4): Likewise.
(write_default_char4): Use a gfc_char4_t pointer and update memset4
and memcpy calls. (write_a): Likewise. (write_l): Likewise.
(write_boz): Likewise. (write_decimal): Likewise. (write_x): Likewise.
(write_char): Add support for character(kind=4) internal units that
was previously missed. (write_integer): Use a gfc_char4_t pointer and
update memset4 and memcpy calls. (write_character): Likewise.
(write_separator): Add support for character(kind=4) internal units
that was previously missed.
* write_float.def (output_float): Use a gfc_char4_t pointer and
update memset4 and memcpy calls. (write_infnan): Likewise.
(output_float_FMT_G_): Likewise.
From-SVN: r162304
Paolo Carlini [Mon, 19 Jul 2010 10:27:58 +0000 (10:27 +0000)]
re PR c++/44969 ([C++0x] <type_traits> std::is_constructible broken for fundamental types.)
/cp
2010-07-19 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/44969
* typeck.c (build_x_compound_expr_from_list): Add tsubst_flags_t
parameter.
* cp-tree.h: Adjust declaration.
* init.c (perform_member_init): Adjust caller.
* decl.c (grok_reference_init, cp_finish_decl): Likewise.
* typeck2.c (store_init_value): Likewise.
(build_functional_cast): Pass complain argument to
build_x_compound_expr_from_list.
/testsuite
2010-07-19 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/44969
* g++.dg/template/sfinae23.C: New.
From-SVN: r162303
Bernd Schmidt [Mon, 19 Jul 2010 09:56:07 +0000 (09:56 +0000)]
postreload.c (reload_combine_closest_single_use): Ignore the number of uses for DEBUG_INSNs.
* postreload.c (reload_combine_closest_single_use): Ignore the
number of uses for DEBUG_INSNs.
(fixup_debug_insns): New static function.
(reload_combine_recognize_const_pattern): Use it. Don't let the
main loop be affected by DEBUG_INSNs.
Really disallow moving adds past a jump insn.
(reload_combine_recognize_pattern): Don't update use_ruid here.
(reload_combine_note_use): Do it here.
(reload_combine): Use control_flow_insn_p rather than JUMP_P.
From-SVN: r162301
Bingfeng Mei [Mon, 19 Jul 2010 09:18:14 +0000 (09:18 +0000)]
ddg.c (create_ddg): Exclude nodes of debug_insn in counting nodes of a loop.
2010-07-19 Bingfeng Mei <bmei@broadcom.com>
* ddg.c (create_ddg): Exclude nodes of debug_insn in counting nodes
of a loop.
* loop-doloop.c (doloop_condition_get): Skip possible debug_insn.
From-SVN: r162300
Iain Sandoe [Mon, 19 Jul 2010 09:11:12 +0000 (09:11 +0000)]
allow darwin branch island control depening on system version
* config/i386/darwin.h: Define darwin_emit_branch_islands.
(TARGET_MACHO_BRANCH_ISLANDS): New.
(FUNCTION_PROFILER): Use TARGET_MACHO_BRANCH_ISLANDS.
* config/i386/i386.h (TARGET_MACHO_BRANCH_ISLANDS): Define a
default value.
* config/i386/i386.c (output_pic_addr_const): Do not emit
branch islands unless TARGET_MACHO_BRANCH_ISLANDS is set.
(x86_output_mi_thunk): Adjust symbol creation.
* config/rs6000/darwin.h: Define darwin_emit_branch_islands.
Remove out of date comment.
* config/rs6000/rs6000.c (print_operand): Adjust symbol.
DARWIN_LINKER_GENERATES_ISLANDS: Remove.
DARWIN_GENERATE_ISLANDS: Ditto.
(output_call): Do not emit branch islands unless
darwin_emit_branch_islands is set.
* config/darwin.c: Declare darwin_emit_branch_islands.
(machopic_indirect_data_reference): Do not emit unless
darwin_emit_branch_islands is set.
(darwin_override_options): Set darwin_emit_branch_islands
where it is needed.
* config/darwin9.h
DARWIN_LINKER_GENERATES_ISLANDS: Remove.
From-SVN: r162299
Rainer Orth [Mon, 19 Jul 2010 08:20:59 +0000 (08:20 +0000)]
sourcebuild.texi (Effective-Target Keywords): Document sse_runtime, sse2_runtime.
gcc:
* doc/sourcebuild.texi (Effective-Target Keywords): Document
sse_runtime, sse2_runtime.
gcc/testsuite:
* lib/target-supports.exp (check_sse_os_support_available): New
proc.
(check_sse_hw_available): New proc.
(check_effective_target_sse_runtime): New proc.
(check_effective_target_sse2_runtime): New proc.
* lib/fortran-torture.exp (get-fortran-torture-options): Only add
-msse2 if check_sse_os_support_available.
* g++.dg/vect/vect.exp: Only run -msse2 tests if
check_sse_os_support_available.
* gcc.dg/vect/vect.exp: Likewise.
* gfortran.dg/vect/vect.exp: Likewise.
* gcc.target/i386/sol2-check: Renamed to ...
* gcc.target/i386/sse-os-support.h: ... this.
(sol2_check): Renamed to ...
(sse_os_support): ... this.
Only test movss with xmm registers.
* gcc.target/i386/sse-check.h: Reflect new header and function names.
Removed ILL_INSN, ILL_INSN_LEN.
* gcc.target/i386/sse2-check.h: Likewise.
* gcc.target/i386/sse3-check.h: Likewise.
* gcc.dg/pr40550.c: Use dg-require-effective-target sse_runtime.
Removed cpuid.h, __get_cpuid test.
* g++.dg/other/i386-1.C: Use dg-require-effective-target sse2_runtime.
Removed cpuid.h, __get_cpuid test.
* g++.dg/other/pr40446.C: Likewise.
* gcc.dg/compat/union-m128-1_main.c: Likewise.
* gcc.dg/compat/vector-1a_main.c: Likewise.
* gcc.dg/compat/vector-2a_main.c: Likewise.
* gcc.dg/pr36584.c: Likewise.
* gcc.dg/pr37544.c: Likewise.
* gcc.dg/torture/pr16104-1.c: Likewise.
* gcc.dg/torture/stackalign/alloca-2.c: Likewise.
* gcc.dg/torture/stackalign/alloca-3.c: Likewise.
* gcc.dg/torture/stackalign/push-1.c: Likewise.
* gcc.dg/torture/stackalign/vararg-3.c: Likewise.
* gcc.dg/torture/pr35771.h: Removed cpuid.h, __get_cpuid test.
* gcc.dg/torture/pr35771-1.c: Use dg-require-effective-target
sse2_runtime.
* gcc.dg/torture/pr35771-2.c: Likewise.
* gcc.dg/torture/pr35771-3.c: Likewise.
* gcc.target/i386/pr39315-2.c: Likewise.
* gcc.target/i386/pr39315-4.c: Likewise.
* gcc.target/i386/vperm-v2df.c: Likewise.
* gcc.target/i386/vperm-v2di.c: Likewise.
* gcc.target/i386/vperm-v4si-1.c: Likewise.
* gcc.target/i386/vperm-v4sf-1.c: Use dg-require-effective-target
sse_runtime.
From-SVN: r162295
Paul Thomas [Mon, 19 Jul 2010 05:05:23 +0000 (05:05 +0000)]
re PR fortran/44353 (rejects legal fortran)
2010-07-19 Paul Thomas <pault@gcc.gnu.org>
PR fortran/44353
* match.c (gfc_match_iterator): Revert.
2010-07-19 Paul Thomas <pault@gcc.gnu.org>
PR fortran/44353
* gfortran.dg/data_implied_do_2.f03 : Remove.
From-SVN: r162294
GCC Administrator [Mon, 19 Jul 2010 00:16:54 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r162291
Paul Thomas [Sun, 18 Jul 2010 16:15:43 +0000 (16:15 +0000)]
re PR fortran/44353 (rejects legal fortran)
2010-07-18 Paul Thomas <pault@gcc.gnu.org>
PR fortran/44353
* match.c (gfc_match_iterator): Remove error that iterator
cannot be INTENT(IN).
2010-07-18 Paul Thomas <pault@gcc.gnu.org>
PR fortran/44353
* gfortran.dg/data_implied_do_2.f03 : New test.
From-SVN: r162286
Richard Sandiford [Sun, 18 Jul 2010 12:20:16 +0000 (12:20 +0000)]
cache-1.c: Allow 0 instead of 0x0.
gcc/testsuite/
* gcc.target/mips/cache-1.c: Allow 0 instead of 0x0.
From-SVN: r162285
Richard Sandiford [Sun, 18 Jul 2010 12:16:36 +0000 (12:16 +0000)]
mips.exp (mips_option_groups): Add -mflip-mips16 to the "mips16" group.
gcc/testsuite/
* gcc.target/mips/mips.exp (mips_option_groups): Add -mflip-mips16
to the "mips16" group.
(mips_using_mips16_p): New procedure.
(mips-dg-options): Use it.
From-SVN: r162284
Richard Sandiford [Sun, 18 Jul 2010 12:14:26 +0000 (12:14 +0000)]
mips.c (mips16_build_call_stub): Zero-extend the low half of a single-register SCmode return value before ORing...
gcc/
* config/mips/mips.c (mips16_build_call_stub): Zero-extend the
low half of a single-register SCmode return value before ORing
it with the high half.
* config/mips/mips16.S (MERGE_GPRf): Likewise.
gcc/testsuite/
* gcc.target/mips/mips16-attributes-4.c: New test.
From-SVN: r162283
GCC Administrator [Sun, 18 Jul 2010 00:17:13 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r162282
John David Anglin [Sat, 17 Jul 2010 22:51:34 +0000 (22:51 +0000)]
re PR target/44805 (FAIL: gcc.c-torture/execute/builtins/strpcpy-2.c execution, at -O1 and above)
PR target/44805
* config/pa/pa.h (CONSTANT_ALIGNMENT): Align strings to BITS_PER_WORD
on all targets.
From-SVN: r162278
Iain Sandoe [Sat, 17 Jul 2010 14:51:20 +0000 (14:51 +0000)]
re PR testsuite/44418 (FAIL: gcc.target/powerpc/recip-[123].c on powerpc-apple-darwin9)
PR testsuite/44418
* gcc.target/powerpc/recip-1.c: Do not run for powerpc*-apple-darwin*
* gcc.target/powerpc/recip-2.c: Ditto.
* gcc.target/powerpc/recip-3.c: Ditto.
From-SVN: r162277
Mikael Morin [Sat, 17 Jul 2010 09:57:19 +0000 (09:57 +0000)]
trans-array.c (gfc_free_ss): Don't free beyond ss rank.
2010-07-17 Mikael Morin <mikael@gcc.gnu.org>
* trans-array.c (gfc_free_ss): Don't free beyond ss rank.
Access subscript through the "dim" field index.
(gfc_trans_create_temp_array): Access ss info through the "dim" field
index.
(gfc_conv_array_index_offset): Ditto.
(gfc_conv_loop_setup): Ditto.
(gfc_conv_expr_descriptor): Ditto.
(gfc_conv_ss_startstride): Ditto. Update call to
gfc_conv_section_startstride.
(gfc_conv_section_startstride): Set values along the array dimension.
Get array dimension directly from the argument.
From-SVN: r162276
Jack Howarth [Sat, 17 Jul 2010 08:22:09 +0000 (08:22 +0000)]
re PR target/44862 (bootstrap with --enable-build-with-cxx and --with-libiconv-prefix fails)
2010-07-17 Jack Howarth <howarth@bromo.med.uc.edu>
PR target/44862
* Makefile.tpl (POSTSTAGE1_CXX_EXPORT):
Provide -B option to allow for link spec %s substitutions for
libstdc++.a on darwin.
* Makefile.in: Regenerate.
From-SVN: r162275
GCC Administrator [Sat, 17 Jul 2010 00:17:13 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r162274
Bernd Schmidt [Fri, 16 Jul 2010 23:47:46 +0000 (23:47 +0000)]
re PR target/42235 (redundant memory move from parameter space to spill space)
PR target/42235
* postreload.c (reload_cse_move2add): Return bool, true if anything.
changed. All callers changed.
(move2add_use_add2_insn): Likewise.
(move2add_use_add3_insn): Likewise.
(reload_cse_regs): If reload_cse_move2add changed anything, rerun
reload_combine.
(RELOAD_COMBINE_MAX_USES): Bump to 16.
(last_jump_ruid): New static variable.
(struct reg_use): New members CONTAINING_MEM and RUID.
(reg_state): New members ALL_OFFSETS_MATCH and REAL_STORE_RUID.
(reload_combine_split_one_ruid, reload_combine_split_ruids,
reload_combine_purge_insn_uses, reload_combine_closest_single_use
reload_combine_purge_reg_uses_after_ruid,
reload_combine_recognize_const_pattern): New static functions.
(reload_combine_recognize_pattern): Verify that ALL_OFFSETS_MATCH
is true for our reg and that we have available index regs.
(reload_combine_note_use): New args RUID and CONTAINING_MEM. All
callers changed. Use them to initialize fields in struct reg_use.
(reload_combine): Initialize last_jump_ruid. Be careful when to
take PREV_INSN of the scanned insn. Update REAL_STORE_RUID fields.
Call reload_combine_recognize_const_pattern.
(reload_combine_note_store): Update REAL_STORE_RUID field.
* gcc.target/arm/pr42235.c: New test.
From-SVN: r162270
Jason Merrill [Fri, 16 Jul 2010 21:05:16 +0000 (17:05 -0400)]
re PR c++/32505 (Partial specialization halfway accepted after instantiation)
PR c++/32505
* pt.c (process_partial_specialization): Diagnose partial
specialization after instantiation.
(most_specialized_class): Add complain parm.
From-SVN: r162269
Jason Merrill [Fri, 16 Jul 2010 21:05:07 +0000 (17:05 -0400)]
* ptree.c (cxx_print_xnode): Handle TEMPLATE_INFO.
From-SVN: r162268
Jason Merrill [Fri, 16 Jul 2010 21:04:55 +0000 (17:04 -0400)]
* Makefile.in (opts-common.o): Depend on options.h.
From-SVN: r162267
Jakub Jelinek [Fri, 16 Jul 2010 20:35:16 +0000 (22:35 +0200)]
guality.exp: Run also c-c++-common/guality/ tests.
* gcc.dg/guality/guality.exp: Run also c-c++-common/guality/ tests.
* gcc.dg/guality/guality.h: Include unistd.h. Make the header usable
in C++.
(gualcvt): New overloaded inline.
(GUALCVT): Use it for C++.
* g++.dg/guality/guality.exp: New.
* g++.dg/guality/guality.h: New.
* g++.dg/guality/redeclaration1.C: New test.
* g++.dg/dg.exp: Prune also guality/* tests.
* gcc.dg/guality/pr43141.c: Moved to...
* c-c++-common/guality/pr43141.c: ... here.
From-SVN: r162266
Nathan Froyd [Fri, 16 Jul 2010 17:51:56 +0000 (17:51 +0000)]
tree.c (build_common_builtin_nodes): Use build_function_type_list instead of build_function_type.
* tree.c (build_common_builtin_nodes): Use build_function_type_list
instead of build_function_type.
* tree-ssa-loop-prefetch.c (tree_ssa_prefetch_arrays): Likewise.
* cgraphunit.c (cgraph_build_static_cdtor): Likewise.
From-SVN: r162264
Nathan Froyd [Fri, 16 Jul 2010 15:25:43 +0000 (15:25 +0000)]
rs6000.c (rs6000_emit_sISEL): Let rs6000_emit_int_cmove do all the work.
* config/rs6000/rs6000.c (rs6000_emit_sISEL): Let rs6000_emit_int_cmove
do all the work.
(rs6000_emit_int_cmove): Use function pointers for insn generation.
Don't force values into registers unnecessarily.
(output_isel): Assert that we're not given conditions we can't handle.
Delete corresponding code.
* config/rs6000/rs6000.md (isel_signed_<mode>): Use
scc_comparison_operator constraint. Permit 0 for the consequent
operand. Permit any GPR for the alternative operand.
(isel_unsigned_<mode>): Likewise.
From-SVN: r162263
Jerry DeLisle [Fri, 16 Jul 2010 14:21:10 +0000 (14:21 +0000)]
re PR fortran/37077 (Implement Internal Unit I/O for character KIND=4)
2010-07-16 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/37077
* gfortran.dg/char4_iunit_2.f03: New test.
From-SVN: r162261
Jerry DeLisle [Fri, 16 Jul 2010 14:16:04 +0000 (14:16 +0000)]
re PR fortran/37077 (Implement Internal Unit I/O for character KIND=4)
2010-07-16 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/37077
* io/read.c (read_default_char4): Add support for reading into a
kind-4 character variable from a character(kind=4) internal unit.
* io/io.h (read_block_form4): Add prototype.
* io/unit.c (get_internal_unit): Add call to fbuf_init.
(free_internal_unit): Add call to fbuf_destroy. (get_unit): Fix
whitespace.
* io/transfer.c (read_sf_internal): Use fbuf_alloc to allocate a string
to recieve the wide characters translated to single byte chracters.
(read_block_form): Fix whitespace. (read_block_form4): New function to
read from a character(kind=4) internal unit into a character(kind=4)
variable. (read_block_direct): Fix whitespace. (write_block): Fix
whitespace. (formatted_transfer_scalar_read): Likewise.
(formatted_transfer_scalar_write): Likewise.
* io/write.c (write_character): Add support for list directed write of
a kind=1 character string to a character(kind=4) internal unit.
From-SVN: r162260
Iain Sandoe [Fri, 16 Jul 2010 10:41:36 +0000 (10:41 +0000)]
plugin-support.exp (plugin-test-execute): Add ${gcc_objdir}/intl to includes.
* lib/plugin-support.exp (plugin-test-execute):
Add ${gcc_objdir}/intl to includes.
From-SVN: r162259
Jakub Jelinek [Fri, 16 Jul 2010 09:06:02 +0000 (11:06 +0200)]
re PR target/44942 (Bug in argument passing of long double)
PR target/44942
* config/i386/i386-protos.h (ix86_function_arg_boundary): Change second
argument to const_tree.
* config/i386/i386.c (function_arg_advance): If padding needs to be
inserted before argument, increment cum->words by number of padding
words as well.
(contains_aligned_value_p): Change argument to const_tree.
(ix86_function_arg_boundary): Change second argument to const_tree.
* gcc.c-torture/execute/pr44942.c: New test.
* gcc.target/i386/pr44942.c: New test.
From-SVN: r162255
Jack Howarth [Fri, 16 Jul 2010 08:39:37 +0000 (08:39 +0000)]
re PR testsuite/42843 (--enable-build-with-cxx plugin tests fail)
2010-07-16 Jack Howarth <howarth@bromo.med.uc.edu>
PR testsuite/42843
* gcc.dg/plugin/selfassign.c: Include diagnostic.h.
* gcc.dg/plugin/ggcplug.c: Likewise.
* g++.dg/plugin/selfassign.c: Likewise.
* g++.dg/plugin/attribute_plugin.c: Likewise.
* g++.dg/plugin/dumb_plugin.c: Likewise.
* g++.dg/plugin/pragma_plugin.c: Likewise.
From-SVN: r162254
Nathan Froyd [Fri, 16 Jul 2010 02:37:10 +0000 (02:37 +0000)]
init.c (build_new_1): Use cp_build_function_call_nary instead of cp_build_function_call.
* init.c (build_new_1): Use cp_build_function_call_nary instead of
cp_build_function_call.
From-SVN: r162241
Bernd Schmidt [Fri, 16 Jul 2010 02:09:03 +0000 (02:09 +0000)]
re PR target/42235 (redundant memory move from parameter space to spill space)
PR target/42235
* function.c (record_hard_reg_sets): New static function.
(assign_parm_setup_reg): If an optab for extending exists and the
generated code clobbbers no hard regs, emit the insn directly and
create a REG_EQUIV note.
From-SVN: r162240
Nathan Froyd [Fri, 16 Jul 2010 01:30:32 +0000 (01:30 +0000)]
c-decl.c (detect_field_duplicates): Use DECL_CHAIN insted of TREE_CHAIN.
* c-decl.c (detect_field_duplicates): Use DECL_CHAIN insted of
TREE_CHAIN.
* c-typeck.c (push_init_level): Likewise.
(process_init_element): Likewise.
From-SVN: r162239
GCC Administrator [Fri, 16 Jul 2010 00:17:09 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r162238
Jason Merrill [Thu, 15 Jul 2010 20:45:35 +0000 (16:45 -0400)]
re PR c++/44909 ([C++0x] Copy constructors implicitly deleted)
PR c++/44909
* call.c (add_function_candidate): If we're working on an implicit
declaration, don't consider candidates that won't match.
* typeck.c (same_type_ignoring_top_level_qualifiers_p): Now a fn.
* cp-tree.h (same_type_ignoring_top_level_qualifiers_p): Adjust.
Revert:
* cp-tree.h (struct lang_type_class): Add has_user_opeq.
(TYPE_HAS_USER_OPEQ): New.
* decl.c (grok_special_member_properties): Set it.
* class.c (add_implicitly_declared_members): Don't lazily declare
constructors/operator= if a base or member has a user-declared one.
(check_bases_and_members, check_bases): Adjust.
(check_field_decls, check_field_decl): Adjust.
From-SVN: r162233
Ulrich Weigand [Thu, 15 Jul 2010 19:32:37 +0000 (19:32 +0000)]
Disable float tests for __SPU__ targets due to lack of signed zero:
* c-c++-common/torture/complex-sign-add.c (check_add_float).
* c-c++-common/torture/complex-sign-sub.c (check_sub_float).
* c-c++-common/torture/complex-sign-mul.c (check_mul_float).
* c-c++-common/torture/complex-sign-mul-one.c (check_mul_float).
* c-c++-common/torture/complex-sign-mul-minus-one.c (check_mul_float).
* c-c++-common/torture/complex-sign-mixed-add.c (check_add_float).
* c-c++-common/torture/complex-sign-mixed-sub.c (check_sub_float).
* c-c++-common/torture/complex-sign-mixed-mul.c (check_mul_float).
* c-c++-common/torture/complex-sign-mixed-div.c (check_div_float).
From-SVN: r162232
Anatoly Sokolov [Thu, 15 Jul 2010 18:47:23 +0000 (22:47 +0400)]
tree.h (enum tree_index): Add TI_INTEGER_THREE.
* tree.h (enum tree_index): Add TI_INTEGER_THREE.
(integer_three_node): Add.
* tree.c (build_common_tree_nodes_2): Use integer_type_node insead of
NULL_TREE in build_int_cst calls. Initialize the integer_three_node.
* builtins.c (expand_builtin_prefetch): Use common tree nodes instead
of call build_int_cst.
* tree-ssa-sccvn.c (copy_reference_ops_from_ref): Ditto.
* tree-ssa-loop-ivopts.c (idx_find_step): Ditto.
(find_interesting_uses_address): Ditto.
* tree-ssa-alias.c (ao_ref_init_from_ptr_and_size): Ditto.
* tree-eh.c (lower_eh_constructs_2): Ditto.
* tree-vect-loop.c (get_initial_def_for_induction): Ditto.
* c-typeck.c (really_start_incremental_init, push_init_level): Ditto.
* expmed.c (expand_divmod): Ditto.
* tree-mudflap.c (mx_register_decls): Ditto.
* varasm.c (array_size_for_constructor): Ditto.
* tree-ssa-loop-prefetch.c (issue_prefetch_ref): Ditto.
* c-parser.c (c_parser_postfix_expression): Ditto.
/cp
* decl.c (integer_three_node): Remove.
(cxx_init_decl_processing): Do not initialize the integer_three_node.
* cp-tree.h (integer_three_node): Remove.
From-SVN: r162230
Bernd Schmidt [Thu, 15 Jul 2010 17:07:17 +0000 (17:07 +0000)]
postreload.c (last_label_ruid, [...]): New static variables.
* postreload.c (last_label_ruid, first_index_reg, last_index_reg):
New static variables.
(reload_combine_recognize_pattern): New static function, broken out
of reload_combine.
(reload_combine): Use it. Only initialize first_index_reg and
last_index_reg once.
From-SVN: r162228
Richard Henderson [Thu, 15 Jul 2010 16:38:16 +0000 (09:38 -0700)]
Finish zeroing out the current function status after building cdtor.
From-SVN: r162227
Jakub Jelinek [Thu, 15 Jul 2010 16:09:48 +0000 (18:09 +0200)]
trans.h (gfc_string_to_single_character): New prototype.
* trans.h (gfc_string_to_single_character): New prototype.
* trans-expr.c (string_to_single_character): Renamed to ...
(gfc_string_to_single_character): ... this. No longer static.
(gfc_conv_scalar_char_value, gfc_build_compare_string,
gfc_trans_string_copy): Adjust callers.
* config-lang.in (gtfiles): Add fortran/trans-stmt.c.
* trans-stmt.c: Include ggc.h and gt-fortran-trans-stmt.h.
(select_struct): Move to toplevel, add GTY(()).
(gfc_trans_character_select): Optimize SELECT CASE
with character length 1.
* gfortran.dg/select_char_2.f90: New test.
From-SVN: r162226
Jan Hubicka [Thu, 15 Jul 2010 16:01:33 +0000 (18:01 +0200)]
lto-symtab.c (lto_symtab_resolve_symbols): Remove hack handling comdats for broken gold.
* lto-symtab.c (lto_symtab_resolve_symbols): Remove hack handling comdats
for broken gold.
(lto_sy mtab_merge_decls_1): Set used_from_object_file correctly.
From-SVN: r162225