mirror of git://gcc.gnu.org/git/gcc.git
re PR target/69706 (internal compiler error: in extract_constrain_insn, at recog.c:2246)
PR target/69706 * config/sparc/sparc.c (NWORDS_UP): Rename to... (CEIL_NWORDS): ...this. Use CEIL macro. (compute_fp_layout): Adjust to above renaming. (function_arg_union_value): Likewise. (sparc_arg_partial_bytes): Likewise. (sparc_function_arg_advance): Likewise. From-SVN: r233833
This commit is contained in:
parent
9cb37fca64
commit
f3c7a94580
|
|
@ -1,4 +1,14 @@
|
||||||
2016-02-28 Jeff Law <law@redhat.com>
|
2016-02-29 Eric Botcazou <ebotcazou@adacore.com>
|
||||||
|
|
||||||
|
PR target/69706
|
||||||
|
* config/sparc/sparc.c (NWORDS_UP): Rename to...
|
||||||
|
(CEIL_NWORDS): ...this. Use CEIL macro.
|
||||||
|
(compute_fp_layout): Adjust to above renaming.
|
||||||
|
(function_arg_union_value): Likewise.
|
||||||
|
(sparc_arg_partial_bytes): Likewise.
|
||||||
|
(sparc_function_arg_advance): Likewise.
|
||||||
|
|
||||||
|
2016-02-29 Jeff Law <law@redhat.com>
|
||||||
|
|
||||||
PR tree-optimization/70005
|
PR tree-optimization/70005
|
||||||
* tree-ssa-uncprop.c (associate_equivalences_with_edges): Handle case
|
* tree-ssa-uncprop.c (associate_equivalences_with_edges): Handle case
|
||||||
|
|
|
||||||
|
|
@ -6086,7 +6086,7 @@ conventions. */
|
||||||
/* Maximum number of fp regs for args. */
|
/* Maximum number of fp regs for args. */
|
||||||
#define SPARC_FP_ARG_MAX 16
|
#define SPARC_FP_ARG_MAX 16
|
||||||
/* Number of words (partially) occupied for a given size in units. */
|
/* Number of words (partially) occupied for a given size in units. */
|
||||||
#define NWORDS_UP(SIZE) (((SIZE) + UNITS_PER_WORD - 1) / UNITS_PER_WORD)
|
#define CEIL_NWORDS(SIZE) CEIL((SIZE), UNITS_PER_WORD)
|
||||||
|
|
||||||
/* Handle the INIT_CUMULATIVE_ARGS macro.
|
/* Handle the INIT_CUMULATIVE_ARGS macro.
|
||||||
Initialize a variable CUM of type CUMULATIVE_ARGS
|
Initialize a variable CUM of type CUMULATIVE_ARGS
|
||||||
|
|
@ -6429,7 +6429,7 @@ compute_fp_layout (const_tree field, HOST_WIDE_INT bitpos,
|
||||||
else
|
else
|
||||||
nregs = 1;
|
nregs = 1;
|
||||||
|
|
||||||
nslots = NWORDS_UP (nregs * GET_MODE_SIZE (mode));
|
nslots = CEIL_NWORDS (nregs * GET_MODE_SIZE (mode));
|
||||||
|
|
||||||
if (nslots > SPARC_FP_ARG_MAX - this_slotno)
|
if (nslots > SPARC_FP_ARG_MAX - this_slotno)
|
||||||
{
|
{
|
||||||
|
|
@ -6661,7 +6661,7 @@ static rtx
|
||||||
function_arg_union_value (int size, machine_mode mode, int slotno,
|
function_arg_union_value (int size, machine_mode mode, int slotno,
|
||||||
int regno)
|
int regno)
|
||||||
{
|
{
|
||||||
int nwords = NWORDS_UP (size), i;
|
int nwords = CEIL_NWORDS (size), i;
|
||||||
rtx regs;
|
rtx regs;
|
||||||
|
|
||||||
/* See comment in previous function for empty structures. */
|
/* See comment in previous function for empty structures. */
|
||||||
|
|
@ -6893,8 +6893,8 @@ sparc_arg_partial_bytes (cumulative_args_t cum, machine_mode mode,
|
||||||
if (TARGET_ARCH32)
|
if (TARGET_ARCH32)
|
||||||
{
|
{
|
||||||
if ((slotno + (mode == BLKmode
|
if ((slotno + (mode == BLKmode
|
||||||
? NWORDS_UP (int_size_in_bytes (type))
|
? CEIL_NWORDS (int_size_in_bytes (type))
|
||||||
: NWORDS_UP (GET_MODE_SIZE (mode))))
|
: CEIL_NWORDS (GET_MODE_SIZE (mode))))
|
||||||
> SPARC_INT_ARG_MAX)
|
> SPARC_INT_ARG_MAX)
|
||||||
return (SPARC_INT_ARG_MAX - slotno) * UNITS_PER_WORD;
|
return (SPARC_INT_ARG_MAX - slotno) * UNITS_PER_WORD;
|
||||||
}
|
}
|
||||||
|
|
@ -7004,8 +7004,8 @@ sparc_function_arg_advance (cumulative_args_t cum_v, machine_mode mode,
|
||||||
|
|
||||||
if (TARGET_ARCH32)
|
if (TARGET_ARCH32)
|
||||||
cum->words += (mode == BLKmode
|
cum->words += (mode == BLKmode
|
||||||
? NWORDS_UP (int_size_in_bytes (type))
|
? CEIL_NWORDS (int_size_in_bytes (type))
|
||||||
: NWORDS_UP (GET_MODE_SIZE (mode)));
|
: CEIL_NWORDS (GET_MODE_SIZE (mode)));
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (type && AGGREGATE_TYPE_P (type))
|
if (type && AGGREGATE_TYPE_P (type))
|
||||||
|
|
@ -7021,8 +7021,8 @@ sparc_function_arg_advance (cumulative_args_t cum_v, machine_mode mode,
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
cum->words += (mode == BLKmode
|
cum->words += (mode == BLKmode
|
||||||
? NWORDS_UP (int_size_in_bytes (type))
|
? CEIL_NWORDS (int_size_in_bytes (type))
|
||||||
: NWORDS_UP (GET_MODE_SIZE (mode)));
|
: CEIL_NWORDS (GET_MODE_SIZE (mode)));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue