/*
- * Project: libFIRM
- * File name: ir/ana/analyze_irg_agrs.c
- * Purpose: read/write analyze of graph argument, which have mode reference.
- * Author: Beyhan Veliev
- * Created:
- * CVS-ID: $Id$
- * Copyright: (c) 1998-2005 Universität Karlsruhe
- * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE.
+ * 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.
*/
/**
- * @file analyze_irg_agrs.c
- *
+ * @file
+ * @brief read/write analyze of graph argument, which have mode reference.
+ * @author Beyhan Veliev
+ * @version $Id$
*/
#ifdef HAVE_CONFIG_H
#include "config.h"
#endif
-#ifdef HAVE_MALLOC_H
-# include <malloc.h>
-#endif
-#ifdef HAVE_ALLOCA_H
-# include <alloca.h>
-#endif
#ifdef HAVE_STDLIB_H
# include <stdlib.h>
#endif
#include "array.h"
#include "irprog.h"
#include "entity_t.h"
+#include "xmalloc.h"
#include "analyze_irg_args.h"
}
else {
ir_op *op = get_irn_op(ptr);
- entity *meth_ent;
+ ir_entity *meth_ent;
if (op == op_SymConst && get_SymConst_kind(ptr) == symconst_addr_ent) {
meth_ent = get_SymConst_entity(ptr);
*
* @param irg The ir graph to analyze.
*/
-static void analyze_ent_args(entity *ent)
+static void analyze_ent_args(ir_entity *ent)
{
ir_graph *irg;
ir_node *irg_args, *arg;
*/
void analyze_irg_args(ir_graph *irg)
{
- entity *ent;
+ ir_entity *ent;
if (irg == get_const_code_irg())
return;
* Compute for a method with pointer parameter(s)
* if they will be read or written.
*/
-ptr_access_kind get_method_param_access(entity *ent, int pos)
+ptr_access_kind get_method_param_access(ir_entity *ent, int pos)
{
ir_type *mtp = get_entity_type(ent);
- int is_variadic = get_method_variadicity(mtp) == variadicity_variadic;
+#ifndef NDEBUG
+ int is_variadic = get_method_variadicity(mtp) == variadicity_variadic;
assert(0 <= pos && (is_variadic || pos < get_method_n_params(mtp)));
+#endif
if (ent->attr.mtd_attr.param_access) {
if (pos < ARR_LEN(ent->attr.mtd_attr.param_access))
*
* @param ent The entity of the ir_graph.
*/
-static void analyze_method_params_weight(entity *ent)
+static void analyze_method_params_weight(ir_entity *ent)
{
ir_type *mtp;
ir_graph *irg;
* Compute for a method with pointer parameter(s)
* if they will be read or written.
*/
-float get_method_param_weight(entity *ent, int pos)
+float get_method_param_weight(ir_entity *ent, int pos)
{
ir_type *mtp = get_entity_type(ent);
- int is_variadic = get_method_variadicity(mtp) == variadicity_variadic;
+#ifndef NDEBUG
+ int is_variadic = get_method_variadicity(mtp) == variadicity_variadic;
assert(0 <= pos && (is_variadic || pos < get_method_n_params(mtp)));
+#endif
if (ent->attr.mtd_attr.param_weight) {
if (pos < ARR_LEN(ent->attr.mtd_attr.param_weight))
*/
void analyze_irg_args_weight(ir_graph *irg)
{
- entity *ent;
+ ir_entity *ent;
ent = get_irg_entity(irg);
if (! ent)