bool check_condition_impl (const char * file, int line, bool condition) { const bool pass = condition; if (should_print (pass)) fprintf (stderr, "%s %s:%d\n", pass?"PASS":"******", file, line); return pass; }
// Print current ideal graph void IdealGraphPrinter::print(const char *name, Node *node, int level, bool clear_nodes) { if (!_current_method || !_should_send_method || !should_print(level)) return; // Warning, unsafe cast? _chaitin = (PhaseChaitin *)C->regalloc(); begin_head(GRAPH_ELEMENT); print_attr(GRAPH_NAME_PROPERTY, (const char *)name); end_head(); VectorSet temp_set(Thread::current()->resource_area()); head(NODES_ELEMENT); walk_nodes(node, false, &temp_set); tail(NODES_ELEMENT); head(EDGES_ELEMENT); walk_nodes(node, true, &temp_set); tail(EDGES_ELEMENT); if (C->cfg() != NULL) { head(CONTROL_FLOW_ELEMENT); for (uint i = 0; i < C->cfg()->number_of_blocks(); i++) { Block* block = C->cfg()->get_block(i); begin_head(BLOCK_ELEMENT); print_attr(BLOCK_NAME_PROPERTY, block->_pre_order); end_head(); head(SUCCESSORS_ELEMENT); for (uint s = 0; s < block->_num_succs; s++) { begin_elem(SUCCESSOR_ELEMENT); print_attr(BLOCK_NAME_PROPERTY, block->_succs[s]->_pre_order); end_elem(); } tail(SUCCESSORS_ELEMENT); head(NODES_ELEMENT); for (uint s = 0; s < block->number_of_nodes(); s++) { begin_elem(NODE_ELEMENT); print_attr(NODE_ID_PROPERTY, block->get_node(s)->_idx); end_elem(); } tail(NODES_ELEMENT); tail(BLOCK_ELEMENT); } tail(CONTROL_FLOW_ELEMENT); } tail(GRAPH_ELEMENT); _xml->flush(); }
bool check_ptr_eq_impl (const char * file, int line, const void * expected, const void * actual) { const bool pass = expected == actual; if (should_print (pass)) { if (pass) fprintf (stderr, "PASS %s:%d\n", file, line); else fprintf (stderr, "FAIL %s:%d, expected \"%p\", got \"%p\"\n", file, line, expected, actual); } return pass; }
bool check_int_eq_impl (const char * file, int line, int64_t expected, int64_t actual) { const bool pass = expected == actual; if (should_print (pass)) { if (pass) fprintf (stderr, "PASS %s:%d\n", file, line); else fprintf (stderr, "FAIL %s:%d, expected \"%"PRId64"\", got \"%"PRId64"\"\n", file, line, expected, actual); } return pass; }
bool check_streq_impl (const char * file, int line, const char * expected, const char * actual) { const bool pass = !tr_strcmp0 (expected, actual); if (should_print (pass)) { if (pass) fprintf (stderr, "PASS %s:%d\n", file, line); else fprintf (stderr, "FAIL %s:%d, expected \"%s\", got \"%s\"\n", file, line, expected?expected:" (null)", actual?actual:" (null)"); } return pass; }