LEA code size optimization pass (Part 1): Remove redundant address recalculations...
[oota-llvm.git] / tools / llvm-c-test / module.c
index 50e6e9c6de109e2f9c1b825908e36654bf9d6177..2661fc81d8818949ca399aeccd32b8bca4b5ebe6 100644 (file)
@@ -31,9 +31,11 @@ static LLVMModuleRef load_module(void) {
 
   if (LLVMParseBitcode(MB, &M, &msg)) {
     fprintf(stderr, "Error parsing bitcode: %s\n", msg);
+    LLVMDisposeMemoryBuffer(MB);
     exit(1);
   }
 
+  LLVMDisposeMemoryBuffer(MB);
   return M;
 }
 
@@ -58,16 +60,18 @@ int module_list_functions(void) {
     if (LLVMIsDeclaration(f)) {
       printf("FunctionDeclaration: %s\n", LLVMGetValueName(f));
     } else {
+      LLVMBasicBlockRef bb;
+      LLVMValueRef isn;
       unsigned nisn = 0;
       unsigned nbb = 0;
 
       printf("FunctionDefinition: %s [#bb=%u]\n", LLVMGetValueName(f),
              LLVMCountBasicBlocks(f));
 
-      for (LLVMBasicBlockRef bb = LLVMGetFirstBasicBlock(f); bb;
+      for (bb = LLVMGetFirstBasicBlock(f); bb;
            bb = LLVMGetNextBasicBlock(bb)) {
         nbb++;
-        for (LLVMValueRef isn = LLVMGetFirstInstruction(bb); isn;
+        for (isn = LLVMGetFirstInstruction(bb); isn;
              isn = LLVMGetNextInstruction(isn)) {
           nisn++;
           if (LLVMIsACallInst(isn)) {