Missed that file in r213079 of 2014-07-26

2014-09-03  Tobias Burnus  <burnus@net-b.de>

        PR fortran/61881
        PR fortran/61888
        PR fortran/57305
        * gfortran.dg/sizeof_4.f90: New.



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

2014-09-03  Max Ostapenko  <m.ostapenko@partner.samsung.com>

	* lib/gcc-dg.exp (set-target-env-var): Change env to ::env.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@214846 138bc75d-0d04-0410-961f-82ee72b054a4
	* gcc.dg/20111227-2.c: Compile only for x86 targets.
	* gcc.dg/20111227-3.c: Ditto.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@214848 138bc75d-0d04-0410-961f-82ee72b054a4
[NDS32] Define PIC_OFFSET_TABLE_REGNUM to $gp register.

	* config/nds32/nds32.h (PIC_OFFSET_TABLE_REGNUM): Define.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@214849 138bc75d-0d04-0410-961f-82ee72b054a4
2014-09-03  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	PR target/61078
	* config/s390/s390.md ("*negdi2_31"): Add s390_split_ok_p check
	and add a second splitter to handle the remaining cases.

2014-09-03  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	PR target/61078
	* gcc.target/s390/pr61078.c: New testcase.




git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@214850 138bc75d-0d04-0410-961f-82ee72b054a4
[NDS32] Refine the implementation and consider CFA restore information for stack push/pop multiple.

	* config/nds32/nds32.c (nds32_gen_stack_push_multiple): Rename to ...
	(nds32_emit_stack_push_multiple): ... this.
	(nds32_gen_stack_pop_multiple): Rename to ...
	(nds32_emit_stack_pop_multiple): ... this and consider CFA restore
	information.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@214851 138bc75d-0d04-0410-961f-82ee72b054a4
[NDS32] Refine the implementation and consider CFA restore information for stack v3push/v3pop.

	* config/nds32/nds32.c (nds32_gen_stack_v3push): Rename to ...
	(nds32_emit_stack_v3push): ... this.
	(nds32_gen_stack_v3pop): Rename to ...
	(nds32_emit_stack_v3pop): ... this and consider CFA restore
	information.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@214852 138bc75d-0d04-0410-961f-82ee72b054a4
[NDS32] In nds32_valid_stack_push_pop_p(), we look into OP rtx to see if we indeed save $fp/$gp/$lp registers.

	* config/nds32/nds32-predicates.c
	(nds32_valid_stack_push_pop): Rename to ...
	(nds32_valid_stack_push_pop_p): ... this.
	* config/nds32/nds32-protos.h: Likewise.
	* config/nds32/predicates.md: Likewise.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@214853 138bc75d-0d04-0410-961f-82ee72b054a4
[NDS32] Preparation in nds32.h of using registers to save varargs.

  -- The varargs area may also need padding bytes so that we can ensure
     that argument pointer is 8-byte alignment.

	* config/nds32/nds32.h (machine_function): Add some fields for variadic
	arguments implementation.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@214854 138bc75d-0d04-0410-961f-82ee72b054a4
[NDS32] Add a function to indentify if FUNC is an interrupt service routine.

	* config/nds32/nds32-isr.c (nds32_isr_function_p): Define new function
	to check if FUNC is an interrupt service routine.
	* config/nds32/nds32-protos.h (nds32_isr_function_p): Declaration.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@214855 138bc75d-0d04-0410-961f-82ee72b054a4
[NDS32] Consider varargs situation when creating stack operation assembly code.

  -- In fact, we only need to take care of 'push.s' situation,
     because we have to push all the nameless arguments into stack.
  -- We do not have to use 'pop.s' to restore them back to registers,
     because we can just adjust stack pointer to set frame location.
     This operation should be done in epilogue expanding.
  -- Because 'pop25' instruction also performs return operation, we will
     not use v3push/v3pop on isr and vararg functions.
     Therefore, their instruction length should be 4 bytes.

	* config/nds32/nds32-md-auxiliary.c (nds32_output_stack_push):
	Check rtx for varargs implementation.
	(nds32_output_stack_pop): Likewise.
	* config/nds32/nds32-protos.h: Have a rtx argument for
	nds32_output_stack_push and nds32_output_stack_pop.
	* config/nds32/nds32.md: Likewise.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@214856 138bc75d-0d04-0410-961f-82ee72b054a4
[NDS32] We need to make sure it is NOT a variadic function so that some v3push/v3pop preparation can be applied.

  -- The rationale of such avoidance is that the 'pop25' instruction also
     contains return behavior and we have no chance to further adjust stack
     pointer before returning to caller, which is very important to
     variadic function.
  -- So we do not setup v3push/v3pop (push25/pop25) information for a
     variadic function.  It will use normal stack push/pop instead.

	* config/nds32/nds32.c (nds32_compute_stack_frame): Do not use
	v3push/v3pop for variadic function.
	* config/nds32/nds32.md (prologue, epilogue): Likewise.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@214857 138bc75d-0d04-0410-961f-82ee72b054a4
