1. 21 Aug, 2015 2 commits
  2. 20 Aug, 2015 21 commits
  3. 19 Aug, 2015 17 commits
    • [Patch][expand] Check gimple statement to improve LSHIFT_EXP expand · b61a0d75
      This patch improves LSHIFT_EXP expand if the shift operand comes from sign
      extension and the shift result across word_mode_size boundary. See code
      comments for details.
      
      2015-08-19  Jiong.Wang  <jiong.wang@arm.com>
      
      gcc/
        * expr.c (expand_expr_real_2): Check gimple statement during
        LSHIFT_EXPR expand.
        
      gcc/testsuite
        * gcc.dg/wide_shift_64_1.c: New testcase.
        * gcc.dg/wide_shift_128_1.c: Likewise.
        * gcc.target/aarch64/ashlti3_1.c: Likewise.
      
      From-SVN: r227018
      Jiong Wang committed
    • common.opt (fstack-protector): Initialize to -1. · e0f6cba0
             * common.opt (fstack-protector): Initialize to -1.
              (fstack-protector-all): Likewise.
              (fstack-protector-strong): Likewise.
              (fstack-protector-explicit): Likewise.
              * configure.ac: Add --enable-default-ssp.
              * defaults.h (DEFAULT_FLAG_SSP): New.  Default SSP to strong.
              * opts.c (finish_options): Update opts->x_flag_stack_protect if it is
              -1.
              * doc/install.texi: Document --enable-default-ssp.
              * config.in: Regenerated.
              * configure: Likewise.
      
              * lib/target-supports.exp
              (check_effective_target_fstack_protector_enabled): New test.
              * gcc.target/i386/ssp-default.c: New test.
      
      From-SVN: r227017
      Magnus Granberg committed
    • [PR64164] fix regressions reported on m68k and armeb · c24f5688
      Defer stack slot address assignment for all parms that can't live in
      pseudos, and accept pseudos assignments in assign_param_setup_block.
      
      for  gcc/ChangeLog
      
      	PR rtl-optimization/64164
      	* cfgexpand.c (parm_maybe_byref_p): Renamed to...
      	(parm_in_stack_slot_p): ... this.  Disregard mode, what
      	matters is whether the parm will live in a pseudo or a stack
      	slot.
      	(expand_one_ssa_partition): Deal with params without a default
      	def.  Disregard mode.
      	* cfgexpand.h: Renamed function declaration.
      	* tree-ssa-coalesce.c: Adjust.
      	* function.c (split_complex_args): Allocate stack slot for
      	unassigned parms before splitting.
      	(parm_in_unassigned_mem_p): New.  Use it instead of
      	parm_maybe_byref_p throughout this file.
      	(assign_parm_setup_block): Use it.  Accept pseudos in the
      	expand-assigned rtl.
      	(assign_parm_setup_reg): Drop BLKmode requirement.
      	(assign_parm_setup_stack): Allocate and fill in the address of
      	unassigned MEM parms.
      
      From-SVN: r227015
      Alexandre Oliva committed
    • genmodes.c (emit_mode_unit_size_inline): New function. · 8dc89e4d
      2015-08-19  David Sherwood  <david.sherwood@arm.com>
      
          gcc/
      	* genmodes.c (emit_mode_unit_size_inline): New function.
      	(emit_mode_unit_precision_inline): New function.
      	(emit_insn_modes_h): Emit new #define.  Emit new functions.
      	(emit_mode_unit_size): New function.
      	(emit_mode_unit_precision): New function.
      	(emit_mode_adjustments): Add mode_unit_size adjustments.
      	(emit_insn_modes_c): Emit new arrays.
      	* machmode.h (GET_MODE_UNIT_SIZE, GET_MODE_UNIT_PRECISION): Update to
      	use new inline methods.
      
      From-SVN: r227013
      David Sherwood committed
    • [AArch64] Use popcount_hwi instead of homebrew version · 8d55c61b
      	* config/aarch64/aarch64.c (bit_count): Delete prototype
      	and definition.
      	(aarch64_print_operand): Use popcount_hwi instead of the above.
      
      From-SVN: r227012
      Kyrylo Tkachov committed
    • [AArch64][obvious] Remove obsolete comment in aarch64-option-extensions.def · 474b0f70
      	* config/aarch64/aarch64-option-extensions.def: Delete obsolete
      	comment.
      
      From-SVN: r227011
      Kyrylo Tkachov committed
    • Forward-port test generic_31.f90 from the 5 branch. · ea0daf5f
      gcc/testsuite/
      	PR fortran/66929
      	* gfortran.dg/generic_31.f90: New.
      
      From-SVN: r227010
      Mikael Morin committed
    • re PR middle-end/67133 (ICE at -Os and above on x86_64-linux-gnu in gimple_op, at gimple.h:2274) · 255520e0
      	PR middle-end/67133
      	* gimple-ssa-isolate-paths.c
      	(insert_trap_and_remove_trailing_statements): Rename to ...
      	(insert_trap): ... this.  Don't remove trailing statements; split
      	block instead.
      	(find_explicit_erroneous_behaviour): Don't remove all outgoing edges.
      
      	* g++.dg/torture/pr67133.C: New test.
      
      From-SVN: r227009
      Marek Polacek committed
    • Avoid signed left shift undefined behaviour in sext_hwi · d63c8648
      gcc/
      	PR other/67042
      	* hwint.h (sext_hwi): Switch to unsigned for the left shift, and
      	conditionalize the whole on __GNUC__.  Add fallback code
      	depending neither on undefined nor implementation-defined behaviour.
      
      From-SVN: r227008
      Mikael Morin committed
    • cmath: Fix typo in comment. · dce573c4
      2015-08-19  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	* include/c_global/cmath: Fix typo in comment.
      
      From-SVN: r227007
      Paolo Carlini committed
    • cmath: Revert fix for libstdc++/58625... · 157177af
      2015-08-19  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	* include/c_global/cmath: Revert fix for libstdc++/58625, no
      	longer necessary (__builtin_signbit is now type-generic).
      
      From-SVN: r227006
      Paolo Carlini committed
    • [AArch64] Cleanup whitespace in aarch64.c · a3957742
      2015-08-19  Jiong Wang  <jiong.wang@arm.com>
      
      gcc/
        * config/aarch64/aarch64.c (aarch64_load_symref_appropriately): Replace
        whitespaces with tab.
      
      From-SVN: r227005
      Jiong Wang committed
    • Make the stack non-executable in GNAT tools · 4a5dc599
      Due to PR67205, the deeply nested instantiations require trampolines,
      which in turn requires an executable stack for the GNAT tools on
      architectures such as x86_64.
      
      From-SVN: r227004
      Florian Weimer committed
    • * ChangeLog: Fix corrupted entry. · 3bbce100
      From-SVN: r227003
      Uros Bizjak committed
    • [ARM] Use %wd format for lane printing in bounds_check · eb9137df
      	* config/arm/arm.c (bounds_check): Use %wd print format
      	for HOST_WIDE_INT arguments.
      
      From-SVN: r227002
      Kyrylo Tkachov committed
    • remove more useless typedefs · a79683d5
      gcc/c-family/ChangeLog:
      
      2015-08-18  Trevor Saunders  <tbsaunde@tbsaunde.org>
      
      	* c-ada-spec.h, c-common.c, c-common.h, c-format.c, c-format.h,
      	c-objc.h, c-ppoutput.c, c-pragma.c, c-pragma.h: Remove useless
       typedefs.
      
      gcc/c/ChangeLog:
      
      2015-08-18  Trevor Saunders  <tbsaunde@tbsaunde.org>
      
      	* c-aux-info.c, c-parser.c, c-tree.h: Remove useless typedefs.
      
      gcc/cp/ChangeLog:
      
      2015-08-18  Trevor Saunders  <tbsaunde@tbsaunde.org>
      
      	* call.c, class.c, cp-tree.h, decl.c, except.c, mangle.c,
      	method.c, name-lookup.h, parser.c, parser.h, rtti.c,
      	semantics.c, typeck2.c: Remove useless typedefs.
      
      gcc/fortran/ChangeLog:
      
      2015-08-18  Trevor Saunders  <tbsaunde@tbsaunde.org>
      
      	* dependency.c, dependency.h, gfortran.h, io.c, module.c,
      	parse.h, resolve.c, trans-types.h, trans.h: remove useless
      typedefs.
      
      gcc/lto/ChangeLog:
      
      2015-08-18  Trevor Saunders  <tbsaunde@tbsaunde.org>
      
      	* lto.h: Remove useless typedefs.
      
      gcc/objc/ChangeLog:
      
      2015-08-18  Trevor Saunders  <tbsaunde@tbsaunde.org>
      
      	* objc-act.h, objc-next-runtime-abi-02.c, objc-runtime-hooks.h:
      	Remove useless typedefs.
      
      gcc/ChangeLog:
      
      2015-08-18  Trevor Saunders  <tbsaunde@tbsaunde.org>
      
      	* bb-reorder.c, cfgloop.h, collect2.c, combine.c, dse.c,
      	dwarf2cfi.c, gcse-common.h, genopinit.c, ggc-page.c, machmode.h,
      	mcf.c, modulo-sched.c, omp-low.c, read-rtl.c, sched-rgn.c,
      	signop.h, tree-call-cdce.c, tree-dfa.c, tree-diagnostic.c,
      	tree-inline.h, tree-scalar-evolution.c, tree-ssa-address.c,
      	tree-ssa-loop-niter.c, tree-ssa-loop.h, tree-ssa-pre.c,
      	tree-ssa-reassoc.c, tree-ssa-sccvn.h, tree-ssa-structalias.c,
      	tree-ssa-uninit.c, tree-ssa.h, tree-vect-loop-manip.c,
      	tree-vectorizer.h, tree-vrp.c, var-tracking.c: Remove useless
      typedefs.
      
      From-SVN: r227001
      Trevor Saunders committed
    • remove useless typedefs · 50686850
      gcc/ChangeLog:
      
      2015-08-11  trevor Saunders  <tbsaunde@tbsaunde.org>
      
      	* bt-load.c, cgraph.h, dwarf2out.c, dwarf2out.h, final.c,
      	function.c, graphite-scop-detection.c, haifa-sched.c,
      	ipa-devirt.c, ipa-split.c, recog.c, ree.c, stmt.c,
      	tree-data-ref.c, tree-ssa-dom.c, tree-ssa-loop-ivopts.c,
      	varasm.c: Remove typedefs of structs.
      
      From-SVN: r227000
      Trevor Saunders committed