X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fir%2Firopt_dbg.h;h=d37f91928edfdb9df56401dd8306ce5057989801;hb=eb08138c6b80c169945568e4414f491a9bc20388;hp=c567ea6636a21e3b9abd8b8d5351c654c04a081f;hpb=7ca3ea53a92e084499a439f299d224efdaae6546;p=libfirm diff --git a/ir/ir/iropt_dbg.h b/ir/ir/iropt_dbg.h index c567ea663..d37f91928 100644 --- a/ir/ir/iropt_dbg.h +++ b/ir/ir/iropt_dbg.h @@ -1,3 +1,22 @@ +/* + * Copyright (C) 1995-2007 University of Karlsruhe. All right reserved. + * + * This file is part of libFirm. + * + * This file may be distributed and/or modified under the terms of the + * GNU General Public License version 2 as published by the Free Software + * Foundation and appearing in the file LICENSE.GPL included in the + * packaging of this file. + * + * Licensees holding valid libFirm Professional Edition licenses may use + * this file in accordance with the libFirm Commercial License. + * Agreement provided with the Software. + * + * This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE + * WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE. + */ + /* * Project: libFIRM * File name: ir/ir/iropt_dbg.h @@ -7,7 +26,6 @@ * Created: * CVS-ID: $Id$ * Copyright: (c) 2001-2003 Universität Karlsruhe - * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE. */ #ifndef _IROPT_DBG_H_ @@ -153,7 +171,7 @@ } while(0) /** - * Merge the debuig info due to a Phi optimization. + * Merge the debug info due to a Phi optimization. * A Phi node was replaced by one of its input (the only meaningful) * * @param phi the Phi node that will be replaced @@ -166,6 +184,20 @@ } while(0) +/** + * Merge the debug info due to a Sync optimization. + * A Sync node was replaced by one of its input (the only meaningful) + * + * @param sync the Sync node that will be replaced + * @param n in Sync Input that will replace Sync + */ +#define DBG_OPT_SYNC(sync, n) \ + do { \ + hook_merge_nodes(&n, 1, &sync, 1, HOOK_OPT_SYNC); \ + __dbg_info_merge_sets(&n, 1, &sync, 1, dbg_opt_ssa); \ + } while(0) + + /** * Merge the debug info due to Write-after-Write optimization: * Store oldst will be removed, because Store st overwrites it. @@ -329,7 +361,7 @@ * A node was replaced by a constant due to a Confimation. * * @param oldn the old node - * @param c the new constnt node + * @param c the new constant node */ #define DBG_OPT_CONFIRM_C(oldn, c) \ do { \ @@ -337,6 +369,16 @@ __dbg_info_merge_pair(c, oldn, dbg_opt_confirm); \ } while(0) +/** + * A exception exdge was removed due to a Confirmation prove. + * + * @param oldn the old node + */ +#define DBG_OPT_EXC_REM(oldn) \ + do { \ + hook_merge_nodes(NULL, 0, &oldn, 1, HOOK_OPT_EXC_REM); \ + } while(0) + /** * A node could be evaluated to a value due to a Confirm. * This will lead to a constant evaluation.