Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 352201 | Differences between
and this patch

Collapse All | Expand All

(-)i386.c (-18 / +8 lines)
Lines 4956-4974 Link Here
4956
  cum->nregs = ix86_regparm;
4956
  cum->nregs = ix86_regparm;
4957
  if (TARGET_64BIT)
4957
  if (TARGET_64BIT)
4958
    {
4958
    {
4959
      if (cum->call_abi != ix86_abi)
4959
      cum->nregs = (cum->call_abi == SYSV_ABI
4960
        cum->nregs = (ix86_abi != SYSV_ABI
4960
                   ? X86_64_REGPARM_MAX
4961
		      ? X86_64_REGPARM_MAX : X86_64_MS_REGPARM_MAX);
4961
                   : X86_64_MS_REGPARM_MAX);
4962
    }
4962
    }
4963
  if (TARGET_SSE)
4963
  if (TARGET_SSE)
4964
    {
4964
    {
4965
      cum->sse_nregs = SSE_REGPARM_MAX;
4965
      cum->sse_nregs = SSE_REGPARM_MAX;
4966
      if (TARGET_64BIT)
4966
      if (TARGET_64BIT)
4967
        {
4967
        {
4968
          if (cum->call_abi != ix86_abi)
4968
          cum->sse_nregs = (cum->call_abi == SYSV_ABI
4969
            cum->sse_nregs = (ix86_abi != SYSV_ABI
4969
                           ? X86_64_SSE_REGPARM_MAX
4970
			      ? X86_64_SSE_REGPARM_MAX
4970
                           : X86_64_MS_SSE_REGPARM_MAX);
4971
			      : X86_64_MS_SSE_REGPARM_MAX);
4972
        }
4971
        }
4973
    }
4972
    }
4974
  if (TARGET_MMX)
4973
  if (TARGET_MMX)
Lines 6086-6096 Link Here
6086
  if (mode == VOIDmode)
6085
  if (mode == VOIDmode)
6087
    return GEN_INT (cum->maybe_vaarg
6086
    return GEN_INT (cum->maybe_vaarg
6088
		    ? (cum->sse_nregs < 0
6087
		    ? (cum->sse_nregs < 0
6089
		       ? (cum->call_abi == ix86_abi
6088
		       ? X86_64_SSE_REGPARM_MAX
6090
			  ? SSE_REGPARM_MAX
6091
			  : (ix86_abi != SYSV_ABI
6092
			     ? X86_64_SSE_REGPARM_MAX
6093
			     : X86_64_MS_SSE_REGPARM_MAX))
6094
		       : cum->sse_regno)
6089
		       : cum->sse_regno)
6095
		    : -1);
6090
		    : -1);
6096
6091
Lines 6794-6805 Link Here
6794
  rtx nsse_reg;
6789
  rtx nsse_reg;
6795
  alias_set_type set;
6790
  alias_set_type set;
6796
  int i;
6791
  int i;
6797
  int regparm = ix86_regparm;
6798
6792
6799
  if (cum->call_abi != ix86_abi)
6800
    regparm = (ix86_abi != SYSV_ABI
6801
	       ? X86_64_REGPARM_MAX : X86_64_MS_REGPARM_MAX);
6802
6803
  /* GPR size of varargs save area.  */
6793
  /* GPR size of varargs save area.  */
6804
  if (cfun->va_list_gpr_size)
6794
  if (cfun->va_list_gpr_size)
6805
    ix86_varargs_gpr_size = X86_64_REGPARM_MAX * UNITS_PER_WORD;
6795
    ix86_varargs_gpr_size = X86_64_REGPARM_MAX * UNITS_PER_WORD;
Lines 6820-6826 Link Here
6820
  set = get_varargs_alias_set ();
6810
  set = get_varargs_alias_set ();
6821
6811
6822
  for (i = cum->regno;
6812
  for (i = cum->regno;
6823
       i < regparm
6813
       i < X86_64_REGPARM_MAX
6824
       && i < cum->regno + cfun->va_list_gpr_size / UNITS_PER_WORD;
6814
       && i < cum->regno + cfun->va_list_gpr_size / UNITS_PER_WORD;
6825
       i++)
6815
       i++)
6826
    {
6816
    {

Return to bug 352201