Skip to content
Snippets Groups Projects
  1. May 03, 2011
    • Nathan Froyd's avatar
      stormy16 (xstormy16_init_builtins): Call build_function_type_list instead of build_function_type. · 2c67cf6e
      Nathan Froyd authored
      	* config/stormy16/stormy16 (xstormy16_init_builtins): Call
      	build_function_type_list instead of build_function_type.
      	Rearrange initialization of `args' to do so.
      
      From-SVN: r173321
      2c67cf6e
    • Nathan Froyd's avatar
      i386.c (ix86_code_end): Call build_function_type_list instead of build_function_type. · f9ac28ad
      Nathan Froyd authored
      	* config/i386/i386.c (ix86_code_end): Call build_function_type_list
      	instead of build_function_type.
      
      From-SVN: r173320
      f9ac28ad
    • Nathan Froyd's avatar
      rs6000.c (spe_init_builtins): Call build_function_type_list instead of build_function_type. · 22b8798c
      Nathan Froyd authored
      	* config/rs6000/rs6000.c (spe_init_builtins): Call
      	build_function_type_list instead of build_function_type.
      	(paired_init_builtins, altivec_init_builtins): Likewise.
      	(builtin_function_type): Likewise.
      
      From-SVN: r173319
      22b8798c
    • Nathan Froyd's avatar
      sh.c (sh_media_init_builtins): Call build_function_type_list instead of build_function_type. · 4cb44528
      Nathan Froyd authored
      	* config/sh/sh.c (sh_media_init_builtins): Call
      	build_function_type_list instead of build_function_type.
      
      From-SVN: r173318
      4cb44528
    • Nathan Froyd's avatar
      sparc.c (sparc_file_end): Call build_function_type_list instead of build_function_type. · 4c203a6a
      Nathan Froyd authored
      	* config/sparc/sparc.c (sparc_file_end): Call
      	build_function_type_list instead of build_function_type.
      
      From-SVN: r173317
      4c203a6a
    • Nathan Froyd's avatar
      alpha.c (alpha_init_builtins): Call build_function_type_list instead of build_function_type. · d6a3d62b
      Nathan Froyd authored
      	* config/alpha/alpha.c (alpha_init_builtins): Call
      	build_function_type_list instead of build_function_type.
      
      From-SVN: r173316
      d6a3d62b
    • Nathan Froyd's avatar
      xtensa.c (xtensa_init_builtins): Call build_function_type_list instead of build_function_type. · de530b86
      Nathan Froyd authored
      	* config/xtensa/xtensa.c (xtensa_init_builtins): Call
      	build_function_type_list instead of build_function_type.
      
      From-SVN: r173315
      de530b86
    • Nathan Froyd's avatar
      i2000.c (iq2000_init_builtins): Call build_function_type_list instead of build_function_type. · baeec5f2
      Nathan Froyd authored
      	* config/iq2000/i2000.c (iq2000_init_builtins): Call
      	build_function_type_list instead of build_function_type.
      	Delete `endlink' variable.
      
      From-SVN: r173314
      baeec5f2
    • Nathan Froyd's avatar
      avr.c (avr_init_builtins): Call build_function_type_list instead of build_function_type. · c19afe52
      Nathan Froyd authored
      	* config/avr/avr.c (avr_init_builtins): Call
      	build_function_type_list instead of build_function_type.
      
      From-SVN: r173313
      c19afe52
    • Nathan Froyd's avatar
      picochip.c (picochip_init_builtins): Call build_function_type_list instead of build_function_type. · a341df0a
      Nathan Froyd authored
      	* config/picochip/picochip.c (picochip_init_builtins): Call
      	build_function_type_list instead of build_function_type.
      	Delete `endlink' variable.
      
      From-SVN: r173312
      a341df0a
    • Nathan Froyd's avatar
      bfin.c (bfin_init_builtins): Call build_function_type_list instead of build_function_type. · 2102b1e1
      Nathan Froyd authored
      	* config/bfin/bfin.c (bfin_init_builtins): Call
      	build_function_type_list instead of build_function_type.
      
      From-SVN: r173311
      2102b1e1
    • Stuart Henderson's avatar
      re PR target/39768 (internal compiler error: RTL check: expected code... · 9f111209
      Stuart Henderson authored
      re PR target/39768 (internal compiler error: RTL check: expected code 'const_int', have 'reg' in gen_rotlsi3, at config/bfin/bfin.md:1616)
      
      2011-05-03  Stuart Henderson  <shenders@gcc.gnu.org>
      
              From Bernd Schmidt
              * config/bfin/bfin.md (rotrsi, rotlsi): Don't take INTVAL of anything
              that's not CONST_INT.  Seemingly redundant check is due to PR39768.
      
      From-SVN: r173310
      9f111209
    • Stuart Henderson's avatar
      2011-05-03 Stuart Henderson <shenders@gcc.gnu.org> · 7071d064
      Stuart Henderson authored
      	From Jie Zhang:
      	* config/bfin/uclinux.h (LINK_GCC_C_SEQUENCE_SPEC): Make sure
      	libbffastfp overrides libgcc when -mfast-fp.
      
      From-SVN: r173308
      7071d064
    • Stuart Henderson's avatar
      Originally from Bernd Schmidt · 44fb48ef
      Stuart Henderson authored
      2011-05-03  Stuart Henderson <shenders@gcc.gnu.org>
      
              Originally from Bernd Schmidt
              * config/bfin/uclinux.h (SUBTARGET_FDPIC_NOT_SUPPORTED): New macro.
              * config/bfin/bfin.c (override_options): Test it and error if
              TARGET_FDPIC.
      
      From-SVN: r173307
      44fb48ef
    • Stuart Henderson's avatar
      Originally From Bernd Schmidt · 1a3a9152
      Stuart Henderson authored
      2011-05-03  Stuart Henderson  <shenders@gcc.gnu.org>
         
              Originally From Bernd Schmidt
              * config/bfin/bfin.c (override_options): Disable -fstack-limit for
              FD-PIC.
      
      From-SVN: r173306
      1a3a9152
    • Jeff Law's avatar
      tree-ssa-threadupdate.c (THREAD_TARGET): define. · 7134c090
      Jeff Law authored
      	* tree-ssa-threadupdate.c (THREAD_TARGET): define.
      	(remove_ctrl_stmt_and_useless_edges): Clear AUX field of outgoing edges.
      	(craete_edge_and_update_destination_phis): Use THREAD_TARGET rather
      	than accessing AUX field directly.  Free the AUX field before			clearing it.
      	(thread_block, thread_through_loop_header): Likewise.
      	(thread_single_edge, mark_threaded_blocks): Likewise.
      	(redirect_edges): Delay clearing the AUX field.  Free the AUX field.
      	(register_jump_thread): Do not attempt to thread to a NULL edge.
      
      From-SVN: r173305
      7134c090
    • Bernd Schmidt's avatar
      function.c (init_function_start): Call decide_function_section. · 2c7eebae
      Bernd Schmidt authored
      	* function.c (init_function_start): Call decide_function_section.
      	* varasm.c (decide_function_section): New function.
      	(assemble_start_function): When not using
      	flag_reorder_blocks_and_partition, don't compute in_cold_section_p
      	or first_function_block_is_cold.
      	* rtl.h (decide_function_section): Declare.
      
      	* gcc.target/arm/cold-lc.c: New test.
      
      From-SVN: r173303
      2c7eebae
    • Jakub Jelinek's avatar
      re PR target/48774 (gcc-4.6.0 optimization regression on x86_64-unknown-linux-gnu) · 17038fcf
      Jakub Jelinek authored
      	PR target/48774
      	* config/i386/i386.c (ix86_match_ccmode): For CC{A,C,O,S}mode
      	only succeed if req_mode is the same as set_mode.
      
      	* gcc.dg/pr48774.c: New test.
      
      From-SVN: r173301
      17038fcf
    • Bernd Schmidt's avatar
      gengenrtl.c (special_rtx): PC, CC0 and RETURN are special. · 3810076b
      Bernd Schmidt authored
      	* gengenrtl.c (special_rtx): PC, CC0 and RETURN are special.
      	* genemit.c (gen_exp): Handle RETURN.
      	* emit-rtl.c (verify_rtx_sharing): Likewise.
      	(init_emit_regs): Create pc_rtx, ret_rtx and cc0_rtx specially.
      	* rtl.c (copy_rtx): RETURN is shared.
      	* rtl.h (enum global_rtl_index): Add GR_RETURN.
      	(ret_rtx): New.
      	* jump.c (redirect_exp_1): Don't use gen_rtx_RETURN.
      	* config/s390/s390.c (s390_emit_epilogue): Likewise.
      	* config/rx/rx.c (gen_rx_rtsd_vector): Likewise.
      	* config/cris/cris.c (cris_expand_return): Likewise.
      	* config/m68k/m68k.c (m68k_expand_epilogue): Likewise.
      	* config/rs6000/rs6000.c (rs6000_make_savres_rtx,
      	rs6000_emit_epilogue, rs6000_output_mi_thunk): Likewise.
      	* config/picochip/picochip.c (picochip_expand_epilogue): Likewise.
      	* config/h8300/h8300.c (h8300_push_pop, h8300_expand_epilogue):
      	Likewise.
      	* config/v850/v850.c (expand_epilogue): Likewise.
      	* config/bfin/bfin.c (bfin_expand_call): Likewise.
      	* config/arm/arm.md (epilogue): Likewise.
      	* config/mn10300/mn10300.c (mn10300_expand_epilogue): Likewise.
      	* config/sparc/sparc.c (sparc_struct_value_rtx): Rename ret_rtx
      	variable to ret_reg.
      
      From-SVN: r173300
      3810076b
    • Richard Guenther's avatar
      re PR tree-optimization/48846 (Many -O2 -flto testsuite failures with -m32 -mavx) · 9efdb4ad
      Richard Guenther authored
      2011-05-03  Richard Guenther  <rguenther@suse.de>
      
      	PR lto/48846
      	* lto-streamer-in.c (unpack_ts_decl_common_value_fields):
      	Stream decl_common.off_align instead of the derived DECL_OFFSET_ALIGN.
      	* lto-streamer-out.c (pack_ts_decl_common_value_fields): Likewise.
      
      From-SVN: r173298
      9efdb4ad
    • Richard Guenther's avatar
      c-decl.c (grokdeclarator): Instead of looking at TREE_OVERFLOW check if the... · 60a45536
      Richard Guenther authored
      c-decl.c (grokdeclarator): Instead of looking at TREE_OVERFLOW check if the constant fits in the index type.
      
      2011-05-03  Richard Guenther  <rguenther@suse.de>
      
      	* c-decl.c (grokdeclarator): Instead of looking at
      	TREE_OVERFLOW check if the constant fits in the index type.
      
      	* gcc.dg/large-size-array-5.c: New testcase.
      
      From-SVN: r173297
      60a45536
    • Richard Sandiford's avatar
      vect-strided-u16-i3.c: New test. · 539d6b4a
      Richard Sandiford authored
      gcc/testsuite/
      	* gcc.dg/vect/vect-strided-u16-i3.c: New test.
      
      From-SVN: r173296
      539d6b4a
    • Richard Sandiford's avatar
      target-supports.exp (check_effective_target_vect_strided): Replace with... · 9afa0361
      Richard Sandiford authored
      gcc/testsuite/
      	* lib/target-supports.exp (check_effective_target_vect_strided):
      	Replace with...
      	(check_effective_target_vect_strided2)
      	(check_effective_target_vect_strided3)
      	(check_effective_target_vect_strided4)
      	(check_effective_target_vect_strided8): ...these new functions.
      
      	* gcc.dg/vect/O3-pr39675-2.c: Update accordingly.
      	* gcc.dg/vect/costmodel/ppc/costmodel-slp-12.c: Likewise.
      	* gcc.dg/vect/fast-math-slp-27.c: Likewise.
      	* gcc.dg/vect/if-cvt-stores-vect-ifcvt-18.c: Likewise.
      	* gcc.dg/vect/pr37539.c: Likewise.
      	* gcc.dg/vect/slp-11a.c: Likewise.
      	* gcc.dg/vect/slp-11b.c: Likewise.
      	* gcc.dg/vect/slp-11c.c: Likewise.
      	* gcc.dg/vect/slp-12a.c: Likewise.
      	* gcc.dg/vect/slp-12b.c: Likewise.
      	* gcc.dg/vect/slp-18.c: Likewise.
      	* gcc.dg/vect/slp-19a.c: Likewise.
      	* gcc.dg/vect/slp-19b.c: Likewise.
      	* gcc.dg/vect/slp-21.c: Likewise.
      	* gcc.dg/vect/slp-23.c: Likewise.
      	* gcc.dg/vect/vect-cselim-1.c: Likewise.
      
      	* gcc.dg/vect/fast-math-vect-complex-3.c: Use vect_stridedN
      	instead of vect_interleave && vect_extract_even_odd.
      	* gcc.dg/vect/no-scevccp-outer-10a.c: Likewise.
      	* gcc.dg/vect/no-scevccp-outer-10b.c: Likewise.
      	* gcc.dg/vect/no-scevccp-outer-20.c: Likewise.
      	* gcc.dg/vect/vect-1.c: Likewise.
      	* gcc.dg/vect/vect-10.c: Likewise.
      	* gcc.dg/vect/vect-98.c: Likewise.
      	* gcc.dg/vect/vect-107.c: Likewise.
      	* gcc.dg/vect/vect-strided-a-mult.c: Likewise.
      	* gcc.dg/vect/vect-strided-a-u16-i2.c: Likewise.
      	* gcc.dg/vect/vect-strided-a-u16-i4.c: Likewise.
      	* gcc.dg/vect/vect-strided-a-u16-mult.c: Likewise.
      	* gcc.dg/vect/vect-strided-a-u32-mult.c: Likewise.
      	* gcc.dg/vect/vect-strided-a-u8-i2-gap.c: Likewise.
      	* gcc.dg/vect/vect-strided-a-u8-i8-gap2.c: Likewise.
      	* gcc.dg/vect/vect-strided-a-u8-i8-gap7.c: Likewise.
      	* gcc.dg/vect/vect-strided-float.c: Likewise.
      	* gcc.dg/vect/vect-strided-mult-char-ls.c: Likewise.
      	* gcc.dg/vect/vect-strided-mult.c: Likewise.
      	* gcc.dg/vect/vect-strided-same-dr.c: Likewise.
      	* gcc.dg/vect/vect-strided-u16-i2.c: Likewise.
      	* gcc.dg/vect/vect-strided-u16-i4.c: Likewise.
      	* gcc.dg/vect/vect-strided-u32-i4.c: Likewise.
      	* gcc.dg/vect/vect-strided-u32-i8.c: Likewise.
      	* gcc.dg/vect/vect-strided-u32-mult.c: Likewise.
      	* gcc.dg/vect/vect-strided-u8-i2-gap.c: Likewise.
      	* gcc.dg/vect/vect-strided-u8-i2.c: Likewise.
      	* gcc.dg/vect/vect-strided-u8-i8-gap2.c: Likewise.
      	* gcc.dg/vect/vect-strided-u8-i8-gap4.c: Likewise.
      	* gcc.dg/vect/vect-strided-u8-i8-gap7.c: Likewise.
      	* gcc.dg/vect/vect-strided-u8-i8.c: Likewise.
      	* gcc.dg/vect/vect-vfa-03.c: Likewise.
      
      	* gcc.dg/vect/no-scevccp-outer-18.c: Add vect_stridedN to the
      	target condition.
      	* gcc.dg/vect/pr30843.c: Likewise.
      	* gcc.dg/vect/pr33866.c: Likewise.
      	* gcc.dg/vect/slp-reduc-6.c: Likewise.
      	* gcc.dg/vect/vect-strided-store-a-u8-i2.c: Likewise.
      	* gcc.dg/vect/vect-strided-store-u16-i4.c: Likewise.
      	* gcc.dg/vect/vect-strided-store-u32-i2.c: Likewise.
      
      From-SVN: r173295
      9afa0361
    • Richard Sandiford's avatar
      slp-11.c: Split into... · f82c640a
      Richard Sandiford authored
      gcc/testsuite/
      	* gcc.dg/vect/slp-11.c: Split into...
      	* gcc.dg/vect/slp-11a.c, gcc.dg/vect/slp-11b.c,
      	gcc.dg/vect/slp-11c.c: ...these tests.
      	* gcc.dg/vect/slp-12a.c: Split 4-stride loop into...
      	* gcc.dg/vect/slp-12c.c: ...this new test.
      	* gcc.dg/vect/slp-19.c: Split into...
      	* gcc.dg/vect/slp-19a.c, gcc.dg/vect/slp-19b.c,
      	gcc.dg/vect/slp-19c.c: ...these new tests.
      
      From-SVN: r173294
      f82c640a
    • Richard Sandiford's avatar
      gcc/testsuite/ · 21a74828
      Richard Sandiford authored
      	* lib/target-supports.exp
      	(check_effective_target_vect_extract_even_odd_wide): Delete.
      	(check_effective_target_vect_strided_wide): Likewise.
      	* gcc.dg/vect/O3-pr39675-2.c: Use the non-wide versions instead.
      	* gcc.dg/vect/fast-math-pr35982.c: Likewise.
      	* gcc.dg/vect/fast-math-vect-complex-3.c: Likewise.
      	* gcc.dg/vect/pr37539.c: Likewise.
      	* gcc.dg/vect/slp-11.c: Likewise.
      	* gcc.dg/vect/slp-12a.c: Likewise.
      	* gcc.dg/vect/slp-12b.c: Likewise.
      	* gcc.dg/vect/slp-19.c: Likewise.
      	* gcc.dg/vect/slp-23.c: Likewise.
      	* gcc.dg/vect/vect-1.c: Likewise.
      	* gcc.dg/vect/vect-98.c: Likewise.
      	* gcc.dg/vect/vect-107.c: Likewise.
      	* gcc.dg/vect/vect-strided-float.c: Likewise.
      
      From-SVN: r173293
      21a74828
    • Richard Sandiford's avatar
      neon.md (vec_load_lanes<mode><mode>): New expanders, · 3188ed59
      Richard Sandiford authored
      gcc/
      	* config/arm/neon.md (vec_load_lanes<mode><mode>): New expanders,
      	(vec_store_lanes<mode><mode>): Likewise.
      
      From-SVN: r173292
      3188ed59
    • Richard Sandiford's avatar
      md.texi (vec_load_lanes, [...]): Document. · 272c6793
      Richard Sandiford authored
      gcc/
      	* doc/md.texi (vec_load_lanes, vec_store_lanes): Document.
      	* optabs.h (COI_vec_load_lanes, COI_vec_store_lanes): New
      	convert_optab_index values.
      	(vec_load_lanes_optab, vec_store_lanes_optab): New convert optabs.
      	* genopinit.c (optabs): Initialize the new optabs.
      	* internal-fn.def (LOAD_LANES, STORE_LANES): New internal functions.
      	* internal-fn.c (get_multi_vector_move, expand_LOAD_LANES)
      	(expand_STORE_LANES): New functions.
      	* tree.h (build_array_type_nelts): Declare.
      	* tree.c (build_array_type_nelts): New function.
      	* tree-vectorizer.h (vect_model_store_cost): Add a bool argument.
      	(vect_model_load_cost): Likewise.
      	(vect_store_lanes_supported, vect_load_lanes_supported)
      	(vect_record_strided_load_vectors): Declare.
      	* tree-vect-data-refs.c (vect_lanes_optab_supported_p)
      	(vect_store_lanes_supported, vect_load_lanes_supported): New functions.
      	(vect_transform_strided_load): Split out statement recording into...
      	(vect_record_strided_load_vectors): ...this new function.
      	* tree-vect-stmts.c (create_vector_array, read_vector_array)
      	(write_vector_array, create_array_ref): New functions.
      	(vect_model_store_cost): Add store_lanes_p argument.
      	(vect_model_load_cost): Add load_lanes_p argument.
      	(vectorizable_store): Try to use store-lanes functions for
      	interleaved stores.
      	(vectorizable_load): Likewise load-lanes and loads.
      	* tree-vect-slp.c (vect_get_and_check_slp_defs): Update call
      	to vect_model_store_cost.
      	(vect_build_slp_tree): Likewise vect_model_load_cost.
      
      From-SVN: r173291
      272c6793
    • Richard Sandiford's avatar
      hooks.h (hook_bool_mode_uhwi_false): Declare. · 0f6d54f7
      Richard Sandiford authored
      gcc/
      	* hooks.h (hook_bool_mode_uhwi_false): Declare.
      	* hooks.c (hook_bool_mode_uhwi_false): New function.
      	* target.def (array_mode_supported_p): New hook.
      	* doc/tm.texi.in (TARGET_ARRAY_MODE_SUPPORTED_P): Add @hook.
      	* doc/tm.texi: Regenerate.
      	* stor-layout.c (mode_for_array): New function.
      	(layout_type): Use it.
      	* config/arm/arm.c (arm_array_mode_supported_p): New function.
      	(TARGET_ARRAY_MODE_SUPPORTED_P): Define.
      
      From-SVN: r173290
      0f6d54f7
    • Eric Botcazou's avatar
      re PR target/48723 (ICE on function returning structure with -fstack-check on corei7-avx) · b15eacc7
      Eric Botcazou authored
      	PR target/48723
      	* config/i386/i386.c (ix86_expand_prologue): Do not probe the stack
      	for -fstack-check if the size to allocate is negative.
      
      From-SVN: r173288
      b15eacc7
    • Steven G. Kargl's avatar
      re PR fortran/48720 (quad precision literals do not work) · 5a17346a
      Steven G. Kargl authored
      2011-05-02  Steven G. Kargl  <kargl@gcc.gnu.org>
      
          PR fortran/48720
          * gfortran.texi: Document the 'Q' exponent-letter extension.
          * invoke.texi: Document -Wreal-q-constant.
          * lang.opt: Add -Wreal-q-constant option.
          * gfortran.h: Add warn_real_q_constant to option struct.
          * primary.c (match_real_constant):  Use it.  Accept 'Q' as
          exponent-letter for REAL(16) real-literal-constant with a
          fallback to REAL(10) or error if REAL(10) is not available.
          * options.c (gfc_init_options, set_Wall) Set it.
          (gfc_handle_option): Handle new option.
      
      From-SVN: r173285
      5a17346a
    • GCC Administrator's avatar
      Daily bump. · 591d4887
      GCC Administrator authored
      From-SVN: r173284
      591d4887
  2. May 02, 2011
    • Lawrence Crowl's avatar
      Upgrade the utility of timevars. · 575bfb00
      Lawrence Crowl authored
      Index: gcc/ChangeLog
      
      2011-04-27  Lawrence Crowl  <crowl@google.com>
      
      	* timevar.h (timevar_cond_start): Remove unused POP_TIMEVAR_AND_RETURN.
      	(timevar_cond_start): New for starting a timer only when it is not
      	already running.
      	(timevar_cond_stop): New for stopping a timer when it was not already
      	running.
      
      	* timevar.c (timevar_stop): Enable start/stop timers to start again.
      	(timevar_cond_start): New as above.
      	(timevar_cond_stop): New as above.
      
      	* timevar.def: Add start/stop timers for compiler phases,
      	TV_PHASE_SETUP, TV_PHASE_PARSING, TV_PHASE_DEFERRED, TV_PHASE_CGRAPH,
      	TV_PHASE_DBGINFO (C), TV_PHASE_CHECK_DBGINFO (C++), TV_PHASE_GENERATE,
      	and TV_PHASE_FINALIZE.
      	Change push/pop timer TV_PARSE to TV_PARSE_GLOBAL.
      	Add push/pop timers TV_PARSE_STRUCT, TV_PARSE_ENUM, TV_PARSE_FUNC,
      	TV_PARSE_INLINE, TV_PARSE_INMETH, TV_TEMPLATE_INST.
      	Change push/pop timer TV_NAME_LOOKUP into a start/stop timer.
      	Make unused TV_OVERLOAD into a start/stop timer.
      
      	Remove unused timers TV_OVERLOAD, TV_TEMPLATE_INSTANTIATION.
      	Mark the strings for TV_NAME_LOOKUP and TV_OVERLOAD with a "|"
      	to indicate that they are start/stop timers.
      
      	* toplev.c (compile_file): Change TV_PARSE to TV_PARSE_GLOBAL.
      	Add start/stop timers TV_PHASE_PARSING and TV_PHASE_GENERATE.
      	Move initialization to do_compile.
      	(do_compile): Add initialization from above.
      	Add start/stop timers TV_PHASE_SETUP and TV_PHASE_FINALIZE.
      
      	* c-decl.c (c_write_global_declarations): Add start/stop of
      	TV_PHASE_DEFERRED, TV_PHASE_CGRAPH, TV_PHASE_DBGINFO.
      
      	* c-parser.c (c_parser_declaration_or_fndef): Push/pop TV_PARSE_FUNC
      	or TV_PARSE_INLINE, as appropriate.
      	(c_parser_enum_specifier): Push/pop TV_PARSE_ENUM.
      	(c_parser_struct_or_union_specifier): Push/pop TV_PARSE_STRUCT.
      
      Index: gcc/cp/ChangeLog
      
      2011-04-27  Lawrence Crowl  <crowl@google.com>
      
      	* decl.c: (push_local_name): Change TV_NAME_LOOKUP to start/stop.
      	(poplevel): Refactor POP_TIMEVAR_AND_RETURN to plain code.
      	Change TV_NAME_LOOKUP to start/stop.
      	(define_label): Refactor timevar calls out to a wrapper function.
      	Change TV_NAME_LOOKUP to start/stop.
      	(xref_tag): Likewise.
      	(lookup_label): Refactor timevar calls out to a wrapper function.
      	Change TV_NAME_LOOKUP to start_cond/stop_cond.
      
              * pt.c: (instantiate_class_template): Add a wrapper to push/pop new
      	TV_TEMPLATE_INST.
      	(instantiate_template): Add a wrapper to push/pop new TV_TEMPLATE_INST.
      	(lookup_template_class): Refactor timevar calls out to a wrapper
      	function.  Change use of TV_NAME_LOOKUP to TV_TEMPLATE_INST.
      	(instantiate_decl): Change TV_PARSE to TV_TEMPLATE_INST.
      
      	* name-lookup.c: (store_bindings): Change TV_NAME_LOOKUP to start/stop.
      	(poplevel_class): Change TV_NAME_LOOKUP to start_cond/stop_cond.
      	(push_namespace): Likewise.
      	(pop_nested_namespace): Likewise.
      	(pushdecl_namespace_level): Likewise.
      	(store_class_bindings): Likewise.
      	(push_to_top_level): Likewise.
      	(identifier_type_value): Refactor timevar calls out to a wrapper
      	function.  Change TV_NAME_LOOKUP to start/stop.
      	(find_binding): Likewise.
      	(push_using_decl): Likewise.
      	(lookup_arg_dependent): Likewise.
      	(push_using_directive): Likewise.
      	(qualified_lookup_using_namespace): Refactor POP_TIMEVAR_AND_RETURN
      	to plain code.  Change TV_NAME_LOOKUP to start/stop.
      	(lookup_type_current_level): Likewise.  Refactor inner return to
      	break.
      	(pushdecl_class_level): Refactor POP_TIMEVAR_AND_RETURN to plain
      	code.  Change TV_NAME_LOOKUP to start_cond/stop_cond.
      	(pushdecl_top_level_1): Likewise.
      	(lookup_using_namespace): Likewise.
      	(pushdecl_with_scope): Refactor timevar calls out to a wrapper
      	function.  Change TV_NAME_LOOKUP to start_cond/stop_cond.
      	(push_overloaded_decl): Likewise.
      	(push_class_level_binding): Likewise.
      	(namespace_binding): Likewise.
      	(set_namespace_binding): Likewise.
      	(supplement_binding): Likewise.
      	(unqualified_namespace_lookup): Likewise.
      	(lookup_name_real): Likewise.
      	(lookup_type_scope): Likewise.
      	(namespace_ancestor): Likewise.
      	(lookup_name_innermost_nonclass_level): Likewise.
      	(pushtag): Likewise.
      	(pop_from_top_level): Likewise.
      	(pushdecl_maybe_friend): Refactor timevar calls out to a wrapper
      	function.  Change TV_NAME_LOOKUP to start_cond/stop_cond.  Wrap long
      	lines.
      	(add_using_namespace): Refactor timevar calls out to a wrapper
      	function.  Change TV_NAME_LOOKUP to start_cond/stop_cond.  Bypass
      	wrapper on call to self.
      
      	* decl2.c: (cp_write_global_declarations):  Add start/stop of
      	new TV_PHASE_DEFERRED, TV_PHASE_CGRAPH, TV_PHASE_CHECK_DBGINFO.
      	Remove push/pop calls to TV_VARCONST.
      
      	* parser.c: Add include of "timevar.h".
      	(cp_parser_explicit_instantiation): Add push/pop calls to
      	TV_TEMPLATE_INST.
      	(cp_parser_enum_specifier): Add push/pop calls to new TV_PARSE_ENUM.
      	(cp_parser_class_specifier): Add wrapper to add push/pop calls to
      	TV_PARSE_STRUCT.
      	(cp_parser_function_definition_from_specifiers_and_declarator): Add
      	push/pop calls to new TV_PARSE_FUNC or TV_PARSE_INLINE.
      	(cp_parser_late_parsing_for_member):  Add push/pop calls to
      	new TV_PARSE_INMETH.
      
      	* call.c: Add include of "timevar.h".
              (convert_class_to_reference): Wrap and add push/pop calls to 
      	TV_OVERLOAD.
      	(build_op_call): Likewise.
      	(build_conditional_expr): Likewise.
      	(build_new_op): Likewise.
      	(build_new_method_call): Likewise.
              (build_user_type_conversion): Reorganize to single return and add
      	push/pop calls to TV_OVERLOAD.
              (perform_overload_resolution): Likewise.
      
      	* Make-lang.in: Add dependence of call.o and parser.o on $(TIMEVAR_H).
      
      From-SVN: r173277
      575bfb00
    • Jason Merrill's avatar
      tree.c (build_vec_init_expr): Take complain parm. · 9c69dcea
      Jason Merrill authored
      	* tree.c (build_vec_init_expr): Take complain parm.
      	(build_vec_init_elt): Likewise.  Free arg vector.
      	(diagnose_non_constexpr_vec_init, build_array_copy): Adjust.
      	* cp-tree.h (VEC_INIT_EXPR_SLOT): Use VEC_INIT_EXPR_CHECK.
      	(VEC_INIT_EXPR_INIT): Likewise.
      	Adjust build_vec_init_expr declaration.
      	* init.c (perform_member_init): Adjust.
      
      From-SVN: r173275
      9c69dcea
    • Jason Merrill's avatar
      revert: re PR c++/40975 (ICE in copy_tree_r on array new) · b73a4704
      Jason Merrill authored
      	Revert:
      	PR c++/40975
      	* cp-tree.def (VEC_INIT_EXPR): Add third operand.
      	* cp-tree.h (VEC_INIT_EXPR_NELTS): New.
      	* cp-gimplify.c (cp_gimplify_expr) [VEC_INIT_EXPR]: Handle it.
      	* tree.c (build_vec_init_expr): Handle getting pointer/nelts.
      	(build_vec_init_elt): Don't expect an array type.
      	(build_array_copy): Adjust.
      	* init.c (perform_member_init): Adjust.
      	(build_new_1): Use build_vec_init_expr.
      
      From-SVN: r173274
      b73a4704
    • Jason Merrill's avatar
      re PR c++/40975 (ICE in copy_tree_r on array new) · 3533b943
      Jason Merrill authored
      	PR c++/40975
      	* tree-inline.c (copy_tree_r): Handle STATEMENT_LIST.
      
      From-SVN: r173273
      3533b943
    • Jason Merrill's avatar
      re PR c++/48834 (-fno-exceptions causes wrong code generation on C++ code) · 0a2cdfe6
      Jason Merrill authored
      	PR c++/48834
      	* tree.c (build_vec_init_expr): Set TREE_SIDE_EFFECTS.
      	Protect an explicit target.
      
      From-SVN: r173272
      0a2cdfe6
    • Simon Martin's avatar
      re PR c/35445 (ICE with conflicting declarations) · 2609a0ce
      Simon Martin authored
      gcc/
      
      2011-05-02  Simon Martin  <simartin@users.sourceforge.net>
      
          PR c/35445
          * c-decl.c (finish_decl): Only create a composite if the types are
          compatible.
      
      gcc/testsuite/
      
      2011-05-02  Simon Martin  <simartin@users.sourceforge.net>
      
          PR c/35445
          * gcc.dg/pr35445.c: New test.
      
      From-SVN: r173269
      2609a0ce
    • Uros Bizjak's avatar
      mmx.md (*movv2sf_internal_rex64): Fix %vmovlps template. · 14dccaf0
      Uros Bizjak authored
      	* config/i386/mmx.md (*movv2sf_internal_rex64): Fix %vmovlps template.
      	(*movv2sf_internal): Ditto.
      
      From-SVN: r173267
      14dccaf0
    • Joseph Myers's avatar
      fr30-protos.h (Mmode): Don't define. · 6b0e4cbb
      Joseph Myers authored
      	* config/fr30/fr30-protos.h (Mmode): Don't define.
      	* config/m32r/m32r-protos.h (Mmode): Don't define.  Expand
      	definition where used.
      	* config/mn10300/mn10300-protos.h (Mmode, Cstar, Rclas): Don't
      	define.  Expand definitions where used.
      	* config/rx/rx-protos.h (Mmode, Fargs, Rcode): Don't define.
      	Expand definitions where used.
      	* config/rx/rx.c (rx_is_legitimate_address, rx_function_arg_size,
      	rx_function_arg, rx_function_arg_advance,
      	rx_function_arg_boundary): Expand definitions of those macros.
      	* config/v850/v850-protos.h (Mmode): Don't define.  Expand
      	definition where used.
      
      From-SVN: r173266
      6b0e4cbb
    • Uros Bizjak's avatar
      mmx.md (*mov<mode>_internal_rex64): Use %vmovq for reg<->xmm moves. · 4e938ce6
      Uros Bizjak authored
      	* config/i386/mmx.md (*mov<mode>_internal_rex64): Use %vmovq for
      	reg<->xmm moves.
      	(*mov<mode>_internal): Merge with *mov<mode>_internal_avx.
      	(*movv2sf_internal_rex64): Use %vmovq for reg<->xmm moves.  Merge
      	with *movv2sf_internal_rex64_avx.
      	(*movv2sf_internal): Merge with *movv2sf_internal_avx.
      	* config/i386/i386.md (*movdi_internal_rex64) <TYPE_SSEMOV>:
      	Use %v prefix in insn mnemonic to handle TARGET_AVX.
      	(*movdi_internal): Add "isa" attribute.  Use "maybe_vex" instead of
      	"vex" in "prefix" attribute calculation.
      	(*movdf_internal): Output AVX mnemonics.  Add "prefix" attribute.
      
      From-SVN: r173265
      4e938ce6
Loading