reflect: Fix MakeFunc for 386 when returning a struct.

When a 386 function returns a struct, it needs to return using
an rtd instruction that pops the hidden struct parameter off
the stack.  That wasn't happening.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205551 138bc75d-0d04-0410-961f-82ee72b054a4
reflect: Rename struct field to be consistent in assembler and Go.


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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205560 138bc75d-0d04-0410-961f-82ee72b054a4
libgo: Avoid some cases of getting callers recursively.

Avoids hanging inside older versions of glibc that do not
support recurive calls to dl_iterate_phdr.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205561 138bc75d-0d04-0410-961f-82ee72b054a4
2013-12-01  Bernd Edlinger <bernd.edlinger@hotmail.de>

        * expr.c (emit_group_store): Corrected BITFIELD_END parameter.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205563 138bc75d-0d04-0410-961f-82ee72b054a4
Index: gcc/fortran/resolve.c
===================================================================
*** gcc/fortran/resolve.c	(revision 205031)
--- gcc/fortran/resolve.c	(working copy)
*************** resolve_transfer (gfc_code *code)
*** 8247,8256 ****
  	 && exp->value.op.op == INTRINSIC_PARENTHESES)
      exp = exp->value.op.op1;
  
!   if (exp && exp->expr_type == EXPR_NULL && exp->ts.type == BT_UNKNOWN)
      {
!       gfc_error ("NULL intrinsic at %L in data transfer statement requires "
! 		 "MOLD=", &exp->where);
        return;
      }
  
--- 8247,8257 ----
  	 && exp->value.op.op == INTRINSIC_PARENTHESES)
      exp = exp->value.op.op1;
  
!   if (exp && exp->expr_type == EXPR_NULL
!       && code->ext.dt)
      {
!       gfc_error ("Invalid context for NULL () intrinsic at %L",
! 		 &exp->where);
        return;
      }
  
Index: gcc/testsuite/gfortran.dg/null_5.f90
===================================================================
*** gcc/testsuite/gfortran.dg/null_5.f90	(revision 205031)
--- gcc/testsuite/gfortran.dg/null_5.f90	(working copy)
*************** subroutine test_PR34547_1 ()
*** 34,40 ****
  end subroutine test_PR34547_1
  
  subroutine test_PR34547_2 ()
!   print *, null () ! { dg-error "in data transfer statement requires MOLD" }
  end subroutine test_PR34547_2
  
  subroutine test_PR34547_3 ()
--- 34,40 ----
  end subroutine test_PR34547_1
  
  subroutine test_PR34547_2 ()
!   print *, null () ! { dg-error "Invalid context" }
  end subroutine test_PR34547_2
  
  subroutine test_PR34547_3 ()
Index: gcc/testsuite/gfortran.dg/null_6.f90
===================================================================
*** gcc/testsuite/gfortran.dg/null_6.f90	(revision 205031)
--- gcc/testsuite/gfortran.dg/null_6.f90	(working copy)
*************** end subroutine test_PR50375_2
*** 30,34 ****
  
  subroutine test_PR34547_3 ()
    integer, allocatable :: i(:)
!   print *, NULL(i)
  end subroutine test_PR34547_3
--- 30,34 ----
  
  subroutine test_PR34547_3 ()
    integer, allocatable :: i(:)
!   print *, NULL(i)    ! { dg-error "Invalid context for NULL" }
  end subroutine test_PR34547_3


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205565 138bc75d-0d04-0410-961f-82ee72b054a4
2013-12-01  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/58410
	* trans-array.c (gfc_alloc_allocatable_for_assignment): Do not
	use the array bounds of an unallocated array but set its size
	to zero instead.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205566 138bc75d-0d04-0410-961f-82ee72b054a4
2013-12-01  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/57354
	* trans-array.c (gfc_conv_resolve_dependencies): For other than
	SS_SECTION, do a dependency check if the lhs is liable to be
	reallocated.

2013-12-01  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/57354
	* gfortran.dg/realloc_on_assign_23.f90 : New test


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205567 138bc75d-0d04-0410-961f-82ee72b054a4
	* config/i386/winnt.c (i386_pe_asm_named_section): Be prepared for an
	identifier node.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205568 138bc75d-0d04-0410-961f-82ee72b054a4
	PR libfortran/59313
	* intrinsics/erfc_scaled.c (erfc_scaled_r16): Also provide for
	quadruple precision long double variant.



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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205578 138bc75d-0d04-0410-961f-82ee72b054a4
Check TARGET_LOOP_UNROLL_ADJUST while deciding unroll factor

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205580 138bc75d-0d04-0410-961f-82ee72b054a4
2013-12-02  Yvan Roux  <yvan.roux@linaro.org>

        * config/arm/arm.c (arm_preferred_reload_class): Only return LO_REGS
        when rclass is GENERAL_REGS.



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



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205582 138bc75d-0d04-0410-961f-82ee72b054a4
	PR tree-optimization/59356
	* tree-dfa.h (get_addr_base_and_unit_offset_1) <case ARRAY_REF>: Do the
	offset computation using the precision of the index type.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205585 138bc75d-0d04-0410-961f-82ee72b054a4
Add missed pointer de-reference

2013-12-02  Yuri Rumyantsev  <ysrumyan@gmail.com>

	* ipa-inline.c (check_callers): Add missed pointer de-reference.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205586 138bc75d-0d04-0410-961f-82ee72b054a4
2013-12-02  Richard Biener  <rguenther@suse.de>

	* tree-ssa-operands.c (opf_implicit): Remove.
	(opf_address_taken): New flag.
	(get_expr_operands): Remove early out, pass down
	opf_address_taken for ADDR_EXPRs, add a use operand only
	for non-opf_address_taken bases.
	(get_indirect_ref_operands): Rename to ...
	(get_mem_ref_operands): ... this.
	(get_asm_expr_operands): Rename to ...
	(get_asm_stmt_operands): ... this.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205587 138bc75d-0d04-0410-961f-82ee72b054a4
2013-12-02  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/59139
	* tree-ssa-loop-niter.c (chain_of_csts_start): Properly match
	code in get_val_for.
	(get_val_for): Use gcc_checking_asserts.

	* gcc.dg/torture/pr59139.c: New testcase.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205588 138bc75d-0d04-0410-961f-82ee72b054a4
2013-12-02  Marek Polacek  <polacek@redhat.com>

testsuite/
	* c-c++-common/ubsan/vla-1.c: Split the tests into individual
	functions.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205590 138bc75d-0d04-0410-961f-82ee72b054a4
2013-11-03  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        PR target/58115
        * function.c (invoke_set_current_function_hook): Call
        targetm.set_current_function after setting this_fn_optabs.


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