projects
/
libfirm
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
irverify: check that switch_table != NULL
[libfirm]
/
ir
/
ir
/
irdump.c
diff --git
a/ir/ir/irdump.c
b/ir/ir/irdump.c
index
3cc3224
..
0396708
100644
(file)
--- a/
ir/ir/irdump.c
+++ b/
ir/ir/irdump.c
@@
-22,7
+22,6
@@
* @brief Write vcg representation of firm to file.
* @author Martin Trapp, Christian Schaefer, Goetz Lindenmaier, Hubert Schmidt,
* Matthias Braun
* @brief Write vcg representation of firm to file.
* @author Martin Trapp, Christian Schaefer, Goetz Lindenmaier, Hubert Schmidt,
* Matthias Braun
- * @version $Id$
*/
#include "config.h"
*/
#include "config.h"
@@
-691,17
+690,6
@@
void dump_node_opcode(FILE *F, ir_node *n)
}
break;
}
break;
- case iro_Proj: {
- ir_node *pred = get_Proj_pred(n);
-
- if (get_irn_opcode(pred) == iro_Cond
- && get_Proj_proj(n) == get_Cond_default_proj(pred)
- && get_irn_mode(get_Cond_selector(pred)) != mode_b)
- fprintf(F, "defProj");
- else
- goto default_case;
- } break;
-
case iro_Load:
if (get_Load_unaligned(n) == align_non_aligned)
fprintf(F, "ua");
case iro_Load:
if (get_Load_unaligned(n) == align_non_aligned)
fprintf(F, "ua");
@@
-739,7
+727,6
@@
void dump_node_opcode(FILE *F, ir_node *n)
break;
default:
break;
default:
-default_case:
fprintf(F, "%s", get_irn_opname(n));
}
}
fprintf(F, "%s", get_irn_opname(n));
}
}
@@
-1903,14
+1890,12
@@
static void dump_out_edge(ir_node *n, void *env)
}
}
}
}
-static void dump_loop_label(FILE *F, ir_loop *loop)
+static void dump_loop_label(FILE *F,
const
ir_loop *loop)
{
{
- fprintf(F, "loop %u, %lu sons, %lu nodes",
- get_loop_depth(loop), (unsigned long) get_loop_n_sons(loop),
- (unsigned long) get_loop_n_nodes(loop));
+ fprintf(F, "loop %u", get_loop_depth(loop));
}
}
-static void dump_loop_info(FILE *F, ir_loop *loop)
+static void dump_loop_info(FILE *F,
const
ir_loop *loop)
{
fprintf(F, " info1: \"");
fprintf(F, " loop nr: %ld", get_loop_loop_nr(loop));
{
fprintf(F, " info1: \"");
fprintf(F, " loop nr: %ld", get_loop_loop_nr(loop));
@@
-1920,7
+1905,7
@@
static void dump_loop_info(FILE *F, ir_loop *loop)
fprintf(F, "\"");
}
fprintf(F, "\"");
}
-static void dump_loop_node(FILE *F, ir_loop *loop)
+static void dump_loop_node(FILE *F,
const
ir_loop *loop)
{
fprintf(F, "node: {title: \"");
PRINT_LOOPID(loop);
{
fprintf(F, "node: {title: \"");
PRINT_LOOPID(loop);
@@
-1931,44
+1916,52
@@
static void dump_loop_node(FILE *F, ir_loop *loop)
fprintf(F, "}\n");
}
fprintf(F, "}\n");
}
-static void dump_loop_node_edge(FILE *F, ir_loop *loop, size_t i)
+static void dump_loop_node_edge(FILE *F,
const
ir_loop *loop, size_t i)
{
assert(loop);
fprintf(F, "edge: {sourcename: \"");
PRINT_LOOPID(loop);
fprintf(F, "\" targetname: \"");
{
assert(loop);
fprintf(F, "edge: {sourcename: \"");
PRINT_LOOPID(loop);
fprintf(F, "\" targetname: \"");
- PRINT_NODEID(get_loop_
node(loop, i)
);
+ PRINT_NODEID(get_loop_
element(loop, i).node
);
fprintf(F, "\" color: green");
fprintf(F, "}\n");
}
fprintf(F, "\" color: green");
fprintf(F, "}\n");
}
-static void dump_loop_son_edge(FILE *F, ir_loop *loop, size_t i)
+static void dump_loop_son_edge(FILE *F,
const
ir_loop *loop, size_t i)
{
assert(loop);
fprintf(F, "edge: {sourcename: \"");
PRINT_LOOPID(loop);
fprintf(F, "\" targetname: \"");
{
assert(loop);
fprintf(F, "edge: {sourcename: \"");
PRINT_LOOPID(loop);
fprintf(F, "\" targetname: \"");
- PRINT_LOOPID(get_loop_son(loop, i));
- ir_fprintf(F, "\" color: darkgreen label: \"%zu\"}\n",
- get_loop_element_pos(loop, get_loop_son(loop, i)));
+ PRINT_LOOPID(get_loop_element(loop, i).son);
+ ir_fprintf(F, "\" color: darkgreen label: \"%zu\"}\n", i);
}
}
-static void dump_loops(FILE *F, ir_loop *loop)
+static void dump_loops(FILE *F,
const
ir_loop *loop)
{
size_t i;
{
size_t i;
+ size_t n_elements = get_loop_n_elements(loop);
/* dump this loop node */
dump_loop_node(F, loop);
/* dump edges to nodes in loop -- only if it is a real loop */
if (get_loop_depth(loop) != 0) {
/* dump this loop node */
dump_loop_node(F, loop);
/* dump edges to nodes in loop -- only if it is a real loop */
if (get_loop_depth(loop) != 0) {
- for (i = get_loop_n_nodes(loop); i > 0;) {
+ for (i = n_elements; i > 0;) {
+ loop_element element;
--i;
--i;
+ element = get_loop_element(loop, i);
+ if (*element.kind != k_ir_node)
+ continue;
dump_loop_node_edge(F, loop, i);
}
}
dump_loop_node_edge(F, loop, i);
}
}
- for (i = get_loop_n_sons(loop); i > 0;) {
- --i;
- dump_loops(F, get_loop_son(loop, i));
+ for (i = n_elements; i > 0;) {
+ loop_element element;
+ --i;
+ element = get_loop_element(loop, i);
+ if (*element.kind != k_ir_loop)
+ continue;
+ dump_loops(F, element.son);
dump_loop_son_edge(F, loop, i);
}
}
dump_loop_son_edge(F, loop, i);
}
}