[NDS32] Remove unused variables.

	* config/nds32/nds32.c (nds32_expand_prologue): Remove unused variables.
	(nds32_expand_epilogue): Likewise.
	(nds32_expand_prologue_v3push): Likewise.
	(nds32_expand_epilogue_v3pop): Likewise.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@214858 138bc75d-0d04-0410-961f-82ee72b054a4
[NDS32] Define and rename some GPR-specific stuff.

	* config/nds32/nds32.c (nds32_function_arg): Define and rename some
	GPR-specific stuff.
	(nds32_function_arg_advance): Likewise.
	(nds32_init_cumulative_args): Likewise.
	* config/nds32/nds32.h (NDS32_MAX_GPR_REGS_FOR_ARGS): Define.
	(NDS32_FIRST_GPR_REGNUM): Define.
	(NDS32_LAST_GPR_REGNUM): Define.
	(NDS32_AVAILABLE_REGNUM_FOR_GPR_ARG): Define.
	(NDS32_ARG_PASS_IN_REG_P): Use NDS32_MAX_GPR_REGS_FOR_ARGS.
	(FUNCTION_ARG_REGNO_P): Use NDS32_MAX_GPR_REGS_FOR_ARGS.
	(machine_function): Use GRP-specific stuff.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@214859 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/
2014-09-02  Ilya Tocar  <ilya.tocar@intel.com>

        * config/i386/adxintrin.h (_subborrow_u32): New.
        (_addcarry_u32): Ditto.
        (_subborrow_u64): Ditto.
        (_addcarry_u64): Ditto.
        * config/i386/i386.c (ix86_builtins): Add IX86_BUILTIN_SBB32,
        IX86_BUILTIN_SBB64.
        (ix86_init_mmx_sse_builtins): Handle __builtin_ia32_sbb_u32,
        __builtin_ia32_sbb_u64


testsuite/
2014-09-02  Ilya Tocar  <ilya.tocar@intel.com>

        * gcc.target/i386/adx-addcarryx32-1.c: Test addcarry, subborrow.
        * gcc.target/i386/adx-addcarryx32-2.c: Ditto.
        * gcc.target/i386/adx-addcarryx32-3.c: Ditto.
        * gcc.target/i386/adx-addcarryx64-1.c: Ditto.
        * gcc.target/i386/adx-addcarryx64-2.c: Ditto.
        * gcc.target/i386/adx-addcarryx64-3.c: Ditto.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@214860 138bc75d-0d04-0410-961f-82ee72b054a4
[NDS32] Implement TARGET_SETUP_INCOMING_VARARGS target hook.

	* config/nds32/nds32.c (nds32_setup_incoming_varargs): New
	implementation for TARGET_SETUP_INCOMING_VARARGS.
	(nds32_strict_argument_naming): Refine comment.
	* config/nds32/nds32.h (TARGET_SOFT_FLOAT, TARGET_HARD_FLOAT):
	Define for future implementation.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@214861 138bc75d-0d04-0410-961f-82ee72b054a4
[NDS32] Prepare necessary varargs information in compute_stack_frame().

	* config/nds32/nds32.c (nds32_compute_stack_frame): Prepare necessary
	varargs information.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@214862 138bc75d-0d04-0410-961f-82ee72b054a4
[NDS32] Since argument pointer must be 8-byte alignment, our first parameter may
        require 4-byte offset if pushed varargs is not 8-byte aligned.

	* config/nds32/nds32.h (FIRST_PARM_OFFSET): Set proper location
	according to the value of crtl->args.pretend_args_size.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@214863 138bc75d-0d04-0410-961f-82ee72b054a4
2014-09-03  Richard Biener  <rguenther@suse.de>

	* tree-ssa-pre.c (alloc_expression_id): Use quick_grow_cleared.
	(struct bb_bitmap_sets): Remove deferred member.
	(BB_DEFERRED): Remove.
	(defer_or_phi_translate_block): Remove.
	(compute_antic_aux): Remove deferring of blocks, assert
	proper iteration order.
	(compute_antic): Do not set BB_DEFERRED.
	(eliminate): Allocate el_avail of proper size initially.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@214864 138bc75d-0d04-0410-961f-82ee72b054a4
[NDS32] Deal with nameless arguments in nds32_function_arg and nds32_function_arg_advance.

  1. We have caller prepare nameless arguments in the way of calling a normal function.

     e.g. Assume a function: void va_test (int n, ...);
          When calling "va_test (6, 11, 22, 33, 44, 55, 66);",
               r0    <- 6
               r1    <- 11
               r2    <- 22
               r3    <- 33
               r4    <- 44
               r5    <- 55
            [sp + 0] <- 66

  2. Note that we DO NOT handle it for TARGET_HARD_FLOAT case.
     The TARGET_HARD_FLOAT should push all the nameless arguments into
     stack and GCC is able to take care of them itself.
     In addition, we have not implemented hard float on trunk yet.

	* config/nds32/nds32.c (nds32_function_arg): Deal with nameless
	arguments.
	(nds32_function_arg_advance): Deal with nameless arguments.
	* config/nds32/nds32.h (NDS32_ARG_PASS_IN_REG_P): Split it into ...
	(NDS32_ARG_ENTIRE_IN_GPR_REG_P): ... this one and ...
	(NDS32_ARG_PARTIAL_IN_GPR_REG_P): ... this one.


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