aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2010-07-08toplev.h: Do not include diagnostic-core.h.Manuel López-Ibáñez196-181/+564
2010-07-08 Manuel López-Ibáñez <manu@gcc.gnu.org> * toplev.h: Do not include diagnostic-core.h. Include diagnostic-core.h in every file that includes toplev.h. * c-tree.h: Do not include toplev.h. * pretty-print.h: Update comment. * Makefile.in: Update dependencies. * alias.c: Include diagnostic-core.h in every file that includes toplev.h. * attribs.c: Likewise. * auto-inc-dec.c: Likewise. * bb-reorder.c: Likewise. * bt-load.c: Likewise. * caller-save.c: Likewise. * calls.c: Likewise. * cfg.c: Likewise. * cfganal.c: Likewise. * cfgbuild.c: Likewise. * cfgcleanup.c: Likewise. * cfghooks.c: Likewise. * cfgloop.c: Likewise. * combine.c: Likewise. * config/alpha/alpha.c: Likewise. * config/arc/arc.c: Likewise. * config/arm/arm.c: Likewise. * config/arm/pe.c: Likewise. * config/avr/avr.c: Likewise. * config/bfin/bfin.c: Likewise. * config/cris/cris.c: Likewise. * config/crx/crx.c: Likewise. * config/darwin-c.c: Likewise. * config/darwin.c: Likewise. * config/fr30/fr30.c: Likewise. * config/frv/frv.c: Likewise. * config/h8300/h8300.c: Likewise. * config/host-darwin.c: Likewise. * config/i386/i386.c: Likewise. * config/i386/netware.c: Likewise. * config/i386/nwld.c: Likewise. * config/i386/winnt-cxx.c: Likewise. * config/i386/winnt-stubs.c: Likewise. * config/i386/winnt.c: Likewise. * config/ia64/ia64-c.c: Likewise. * config/ia64/ia64.c: Likewise. * config/iq2000/iq2000.c: Likewise. * config/lm32/lm32.c: Likewise. * config/m32c/m32c-pragma.c: Likewise. * config/m32c/m32c.c: Likewise. * config/m32r/m32r.c: Likewise. * config/m68hc11/m68hc11.c: Likewise. * config/m68k/m68k.c: Likewise. * config/mcore/mcore.c: Likewise. * config/mep/mep-pragma.c: Likewise. * config/mep/mep.c: Likewise. * config/mmix/mmix.c: Likewise. * config/mn10300/mn10300.c: Likewise. * config/moxie/moxie.c: Likewise. * config/pa/pa.c: Likewise. * config/pdp11/pdp11.c: Likewise. * config/picochip/picochip.c: Likewise. * config/rs6000/rs6000-c.c: Likewise. * config/rs6000/rs6000.c: Likewise. * config/rx/rx.c: Likewise. * config/s390/s390.c: Likewise. * config/score/score.c: Likewise. * config/score/score3.c: Likewise. * config/score/score7.c: Likewise. * config/sh/sh.c: Likewise. * config/sh/symbian-base.c: Likewise. * config/sh/symbian-c.c: Likewise. * config/sh/symbian-cxx.c: Likewise. * config/sol2-c.c: Likewise. * config/sol2.c: Likewise. * config/sparc/sparc.c: Likewise. * config/spu/spu.c: Likewise. * config/stormy16/stormy16.c: Likewise. * config/v850/v850-c.c: Likewise. * config/v850/v850.c: Likewise. * config/vax/vax.c: Likewise. * config/vxworks.c: Likewise. * config/xtensa/xtensa.c: Likewise. * convert.c: Likewise. * cse.c: Likewise. * cselib.c: Likewise. * dbgcnt.c: Likewise. * dbxout.c: Likewise. * ddg.c: Likewise. * dominance.c: Likewise. * emit-rtl.c: Likewise. * explow.c: Likewise. * expmed.c: Likewise. * fixed-value.c: Likewise. * fold-const.c: Likewise. * fwprop.c: Likewise. * gcse.c: Likewise. * ggc-common.c: Likewise. * ggc-page.c: Likewise. * ggc-zone.c: Likewise. * gimple-low.c: Likewise. * gimplify.c: Likewise. * graph.c: Likewise. * haifa-sched.c: Likewise. * ifcvt.c: Likewise. * implicit-zee.c: Likewise. * integrate.c: Likewise. * ira-build.c: Likewise. * ira-color.c: Likewise. * ira-conflicts.c: Likewise. * ira-costs.c: Likewise. * ira-lives.c: Likewise. * ira.c: Likewise. * lists.c: Likewise. * loop-doloop.c: Likewise. * loop-iv.c: Likewise. * lto-opts.c: Likewise. * lto-symtab.c: Likewise. * main.c: Likewise. * modulo-sched.c: Likewise. * optabs.c: Likewise. * params.c: Likewise. * plugin.c: Likewise. * postreload-gcse.c: Likewise. * postreload.c: Likewise. * predict.c: Likewise. * profile.c: Likewise. * real.c: Likewise. * regcprop.c: Likewise. * reginfo.c: Likewise. * regmove.c: Likewise. * reorg.c: Likewise. * resource.c: Likewise. * rtl.c: Likewise. * rtlanal.c: Likewise. * sched-deps.c: Likewise. * sched-ebb.c: Likewise. * sched-rgn.c: Likewise. * sdbout.c: Likewise. * sel-sched-dump.c: Likewise. * sel-sched-ir.c: Likewise. * simplify-rtx.c: Likewise. * stmt.c: Likewise. * stor-layout.c: Likewise. * store-motion.c: Likewise. * targhooks.c: Likewise. * tree-cfg.c: Likewise. * tree-cfgcleanup.c: Likewise. * tree-dump.c: Likewise. * tree-eh.c: Likewise. * tree-inline.c: Likewise. * tree-nomudflap.c: Likewise. * tree-object-size.c: Likewise. * tree-optimize.c: Likewise. * tree-outof-ssa.c: Likewise. * tree-phinodes.c: Likewise. * tree-profile.c: Likewise. * tree-ssa-ccp.c: Likewise. * tree-ssa-coalesce.c: Likewise. * tree-ssa-live.c: Likewise. * tree-ssa-loop-niter.c: Likewise. * tree-ssa-loop-prefetch.c: Likewise. * tree-ssa-loop.c: Likewise. * tree-ssa-structalias.c: Likewise. * tree-ssa-uninit.c: Likewise. * tree-ssa.c: Likewise. * tree-vect-data-refs.c: Likewise. * tree-vect-loop-manip.c: Likewise. * tree-vect-loop.c: Likewise. * tree-vect-patterns.c: Likewise. * tree-vect-stmts.c: Likewise. * tree-vrp.c: Likewise. * varasm.c: Likewise. * vec.c: Likewise. * web.c: Likewise. * xcoffout.c: Likewise. c-family/ * c-common.h: Include diagnostic-core.h. Error if already included. * c-semantics.c: Do not define GCC_DIAG_STYLE here. cp/ * cp-tree.h: Do not include toplev.h. java/ * boehm.c: Include diagnostic-core.h in every file that includes toplev.h. * class.c: Likewise. * constants.c: Likewise. * decl.c: Likewise. * except.c: Likewise. * expr.c: Likewise. * jcf-parse.c: Likewise. * mangle.c: Likewise. * mangle_name.c: Likewise. * resource.c: Likewise. * typeck.c: Likewise. * verify-glue.c: Likewise. ada/ * gcc-interface/utils.c: Include diagnostic-core.h in every file that includes toplev.h. lto/ * lto-coff.c: Include diagnostic-core.h in every file that includes toplev.h. * lto-elf.c: Likewise. * lto-lang.c: Likewise. * lto-macho.c: Likewise. From-SVN: r161943
2010-07-07re PR c/44828 (possible integer wrong code bug)Peter Bergner2-0/+7
PR middle-end/44828 * gcc.c-torture/execute/pr44828.x: New file. From-SVN: r161942
2010-07-08Daily bump.GCC Administrator1-1/+1
From-SVN: r161941
2010-07-07gengtype.c (write_field_root): New function.Richard Sandiford2-15/+42
gcc/ * gengtype.c (write_field_root): New function. (write_root): Use it. From-SVN: r161937
2010-07-07lto-elf.c (ELFOSABI_NONE, [...]): Define if not defined.Jakub Jelinek2-3/+34
* lto-elf.c (ELFOSABI_NONE, ELFOSABI_LINUX): Define if not defined. (validate_file): Allow merging of ELFOSABI_NONE with ELFOSABI_LINUX objects. From-SVN: r161935
2010-07-07altivec-2.C: Add -Wno-unused-but-set-variable to dg-options.Peter Bergner3-2/+8
* g++.dg/ext/altivec-2.C: Add -Wno-unused-but-set-variable to dg-options. * g++.dg/ext/altivec-17.C: Adjust error message. From-SVN: r161931
2010-07-07thumb2.md (peephole2 to convert zero_extract/compare of lowest bits to ↵Wei Guozhi2-0/+7
lshift/compare): Add a missing line. 2010-07-07 Wei Guozhi <carrot@google.com> * config/arm/thumb2.md (peephole2 to convert zero_extract/compare of lowest bits to lshift/compare): Add a missing line. From-SVN: r161930
2010-07-07thumb2.md (peephole2 to convert zero_extract/compare of lowest bits to ↵Wei Guozhi2-0/+28
lshift/compare): New. 2010-07-07 Wei Guozhi <carrot@google.com> * config/arm/thumb2.md (peephole2 to convert zero_extract/compare of lowest bits to lshift/compare): New. From-SVN: r161929
2010-07-07tm.texi: Update.Tom Tromey8-6/+43
gcc * doc/tm.texi: Update. * doc/tm.texi.in (SDB and DWARF) <TARGET_WANT_DEBUG_PUB_SECTIONS>: Add @hook. * target.def (want_debug_pub_sections): New hook. * config/darwin.h (TARGET_WANT_DEBUG_PUB_SECTIONS): Define. * dwarf2out.c (add_pubname_string): Check targetm.want_debug_pub_sections. (add_pubname): Likewise. (add_pubtype): Likewise. gcc/testsuite * g++.dg/debug/dwarf2/pubnames-1.C: Make darwin-specific. From-SVN: r161924
2010-07-07genautomata.c (output_automata_list_min_issue_delay_code): Correctly ↵Jie Zhang2-3/+11
decompress min_issue_delay. * genautomata.c (output_automata_list_min_issue_delay_code): Correctly decompress min_issue_delay. From-SVN: r161923
2010-07-07re PR rtl-optimization/44404 (auto-inc-dec generates an invalid assembly ↵Bernd Schmidt2-8/+7
instruction) PR rtl-optimization/44404 * auto-inc-dec.c (find_inc): Avoid calling count_occurrences if possible, use reg_overlap_mentioned_p instead. From-SVN: r161920
2010-07-07When materializing a cloned function with arguments removed,Duncan Sands2-1/+7
to TYPE_POINTER_TO field of the new type (which has fewer arguments) was left pointing to the original type. From-SVN: r161918
2010-07-07Revert revision 161876.H.J. Lu6-71/+45
2010-07-07 H.J. Lu <hongjiu.lu@intel.com> PR target/44850 * config/i386/i386.c (ix86_function_ms_hook_prologue): Revert revision 161876. (ix86_expand_prologue): Likewise. (ix86_handle_fndecl_attribute): Likewise. (ix86_asm_declare_function_name): Likewise. * config/i386/i386.h (ASM_DECLARE_FUNCTION_NAME): Likewise. * config/i386/cygming.h (ASM_DECLARE_FUNCTION_NAME): Likewise. (SUBTARGET_ASM_DECLARE_FUNCTION_NAME): Likewise. * config/i386/i386-protos.h (ix86_asm_declare_function_name): Likewise. * doc/extend.texi: Likewise. From-SVN: r161911
2010-07-07Retry rdrand if the carry flag isn't valid.H.J. Lu6-1/+43
gcc/ 2010-07-07 H.J. Lu <hongjiu.lu@intel.com> PR target/44844 * config/i386/i386.md (rdrand<mode>): Changed to expand to retry if the carry flag isn't valid. (rdrand<mode>_1): New. gcc/testsuite/ 2010-07-07 H.J. Lu <hongjiu.lu@intel.com> PR target/44844 * gcc.target/i386/rdrand-1.c: Scan "jnc". * gcc.target/i386/rdrand-2.c: Likewise. * gcc.target/i386/rdrand-3.c: Likewise. From-SVN: r161910
2010-07-07re PR middle-end/44790 (Bootstrap fails after MEM-REF merge)Richard Guenther2-6/+10
2010-07-07 Richard Guenther <rguenther@suse.de> PR middle-end/44790 * expr.c (expand_expr_real_1): Go the POINTER_PLUS_EXPR path for expanding the constant offset for MEM_REFs. From-SVN: r161907
2010-07-07* lto-cgraph.c (output_cgraph): Add missing declaration.Jan Hubicka2-0/+5
From-SVN: r161906
2010-07-07tree-ssa-propagate.h (valid_gimple_call_p): Remove.Richard Guenther7-28/+57
2010-07-07 Richard Guenther <rguenther@suse.de> * tree-ssa-propagate.h (valid_gimple_call_p): Remove. * tree-ssa-propagate.c (valid_gimple_call_p): Make static. Fix. * gimple.h (is_gimple_operand): Remove. * gimple.c (is_gimple_operand): Likewise. (walk_gimple_op): Fix wi->val_only setting for calls. * tree-cfg.c (verify_gimple_call): Fix argument validation. * tree-profile.c (tree_gen_ic_func_profiler): Do not create invalid gimple calls. From-SVN: r161905
2010-07-07lto-cgraph.c (output_cgraph): Output toplevel asms only into first partition.Jan Hubicka2-7/+19
* lto-cgraph.c (output_cgraph): Output toplevel asms only into first partition. From-SVN: r161904
2010-07-07gimple.texi (GIMPLE_DEBUG): Document.Alexandre Oliva4-1/+172
* 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. From-SVN: r161899
2010-07-07re PR middle-end/44813 (ipa-split causes ice in ptr_deref_may_alias_decl_p, ↵Jan Hubicka11-22/+234
at tree-ssa-alias.c:173) 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. From-SVN: r161898
2010-07-07Daily bump.GCC Administrator1-1/+1
From-SVN: r161897
2010-07-06re PR rtl-optimization/44787 (internal compiler error: in ↵Bernd Schmidt6-2/+34
reload_cse_simplify_operands, at postreload.c:395) 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. From-SVN: r161893
2010-07-06* gcc.target/powerpc/altivec-volatile.c: Adjust expected warning.Peter Bergner2-1/+5
From-SVN: r161891
2010-07-06ppu-intrinsics.c: Add -Wno-unused-but-set-variable to dg-options.Peter Bergner2-1/+6
* gcc.target/powerpc/ppu-intrinsics.c: Add -Wno-unused-but-set-variable to dg-options. From-SVN: r161890
2010-07-06re PR fortran/44742 (ICE in gfc_conv_array_initializer)Tobias Burnus9-9/+52
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. From-SVN: r161888
2010-07-06trans-decl.c: Include diagnostic-core.h besides toplev.h.Tobias Burnus12-11/+28
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. From-SVN: r161885
2010-07-06PR fortran/PR44693Thomas Koenig5-10/+37
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. From-SVN: r161884
2010-07-06re PR c++/44703 ([C++0x] List initialization fail if parameter is typedef ↵Jason Merrill4-0/+24
name for the std::initializer_list) PR c++/44703 * call.c (is_std_init_list): Look through typedefs. From-SVN: r161880
2010-07-06re PR c++/44778 (? Behaviour change with pointers to members)Jason Merrill6-14/+50
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. From-SVN: r161879
2010-07-06* error.c (dump_function_decl): Don't crash on null DECL_NAME.Jason Merrill2-1/+5
From-SVN: r161878
2010-07-06lto-symtab.c (lto_cgraph_replace_node): Handle aliases.Jan Hubicka3-33/+81
* 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. From-SVN: r161877
2010-07-06i386.c (ix86_function_ms_hook_prologue): Enable x64 support.Kai Tietz6-30/+86
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. From-SVN: r161876
2010-07-06ms_hook_prologue.c: Add x64 ms_hook_prologue support.Kai Tietz3-3/+17
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. From-SVN: r161875
2010-07-06re PR lto/44195 (gcc.dg/lto/20100518 c_lto_20100518_0.o)Peter Bergner2-0/+6
PR testsuite/44195 * gcc.dg/lto/20100518_0.c: Limit to x86. From-SVN: r161872
2010-07-06i386.md (immediate_operand): New mode attribute.Uros Bizjak3-98/+104
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. From-SVN: r161870
2010-07-06re PR c/44828 (possible integer wrong code bug)Richard Guenther4-3/+39
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. From-SVN: r161869
2010-07-06lto-streamer.c (write_symbol_vec): Rename to ...Jan Hubicka3-130/+148
* 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. From-SVN: r161868
2010-07-06gimple-fold.c (gimple_fold_obj_type_ref_known_binfo): Check that function is ↵Jan Hubicka2-1/+15
still available to fold into. * gimple-fold.c (gimple_fold_obj_type_ref_known_binfo): Check that function is still available to fold into. From-SVN: r161866
2010-07-06cp-tree.h (impl_conv_void): New type.Shujing Zhao10-48/+324
/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. From-SVN: r161863
2010-07-06vec.h (FOR_EACH_VEC_ELT_REVERSE): New macro.Nathan Froyd20-202/+233
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. From-SVN: r161862
2010-07-06Daily bump.GCC Administrator1-1/+1
From-SVN: r161861
2010-07-05re PR bootstrap/44825 (Failed to bootstrap)Nathan Froyd2-2/+7
PR bootstrap/44825 * class.c (make_class_data): Cast result of VEC_length calls to int. From-SVN: r161856
2010-07-05Support AVX Programming Reference (June, 2010).H.J. Lu39-13/+960
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. From-SVN: r161855
2010-07-05Fix ChangeLog entry from my previous commit to include Steven G. Kargl1-1/+1
the "PR" prefix. From-SVN: r161854
2010-07-05re PR bootstrap/44512 (--enable-build-with-cxx bootstrap fails in revision ↵Joern Rennecke3-1/+8
160669) PR bootstrap/44512 * genenums.c (main): Output include of insn-constants.h * Makefile.in (insn-enums.o): Depend on insn-constants.h. From-SVN: r161853
2010-07-05io.c (resolve_tag): Check EXIST tag is a default logical.Steven G. Kargl2-0/+13
2010-07-05 Steven G. Kargl <kargl@gcc.gnu.org> fortran/44797 * fortran/io.c (resolve_tag): Check EXIST tag is a default logical. From-SVN: r161852
2010-07-05i386.c (ix86_gen_allocate_stack_worker): New.Uros Bizjak2-5/+10
* config/i386/i386.c (ix86_gen_allocate_stack_worker): New. (override_options): Initialize it. (ix86_expand_prologue): Use it. From-SVN: r161851
2010-07-05ChangeLog: Fix whitespace.Uros Bizjak2-72/+58
* ChangeLog: Fix whitespace. * testsuite/ChangeLog: Ditto. From-SVN: r161850
2010-07-05tree-nrv.c (tree_nrv): Set DECL_VALUE_EXPR on found to result.Jakub Jelinek4-2/+40
* tree-nrv.c (tree_nrv): Set DECL_VALUE_EXPR on found to result. * gcc.dg/guality/nrv-1.c: New test. From-SVN: r161849
2010-07-05re PR fortran/44596 ([OOP] Dynamic dispatch uses broken types)Paul Thomas2-1/+9
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. From-SVN: r161848