1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 19:23:23 +01:00
llvm-mirror/tools/lto
Shuxin Yang da579e3471 Add new API lto_codegen_compile_parallel().
This API is proposed by Nick Kledzik. The semantic is:

  --------------------------------------------------------------------------
   Generate code for merged module into an array of native object files. On 
   success returns a pointer to an array of NativeObjectFile.  The count 
   parameter returns the number of elements in the array.  Each element is 
   a pointer/length for a generated mach-o/ELF buffer.  The buffer is owned
   by the lto_code_gen_t and will be freed when lto_codegen_dispose() is called, 
   or lto_codegen_compile() is called again. On failure, returns NULL 
   (check lto_get_error_message() for details).

   extern const struct  NativeObjectFile*
   lto_codegen_compile_parallel(lto_code_gen_t cg, size_t *count);
  ---------------------------------------------------------------------------

  This API is currently only called on OSX platform. Linux or other Unixes
using GNU gold are not supposed to call this function, because on these systems, 
object files are fed back to linker via disk file instead of memory buffer.

  In this commit, lto_codegen_compile_parallel() simply calls
lto_codegen_compile() to return a single object file. In the near future,
this function is the entry point for compilation with partition. Linker can
blindly call this function even if partition is turned off; in this case,
compiler will return only one object file.

llvm-svn: 189297
2013-08-27 00:03:23 +00:00
..
CMakeLists.txt CMake: move lto.h install to tools/lto/CMakeLists.txt 2013-08-26 16:54:12 +00:00
lto.cpp Add new API lto_codegen_compile_parallel(). 2013-08-27 00:03:23 +00:00
lto.exports Add new API lto_codegen_compile_parallel(). 2013-08-27 00:03:23 +00:00
LTOCodeGenerator.cpp Add new API lto_codegen_compile_parallel(). 2013-08-27 00:03:23 +00:00
LTOCodeGenerator.h Add new API lto_codegen_compile_parallel(). 2013-08-27 00:03:23 +00:00
LTODisassembler.cpp libLTO: Add a utility method to initialize the disassemblers. 2012-11-24 16:59:10 +00:00
LTOModule.cpp [CodeGen] prevent abnormal on invalid attributes 2013-08-09 01:52:03 +00:00
LTOModule.h Split getOpenFile into getOpenFile and getOpenFileSlice. 2013-07-23 20:25:01 +00:00
Makefile Use @rpath for libraries rather than @executable_path on OSX. 2013-08-02 01:51:52 +00:00