Make fehler159 compilable.
[libfirm] / ir / opt / proc_cloning.c
index 62a2e5c..c011e57 100644 (file)
@@ -50,8 +50,7 @@
 #include "irnode_t.h"
 #include "irtools.h"
 #include "irgmod.h"
-#include "array.h"
-#include "xmalloc.h"
+#include "array_t.h"
 
 /**
  * This struct contains the information quadruple for a Call, which we need to
@@ -193,6 +192,10 @@ static void collect_irg_calls(ir_node *call, void *env) {
                if (get_entity_visibility(callee) == visibility_external_allocated)
                        return;
 
+               /* we cannot clone calls to weak functions */
+               if (get_entity_additional_properties(callee) & mtp_property_weak)
+                       return;
+
                process_call(call, callee, hmap);
        }
 }