//
// The LLVM Compiler Infrastructure
//
-// This file was developed by Reid Spencer and is distributed under the
-// University of Illinois Open Source License. See LICENSE.TXT for details.
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
//
//===----------------------------------------------------------------------===//
//
//===----------------------------------------------------------------------===//
#include "llvm/Module.h"
-#include "llvm/Bytecode/Archive.h"
+#include "llvm/Bitcode/Archive.h"
#include "llvm/Support/CommandLine.h"
+#include "llvm/Support/ManagedStatic.h"
#include "llvm/System/Signals.h"
#include <iostream>
#include <iomanip>
+#include <memory>
using namespace llvm;
}
int main(int argc, char **argv) {
+ llvm_shutdown_obj X; // Call llvm_shutdown() on exit.
// Have the command line options parsed and handle things
// like --help and --version.
cl::ParseCommandLineOptions(argc, argv,
- " LLVM Archive Index Generator (llvm-ranlib)\n\n"
- " This program adds or updates an index of bytecode symbols\n"
+ "LLVM Archive Index Generator (llvm-ranlib)\n\n"
+ " This program adds or updates an index of bitcode symbols\n"
" to an LLVM archive file."
);
if (!TheArchive)
throw err_msg;
- TheArchive->writeToDisk(true, false, false );
+ if (TheArchive->writeToDisk(true, false, false, &err_msg ))
+ throw err_msg;
if (Verbose)
printSymbolTable(TheArchive);