summaryrefslogtreecommitdiffstats
path: root/gnu/llvm/tools/llvm-c-test/object.c
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/llvm/tools/llvm-c-test/object.c')
-rw-r--r--gnu/llvm/tools/llvm-c-test/object.c87
1 files changed, 0 insertions, 87 deletions
diff --git a/gnu/llvm/tools/llvm-c-test/object.c b/gnu/llvm/tools/llvm-c-test/object.c
deleted file mode 100644
index 809ad54f872..00000000000
--- a/gnu/llvm/tools/llvm-c-test/object.c
+++ /dev/null
@@ -1,87 +0,0 @@
-/*===-- object.c - tool for testing libLLVM and llvm-c API ----------------===*\
-|* *|
-|* The LLVM Compiler Infrastructure *|
-|* *|
-|* This file is distributed under the University of Illinois Open Source *|
-|* License. See LICENSE.TXT for details. *|
-|* *|
-|*===----------------------------------------------------------------------===*|
-|* *|
-|* This file implements the --object-list-sections and --object-list-symbols *|
-|* commands in llvm-c-test. *|
-|* *|
-\*===----------------------------------------------------------------------===*/
-
-#include "llvm-c-test.h"
-#include "llvm-c/Object.h"
-#include <stdio.h>
-#include <stdlib.h>
-
-int llvm_object_list_sections(void) {
- LLVMMemoryBufferRef MB;
- LLVMObjectFileRef O;
- LLVMSectionIteratorRef sect;
- char *msg = NULL;
-
- if (LLVMCreateMemoryBufferWithSTDIN(&MB, &msg)) {
- fprintf(stderr, "Error reading file: %s\n", msg);
- exit(1);
- }
-
- O = LLVMCreateObjectFile(MB);
- if (!O) {
- fprintf(stderr, "Error reading object\n");
- exit(1);
- }
-
- sect = LLVMGetSections(O);
- while (!LLVMIsSectionIteratorAtEnd(O, sect)) {
- printf("'%s': @0x%08" PRIx64 " +%" PRIu64 "\n", LLVMGetSectionName(sect),
- LLVMGetSectionAddress(sect), LLVMGetSectionSize(sect));
-
- LLVMMoveToNextSection(sect);
- }
-
- LLVMDisposeSectionIterator(sect);
-
- LLVMDisposeObjectFile(O);
-
- return 0;
-}
-
-int llvm_object_list_symbols(void) {
- LLVMMemoryBufferRef MB;
- LLVMObjectFileRef O;
- LLVMSectionIteratorRef sect;
- LLVMSymbolIteratorRef sym;
- char *msg = NULL;
-
- if (LLVMCreateMemoryBufferWithSTDIN(&MB, &msg)) {
- fprintf(stderr, "Error reading file: %s\n", msg);
- exit(1);
- }
-
- O = LLVMCreateObjectFile(MB);
- if (!O) {
- fprintf(stderr, "Error reading object\n");
- exit(1);
- }
-
- sect = LLVMGetSections(O);
- sym = LLVMGetSymbols(O);
- while (!LLVMIsSymbolIteratorAtEnd(O, sym)) {
-
- LLVMMoveToContainingSection(sect, sym);
- printf("%s @0x%08" PRIx64 " +%" PRIu64 " (%s)\n", LLVMGetSymbolName(sym),
- LLVMGetSymbolAddress(sym), LLVMGetSymbolSize(sym),
- LLVMGetSectionName(sect));
-
- LLVMMoveToNextSymbol(sym);
- }
-
- LLVMDisposeSymbolIterator(sym);
-
- LLVMDisposeObjectFile(O);
-
- return 0;
-}