[1/2] Move choose_mult_variant declaration and dependent declarations to expmed.h

* expmed.c (mult_variant, choose_mult_variant): Move declaration to...
	* expmed.h: ... Here.

From-SVN: r238337
This commit is contained in:
Kyrylo Tkachov 2016-07-14 13:57:05 +00:00 committed by Kyrylo Tkachov
parent 21bcd7bedd
commit ec573d17b8
3 changed files with 15 additions and 9 deletions

View File

@ -1,3 +1,8 @@
2016-07-14 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* expmed.c (mult_variant, choose_mult_variant): Move declaration to...
* expmed.h: ... Here.
2016-07-14 Jan Hubicka <hubicka@ucw.cz>
* gimple.h (stmt_can_terminate_bb_p): New function.

View File

@ -2482,16 +2482,8 @@ expand_variable_shift (enum tree_code code, machine_mode mode, rtx shifted,
}
/* Indicates the type of fixup needed after a constant multiplication.
BASIC_VARIANT means no fixup is needed, NEGATE_VARIANT means that
the result should be negated, and ADD_VARIANT means that the
multiplicand should be added to the result. */
enum mult_variant {basic_variant, negate_variant, add_variant};
static void synth_mult (struct algorithm *, unsigned HOST_WIDE_INT,
const struct mult_cost *, machine_mode mode);
static bool choose_mult_variant (machine_mode, HOST_WIDE_INT,
struct algorithm *, enum mult_variant *, int);
static rtx expand_mult_const (machine_mode, rtx, HOST_WIDE_INT, rtx,
const struct algorithm *, enum mult_variant);
static unsigned HOST_WIDE_INT invert_mod2n (unsigned HOST_WIDE_INT, int);
@ -2981,7 +2973,7 @@ synth_mult (struct algorithm *alg_out, unsigned HOST_WIDE_INT t,
Return true if the cheapest of these cost less than MULT_COST,
describing the algorithm in *ALG and final fixup in *VARIANT. */
static bool
bool
choose_mult_variant (machine_mode mode, HOST_WIDE_INT val,
struct algorithm *alg, enum mult_variant *variant,
int mult_cost)

View File

@ -35,6 +35,15 @@ enum alg_code {
alg_impossible
};
/* Indicates the type of fixup needed after a constant multiplication.
BASIC_VARIANT means no fixup is needed, NEGATE_VARIANT means that
the result should be negated, and ADD_VARIANT means that the
multiplicand should be added to the result. */
enum mult_variant {basic_variant, negate_variant, add_variant};
bool choose_mult_variant (machine_mode, HOST_WIDE_INT,
struct algorithm *, enum mult_variant *, int);
/* This structure holds the "cost" of a multiply sequence. The
"cost" field holds the total rtx_cost of every operator in the
synthetic multiplication sequence, hence cost(a op b) is defined