static void arm_lower_for_target(void)
{
- int i;
- int n_irgs = get_irp_n_irgs();
+ size_t i, n_irgs = get_irp_n_irgs();
lower_params_t params = {
4, /* def_ptr_alignment */
/*
- * Copyright (C) 1995-2008 University of Karlsruhe. All right reserved.
+ * Copyright (C) 1995-2011 University of Karlsruhe. All right reserved.
*
* This file is part of libFirm.
*
const ir_edge_t *edge;
ir_node **df_list = NEW_ARR_F(ir_node *, 0);
ir_node **df;
- int len;
+ size_t len;
/* Add local dominance frontiers */
foreach_block_succ(blk, edge) {
* dominated by the given block.
*/
for (c = get_Block_dominated_first(blk); c; c = get_Block_dominated_next(c)) {
- int i;
+ size_t i;
ir_node **df_c_list = compute_df(c, info);
- for (i = ARR_LEN(df_c_list) - 1; i >= 0; --i) {
- ir_node *w = df_c_list[i];
+ for (i = ARR_LEN(df_c_list); i > 0;) {
+ ir_node *w = df_c_list[--i];
if (get_idom(w) != blk)
ARR_APP1(ir_node *, df_list, w);
}
/*
- * Copyright (C) 1995-2008 University of Karlsruhe. All right reserved.
+ * Copyright (C) 1995-2011 University of Karlsruhe. All right reserved.
*
* This file is part of libFirm.
*
if (!is_type_variable_size(type)) {
return get_type_size_bytes(type);
} else {
- unsigned n_entries
+ size_t n_entries
= get_initializer_compound_n_entries(initializer);
- unsigned i;
+ size_t i;
unsigned initializer_size = get_type_size_bytes(type);
for (i = 0; i < n_entries; ++i) {
ir_entity *entity = get_compound_member(type, i);
*/
static void be_gas_emit_globals(ir_type *gt, be_gas_decl_env_t *env)
{
- int i, n = get_compound_n_members(gt);
+ size_t i, n = get_compound_n_members(gt);
for (i = 0; i < n; i++) {
ir_entity *ent = get_compound_member(gt, i);
static unsigned be_compute_loop_pressure(be_loopana_t *loop_ana, ir_loop *loop,
const arch_register_class_t *cls)
{
- int i, max;
+ size_t i, max;
unsigned pressure;
be_loop_info_t *entry, key;
- DBG((dbg, LEVEL_1, "\nProcessing Loop %d\n", loop->loop_nr));
+ DBG((dbg, LEVEL_1, "\nProcessing Loop %ld\n", loop->loop_nr));
assert(get_loop_n_elements(loop) > 0);
pressure = 0;
pressure = MAX(pressure, son_pressure);
}
- DBG((dbg, LEVEL_1, "Done with loop %d, pressure %u for class %s\n", loop->loop_nr, pressure, cls->name));
+ DBG((dbg, LEVEL_1, "Done with loop %ld, pressure %u for class %s\n", loop->loop_nr, pressure, cls->name));
/* update info in set */
key.loop = loop;
/*
- * Copyright (C) 1995-2008 University of Karlsruhe. All right reserved.
+ * Copyright (C) 1995-2011 University of Karlsruhe. All right reserved.
*
* This file is part of libFirm.
*
void be_lower_for_target(void)
{
- int i;
+ size_t i;
isa_if->lower_for_target();
/* set the phase to low */
- for (i = get_irp_n_irgs() - 1; i >= 0; --i) {
- ir_graph *irg = get_irp_irg(i);
+ for (i = get_irp_n_irgs(); i > 0;) {
+ ir_graph *irg = get_irp_irg(--i);
set_irg_phase_state(irg, phase_low);
}
set_irp_phase_state(phase_low);
{
static const char suffix[] = ".prof";
- int i, num_birgs, stat_active = 0;
+ size_t i, num_birgs;
+ int stat_active = 0;
be_main_env_t env;
char prof_filename[256];
be_irg_t *birgs;
new_info->flags = old_info->flags;
if (old_info->out_infos != NULL) {
- unsigned n_outs = ARR_LEN(old_info->out_infos);
+ size_t n_outs = ARR_LEN(old_info->out_infos);
/* need dyanmic out infos? */
if (be_is_Perm(new_node)) {
new_info->out_infos = NEW_ARR_F(reg_out_info_t, n_outs);
static unsigned *normal_regs;
static int *congruence_classes;
static ir_node **block_order;
-static int n_block_order;
+static size_t n_block_order;
static int create_preferences = true;
static int create_congruence_classes = true;
static int propagate_phi_registers = true;
static void determine_block_order(void)
{
- int i;
+ size_t i;
ir_node **blocklist = be_get_cfgpostorder(irg);
- int n_blocks = ARR_LEN(blocklist);
+ size_t n_blocks = ARR_LEN(blocklist);
int dfs_num = 0;
pdeq *worklist = new_pdeq();
ir_node **order = XMALLOCN(ir_node*, n_blocks);
- int order_p = 0;
+ size_t order_p = 0;
/* clear block links... */
for (i = 0; i < n_blocks; ++i) {
/* walk blocks in reverse postorder, the costs for each block are the
* sum of the costs of its predecessors (excluding the costs on backedges
* which we can't determine) */
- for (i = n_blocks-1; i >= 0; --i) {
+ for (i = n_blocks; i > 0;) {
block_costs_t *cost_info;
- ir_node *block = blocklist[i];
+ ir_node *block = blocklist[--i];
float execfreq = (float)get_block_execfreq(execfreqs, block);
float costs = execfreq;
*/
static void be_pref_alloc_cls(void)
{
- int i;
+ size_t i;
lv = be_assure_liveness(irg);
be_liveness_assure_sets(lv);
*/
static void set_tarval_output_modes(void)
{
- int i;
+ size_t i;
- for (i = get_irp_n_modes() - 1; i >= 0; --i) {
- ir_mode *mode = get_irp_mode(i);
+ for (i = get_irp_n_modes(); i > 0;) {
+ ir_mode *mode = get_irp_mode(--i);
if (mode_is_int(mode))
set_tarval_mode_output_option(mode, &mo_integer);
static arch_env_t *ia32_init(FILE *file_handle)
{
ia32_isa_t *isa = XMALLOC(ia32_isa_t);
- int i, n;
+ size_t i, n;
set_tarval_output_modes();
static void ia32_lower_for_target(void)
{
- int n_irgs = get_irp_n_irgs();
- int i;
+ size_t i, n_irgs = get_irp_n_irgs();
lower_mode_b_config_t lower_mode_b_config = {
mode_Iu, /* lowered mode */
ia32_create_set,
static void sparc_lower_for_target(void)
{
- int i;
- int n_irgs = get_irp_n_irgs();
+ size_t i, n_irgs = get_irp_n_irgs();
lower_mode_b_config_t lower_mode_b_config = {
mode_Iu,
sparc_create_set,
#include "ident_t.h"
#include "obst.h"
+#include "irprintf.h"
/* Make types visible to allow most efficient access */
#include "entity_t.h"
ir_type *tp = get_entity_type(ent);
unsigned cc_mask = get_method_calling_convention(tp);
char buf[16];
- int size, i;
if (IS_CDECL(cc_mask))
return id_mangle3("_", id, "");
else if (IS_STDCALL(cc_mask)) {
- size = 0;
- for (i = get_method_n_params(tp) - 1; i >= 0; --i) {
- size += get_type_size_bytes(get_method_param_type(tp, i));
+ size_t i, size = 0;
+
+ for (i = get_method_n_params(tp); i > 0;) {
+ size += get_type_size_bytes(get_method_param_type(tp, --i));
}
- snprintf(buf, sizeof(buf), "@%d", size);
+ ir_snprintf(buf, sizeof(buf), "@%zu", size);
if (cc_mask & cc_reg_param)
return id_mangle3("@", id, buf);
/* iterate calls */
for (node = (ir_node*)get_irn_link(node); node != NULL;
node = (ir_node*)get_irn_link(node)) {
- int i;
+ size_t i;
assert(is_Call(node));
- for (i = get_Call_n_callees(node) - 1; i >= 0; --i) {
- ir_entity *ent = get_Call_callee(node, i);
+ for (i = get_Call_n_callees(node); i > 0;) {
+ ir_entity *ent = get_Call_callee(node, --i);
if (get_entity_irg(ent) && get_entity_link(ent) != MARK) {
set_entity_link(ent, MARK);
/*
- * Copyright (C) 1995-2008 University of Karlsruhe. All right reserved.
+ * Copyright (C) 1995-2011 University of Karlsruhe. All right reserved.
*
* This file is part of libFirm.
*
ir_type *frame_tp = get_irg_frame_type(irg);
ir_entity *ent, *list;
ir_node *frame, *sel;
- int i, n = get_class_n_members(frame_tp);
+ size_t i, n = get_class_n_members(frame_tp);
if (n <= 0)
return;
irp_reserve_resources(irp, IR_RESOURCE_ENTITY_LINK);
/* clear all entity links */
- for (i = n - 1; i >= 0; --i) {
- ent = get_class_member(frame_tp, i);
+ for (i = n; i > 0;) {
+ ent = get_class_member(frame_tp, --i);
set_entity_link(ent, NULL);
}
}
}
} else {
+ int i;
+
/* use traditionally out edges */
assure_irg_outs(irg);
/* link unused ones */
list = NULL;
- for (i = n - 1; i >= 0; --i) {
- ent = get_class_member(frame_tp, i);
+ for (i = n; i > 0;) {
+ ent = get_class_member(frame_tp, --i);
/* beware of inner functions: those are NOT unused */
if (get_entity_link(ent) == NULL && !is_method_entity(ent)) {
set_entity_link(ent, list);