bearch: Disallow passing Projs to get_irn_ops().
[libfirm] / ir / ir / irprofile.c
index 20bd61e..8888ce9 100644 (file)
@@ -1,20 +1,6 @@
 /*
- * Copyright (C) 1995-2011 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.
+ * Copyright (C) 2012 University of Karlsruhe.
  */
 
 /**
@@ -472,7 +458,7 @@ static ir_entity *new_static_string_entity(ident *name, const char *string)
        return result;
 }
 
-void ir_profile_instrument(const char *filename)
+ir_graph *ir_profile_instrument(const char *filename)
 {
        int n, n_blocks = 0;
        ident *counter_id, *filename_id;
@@ -483,7 +469,7 @@ void ir_profile_instrument(const char *filename)
        /* Don't do anything for modules without code. Else the linker will
         * complain. */
        if (get_irp_n_irgs() == 0)
-               return;
+               return NULL;
 
        /* count the number of block first */
        n_blocks = get_irp_n_blocks();
@@ -504,7 +490,7 @@ void ir_profile_instrument(const char *filename)
                instrument_irg(irg, bblock_counts, &wd);
        }
 
-       gen_initializer_irg(ent_filename, bblock_counts, n_blocks);
+       return gen_initializer_irg(ent_filename, bblock_counts, n_blocks);
 }
 
 static unsigned int *parse_profile(const char *filename, unsigned int num_blocks)