1. 06 Nov, 2011 7 commits
    • 2011-11-6 Richard Guenther <rguenther@suse.de> · a7a296ab
      	* ipa-prop.c (ipa_modify_call_arguments): Re-compute
      	inlinable flag.
      
      From-SVN: r181027
      Richard Guenther committed
    • tree-vectorizer.h (vectorizable_condition): Add argument. · f7e531cf
      
              * tree-vectorizer.h (vectorizable_condition): Add argument.
              * tree-vect-loop.c (vectorizable_reduction): Fail for condition
              in SLP.  Update calls to vectorizable_condition.
              * tree-vect-stmts.c (vect_is_simple_cond): Add basic block info
              to the arguments.  Pass it to vect_is_simple_use_1.
              (vectorizable_condition): Add slp_node to the arguments.
              Support vectorization of basic blocks.  Fail for reduction in
              SLP.  Update calls to vect_is_simple_cond and
              vect_is_simple_use.  Support SLP: call vect_get_slp_defs to get
              vector operands.
              (vect_analyze_stmt): Update calls to vectorizable_condition.
              (vect_transform_stmt): Likewise.
              * tree-vect-slp.c (vect_create_new_slp_node): Handle COND_EXPR.
              (vect_get_and_check_slp_defs): Handle COND_EXPR.  Allow pattern
              def stmts.
              (vect_build_slp_tree): Handle COND_EXPR.
              (vect_analyze_slp_instance): Push pattern statements to root
              node.
              (vect_get_constant_vectors): Fix comments.  Handle COND_EXPR.
      
      From-SVN: r181026
      Ira Rosen committed
    • More improvements to sparc VIS vec_init code generation. · 79cad86d
      gcc/
      
      	* config/sparc/sparc.md (UNSPEC_SHORT_LOAD): New unspec.
      	(zero-extend_v8qi_vis, zero_extend_v4hi_vis): New expanders.
      	(*zero_extend_v8qi_<P:mode>_insn,
      	*zero_extend_v4hi_<P:mode>_insn): New insns.
      	* config/sparc/sparc.c (vector_init_move_words,
      	vector_init_prepare_elts, sparc_expand_vector_init_vis2,
      	sparc_expand_vector_init_vis1): New functions.
      	(vector_init_bshuffle): Rewrite to handle more cases and make use
      	of locs[] array prepared by vector_init_prepare_elts.
      	(vector_init_fpmerge, vector_init_faligndata): Delete.
      	(sparc_expand_vector_init): Rewrite using new infrastructure.
      
      gcc/testsuite/
      
      	* lib/test-supports.exp
      	(check_effective_target_ultrasparc_vis2_hw): New proc.
      	(check_effective_target_ultrasparc_vis3_hw): New proc.
      	* gcc.target/sparc/vec-init-1.inc: New vector init common code.
      	* gcc.target/sparc/vec-init-2.inc: Likewise.
      	* gcc.target/sparc/vec-init-3.inc: Likewise.
      	* gcc.target/sparc/vec-init-1-vis1.c: New test.
      	* gcc.target/sparc/vec-init-1-vis2.c: New test.
      	* gcc.target/sparc/vec-init-1-vis3.c: New test.
      	* gcc.target/sparc/vec-init-2-vis1.c: New test.
      	* gcc.target/sparc/vec-init-2-vis2.c: New test.
      	* gcc.target/sparc/vec-init-2-vis3.c: New test.
      	* gcc.target/sparc/vec-init-3-vis1.c: New test.
      	* gcc.target/sparc/vec-init-3-vis2.c: New test.
      	* gcc.target/sparc/vec-init-3-vis3.c: New test.
      
      From-SVN: r181024
      David S. Miller committed
    • * doc/xml/manual/test.xml: Fix dg-warning examples. · e940f96f
      From-SVN: r181023
      Jonathan Wakely committed
    • re PR libstdc++/44436 ([C++0x] Implement emplace* in associative containers) · 7c092690
      	PR libstdc++/44436
      	* doc/xml/manual/status_cxx200x.xml: Document emplace members are
      	missing.
      
      From-SVN: r181022
      Jonathan Wakely committed
    • Daily bump. · 0d70aaa7
      From-SVN: r181021
      GCC Administrator committed
  2. 05 Nov, 2011 18 commits
  3. 04 Nov, 2011 15 commits
    • Fix select { case v, ok := <-c: }. · 95ac3b7a
      From-SVN: r180992
      Ian Lance Taylor committed
    • re PR c++/50608 (cannot apply 'offsetof' to a non-constant address) · cf9e9959
      2011-11-04  Eric Botcazou  <ebotcazou@adacore.com>
      
      	PR c++/50608
      	* c-parser.c (c_parser_postfix_expression) <RID_OFFSETOF>: Adjust call
      	to fold_offsetof.
      	* c-typeck.c (build_unary_op) <ADDR_EXPR>: Call fold_offsetof_1.
      c-family/
      	* c-common.c (c_fully_fold_internal) <ADDR_EXPR>: Call fold_offsetof_1.
      	(fold_offsetof_1): Make global.  Remove STOP_REF argument and adjust.
      	<INDIRECT_REF>: Return the argument.
      	<ARRAY_REF>: Remove special code for negative offset.
      	Call fold_build_pointer_plus instead of size_binop.
      	(fold_offsetof): Remove STOP_REF argument and adjust.
      	* c-common.h (fold_offsetof_1): Declare.
      	(fold_offsetof): Remove STOP_REF argument.
      cp/
      	* semantics.c (finish_offsetof): Adjust call to fold_offsetof.
      	* typeck.c (cp_build_addr_expr_1): Call fold_offsetof_1.
      
      From-SVN: r180986
      Eric Botcazou committed
    • reload1.c (gen_reload): Don't use REGNO on SUBREGs. · c62c5441
      	* reload1.c (gen_reload): Don't use REGNO on SUBREGs.
      	* print-rtl.c (print_rtx): Don't segfault on negative regno.
      
      From-SVN: r180983
      Alan Modra committed
    • Fix sparc regression due to recent movcc pattern changes. · 7a83e5bc
      	PR target/49965
      	* config/sparc/sparc.c (sparc_expand_conditional_move): Handle the
      	fact that sparc_emit_float_lib_cmp modifies the comparison in
      	operands[1].
      
      From-SVN: r180982
      David S. Miller committed
    • run_doxygen: Fix sed quoting. · 801fe0bb
      2011-11-04  Benjamin Kosnik  <bkoz@redhat.com>
      
      	* scripts/run_doxygen: Fix sed quoting.
      
      From-SVN: r180978
      Benjamin Kosnik committed
    • t-crtstuff: Add -fPIC to CRTSTUFF_T_CFLAGS_S variable. · 9a7f7422
      2011-11-04  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
      
      	* config/s390/t-crtstuff: Add -fPIC to CRTSTUFF_T_CFLAGS_S
      	variable.
      
      From-SVN: r180976
      Andreas Krebbel committed
    • config.gcc (bfin*-rtems*): Add newlib-stdint.h. · 4ce7e3a9
      2010-10-09  Ralf Corsépius <ralf.corsepius@rtems.org>
      
      	* config.gcc (bfin*-rtems*): Add newlib-stdint.h.
      	* config.gcc (lm32*-rtems*): Add newlib-stdint.h.
      
      From-SVN: r180974
      Ralf Corsepius committed
    • gcc-dg.exp (gcc_force_conventional_output): New global variable, default empty,… · e03af9c4
      gcc-dg.exp (gcc_force_conventional_output): New global variable, default empty, -ffat-lto-objects for effective_target_lto.
      
      	* lib/gcc-dg.exp (gcc_force_conventional_output): New global
      	variable, default empty, -ffat-lto-objects for effective_target_lto.
      	(gcc-dg-test-1): Add options from dg-final methods.
      	* lib/scanasm.exp (scan-assembler_required_options)
      	(scan-assembler-not_required_options): New procs.
      
      From-SVN: r180972
      Hans-Peter Nilsson committed
    • typeck.c (build_indirect_ref): Use ATTRIBUTE_UNUSED. · d269f788
      2011-11-04  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	* typeck.c (build_indirect_ref): Use ATTRIBUTE_UNUSED.
      	* mangle.c (write_unnamed_type_name): Likewise.
      
      From-SVN: r180970
      Paolo Carlini committed
    • parser.c (cp_parser_enumerator_list): Do not warn about trailing commas in C++0x mode. · 669cc68c
              * parser.c (cp_parser_enumerator_list): Do not warn about
              trailing commas in C++0x mode.
      
      From-SVN: r180967
      Magnus Fromreide committed
    • re PR target/50979 (architecture mismatch: "mul32" not enabled for "smul" or "umul") · a5c037e2
      	PR target/50979
      	* config/sparc/sparc.h (ASM_CPU_SPEC): Pass -Av8 if -mcpu=v8.
      
      From-SVN: r180966
      Eric Botcazou committed
    • re PR c++/50965 (C++11 Non static member initializer are not run when class is initialized with {}) · ec3ebf45
      	PR c++/50965
      	* class.c (check_field_decls): NSDMI makes a class non-aggregate.
      
      Co-Authored-By: Jason Merrill <jason@redhat.com>
      
      From-SVN: r180965
      Olivier Goffart committed
    • re PR rtl-optimization/38644 (Optimization flag -O1 -fschedule-insns2 causes wrong code) · e98925f6
      2011-11-04  Jiangning Liu  <jiangning.liu@arm.com>
      
      	PR rtl-optimization/38644
      	* config/arm/arm.c (thumb1_expand_epilogue): Add memory barrier
      	for epilogue having stack adjustment.
      
      	testcase:
      	* gcc.target/arm/stack-red-zone.c: New.
      
      From-SVN: r180964
      Jiangning Liu committed
    • re PR c++/48420 (Missed -Wconversion-null warning when passing const bool to T*) · 92b4d64c
      /cp
      2011-11-04  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/48420
      	* call.c (conversion_null_warnings): For 'false' to NULL pointer,
      	just check that TREE_TYPE (expr) is a BOOLEAN_TYPE.
      
      /testsuite
      2011-11-04  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/48420
      	* g++.dg/warn/Wconversion-null-3.C: New.
      
      From-SVN: r180963
      Paolo Carlini committed
    • re PR target/50931 ([avr] Support a 24-bit scalar integer mode) · e4fe948a
      gcc/
      	PR target/50931
      	* config/avr/avr-modes.def: New file defining PSImode.
      	* config/avr/avr-c.c (__INT24_MAX__, __INT24_MIN__,
      	__UINT24_MAX__): New built-in defines.
      	* config/avr/avr.md (adjust_len): Add tstpsi, mov24,  reload_in24,
      	ashlpsi, ashrpsi, lshrpsi.
      	(QISO, QIDI, HISI, HIDI, MPUSH, rotx, rotsmode): Add PSI.
      	(MOVMODE): New mode iterator.
      	(movpsi): New expander.
      	(movqi, movhi, movsi, movsf, movpsi): Write as one using MOVMODE.
      	(*reload_inpsi, *movpsi): New insns.
      	(*reload_inpsi): New RTL peephole.
      	(addpsi3, *addpsi3_zero_extend.qi, *addpsi3_zero_extend.hi,
      	*addpsi3_sign_extend.hi): New insns.
      	(subpsi3, *subpsi3_zero_extend.qi, *subpsi3_zero_extend.hi,
      	*subpsi3_sign_extend.hi): New insns.
      	(divmodpsi4, udivmodpsi4): New define insn-and-split.
      	(*divmodpsi4_call, *udivmodpsi4_call): New insns.
      	(andpsi3, iorpsi3, xorpsi3): New insns.
      	(*rotlpsi2.1, *rotlpsi2.23): New insns.
      	(*rotw<mode>): Insn condition only allow even-sized modes.
      	(*rotb<mode>): Insn condition allows odd-sized modes.
      	(ashlpsi3, ashrpsi3, lshrpsi3, *addpsi3.lt0): New insns.
      	(negpsi2, one_cmplpsi2): New insns.
      	(extendqipsi2, extendhipsi2, extendpsisi2): New insns.
      	(zero_extendqipsi2, zero_extendhipsi2, zero_extendpsisi2): New
      	insn-and-splits.
      	(*cmppsi, *negated_tstpsi, *reversed_tstpsi): New insns.
      	(cbranchpsi4): New expander.
      	* config/avr/constraints.md (Ca3, Co3, Cx3): New constraints.
      	* config/avr/avr-protos.h (avr_out_tstpsi, avr_out_movpsi,
      	avr_out_ashlpsi3, avr_out_ashrpsi3, avr_out_lshrpsi3,
      	avr_out_reload_inpsi): New prototypes.
      
      	* config/avr/avr.c (TARGET_SCALAR_MODE_SUPPORTED_P): Define to...
      	(avr_scalar_mode_supported_p): ...this new static function.
      	(avr_asm_len): Always return "".
      	(avr_out_load_psi, avr_out_store_psi): New static functions.
      	(avr_out_movpsi, avr_out_reload_inpsi): New functions.
      	(avr_out_tstpsi): New function.
      	(avr_out_ashlpsi3, avr_out_ashrpsi3, avr_out_lshrpsi3): New functions.
      	(avr_out_plus_1, output_reload_in_const): Handle 3-byte types.
      	(avr_simplify_comparison_p): Ditto.
      	(adjust_insn_length): Handle ADJUST_LEN_RELOAD_IN24,
      	ADJUST_LEN_MOV24, ADJUST_LEN_TSTPSI, ADJUST_LEN_ASHLPSI,
      	ADJUST_LEN_ASHRPSI, ADJUST_LEN_LSHRPSI.
      	(avr_rtx_costs_1): Report PSI costs.
      	(avr_libcall_value): Handle odd-sized parameters.
      	(avr_init_builtin_int24): New static function to define built-in
      	24-bit types __int24 and __uint24.
      	(avr_init_builtins): Use it.
      
      libgcc/
      	PR target/50931
      	* config/t-avr (LIB1ASMFUNCS): Add _divmodpsi4, _udivmodpsi4.
      	* config/lib1funcs.S (__udivmodpsi4, __divmodpsi4): New functions.
      
      From-SVN: r180962
      Georg-Johann Lay committed