OSDN Git Service

pf3gnuchains/gcc-fork.git
13 years ago* doc/gimple.texi (GIMPLE_DEBUG): Document.
aoliva [Wed, 7 Jul 2010 01:12:23 +0000 (01:12 +0000)]
* doc/gimple.texi (GIMPLE_DEBUG): Document.
* doc/rtl.texi (Debug Information): New node.
(NOTE_INSN_VAR_LOCATION): Document.
(debug_insn): Likewise.
* doc/generic.texi (DEBUG_EXPR_DECL): Document.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161899 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR middle-end/44813
hubicka [Wed, 7 Jul 2010 01:00:42 +0000 (01:00 +0000)]
PR middle-end/44813
* tree-ssa-uninit.c (ssa_undefined_value_p): Result decl is defined
for functions passed by reference.
* tree.c (needs_to_live_in_memory): RESULT_DECL don't need to live
in memory when passed by reference.
* tree-ssa-ccp.c (get_default_value): Only VAR_DECL is undefined at
beggining.
* ipa-split.c (split_function): Cleanup way return value is passed;
handle SSA DECL_BY_REFERENCE retvals.
* tree-ssa.c (verify_def): Verify that RESULT_DECL is read only when
DECL_BY_REFERENCE is set.
* tree-ssa-structalias.c (get_constraint_for_ssa_var, get_fi_for_callee,
find_what_p_points_to): Handle RESULT_DECL.
* tree-inline.c (declare_return_variable): Get new entry_block argument;
when passing by reference ensure that RESULT_DECL is gimple_val.
(remap_gimple_op_r): Remap RESULT_DECL ssa name.
(remap_gimple_stmt): Handle SSA DECL_BY_REFERENCE returns.
* g++.dg/torture/pr44813.C: New testcase.
* g++.dg/torture/pr44826.C: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161898 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoDaily bump.
gccadmin [Wed, 7 Jul 2010 00:17:13 +0000 (00:17 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161897 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR rtl-optimization/44787
bernds [Tue, 6 Jul 2010 23:44:55 +0000 (23:44 +0000)]
PR rtl-optimization/44787
* config/arm/arm.md (arith_shiftsi): Allow stack pointer in operand 2.
* config/arm/thumb2.md (thumb2_arith_shiftsi): Likewise.

testsuite/
PR rtl-optimization/44787
* gcc.c-torture/compile/pr44788.c: New test.
* gcc.target/arm/pr44788.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161893 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2010-07-06 Jonathan Wakely <jwakely.gcc@gmail.com>
redi [Tue, 6 Jul 2010 22:14:58 +0000 (22:14 +0000)]
2010-07-06  Jonathan Wakely  <jwakely.gcc@gmail.com>

* doc/xml/manual/status_cxx200x.xml: Add some missing features.
* doc/html/*: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161892 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * gcc.target/powerpc/altivec-volatile.c: Adjust expected warning.
bergner [Tue, 6 Jul 2010 21:49:57 +0000 (21:49 +0000)]
* gcc.target/powerpc/altivec-volatile.c: Adjust expected warning.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161891 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * gcc.target/powerpc/ppu-intrinsics.c: Add -Wno-unused-but-set-variable
bergner [Tue, 6 Jul 2010 21:46:59 +0000 (21:46 +0000)]
* gcc.target/powerpc/ppu-intrinsics.c: Add -Wno-unused-but-set-variable
to dg-options.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161890 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2010-07-06 Tobias Burnus <burnus@net-b.de>
burnus [Tue, 6 Jul 2010 20:56:07 +0000 (20:56 +0000)]
2010-07-06  Tobias Burnus  <burnus@net-b.de>

        PR fortran/44742
        * array.c (gfc_expand_constructor): Add optional diagnostic.
        * gfortran.h (gfc_expand_constructor): Update prototype.
        * expr.c (gfc_simplify_expr, check_init_expr,
        gfc_reduce_init_expr): Update gfc_expand_constructor call.
        * resolve.c (gfc_resolve_expr): Ditto.

2010-07-06  Tobias Burnus  <burnus@net-b.de>

        PR fortran/44742
        * gfortran.dg/parameter_array_init_6.f90: New.
        * gfortran.dg/initialization_20.f90: Update dg-error.
        * gfortran.dg/initialization_24.f90: Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161888 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2010-07-06 Tobias Burnus <burnus@net-b.de>
burnus [Tue, 6 Jul 2010 19:57:29 +0000 (19:57 +0000)]
2010-07-06  Tobias Burnus  <burnus@net-b.de>

        * trans-decl.c: Include diagnostic-core.h besides toplev.h.
        * trans-intrinsic.c: Ditto.
        * trans-types.c: Ditto.
        * convert.c: Include diagnostic-core.h instead of toplev.h.
        * options.c: Ditto.
        * trans-array.c: Ditto.
        * trans-const.c: Ditto.
        * trans-expr.c: Ditto.
        * trans-io.c: Ditto.
        * trans-openmp.c: Ditto.
        * trans.c: Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161885 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2010-07-06 Thomas Koenig <tkoenig@gcc.gnu.org>
tkoenig [Tue, 6 Jul 2010 19:48:58 +0000 (19:48 +0000)]
2010-07-06  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/PR44693
* check.c (dim_rank_check):  Also check intrinsic functions.
Adjust permissible rank for functions which reduce the rank of
their argument.  Spread is an exception, where DIM can
be one larger than the rank of array.

2010-07-06  Thomas Koenig  <tkoenig@gcc.gnu.org>
PR fortran/PR44693
* gfortran.dg/dim_range_1.f90:  New test.
* gfortran.dg/minmaxloc_4.f90:  Remove invalid test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161884 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR c++/44703
jason [Tue, 6 Jul 2010 19:23:01 +0000 (19:23 +0000)]
PR c++/44703
* call.c (is_std_init_list): Look through typedefs.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161880 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR c++/44778
jason [Tue, 6 Jul 2010 19:22:49 +0000 (19:22 +0000)]
PR c++/44778
* init.c (build_offset_ref): If scope isn't dependent,
don't exit early.  Look at TYPE_MAIN_VARIANT.
* pt.c (tsubst_copy) [OFFSET_REF]: Do substitution.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161879 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * error.c (dump_function_decl): Don't crash on null DECL_NAME.
jason [Tue, 6 Jul 2010 19:22:38 +0000 (19:22 +0000)]
* error.c (dump_function_decl): Don't crash on null DECL_NAME.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161878 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * lto-symtab.c (lto_cgraph_replace_node): Handle aliases.
hubicka [Tue, 6 Jul 2010 18:54:38 +0000 (18:54 +0000)]
* lto-symtab.c (lto_cgraph_replace_node): Handle aliases.
(lto_symtab_resolve_can_prevail_p): Also alias of cgraph node
with body can prevail.
(lto_symtab_resolve_symbols): Use cgraph_get_node_or_alias.
(lto_symtab_merge_cgraph_nodes_1): Do not remove nodes from aliases.
* cgraph.c (cgraph_get_node_or_alias): New function.
* cgraph.h (cgraph_get_node_or_alias): Declare.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161877 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2010-07-06 Kai Tietz <kai.tietz@onevision.com>
ktietz [Tue, 6 Jul 2010 18:27:41 +0000 (18:27 +0000)]
2010-07-06  Kai Tietz  <kai.tietz@onevision.com>

        * config/i386/i386.c (ix86_function_ms_hook_prologue): Enable x64
        support.
        (ix86_expand_prologue): Likewise.
        (ix86_handle_fndecl_attribute): Likewise.
        (ix86_asm_declare_function_name): New function for
        ASM_DECLARE_FUNCTION_NAME.
        * config/i386/i386.h (ASM_DECLARE_FUNCTION_NAME): New macro.
        * config/i386/cygming.h (ASM_DECLARE_FUNCTION_NAME): Removed.
        (SUBTARGET_ASM_DECLARE_FUNCTION_NAME): New macro.
        * config/i386/i386-protos.h (ix86_asm_declare_function_name): New.
        * doc/extend.texi: Adjust documentation about ms_hook_prologue
        attribute.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161876 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2010-07-06 Kai Tietz <kai.tietz@onevision.com>
ktietz [Tue, 6 Jul 2010 18:25:26 +0000 (18:25 +0000)]
2010-07-06  Kai Tietz  <kai.tietz@onevision.com>

        * gcc.target/i386/ms_hook_prologue.c: Add x64 ms_hook_prologue
        support.
        * gcc.target/i386/i386.exp: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161875 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR testsuite/44195
bergner [Tue, 6 Jul 2010 16:09:13 +0000 (16:09 +0000)]
PR testsuite/44195
* gcc.dg/lto/20100518_0.c: Limit to x86.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161872 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2010-07-06 Uros Bizjak <ubizjak@gmail.com>
uros [Tue, 6 Jul 2010 14:05:19 +0000 (14:05 +0000)]
2010-07-06  Uros Bizjak  <ubizjak@gmail.com>

* config/i386/i386.md (immediate_operand): New mode attribute.

(pro_epilogue_adjust_stack_<mode>_1): Macroize insn from
pro_epilogue_adjust_stack  and pro_epilogue_adjust_stack_rex64
using P mode iterator.
(pro_epilogue_adjust_stack_di_2): Rename from
pro_epilogue_adjust_stack_rex64_2.

* config/i386/i386.c (pro_epilogue_adjust_stack): Update for rename.

2010-07-06  Uros Bizjak  <ubizjak@gmail.com>

* config/i386/i386.md (insv): Call gen_movdi_insv1 or gen_movsi_insv1
through gen_mov_insv_1 function pointer.
(fmod<mode>3): Call gen_truncxf<mode>2_i387_noop_unspec or
gen_truncxf<mode>2 through gen_truncxf function pointer.
(remainder<mode>3): Ditto.
(cmpstrnsi): Rename cmp_insn function pointer to gen_cmp.
(allocate_stack): Call gen_allocate_stack_worker_64 or
gen_allocate_stack_worker_32 through gen_allocate_stack_worker
function pointer.
(probe_stack): Call gen_iordi3 or gen_iorsi3 through gen_ior3
function pointer.

2010-07-06  Uros Bizjak  <ubizjak@gmail.com>

* config/i386/i386.md (*add<mode>3_cconly_overflow): Use <g>
operand constraint instead of <r><i>m.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161870 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2010-07-06 Richard Guenther <rguenther@suse.de>
rguenth [Tue, 6 Jul 2010 13:37:58 +0000 (13:37 +0000)]
2010-07-06  Richard Guenther  <rguenther@suse.de>

PR middle-end/44828
* convert.c (convert_to_integer): Watch out for overflowing
MULT_EXPR as well.

* gcc.c-torture/execute/pr44828.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161869 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * lto-streamer.c (write_symbol_vec): Rename to ...
hubicka [Tue, 6 Jul 2010 13:26:28 +0000 (13:26 +0000)]
* lto-streamer.c (write_symbol_vec): Rename to ...
(write_symbol) ... this one; write only symbol given and when
present in cache. Sanity check that what is defined is present
in cgraph/varpool with body/finalized decl.
(write_symbols_of_kind): Remove.
(produce_symtab): Take outputblock and sets; use cgraph/varpool/alias
pairs to produce symtab.
(produce_asm_for_decls): Update call of produce_symtab; don't do so
when doing WPA streaming.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161868 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoinclude/ChangeLog:
uweigand [Tue, 6 Jul 2010 13:00:59 +0000 (13:00 +0000)]
include/ChangeLog:

2010-07-06  Ken Werner  <ken.werner@de.ibm.com>

* floatformat.h (floatformat_ieee_half_big): Add declaration.
(floatformat_ieee_half_little): Likewise.

libiberty/ChangeLog:

2010-07-06  Ken Werner  <ken.werner@de.ibm.com>

* floatformat.c (floatformat_ieee_half_big): New variable.
(floatformat_ieee_half_little): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161867 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * gimple-fold.c (gimple_fold_obj_type_ref_known_binfo): Check that
hubicka [Tue, 6 Jul 2010 11:44:34 +0000 (11:44 +0000)]
* gimple-fold.c (gimple_fold_obj_type_ref_known_binfo): Check that
function is still available to fold into.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161866 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago/cp
pzhao [Tue, 6 Jul 2010 05:53:49 +0000 (05:53 +0000)]
/cp
2010-07-06  Shujing Zhao  <pearly.zhao@oracle.com>

        * cp-tree.h (impl_conv_void): New type.
        (convert_to_void): Adjust prototype.
        * cvt.c (convert_to_void): Use impl_conv_void, emit and adjust the
        diagnostic for easy translation. Change caller.
        * typeck.c: Update call to convert_to_void.
        * semantics.c: Likewise.
        * init.c: Likewise.

/testsuite
2010-07-06  Shujing Zhao  <pearly.zhao@oracle.com>

        * g++.dg/warn/noeffect2.C: Adjust expected warning.
        * g++.dg/warn/volatile1.C: Likewise.
        * g++.dg/template/warn1.C: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161863 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agogcc/
froydnj [Tue, 6 Jul 2010 02:26:33 +0000 (02:26 +0000)]
gcc/
* vec.h (FOR_EACH_VEC_ELT_REVERSE): New macro.
* function.h (struct_function): Change type of local_decls field
to a VEC.
(add_local_decl): New function.
(FOR_EACH_LOCAL_DECL): New macro.
* cfgexpand.c (init_vars_expansion): Adjust for new type of
cfun->local_decls.
(estimated_stack_frame_size): Likewise.
(expand_used_vars): Likewise.
* cgraphbuild.c (build_cgraph_edges): Likewise.
* function.c (instantiate_decls_1): Likewise.
* ipa-struct-reorg.c (build_data_structure): Likewise.
* ipa-type-escape.c (analyze_function): Likewise.
* lto-streamer-in.c (input_function): Likewise.
* lto-streamer-out.c (output_function): Likewise.
* tree-ssa-live.c (remove_unused_locals): Likewise.
* tree.c (free_lang_data_in_decl): Likewise.
(find_decls_types_in_node): Likewise.
* omp-low.c (remove_exit_barrier): Likewise.
(expand_omp_taskreg): Likewise.
(list2chain): Rename to...
(vec2chain): ...this.  Adjust.
* cgraphunit.c (assemble_thunk): Call add_local_decl.
* tree-cfg.c (replace_by_duplicate_decl): Likewise.
* gimple-low.c (record_vars_into): Likewise.
* tree-inline.c (remap_decls): Likewise.
(declare_return_variable): Likewise.
(declare_inline_vars): Likewise.
(copy_forbidden): Adjust for new type of cfun->local_decls.
(add_local_variables): New function.
(expand_call_inline): Call it.
(tree_function_versioning): Likewise.

gcc/cp/
* decl.c (cp_finish_decl): Call add_local_decl.
* optimize.c (clone_body): Adjust for new type of cfun->local_decls.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161862 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoDaily bump.
gccadmin [Tue, 6 Jul 2010 00:17:11 +0000 (00:17 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161861 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR bootstrap/44825
froydnj [Mon, 5 Jul 2010 22:19:22 +0000 (22:19 +0000)]
PR bootstrap/44825
* class.c (make_class_data): Cast result of VEC_length calls to int.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161856 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoSupport AVX Programming Reference (June, 2010).
hjl [Mon, 5 Jul 2010 21:57:55 +0000 (21:57 +0000)]
Support AVX Programming Reference (June, 2010).

gcc/

2010-07-05  H.J. Lu  <hongjiu.lu@intel.com>

AVX Programming Reference (June, 2010)
* config/i386/cpuid.h (bit_F16C): New.
(bit_RDRND): Likewise.
(bit_FSGSBASE): Likewise.

* config/i386/i386-builtin-types.def: Add
"DEF_FUNCTION_TYPE (UINT16)", function types for
float16 <-> float conversions and
"DEF_FUNCTION_TYPE (VOID, UINT64)".

* config/i386/i386-c.c (ix86_target_macros_internal): Support
OPTION_MASK_ISA_FSGSBASE, OPTION_MASK_ISA_RDRND and
OPTION_MASK_ISA_F16C.

* config/i386/i386.c (OPTION_MASK_ISA_FSGSBASE_SET): New.
(OPTION_MASK_ISA_RDRND_SET): Likewise.
(OPTION_MASK_ISA_F16C_SET): Likewise.
(OPTION_MASK_ISA_FSGSBASE_UNSET): Likewise.
(OPTION_MASK_ISA_RDRND_UNSET): Likewise.
(OPTION_MASK_ISA_F16C_UNSET): Likewise.
(OPTION_MASK_ISA_AVX_UNSET): Add OPTION_MASK_ISA_F16C_UNSET.
(ix86_handle_option): Handle OPT_mfsgsbase, OPT_mrdrnd and
OPT_mf16c.
(ix86_target_string): Support -mfsgsbase, -mrdrnd and -mf16c.
(pta_flags): Add PTA_FSGSBASE, PTA_RDRND and PTA_F16C.
(override_options): Handle them.
(ix86_valid_target_attribute_inner_p): Handle fsgsbase, rdrnd
and f16c.
(ix86_builtins): Add IX86_BUILTIN_RDFSBASE32,
IX86_BUILTIN_RDFSBASE64, IX86_BUILTIN_RDGSBASE32,
IX86_BUILTIN_RDGSBASE64, IX86_BUILTIN_WRFSBASE32,
IX86_BUILTIN_WRFSBASE64, IX86_BUILTIN_WRGSBASE32,
IX86_BUILTIN_WRGSBASE64, IX86_BUILTIN_RDRAND16,
IX86_BUILTIN_RDRAND32, IX86_BUILTIN_RDRAND64,
IX86_BUILTIN_CVTPH2PS, IX86_BUILTIN_CVTPH2PS256,
IX86_BUILTIN_CVTPS2PH and IX86_BUILTIN_CVTPS2PH256.
(bdesc_args): Likewise.
(ix86_expand_args_builtin): Handle V8SF_FTYPE_V8HI,
V4SF_FTYPE_V8HI, V8HI_FTYPE_V8SF_INT and V8HI_FTYPE_V4SF_INT.
(ix86_expand_special_args_builtin): Handle VOID_FTYPE_UINT64,
VOID_FTYPE_UNSIGNED, UNSIGNED_FTYPE_VOID and UINT16_FTYPE_VOID.
Handle non-memory store.

* config/i386/i386.h (TARGET_FSGSBASE): New.
(TARGET_RDRND): Likewise.
(TARGET_F12C): Likewise.

* config/i386/i386.md (UNSPEC_VCVTPH2PS): New.
(UNSPEC_VCVTPS2PH): Likewise.
(UNSPECV_RDFSBASE): Likewise.
(UNSPECV_RDGSBASE): Likewise.
(UNSPECV_WRFSBASE): Likewise.
(UNSPECV_WRGSBASE): Likewise.
(UNSPECV_RDRAND): Likewise.
(rdfsbase<mode>): Likewise.
(rdgsbase<mode>): Likewise.
(wrfsbase<mode>): Likewise.
(wrgsbase<mode>): Likewise.
(rdrand<mode>): Likewise.

* config/i386/i386.opt: Add -mfsgsbase, -mrdrnd and -mf16c.

* config/i386/immintrin.h (_rdrand_u16): New.
(_rdrand_u32): Likewise.
(_readfsbase_u32): Likewise.
(_readfsbase_u64): Likewise.
(_readgsbase_u32): Likewise.
(_readgsbase_u64): Likewise.
(_writefsbase_u32): Likewise.
(_writefsbase_u64): Likewise.
(_writegsbase_u32): Likewise.
(_writegsbase_u64): Likewise.
(_rdrand_u64): Likewise.
(_cvtsh_ss): Likewise.
(_mm_cvtph_ps): Likewise.
(_mm256_cvtph_ps): Likewise.
(_cvtss_sh): Likewise.
(_mm_cvtps_ph): Likewise.
(_mm256_cvtps_ph): Likewise.

* config/i386/sse.md (vcvtph2ps): New.
(*vcvtph2ps_load): Likewise.
(vcvtph2ps256): Likewise.
(vcvtps2ph): Likewise.
(*vcvtps2ph): Likewise.
(*vcvtps2ph_store): Likewise.
(vcvtps2ph256): Likewise.

* doc/extend.texi: Document FSGSBASE and RDRND built-in functions.

* doc/invoke.texi: Document -mfsgsbase, -mrdrnd and -mf16c.

gcc/testsuite/

2010-07-05  H.J. Lu  <hongjiu.lu@intel.com>

AVX Programming Reference (June, 2010)
* g++.dg/other/i386-2.C: Add -mfsgsbase -mrdrnd -mf16c.
* g++.dg/other/i386-3.C: Likewise.
* gcc.target/i386/sse-12.c: Likewise.

* gcc.target/i386/f16c-check.h: New.
* gcc.target/i386/rdfsbase-1.c: Likewise.
* gcc.target/i386/rdfsbase-2.c: Likewise.
* gcc.target/i386/rdgsbase-1.c: Likewise.
* gcc.target/i386/rdgsbase-2.c: Likewise.
* gcc.target/i386/rdrand-1.c: Likewise.
* gcc.target/i386/rdrand-2.c: Likewise.
* gcc.target/i386/rdrand-3.c: Likewise.
* gcc.target/i386/vcvtph2ps-1.c: Likewise.
* gcc.target/i386/vcvtph2ps-2.c: Likewise.
* gcc.target/i386/vcvtph2ps-3.c: Likewise.
* gcc.target/i386/vcvtps2ph-1.c: Likewise.
* gcc.target/i386/vcvtps2ph-2.c: Likewise.
* gcc.target/i386/vcvtps2ph-3.c: Likewise.
* gcc.target/i386/wrfsbase-1.c: Likewise.
* gcc.target/i386/wrfsbase-2.c: Likewise.
* gcc.target/i386/wrgsbase-1.c: Likewise.
* gcc.target/i386/wrgsbase-2.c: Likewise.

* gcc.target/i386/sse-13.c: Add -mfsgsbase -mrdrnd -mf16c.
(__builtin_ia32_vcvtps2ph): New.
(__builtin_ia32_vcvtps2ph256): Likewise.

* gcc.target/i386/sse-14.c: Add -mfsgsbase -mrdrnd -mf16c.
Test _cvtss_sh, _mm_cvtps_ph and _mm256_cvtps_ph.

* gcc.target/i386/sse-22.c: Add fsgsbase,rdrnd,f16c.
Test _cvtss_sh, _mm_cvtps_ph and _mm256_cvtps_ph.

* gcc.target/i386/sse-23.c (__builtin_ia32_vcvtps2ph): New.
(__builtin_ia32_vcvtps2ph256): Likewise.
Add fsgsbase,rdrnd,f16c.

* lib/target-supports.exp (check_effective_target_f16c): New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161855 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoFix ChangeLog entry from my previous commit to include
kargl [Mon, 5 Jul 2010 20:19:41 +0000 (20:19 +0000)]
Fix ChangeLog entry from my previous commit to include
the "PR" prefix.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161854 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR bootstrap/44512
amylaar [Mon, 5 Jul 2010 20:18:07 +0000 (20:18 +0000)]
PR bootstrap/44512
* genenums.c (main): Output include of insn-constants.h
* Makefile.in (insn-enums.o): Depend on insn-constants.h.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161853 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2010-07-05 Steven G. Kargl <kargl@gcc.gnu.org>
kargl [Mon, 5 Jul 2010 20:14:15 +0000 (20:14 +0000)]
2010-07-05  Steven G. Kargl  <kargl@gcc.gnu.org>

    fortran/44797
    * fortran/io.c (resolve_tag): Check EXIST tag is a default logical.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161852 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * config/i386/i386.c (ix86_gen_allocate_stack_worker): New.
uros [Mon, 5 Jul 2010 20:12:10 +0000 (20:12 +0000)]
* config/i386/i386.c (ix86_gen_allocate_stack_worker): New.
(override_options): Initialize it.
(ix86_expand_prologue): Use it.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161851 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * ChangeLog: Fix whitespace.
uros [Mon, 5 Jul 2010 20:03:25 +0000 (20:03 +0000)]
* ChangeLog: Fix whitespace.
* testsuite/ChangeLog: Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161850 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * tree-nrv.c (tree_nrv): Set DECL_VALUE_EXPR on found to result.
jakub [Mon, 5 Jul 2010 19:42:53 +0000 (19:42 +0000)]
* tree-nrv.c (tree_nrv): Set DECL_VALUE_EXPR on found to result.

* gcc.dg/guality/nrv-1.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161849 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2010-07-05 Paul Thomas <pault@gcc.gnu.org>
pault [Mon, 5 Jul 2010 19:26:12 +0000 (19:26 +0000)]
2010-07-05  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/44596
* trans-types.c (gfc_get_derived_type): Derived type fields
with the vtype attribute must have TYPE_REF_CAN_ALIAS_ALL set
but build_pointer_type_for_mode must be used for this.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161848 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * double-int.h (fit_double_type): Remove declaration.
aesok [Mon, 5 Jul 2010 18:45:40 +0000 (18:45 +0000)]
* double-int.h (fit_double_type): Remove declaration.
* double-int.c (fit_double_type): Remove function.
* tree.h (int_fits_type_p): Adjust prototype.
* tree.c (int_fits_type_p): Return bool. Use double_int_fits_to_tree_p
instead of fit_double_type.
(build_int_cst_type): Use double_int_to_tree and shwi_to_double_int
instead of fit_double_type and build_int_cst_wide.
* builtins.c (): Use double_int_fits_to_tree_p and double_int_to_tree
instead of fit_double_type and build_int_cst_wide.
(fold_builtin_object_size): Use double_int_fits_to_tree_p instead
of fit_double_type.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161847 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * cgraph.h (cgraph_node, cgraph_varpool_node): Update docmentation of
hubicka [Mon, 5 Jul 2010 18:25:04 +0000 (18:25 +0000)]
* cgraph.h (cgraph_node, cgraph_varpool_node): Update docmentation of
in_other_partition.
* lto-cgraph.c (referenced_from_other_partition_p,
reachable_from_other_partition_p): Use in_other_partition flags.
(output_node, output_varpool_node): COMDAT nodes always have private
copies and thus are never used from other partition.

* lto.c (add_cgraph_node_to_partition): Forward declare; walk also
nodes from same comdat group as well as all comdat functions referenced
here.
(add_varpool_node_to_partition, add_references_to_partition): New function.
(lto_1_1_map): Skip COMDAT fnctions/variables; use add_varpool_node_to_partition;
clear aux flags when done.
(lto_promote_cross_file_statics): Do not promote stuff that gets duplicated to
each ltrans.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161846 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * config/ia64/ia64.h (MEMORY_MOVE_COST): Remove macro.
aesok [Mon, 5 Jul 2010 17:49:56 +0000 (17:49 +0000)]
* config/ia64/ia64.h (MEMORY_MOVE_COST): Remove macro.
* config/ia64/t-ia64 (ia64.o): Depend on reload.h.
* config/ia64/ia64.c Include reload.h.
(ia64_memory_move_cost): New function.
(TARGET_MEMORY_MOVE_COST): Define.
(ia64_register_move_cost): Replace MEMORY_MOVE_COST with
memory_move_cost.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161845 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2010-07-05 Sandra Loosemore <sandra@codesourcery.com>
sandra [Mon, 5 Jul 2010 17:40:57 +0000 (17:40 +0000)]
2010-07-05  Sandra Loosemore  <sandra@codesourcery.com>

PR middle-end/42505

gcc/
* tree-ssa-loop-ivopts.c (determine_set_costs): Delete obsolete
comments about cost model.
(try_add_cand_for):  Add second strategy for choosing initial set
based on original IVs, controlled by ORIGINALP argument.
(get_initial_solution): Add ORIGINALP argument.
(find_optimal_iv_set_1): New function, split from find_optimal_iv_set.
(find_optimal_iv_set): Try two different strategies for choosing
the IV set, and return the one with lower cost.

gcc/testsuite/
* gcc.target/arm/pr42505.c: New test case.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161844 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * configure.ac (ANONVERSCRIPT): Handle sun style.
ro [Mon, 5 Jul 2010 17:22:52 +0000 (17:22 +0000)]
* configure.ac (ANONVERSCRIPT): Handle sun style.
Define ANONVERSCRIPT_GNU, ANONVERSCRIPT_SUN automake conditionals.
* configure: Regenerate.

* Makefile.am [ANONVERSCRIPT]: Protect GNU section with
ANONVERSCRIPT_GNU.
Introduce per-library $(lib)_la_version_arg, $(lib)_la_version_dep
variables.
[ANONVERSCRIPT_GNU] (version_arg): Default ld arg for version map.
(version_dep): Likewise for dependency.
Use them to set the per-library variables.
[!ANONVERSCRIPT]: Provide them vor the unversioned case.
[ANONVERSCRIPT_SUN]: Handle Sun symbol versioning.
(libgcj_la_DEPENDENCIES): Unconditionally use
$(libgcj_la_version_dep).
(libgcj_la_LINK): Add $(libgcj_la_version_arg).
(libgcj_noncore_la_DEPENDENCIES): Unconditionally use
$(libgcj_la_version_dep).
(libgcj_tools_la_LIBADD): Move -lm ...
(libgcj_tools_la_LDFLAGS): ... here.
(libgcj_tools_la_DEPENDENCIES): Add
$(libgcj_tools_la_version_dep).
(libgcj_tools_la_LINK): Add $(libgcj_tools_la_version_arg).
(lib_gnu_awt_xlib_la_DEPENDENCIES): Add
$(lib_gnu_awt_xlib_la_version_dep).
(lib_gnu_awt_xlib_la_LINK): Add
$(lib_gnu_awt_xlib_la_version_arg).
(libgcj_bc_la_DEPENDENCIES): Add $(libgcj_bc_la_version_dep).
(libgcj_bc_la_LINK): $(libgcj_bc_la_version_arg).
[ANONVERSCRIPT && ANONVERSCRIPT_SUN] (%.ver-sun): New pattern rule.
* Makefile.in: Regenerate.

* libgcj.ver: Reformat.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161843 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * acinclude.m4 (LIBGOMP_ENABLE_SYMVERS): Handle sun style.
ro [Mon, 5 Jul 2010 17:19:33 +0000 (17:19 +0000)]
* acinclude.m4 (LIBGOMP_ENABLE_SYMVERS): Handle sun style.
Define LIBGOMP_BUILD_VERSIONED_SHLIB_GNU,
LIBGOMP_BUILD_VERSIONED_SHLIB_SUN automake conditionals.
(HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT): Define unless
targetting solaris2*.
* configure: Regenerate.
* config.h.in: Regenerate.

* Makefile.am [LIBGOMP_BUILD_VERSIONED_SHLIB]: Protect
libgomp_version_script with LIBGOMP_BUILD_VERSIONED_SHLIB_GNU.
Add libgomp_version_dep.
[LIBGOMP_BUILD_VERSIONED_SHLIB_SUN]: Handle Sun symbol
versioning.
[!LIBGOMP_BUILD_VERSIONED_SHLIB]: Add libgomp_version_dep.
(libgomp_la_DEPENDENCIES): Set to $(libgomp_version_dep).
* Makefile.in: Regenerate.

* libgomp.h (LIBGOMP_GNU_SYMBOL_VERSIONING): Undef unless
HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT.
* libgomp.map (OMP_1.0): Move symbols both in OMP_1.0 and OMP_3.0
to common block, protected by
HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161842 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2010-07-05 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 5 Jul 2010 16:06:56 +0000 (16:06 +0000)]
2010-07-05  Richard Guenther  <rguenther@suse.de>

* tree-ssa-loop-ivopts.c (rewrite_use_nonlinear_expr): Copy
alias info.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161841 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2010-07-05 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 5 Jul 2010 14:51:16 +0000 (14:51 +0000)]
2010-07-05  Richard Guenther  <rguenther@suse.de>

* tree.c (reference_alias_ptr_type): New function.
* tree.h (reference_alias_ptr_type): Declare.
* tree-ssa-loop-ivopts.c (copy_ref_info): Restructure to
allow non-TARGET_MEM_REF new refs.
(rewrite_use_address): Pass old alias pointer type to
create_mem_ref.
* tree-ssa-address.c (create_mem_ref_raw): Get alias pointer type.
Build a MEM_REF instead of a TARGET_MEM_REF if possible.
(create_mem_ref): Get alias pointer type.  Adjust calls to
create_mem_ref_raw.
(maybe_fold_tmr): Likewise.
* tree-flow.h (create_mem_ref): Adjust prototype.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161840 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * constants.c (build_constants_constructor): Use build_constructor
froydnj [Mon, 5 Jul 2010 14:49:04 +0000 (14:49 +0000)]
* constants.c (build_constants_constructor): Use build_constructor
instead of build_constructor_from_list.
* class.c (make_method_value): Likewise.
(get_dispatch_table): Likewise.
(make_class_data): Likewise.
(emit_indirect_register_classes): Likewise.
(emit_symbol_table): Likewise.
(add_assertion_table_entry): Likewise.
(emit_assertion_table): Likewise.
(make_field_value): Use build_constructor_single instead of
build_constructor_from_list.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161839 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR c++/44808
jakub [Mon, 5 Jul 2010 14:42:20 +0000 (14:42 +0000)]
PR c++/44808
* gimplify.c (gimplify_modify_expr): Only SET_DECL_DEBUG_EXPR if
*from_p is VAR_DECL.

* g++.dg/opt/nrv16.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161838 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * tree.h (build_call_list): Remove.
froydnj [Mon, 5 Jul 2010 13:15:31 +0000 (13:15 +0000)]
* tree.h (build_call_list): Remove.
* tree.c (build_call_list): Remove.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161837 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2010-07-05 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 5 Jul 2010 13:14:24 +0000 (13:14 +0000)]
2010-07-05  Richard Guenther  <rguenther@suse.de>

* double-int.h (double_int_sub): Declare.
* double-int.c (double_int_sub): New function.
* dwarf2out.c (field_byte_offset): Use it.
* fixed-value.c (do_fixed_add): Likewise.
(do_fixed_multiply): Likewise.
(do_fixed_divide): Likewise.
* tree-predcom.c (add_ref_to_chain): Likewise.
(determine_roots_comp): Likewise.
* tree-ssa-loop-niter.c (derive_constant_upper_bound_ops): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161836 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2010-07-05 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 5 Jul 2010 13:06:07 +0000 (13:06 +0000)]
2010-07-05  Richard Guenther  <rguenther@suse.de>

* double-int.h (double_int_sub): Declare.
* double-int.c (double_int_sub): New function.
* dwarf2out.c (field_byte_offset): Use it.
* fixed-value.c (do_fixed_add): Likewise.
(do_fixed_multiply): Likewise.
(do_fixed_divide): Likewise.
* tree-predcom.c (add_ref_to_chain): Likewise.
(determine_roots_comp): Likewise.
* tree-ssa-loop-niter.c (derive_constant_upper_bound_ops): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161835 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agogcc/
froydnj [Mon, 5 Jul 2010 12:46:52 +0000 (12:46 +0000)]
gcc/
* vec.h (VEC_splice, VEC_safe_splice): New macros.  Add function
implementations.

gcc/fortran/
* trans.h (gfc_conv_procedure_call): Take a VEC instead of a tree.
* trans-intrinsic.c (gfc_conv_intrinsic_funcall): Adjust for new
type of gfc_conv_procedure_call.
(conv_generic_with_optional_char_arg): Likewise.
* trans-stmt.c (gfc_trans_call): Likewise.
* trans-expr.c (gfc_conv_function_expr): Likewise.
(gfc_conv_procedure_call): Use build_call_vec instead of
build_call_list.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161834 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * config/arm/arm.c (get_arm_condition_code): Remove CC_NOTBmode case.
bernds [Mon, 5 Jul 2010 12:36:21 +0000 (12:36 +0000)]
* config/arm/arm.c (get_arm_condition_code): Remove CC_NOTBmode case.
* arm-modes.def (CC_NOTB): Don't define.
* config/arm/arm.md (arm_adddi3): Generate canonical RTL.
(adddi_sesidi_di, adddi_zesidi_di): Likewise.
(LTUGEU): New code_iterator.
(cnb, optab): New corresponding code_attrs.
(addsi3_carryin_<optab>): Renamed from addsi3_carryin.  Change pattern
to canonical form.  Operands 1 and 2 are commutative.  Parametrize
using LTUGEU.
(addsi3_carryin_shift_<optab>): Likewise.
(addsi3_carryin_alt2_<optab>): Renamed from addsi3_carryin_alt2.
Operands 1 and 2 are commutative.  Parametrize using LTUGEU.
(addsi3_carryin_alt1, addsi3_carryin_alt3): Remove.
(subsi3_compare): Renamed from subsi3_compare0_c.  Change CC_NOTB to
CC.
(arm_subsi3_insn): Allow constants for operand 0.
(compare_scc peephole for eq case): New.
(compare_scc splitters): Change CC_NOTB to CC.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161831 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2010-07-05 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 5 Jul 2010 12:25:20 +0000 (12:25 +0000)]
2010-07-05  Richard Guenther  <rguenther@suse.de>

* tree-ssa-loop-im.c (for_each_index): Do not handle
ALIGN_INDIRECT_REF.
(gen_lsm_tmp_name): Likewise.
* tree-dump.c (dequeue_and_dump): Likewise.
* tree-pretty-print.c (dump_generic_node): Likewise.
(op_code_prio): Likewise.
(op_symbol_code): Likewise.
* tree.c (staticp): Likewise.
(build1_stat): Likewise.
* tree.h (INDIRECT_REF_P): Likewise.
* fold-const.c (maybe_lvalue_p): Likewise.
(operand_equal_p): Likewise.
* tree-ssa-sccvn.c (copy_reference_ops_from_ref): Likewise.
(ao_ref_init_from_vn_reference): Likewise.
* tree-ssa-loop-ivopts.c (idx_find_step): Likewise.
(find_interesting_uses_address): Likewise.
* dwarf2out.c (loc_list_from_tree): Likewise.
* gimplify.c (gimplify_expr): Likewise.
* tree-eh.c (tree_could_trap_p): Likewise.
* emit-rtl.c (set_mem_attributes_minus_bitpos): Likewise.
* cfgexpand.c (expand_debug_expr): Likewise.
* tree-ssa-pre.c (create_component_ref_by_pieces_1): Likewise.
* tree-ssa-loop-prefetch.c (idx_analyze_ref): Likewise.
* tree-cfg.c (verify_types_in_gimple_min_lval): Likewise.
* config/rs6000/rs6000 (rs6000_check_sdmode): Likewise.
* tree-ssa-operands.c (get_expr_operands): Likewise.
* expr.c (safe_from_p): Likewise.
(expand_expr_real_1): Likewise.  TER BIT_AND_EXPRs into MEM_REFs.
* tree-vect-data-refs.c (vect_setup_realignment): Build
BIT_AND_EXPR and MEM_REF instead of ALIGN_INDIRECT_REF.
* tree-vect-stmts.c (vectorizable_load): Likewise.
* tree.def (ALIGN_INDIRECT_REF): Remove.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161830 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2010-07-05 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 5 Jul 2010 12:20:00 +0000 (12:20 +0000)]
2010-07-05  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/44784
* tree-ssa-pre.c (bitmap_find_leader): Fix dominance check
for inserted stmts.
(find_or_generate_expression): Fix SCCVN insertion check.

* gcc.c-torture/compile/pr44784.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161829 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * config/rs6000/e500crtsavg64gprctr.asm: Correct done label name.
nathan [Mon, 5 Jul 2010 11:01:43 +0000 (11:01 +0000)]
* config/rs6000/e500crtsavg64gprctr.asm: Correct done label name.
* config/rs6000/e500crtsav64gprctr.asm: Likewise.
* config/rs6000/e500crtres64gprctr.asm: Likewise. Add FUNC_END
directives.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161828 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * tree-vect-loop.c (vect_get_single_scalar_iteraion_cost): Skip
irar [Mon, 5 Jul 2010 10:41:25 +0000 (10:41 +0000)]
* tree-vect-loop.c (vect_get_single_scalar_iteraion_cost): Skip
statements that are not vectorized.
* tree-vect-stmts.c (vect_get_load_cost): Update the value stored
in INSIDE_COST.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161827 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2010-07-05 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Mon, 5 Jul 2010 09:55:43 +0000 (09:55 +0000)]
2010-07-05  Paolo Carlini  <paolo.carlini@oracle.com>

* pt.c (tsubst): Early declare code = TREE_CODE (t) and use it
throughout.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161825 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2010-07-05 Mikael Pettersson <mikpe@it.uu.se>
jiez [Mon, 5 Jul 2010 09:11:39 +0000 (09:11 +0000)]
2010-07-05  Mikael Pettersson  <mikpe@it.uu.se>

PR bootstrap/44820
* config/arm/arm.c (arm_attr_length_move_neon): Delete regno.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161822 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2010-07-05 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 5 Jul 2010 09:04:44 +0000 (09:04 +0000)]
2010-07-05  Richard Guenther  <rguenther@suse.de>

* tree-cfg.c (verify_gimple_return): Handle DECL_BY_REFERENCE
RESULT_DECLs properly.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161821 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * gcc.dg/vect/costmodel/ppc/costmodel-vect-31d.c: Remove.
irar [Mon, 5 Jul 2010 06:48:32 +0000 (06:48 +0000)]
* gcc.dg/vect/costmodel/ppc/costmodel-vect-31d.c: Remove.
* gcc.dg/vect/costmodel/ppc/costmodel-vect-76a.c: Increase loop bound.
* gcc.dg/vect/costmodel/ppc/costmodel-vect-76b.c: Likewise.
* gcc.dg/vect/costmodel/ppc/costmodel-vect-68d.c: Remove.
* gcc.dg/vect/pr35821-altivec.c, gcc.dg/vect/pr35821-spu.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161819 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agogcc/cp/
pzhao [Mon, 5 Jul 2010 05:36:02 +0000 (05:36 +0000)]
gcc/cp/
2010-07-05  Shujing Zhao  <pearly.zhao@oracle.com>

        PR c++/22138
        * parser.c (cp_parser_primary_expression): Error if local template is
        declared.

gcc/testsuite/
2010-07-05  Shujing Zhao  <pearly.zhao@oracle.com>

        PR c++/22138
        * g++.dg/parse/template25.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161818 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoDaily bump.
gccadmin [Mon, 5 Jul 2010 00:17:17 +0000 (00:17 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161817 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoChange 8bit divmod to HImode.
hjl [Sun, 4 Jul 2010 23:18:06 +0000 (23:18 +0000)]
Change 8bit divmod to HImode.

gcc/

2010-07-04  H.J. Lu  <hongjiu.lu@intel.com>

PR rtl-optimization/44695
* config/i386/i386.md (extract_code): Removed.
(<u>divmodqi4): Likewise.
(divmodqi4): New.
(udivmodqi4): Likewise.
(divmodhiqi3): Change div/mod to HImode and extend operand 2 to
HImode.
(udivmodhiqi3): Likewise.

gcc/testsuite/

2010-07-04  H.J. Lu  <hongjiu.lu@intel.com>

PR rtl-optimization/44695
* gcc.dg/torture/pr44695.c: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161813 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * lto-cgraph.c (input_edge): Do not care about resolution decisions.
hubicka [Sun, 4 Jul 2010 22:22:48 +0000 (22:22 +0000)]
* lto-cgraph.c (input_edge): Do not care about resolution decisions.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161812 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * cgraphunit.c (init_cgraph): Only initialize dump file if it is not already
hubicka [Sun, 4 Jul 2010 22:21:39 +0000 (22:21 +0000)]
    * cgraphunit.c (init_cgraph): Only initialize dump file if it is not already
        initialized.
        * lto.c (read_cgraph_and_symbols): Dump cgraph before merging.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161811 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agogcc/
rsandifo [Sun, 4 Jul 2010 22:14:56 +0000 (22:14 +0000)]
gcc/
* optabs.h (reload_in_optab, reload_out_optab, code_to_optab)
(vcond_gen_code, vcondu_gen_code, movmem_optab, setmem_optab)
(cmpstr_optab, cmpstrn_optab, cmpmem_optab, sync_add_optab)
(sync_sub_optab, sync_ior_optab, sync_and_optab, sync_xor_optab)
(sync_nand_optab, sync_old_add_optab, sync_old_sub_optab)
(sync_old_ior_optab, sync_old_and_optab, sync_old_xor_optab)
(sync_old_nand_optab, sync_new_add_optab, sync_new_sub_optab)
(sync_new_ior_optab, sync_new_and_optab, sync_new_xor_optab)
(sync_new_nand_optab): Redefine as macros.
(sync_compare_and_swap, sync_lock_test_and_set, sync_lock_release):
Delete.
(direct_optab_index): New enum.
(direct_optab_d): New structure.
(direct_optab): New typedef.
(direct_optab_table): Declare.
(direct_optab_handler, set_direct_optab_handler): New functions.
(sync_compare_and_swap_optab, sync_lock_test_and_set_optab)
(sync_lock_release_optab): New macros.
* optabs.c (direct_optab_table): New variable.
(movcc_gen_code, vcond_gen_code, vcondu_gen_code): Delete.
(prepare_cmp_insn): Use direct_optab_handler for cmpmem_optab,
cmpstr_optab and cmpstrn_optab.
(emit_conditional_move): Likewise for movcc_optab.
(can_conditionally_move_p): Likewise for movcc_gen_code.
(init_insn_codes): Clear direct_optab_table.
(init_optabs): Don't initialize the new "direct optabs" here.
(get_vcond_icode): Use direct_optab_handler for vcondu_gen_code and
vcond_gen_code.
(expand_val_compare_and_swap): Likewise sync_compare_and_swap_optab.
(expand_bool_compare_and_swap): Likewise sync_compare_and_swap_optab.
(expand_compare_and_swap_loop): Likewise sync_compare_and_swap_optab.
(expand_sync_operation): Likewise other sync_*_optabs.
(expand_sync_fetch_operation): Likewise.  Rename sync_compare_and_swap
to sync_compare_and_swap_optab.
(expand_sync_lock_test_and_set): Use direct_optab_handler for
sync_lock_test_and_set and sync_compare_and_swap, adding "_optab"
to the names of both.
* builtins.c (expand_builtin_strcmp): Use direct_optab_handler for
cmpstr_optab and cmpstrn_optab.
(expand_builtin_lock_release): Likewise sync_lock_release.
* expr.c (movmem_optab, setmem_optab, cmpstr_optab, cmpstrn_optab)
(cmpmem_optab, sync_add_optab, sync_sub_optab, sync_ior_optab)
(sync_and_optab, sync_xor_optab, sync_nand_optab, sync_old_add_optab)
(sync_old_sub_optab, sync_old_ior_optab, sync_old_and_optab)
(sync_old_xor_optab, sync_old_nand_optab, sync_new_add_optab)
(sync_new_sub_optab, sync_new_ior_optab, sync_new_and_optab)
(sync_new_xor_optab, sync_new_nand_optab, sync_compare_and_swap)
(sync_lock_test_and_set, sync_lock_release): Delete.
(emit_block_move_via_movmem): Use direct_optab_handler for movmem_optab.
(emit_block_move_via_setmem): Use direct_optab_handler for setmem_optab.
* genopinit.c (optabs): Use set_direct_optab_handler for the new
macro optabs.
* omp-low.c (expand_omp_atomic_fetch_op): Update the type of
the "optab" local variable.  Use direct_optab_handler for optab and
sync_compare_and_swap_optab.
* reload1.c (reload_in_optab, reload_out_optab): Delete.
* targhooks.c (default_secondary_reload): Use direct_optab_handler for
reload_in_optab and reload_out_optab.
* config/alpha/alpha.c (alpha_secondary_reload): Likewise.
* config/frv/frv.c (frv_alloc_temp_reg): Likewise.
* config/pa/pa.c (pa_secondary_reload): Likewise.
* java/builtins.c (compareAndSwapInt_builtin): Use direct_optab_handler
for sync_compare_and_swap, renaming it to sync_compare_and_swap_optab.
(compareAndSwapLong_builtin, compareAndSwapObject_builtin): Likewise.
(VMSupportsCS8_builtin): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161810 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agogcc/
rsandifo [Sun, 4 Jul 2010 22:14:02 +0000 (22:14 +0000)]
gcc/
* optabs.h (optab_handlers): Change type of insn_code to int.
(optab_handler, set_optab_handler, convert_optab_handler)
(set_convert_optab_handler): Treat the insn_code field as "insn_code -
CODE_FOR_nothing".
* optabs.c (optab_table, convert_optab_table): Always zero-initialize.
(init_insn_codes): Zero both the above arrays.
(init_optabs): Never call init_insn_codes first time around.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161809 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agogcc/
rsandifo [Sun, 4 Jul 2010 22:13:09 +0000 (22:13 +0000)]
gcc/
* optabs.h (optab_handler, convert_optab_handler): Turn into
inline functions that return an insn code.
(set_optab_handler, set_convert_optab_handler): New functions.
* builtins.c: Replace optab_handler(X)->insn_code with
optab_handler or set_optab_handler thoughout.  Likewise
convert_optab_handler(X)->insn_code with convert_optab_handler
and set_convert_optab_handler.
* expmed.c, expr.c, genopinit.c, ifcvt.c, optabs.c, reload.c,
reload1.c, stmt.c, targhooks.c, tree-ssa-loop-prefetch.c,
tree-ssa-math-opts.c, tree-vect-data-refs.c, tree-vect-generic.c,
tree-vect-loop.c, tree-vect-patterns.c, tree-vect-slp.c,
tree-vect-stmts.c, config/m32c/m32c.c, config/rs6000/rs6000.c,
config/spu/spu.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161808 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR target/44531
kkojima [Sun, 4 Jul 2010 22:07:29 +0000 (22:07 +0000)]
PR target/44531
* config.gcc (sh*-*-*): Use regular expressions instead of
the 'i' modifier for sed substitutions.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161807 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2010-07-04 Daniel Kraft <d@domob.eu>
domob [Sun, 4 Jul 2010 18:59:10 +0000 (18:59 +0000)]
2010-07-04  Daniel Kraft  <d@domob.eu>

* gfc-internals.texi (gfc_code): Document BLOCK and ASSOCIATE.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161806 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2010-07-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
manu [Sun, 4 Jul 2010 18:16:59 +0000 (18:16 +0000)]
2010-07-04  Manuel López-Ibáñez  <manu@gcc.gnu.org>

PR c++/16630
* g++.dg/ext/pretty3.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161805 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2010-07-04 Jeremie Salvucci <jeremie.salvucci@free.fr>
redfire [Sun, 4 Jul 2010 17:59:18 +0000 (17:59 +0000)]
2010-07-04  Jeremie Salvucci  <jeremie.salvucci@free.fr>

* gimple.c (gimple_body): Comments added.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161804 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2010-07-04 Richard Guenther <rguenther@suse.de>
rguenth [Sun, 4 Jul 2010 16:55:40 +0000 (16:55 +0000)]
2010-07-04  Richard Guenther  <rguenther@suse.de>

PR middle-end/44809
* gimplify.c (gimplify_expr): Properly build a MEM_REF instead
of an INDIRECT_REF.

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161803 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2010-07-04 Richard Guenther <rguenther@suse.de>
rguenth [Sun, 4 Jul 2010 16:08:21 +0000 (16:08 +0000)]
2010-07-04  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/44479
* tree-ssa-loop-ivopts.c (rewrite_use_nonlinear_expr): Avoid
extra SSA name copy statements which preserves points-to
information.
* tree-vect-data-refs.c (vect_create_addr_base_for_vector_ref):
Copy points-to information for all pointers.  Properly handle
MEM_REFs.
(vect_create_data_ref_ptr): Likewise.  Avoid extra SSA name
copy statements.
* Makefile.in (tree-ssa-loop-ivopts.o): Add tree-ssa-propagate.h
dependency.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161802 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2010-07-04 Paul Thomas <pault@gcc.gnu.org>
pault [Sun, 4 Jul 2010 14:40:34 +0000 (14:40 +0000)]
2010-07-04  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/44596
PR fortran/44745
* trans-types.c (gfc_get_derived_type): Derived type fields
with the vtype attribute must have TYPE_REF_CAN_ALIAS_ALL set.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161801 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2010-07-04 Richard Guenther <rguenther@suse.de>
rguenth [Sun, 4 Jul 2010 12:20:14 +0000 (12:20 +0000)]
2010-07-04  Richard Guenther  <rguenther@suse.de>

PR middle-end/44785
* tree-inline.c (initialize_inlined_parameters): Do not
re-use pointer-map slot over remap_type call.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161800 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2010-07-4 Richard Guenther <rguenther@suse.de>
rguenth [Sun, 4 Jul 2010 11:38:01 +0000 (11:38 +0000)]
2010-07-4  Richard Guenther  <rguenther@suse.de>

* tree-ssa-sccvn.c (vn_reference_lookup_3): Fix last commit.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161799 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2010-07-04 Richard Guenther <rguenther@suse.de>
rguenth [Sun, 4 Jul 2010 10:52:43 +0000 (10:52 +0000)]
2010-07-04  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/44656
* tree-ssa-sccvn.c (vn_reference_lookup_3): Try disambiguation
again after value-replacing in the defintions lhs.

* gcc.dg/tree-ssa/loadpre6.c: Remove XFAIL.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161798 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * doc/tm.texi.in (TARGET_VECTORIZE_BUILTIN_VECTORIZATION_COST):
irar [Sun, 4 Jul 2010 08:54:52 +0000 (08:54 +0000)]
* doc/tm.texi.in (TARGET_VECTORIZE_BUILTIN_VECTORIZATION_COST):
Document new arguments.
* doc/tm.texi: Regenerate.
* targhooks.c (default_builtin_vectorization_cost): Add new arguments.
Handle unaligned store.
* targhooks.h (default_builtin_vectorization_cost): Add new arguments.
* target.def (builtin_vectorization_cost): Add new arguments.
* target.h (enum vect_cost_for_stmt): Add unaligned_store.
* tree-vect-loop-manip.c (vect_gen_niters_for_prolog_loop): Take number
of iterations of prolog loop directly from LOOP_PEELING_FOR_ALIGNMENT.
(vect_vfa_segment_size): Fix indentation.
* tree-vectorizer.h (struct _vect_peel_info): New.
(struct _vect_peel_extended_info): New.
(struct _loop_vec_info): Add new field for peeling hash table and a
macro for its access.
(VECT_MAX_COST): Define.
(vect_get_load_cost): Declare.
(vect_get_store_cost, vect_get_known_peeling_cost,
vect_get_single_scalar_iteraion_cost): Likewise.
(vect_supportable_dr_alignment): Add new argument.
* tree-vect-loop.c (new_loop_vec_info): Initialize peeling hash table
field.
(destroy_loop_vec_info): Free peeling hash table.
(vect_analyze_loop_form): Update call to builtin_vectorization_cost.
(vect_analyze_loop): Move vect_enhance_data_refs_alignment before
vect_analyze_slp. Fix indentation.
(vect_get_single_scalar_iteraion_cost): New function.
(vect_get_known_peeling_cost): Likewise.
(vect_estimate_min_profitable_iters): Rename byte_misalign to npeel.
Call vect_get_single_scalar_iteraion_cost instead of cost_for_stmt per
statement. Move outside cost calculation inside unknown peeling case.
Call vect_get_known_peeling_cost for known amount of peeling.
* tree-vect-data-refs.c (vect_compute_data_ref_alignment): Add data
reference to the print message of forced alignment.
(vect_verify_datarefs_alignment): Update call to
vect_supportable_dr_alignment.
(vect_get_data_access_cost): New function.
(vect_peeling_hash, vect_peeling_hash_eq, vect_peeling_hash_insert,
vect_peeling_hash_get_most_frequent, vect_peeling_hash_get_lowest_cost,
vect_peeling_hash_choose_best_peeling): Likewise.
(vect_enhance_data_refs_alignment): Fix documentation. Use hash table
to store all the accesses in the loop and find best possible access to
align using peeling for known alignment case. For unknown alignment
check if stores are preferred or if peeling is worthy.
(vect_find_same_alignment_drs): Analyze pairs of loads too.
(vect_supportable_dr_alignment): Add new argument and check aligned
accesses according to it.
* tree-vect-stmts.c (vect_get_stmt_cost): New function.
(cost_for_stmt): Call vect_get_stmt_cost.
(vect_model_simple_cost): Likewise.
(vect_model_store_cost): Call vect_get_stmt_cost. Call
vect_get_store_cost to calculate the cost of the statement.
(vect_get_store_cost): New function.
(vect_model_load_cost): Call vect_get_stmt_cost. Call
vect_get_load_cost to calculate the cost of the statement.
(vect_get_load_cost): New function.
(vectorizable_store): Update call to vect_supportable_dr_alignment.
(vectorizable_load): Likewise.
* config/spu/spu.c (spu_builtin_vectorization_cost): Add new
arguments.
* config/i386/i386.c (ix86_builtin_vectorization_cost): Add new
arguments. Handle unaligned store.
* config/rs6000/rs6000.c (rs6000_builtin_vectorization_cost): New.
(rs6000_builtin_support_vector_misalignment): Return true for word and
double word alignments for VSX.
* tree-vect-slp.c (vect_build_slp_tree): Update calls to
vect_supportable_dr_alignment and builtin_vectorization_cost.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161797 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoDaily bump.
gccadmin [Sun, 4 Jul 2010 00:17:09 +0000 (00:17 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161795 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoAdd a testcase for PR 44806.
hjl [Sat, 3 Jul 2010 22:44:32 +0000 (22:44 +0000)]
Add a testcase for PR 44806.

2010-07-03  H.J. Lu  <hongjiu.lu@intel.com>

PR c/44806
* gcc.dg/torture/pr44806.c: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161787 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR target/44597
danglin [Sat, 3 Jul 2010 22:43:47 +0000 (22:43 +0000)]
PR target/44597
* config/pa/predicates.md (prefetch_cc_operand): Remove.
(prefetch_nocc_operand): Likewise.
* config/pa/pa.md (prefetch): Revise expander to use prefetch_20.
(prefetch_20): New insn.
(prefetch_cc): Remove.
(prefetch_nocc): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161786 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2010-07-03 Manuel López-Ibáñez <manu@gcc.gnu.org>
manu [Sat, 3 Jul 2010 21:17:46 +0000 (21:17 +0000)]
2010-07-03  Manuel López-Ibáñez  <manu@gcc.gnu.org>

* c-family/c-common.c (IN_GCC_FRONTEND): Do not undef.
Do not include expr.h
(vector_mode_valid_p): Move here.
* expr.c (vector_mode_valid_p): Move to c-common.c.
* expr.h (vector_mode_valid_p): Do not declare here.
* system.h: Poison GCC_EXPR_H in front-ends.
* Makefile.in: Update dependencies.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161785 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR target/44705
danglin [Sat, 3 Jul 2010 20:28:44 +0000 (20:28 +0000)]
PR target/44705
* config/pa/pa.h (GO_IF_LEGITIMATE_ADDRESS): Reject LABEL_REF.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161781 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoMove c-family/* ChangeLog entries to their proper place.
steven [Sat, 3 Jul 2010 20:09:45 +0000 (20:09 +0000)]
Move c-family/* ChangeLog entries to their proper place.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161780 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * timevar.def (TV_OUT_OF_SSA, TV_VAR_EXPAND, TV_POST_EXPAND,
hubicka [Sat, 3 Jul 2010 19:34:30 +0000 (19:34 +0000)]
* timevar.def (TV_OUT_OF_SSA, TV_VAR_EXPAND, TV_POST_EXPAND,
TV_VAR_TRACKING_DATAFLOW, TV_VAR_TRACKING_EMIT): New timevars.
* cfgexpand.c (gimple_expand_cfg): Use new timevars.
* var-tracking.c (vt_find_locations, variable_tracking_main_1):
Likewise.

* lto-stramer-out.c (pass_ipa_lto_gimple_out, pass_ipa_lto_finish_out):
Update timevars.V
* timevar.def (TV_IPA_LTO_GIMPLE_IO, TV_IPA_LTO_DECL_IO): Remove.
(TV_IPA_LTO_GIMPLE_IN, TV_IPA_LTO_GIMPLE_OUT, TV_IPA_LTO_DECL_IN,
TV_IPA_LTO_DECL_OUT): New.
* lto.c (read_cgraph_and_symbols, materialize_cgraph): Update timevars.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161779 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * ipa-inline.c (update_edge_key): Break out from ...
hubicka [Sat, 3 Jul 2010 19:33:14 +0000 (19:33 +0000)]
* ipa-inline.c (update_edge_key): Break out from ...
update_callers_keys): ... here;
(update_callee_keys): Update only the edges from caller to callee.
(update_all_calle_keys): Do what update_calle_keys did.
(decide_inlining_of_small_functions): Avoid recomputing of all
callees when badness increase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161778 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR objc/24867
froydnj [Sat, 3 Jul 2010 19:00:52 +0000 (19:00 +0000)]
PR objc/24867
* objc-act.c (build_sized_array_type): New function.
(add_objc_string): Use it.
(generate_protocol_list): Likewise.
(generate_objc_image_info): Likewise.
(add_field_decl): New function.
(objc_build_struct): Use a VEC rather than building a TREE_LIST.
(generate_struct_by_value_array): Use add_field_decl.
(build_objc_symtab_template): Likewise.
(build_module_descriptor): Likewise.
(build_objc_exception_stuff): Likewise.
(build_protocol_template): Likewise.
(build_method_prototype_list_template): Likewise.
(build_method_prototype_template): Likewise.
(build_category_template): Likewise.
(build_selector_template): Likewise.
(build_class_template): Likewise.
(build_super_template): Likewise.
(build_ivar_template): Likewise.
(build_ivar_list_template): Likewise.
(build_method_list_template): Likewise.
(build_method_template): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161777 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * config/arm/arm.c (arm_attr_length_move_neon): New.
jiez [Sat, 3 Jul 2010 16:49:05 +0000 (16:49 +0000)]
* config/arm/arm.c (arm_attr_length_move_neon): New.
* config/arm/arm-protos.h (arm_attr_length_move_neon): Declare.
* config/arm/neon.md (define_mode_attr V_slen): Remove.
(neon_mov<mode> for VSTRUCT): Use arm_attr_length_move_neon
to compute length attribute.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161776 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * config/arm/vfp.md (*push_multi_vfp): Use vfp_register_operand
jiez [Sat, 3 Jul 2010 16:35:02 +0000 (16:35 +0000)]
* config/arm/vfp.md (*push_multi_vfp): Use vfp_register_operand
as predicate for operand 1 and remove its constraint.
* config/arm/predicates.md (vfp_register_operand): New.
* config/arm/arm.md (*push_multi): Remove the constraint of
operand 1.
(*push_fp_multi): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161775 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * gimplify.c (mostly_copy_tree_r): Deal with BIND_EXPR.
ebotcazou [Sat, 3 Jul 2010 13:14:48 +0000 (13:14 +0000)]
* gimplify.c (mostly_copy_tree_r): Deal with BIND_EXPR.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161774 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2010-07-03 Jonathan Wakely <jwakely.gcc@gmail.com>
redi [Sat, 3 Jul 2010 12:35:03 +0000 (12:35 +0000)]
2010-07-03  Jonathan Wakely  <jwakely.gcc@gmail.com>

* include/bits/regex_compiler.h: Fix filename in doxygen comment.
* include/bits/regex_constants.h: Likewise.
* include/bits/regex_error.h: Likewise.
* include/bits/regex_grep_matcher.h: Likewise.
* include/bits/regex_grep_matcher.tcc: Likewise.
* include/bits/regex_nfa.tcc: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161773 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * config/i386/i386.c (override_options): Revert accidental commit.
hubicka [Sat, 3 Jul 2010 11:55:30 +0000 (11:55 +0000)]
* config/i386/i386.c (override_options): Revert accidental commit.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161772 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoAdd missing e-mail address.
ktietz [Sat, 3 Jul 2010 10:30:52 +0000 (10:30 +0000)]
Add missing e-mail address.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161771 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Enumeration_Type>:
ebotcazou [Sat, 3 Jul 2010 09:54:13 +0000 (09:54 +0000)]
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Enumeration_Type>:
Branch to common code handling the alignment of discrete types.
<E_Signed_Integer_Type>: Likewise.
<E_Modular_Integer_Type>: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161770 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2010-07-03 Iain Sandoe <iains@gcc.gnu.org>
iains [Sat, 3 Jul 2010 08:15:59 +0000 (08:15 +0000)]
2010-07-03  Iain Sandoe  <iains@gcc.gnu.org>
    Mikael Pettersson  <mikpe@it.uu.se>

        PR testsuite/44518
* obj-c++.dg/encode-2.mm: Produce object and save temps.
Make signed-ness of chars explicit.  Scan the object for
strings that are split by some target assemblers.
* obj-c++.dg/encode-3.mm: Make the signed-ness of chars
explicit.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161769 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoFix long lines
ebotcazou [Sat, 3 Jul 2010 06:23:09 +0000 (06:23 +0000)]
Fix long lines

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161768 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * gfortran.dg/char_bounds_check_fail_1.f90: Correct dg-output string.
hp [Sat, 3 Jul 2010 06:07:59 +0000 (06:07 +0000)]
* gfortran.dg/char_bounds_check_fail_1.f90: Correct dg-output string.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161767 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR/44128
lcwu [Sat, 3 Jul 2010 01:10:06 +0000 (01:10 +0000)]
   PR/44128
       * gcc/doc/invoke.texi: Update documentation of -Wshadow.
       * gcc/cp/name-lookup.c (pushdecl_maybe_friend): Warn when a local
       decl (variable or type) shadows another type.
       * gcc/testsuite/g++.dg/warn/Wshadow-7.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161765 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2010-07-02 Daniel Jacobowitz <dan@codesourcery.com>
sandra [Sat, 3 Jul 2010 01:00:37 +0000 (01:00 +0000)]
2010-07-02  Daniel Jacobowitz  <dan@codesourcery.com>
    Julian Brown  <julian@codesourcery.com>
    Sandra Loosemore <sandra@codesourcery.com>

gcc/
* config/arm/arm.c (arm_canonicalize_comparison): Canonicalize DImode
comparisons.  Adjust to take both operands.
(arm_select_cc_mode): Handle DImode comparisons.
(arm_gen_compare_reg): Generate a scratch register for DImode
comparisons which require one.  Use xor for Thumb equality checks.
(arm_const_double_by_immediates): New.
(arm_print_operand): Allow 'Q' and 'R' for constants.
(get_arm_condition_code): Handle new CC_CZmode and CC_NCVmode.
* config/arm/arm.h (CANONICALIZE_COMPARISON): Always use
arm_canonicalize_comparison.
* config/arm/arm-modes.def: Add CC_CZmode and CC_NCVmode.
* config/arm/arm-protos.h (arm_canonicalize_comparison): Update
prototype.
(arm_const_double_by_immediates): Declare.
* config/arm/constraints.md (Di): New constraint.
* config/arm/predicates.md (arm_immediate_di_operand)
(arm_di_operand, cmpdi_operand): New.
* config/arm/arm.md (cbranchdi4): Handle non-Cirrus also.
(*arm_cmpdi_insn, *arm_cmpdi_unsigned)
(*arm_cmpdi_zero, *thumb_cmpdi_zero): New insns.
(cstoredi4): Handle non-Cirrus also.

gcc/testsuite/
* gcc.c-torture/execute/20100416-1.c: New test case.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161764 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2010-07-02 Julian Brown <julian@codesourcery.com>
sandra [Sat, 3 Jul 2010 00:46:51 +0000 (00:46 +0000)]
2010-07-02  Julian Brown  <julian@codesourcery.com>
    Sandra Loosemore <sandra@codesourcery.com>

PR target/43703

gcc/
* config/arm/vec-common.md (add<mode>3, sub<mode>3, smin<mode>3)
(smax<mode>3): Disable for NEON float modes when
flag_unsafe_math_optimizations is false.
* config/arm/neon.md (*add<mode>3_neon, *sub<mode>3_neon)
(*mul<mode>3_neon)
(mul<mode>3add<mode>_neon, mul<mode>3neg<mode>add<mode>_neon)
(reduc_splus_<mode>, reduc_smin_<mode>, reduc_smax_<mode>): Disable
for NEON float modes when flag_unsafe_math_optimizations is false.
(quad_halves_<code>v4sf): Only enable if flag_unsafe_math_optimizations
is true.
* doc/invoke.texi (ARM Options): Add note about floating point
vectorization requiring -funsafe-math-optimizations.

gcc/testsuite/
* gcc.dg/vect/vect.exp: Add -ffast-math for NEON.
* gcc.dg/vect/vect-reduc-6.c: Add XFAIL for NEON.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161763 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2010-07-02 Sandra Loosemore <sandra@codesourcery.com>
sandra [Sat, 3 Jul 2010 00:31:43 +0000 (00:31 +0000)]
2010-07-02  Sandra Loosemore  <sandra@codesourcery.com>
    Julian Brown  <julian@codesourcery.com>

gcc/
* config/arm/neon.md (UNSPEC_VABA): Delete.
(UNSPEC_VABAL): Delete.
(UNSPEC_VABS): Delete.
(UNSPEC_VMUL_N): Delete.
(adddi3_neon): New.
(subdi3_neon): New.
(mul<mode>3add<mode>_neon): Make the pattern named.
(mul<mode>3neg<mode>add<mode>_neon): Likewise.
(neon_vadd<mode>): Replace with define_expand, and move the remaining
unspec parts...
(neon_vadd<mode>_unspec): ...to this.
(neon_vmla<mode>, neon_vmla<mode>_unspec): Likewise.
(neon_vlms<mode>, neon_vmls<mode>_unspec): Likewise.
(neon_vsub<mode>, neon_vsub<mode>_unspec): Likewise.
(neon_vaba<mode>): Rewrite in terms of vabd.
(neon_vabal<mode>): Rewrite in terms of vabdl.
(neon_vabs<mode>): Rewrite without unspec.
* config/arm/arm.md (*arm_adddi3): Disable for TARGET_NEON.
(*arm_subdi3): Likewise.
* config/arm/neon.ml (Vadd, Vsub): Split out 64-bit variants and add
No_op attribute to disable assembly output checks.
* config/arm/arm_neon.h: Regenerated.
* doc/arm-neon-intrinsics.texi: Regenerated.

gcc/testsuite/
* gcc.target/arm/neon/vadds64.c: Regenerated.
* gcc.target/arm/neon/vaddu64.c: Regenerated.
* gcc.target/arm/neon/vsubs64.c: Regenerated.
* gcc.target/arm/neon/vsubu64.c: Regenerated.
* gcc.target/arm/neon-vmla-1.c: Add -ffast-math to options.
* gcc.target/arm/neon-vmls-1.c: Likewise.
* gcc.target/arm/neon-vsubs64.c: New execution test.
* gcc.target/arm/neon-vsubu64.c: New execution test.
* gcc.target/arm/neon-vadds64.c: New execution test.
* gcc.target/arm/neon-vaddu64.c: New execution test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161762 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoDaily bump.
gccadmin [Sat, 3 Jul 2010 00:18:48 +0000 (00:18 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161760 138bc75d-0d04-0410-961f-82ee72b054a4