libFirm 1.20
|
00001 /* 00002 * Copyright (C) 1995-2009 University of Karlsruhe. All right reserved. 00003 * 00004 * This file is part of libFirm. 00005 * 00006 * This file may be distributed and/or modified under the terms of the 00007 * GNU General Public License version 2 as published by the Free Software 00008 * Foundation and appearing in the file LICENSE.GPL included in the 00009 * packaging of this file. 00010 * 00011 * Licensees holding valid libFirm Professional Edition licenses may use 00012 * this file in accordance with the libFirm Commercial License. 00013 * Agreement provided with the Software. 00014 * 00015 * This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE 00016 * WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR 00017 * PURPOSE. 00018 */ 00019 00025 #ifndef FIRM_IR_IRVERIFY_H 00026 #define FIRM_IR_IRVERIFY_H 00027 00028 #include "firm_types.h" 00029 #include "begin.h" 00030 00042 FIRM_API int irn_verify(const ir_node *checknode); 00043 00050 FIRM_API int irn_verify_irg(const ir_node *checknode, ir_graph *irg); 00051 00057 FIRM_API int irn_verify_irg_dump(const ir_node *checknode, ir_graph *irg, 00058 const char **bad_string); 00059 00063 typedef enum irg_verify_flags_t { 00064 VERIFY_NORMAL = 0, 00065 VERIFY_ENFORCE_SSA = 1 00066 } irg_verify_flags_t; 00067 00077 FIRM_API int irg_verify(ir_graph *irg, unsigned flags); 00078 00087 FIRM_API ir_graph_pass_t *irg_verify_pass(const char *name, unsigned flags); 00088 00092 enum verify_bad_flags_t { 00093 BAD_CF = 1, 00094 BAD_DF = 2, 00095 BAD_BLOCK = 4, 00096 TUPLE = 8 00097 }; 00098 00107 FIRM_API int irg_verify_bads(ir_graph *irg, int flags); 00108 00114 FIRM_API void verify_enable_entity_tests(int enable); 00115 00118 #include "end.h" 00119 00120 #endif