X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;ds=sidebyside;f=tools%2Fllvm-c-test%2Fmodule.c;h=2661fc81d8818949ca399aeccd32b8bca4b5ebe6;hb=ccbfd5b18a79a07229f11af478843eae16ac9b26;hp=50e6e9c6de109e2f9c1b825908e36654bf9d6177;hpb=2bef1a6b25d938210547cd0f5ba4a08abdad2583;p=oota-llvm.git diff --git a/tools/llvm-c-test/module.c b/tools/llvm-c-test/module.c index 50e6e9c6de1..2661fc81d88 100644 --- a/tools/llvm-c-test/module.c +++ b/tools/llvm-c-test/module.c @@ -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)) {