1 //===- gccld.h - Utility functions header file ------------------*- C++ -*-===//
3 // The LLVM Compiler Infrastructure
5 // This file was developed by the LLVM research group and is distributed under
6 // the University of Illinois Open Source License. See LICENSE.TXT for details.
8 //===----------------------------------------------------------------------===//
10 // This file contains function prototypes for the functions in util.cpp.
12 //===----------------------------------------------------------------------===//
14 #include "llvm/Module.h"
23 PrintAndReturn (const char *progname,
24 const std::string &Message,
25 const std::string &Extra = "");
28 GetAllDefinedSymbols (Module *M, std::set<std::string> &DefinedSymbols);
31 GetAllUndefinedSymbols(Module *M, std::set<std::string> &UndefinedSymbols);
34 CopyEnv (char ** const envp);
37 RemoveEnv (const char * name, char ** const envp);
40 GenerateBytecode (Module * M,
46 GenerateAssembly (const std::string & OutputFilename,
47 const std::string & InputFilename,
48 const std::string & llc,
51 GenerateNative (const std::string & OutputFilename,
52 const std::string & InputFilename,
53 const std::vector<std::string> & Libraries,
54 const std::vector<std::string> & LibPaths,
55 const std::string & gcc,
59 LoadObject (const std::string & FN, std::string &OutErrorMessage);
62 LinkLibraries (const char * progname,
64 const std::vector<std::string> & Libraries,
65 const std::vector<std::string> & LibPaths,
69 LinkFiles (const char * progname,
71 const std::vector<std::string> & Files,
74 } // End llvm namespace