aboutsummaryrefslogtreecommitdiff
path: root/gcc/config/sparc/sparc.c
diff options
context:
space:
mode:
authorEric Botcazou <ebotcazou@gcc.gnu.org>2016-03-01 00:22:26 +0000
committerEric Botcazou <ebotcazou@gcc.gnu.org>2016-03-01 00:22:26 +0000
commitf3c7a94580c1ca9d78bc246be19750ebd047124f (patch)
treeaf6b8491e6031953830d47c152177d95f2822fcd /gcc/config/sparc/sparc.c
parent9cb37fca64a1a2a180b7e1508e4c3ec617ed98cf (diff)
downloadgcc-f3c7a94580c1ca9d78bc246be19750ebd047124f.zip
gcc-f3c7a94580c1ca9d78bc246be19750ebd047124f.tar.gz
gcc-f3c7a94580c1ca9d78bc246be19750ebd047124f.tar.bz2
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
Diffstat (limited to 'gcc/config/sparc/sparc.c')
-rw-r--r--gcc/config/sparc/sparc.c18
1 files changed, 9 insertions, 9 deletions
diff --git a/gcc/config/sparc/sparc.c b/gcc/config/sparc/sparc.c
index d077680..080be61 100644
--- a/gcc/config/sparc/sparc.c
+++ b/gcc/config/sparc/sparc.c
@@ -6086,7 +6086,7 @@ conventions. */
/* Maximum number of fp regs for args. */
#define SPARC_FP_ARG_MAX 16
/* 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.
Initialize a variable CUM of type CUMULATIVE_ARGS
@@ -6429,7 +6429,7 @@ compute_fp_layout (const_tree field, HOST_WIDE_INT bitpos,
else
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)
{
@@ -6661,7 +6661,7 @@ static rtx
function_arg_union_value (int size, machine_mode mode, int slotno,
int regno)
{
- int nwords = NWORDS_UP (size), i;
+ int nwords = CEIL_NWORDS (size), i;
rtx regs;
/* 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 ((slotno + (mode == BLKmode
- ? NWORDS_UP (int_size_in_bytes (type))
- : NWORDS_UP (GET_MODE_SIZE (mode))))
+ ? CEIL_NWORDS (int_size_in_bytes (type))
+ : CEIL_NWORDS (GET_MODE_SIZE (mode))))
> SPARC_INT_ARG_MAX)
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)
cum->words += (mode == BLKmode
- ? NWORDS_UP (int_size_in_bytes (type))
- : NWORDS_UP (GET_MODE_SIZE (mode)));
+ ? CEIL_NWORDS (int_size_in_bytes (type))
+ : CEIL_NWORDS (GET_MODE_SIZE (mode)));
else
{
if (type && AGGREGATE_TYPE_P (type))
@@ -7021,8 +7021,8 @@ sparc_function_arg_advance (cumulative_args_t cum_v, machine_mode mode,
}
else
cum->words += (mode == BLKmode
- ? NWORDS_UP (int_size_in_bytes (type))
- : NWORDS_UP (GET_MODE_SIZE (mode)));
+ ? CEIL_NWORDS (int_size_in_bytes (type))
+ : CEIL_NWORDS (GET_MODE_SIZE (mode)));
}
}