projects
/
libfirm
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
localopt stuff for const-code irg
[libfirm]
/
ir
/
ir
/
irarch.c
diff --git
a/ir/ir/irarch.c
b/ir/ir/irarch.c
index
2adbc2b
..
db787cb
100644
(file)
--- a/
ir/ir/irarch.c
+++ b/
ir/ir/irarch.c
@@
-22,7
+22,6
@@
* @brief Machine dependent Firm optimizations.
* @date 28.9.2004
* @author Sebastian Hack, Michael Beck
* @brief Machine dependent Firm optimizations.
* @date 28.9.2004
* @author Sebastian Hack, Michael Beck
- * @version $Id$
*
* Implements "Strength Reduction of Multiplications by Integer Constants"
* by Youfeng Wu.
*
* Implements "Strength Reduction of Multiplications by Integer Constants"
* by Youfeng Wu.
@@
-282,14
+281,10
@@
static unsigned char *complement_condensed(mul_env *env, unsigned char *R, int r
*/
static ir_tarval *condensed_to_value(mul_env *env, unsigned char *R, int r)
{
*/
static ir_tarval *condensed_to_value(mul_env *env, unsigned char *R, int r)
{
- ir_tarval *res, *tv;
- int i, j;
-
- j = 0;
- tv = get_mode_one(env->mode);
- res = NULL;
- for (i = 0; i < r; ++i) {
- j = R[i];
+ ir_tarval *tv = get_mode_one(env->mode);
+ ir_tarval *res = NULL;
+ for (int i = 0; i < r; ++i) {
+ int j = R[i];
if (j) {
ir_tarval *t = new_tarval_from_long(j, mode_Iu);
tv = tarval_shl(tv, t);
if (j) {
ir_tarval *t = new_tarval_from_long(j, mode_Iu);
tv = tarval_shl(tv, t);
@@
-584,7
+579,7
@@
ir_node *arch_dep_replace_mul_with_shifts(ir_node *irn)
/* we should never do the reverse transformations again
(like x+x -> 2*x) */
irg = get_irn_irg(irn);
/* we should never do the reverse transformations again
(like x+x -> 2*x) */
irg = get_irn_irg(irn);
-
set_irg_state(irg, IR_GRAPH_STATE
_ARCH_DEP);
+
add_irg_constraints(irg, IR_GRAPH_CONSTRAINT
_ARCH_DEP);
left = get_binop_left(irn);
right = get_binop_right(irn);
left = get_binop_left(irn);
right = get_binop_right(irn);
@@
-831,7
+826,7
@@
static ir_node *replace_div_by_mulh(ir_node *div, ir_tarval *tv)
{
dbg_info *dbg = get_irn_dbg_info(div);
ir_node *n = get_binop_left(div);
{
dbg_info *dbg = get_irn_dbg_info(div);
ir_node *n = get_binop_left(div);
- ir_node *block = get_
irn_n(div, -1
);
+ ir_node *block = get_
nodes_block(div
);
ir_mode *mode = get_irn_mode(n);
int bits = get_mode_size_bits(mode);
ir_node *q;
ir_mode *mode = get_irn_mode(n);
int bits = get_mode_size_bits(mode);
ir_node *q;
@@
-937,7
+932,7
@@
ir_node *arch_dep_replace_div_by_const(ir_node *irn)
if (!mode_is_int(mode))
return irn;
if (!mode_is_int(mode))
return irn;
- block = get_
irn_n(irn, -1
);
+ block = get_
nodes_block(irn
);
dbg = get_irn_dbg_info(irn);
bits = get_mode_size_bits(mode);
dbg = get_irn_dbg_info(irn);
bits = get_mode_size_bits(mode);
@@
-1040,7
+1035,7
@@
ir_node *arch_dep_replace_mod_by_const(ir_node *irn)
left = get_Mod_left(irn);
mode = get_irn_mode(left);
left = get_Mod_left(irn);
mode = get_irn_mode(left);
- block = get_
irn_n(irn, -1
);
+ block = get_
nodes_block(irn
);
dbg = get_irn_dbg_info(irn);
bits = get_mode_size_bits(mode);
n = (bits + 7) / 8;
dbg = get_irn_dbg_info(irn);
bits = get_mode_size_bits(mode);
n = (bits + 7) / 8;