Rafael Espindola
1592f3ae24
Add a lto_codegen_compile_to_file to avoid producing a file, reading it to
...
memory and writing it back to disk.
llvm-svn: 128108
2011-03-22 20:57:13 +00:00
Rafael Espindola
7f301833ee
Add a special streamer to libLTO that just records symbols definitions and
...
uses.
The result produced by the streamer is used to give the linker more accurate
information and to add to llvm.compiler.used. The second improvement removes
the need for the user to add __attribute__((used)) to functions only used in
inline asm. The first one lets us build firefox with LTO on Darwin :-)
llvm-svn: 126830
2011-03-02 04:14:42 +00:00
Rafael Espindola
58423e8aad
Switch LTO to use MC. This takes the linking of libxul.so from about 7m to
...
6m30.
llvm-svn: 126426
2011-02-24 21:04:06 +00:00
Dan Gohman
f9e09104f1
Make tool_output_file's raw_ostream instance a member variable instead
...
of a base class.
This makes it possible to unregister the file from FilesToRemove when
the file is done. Also, this eliminates the need for
formatted_tool_output_file.
llvm-svn: 112706
2010-09-01 14:20:41 +00:00
Rafael Espindola
f345661269
Make it possible to set the cpu used for codegen.
...
llvm-svn: 110759
2010-08-11 00:15:13 +00:00
Rafael Espindola
c61143ae75
Make it possible to set the flags passed to the assembler.
...
Nick, please review.
llvm-svn: 110705
2010-08-10 18:55:09 +00:00
Douglas Gregor
4d982f10b1
Fix another -Wmismatched-tags warning
...
llvm-svn: 92017
2009-12-23 18:27:13 +00:00
Douglas Gregor
c325f34d98
Fix struct/class mismatch for LTOModule and LTOCodeGenerator, detected by Clang
...
llvm-svn: 92004
2009-12-23 17:05:07 +00:00
Nick Lewycky
51179612f2
Remove the GCC path from libLTO. This has been superceded by setAssemblerPath.
...
llvm-svn: 77960
2009-08-03 07:16:42 +00:00
David Greene
9c8a1b9b90
Have asm printers use formatted_raw_ostream directly to avoid a
...
dynamic_cast<>.
llvm-svn: 75670
2009-07-14 20:18:05 +00:00
Owen Anderson
9e109b6077
Maintain the old LTO API, by using the global context.
...
llvm-svn: 74678
2009-07-02 00:31:14 +00:00
Owen Anderson
4fa7e54329
Make the use of const with respect to LLVMContext sane. Hopefully this is the last time, for the
...
moment, that I will need to make far-reaching changes.
llvm-svn: 74655
2009-07-01 23:13:44 +00:00
Owen Anderson
cf112e59c3
Hold the LLVMContext by reference rather than by pointer.
...
llvm-svn: 74640
2009-07-01 21:22:36 +00:00
Owen Anderson
81b8dabb53
Add a pointer to the owning LLVMContext to Module. This requires threading LLVMContext through a lot
...
of the bitcode reader and ASM parser APIs, as well as supporting it in all of the tools.
Patches for Clang and LLVM-GCC to follow.
llvm-svn: 74614
2009-07-01 16:58:40 +00:00
Nick Kledzik
870391a06e
<rdar://problem/6940611> libLTO.dylib needs to let linker specify path to assembler
...
Add lto_codegen_set_assembler_path() API which allows the linker to specify the
path to the assembler tool to run. When assembler is used (instead of compiler)
different command line options are used.
Add LTO_API_VERSION #define so clients (linkers) can conditionalize use of new APIs.
llvm-svn: 72823
2009-06-04 00:28:45 +00:00
Nick Lewycky
503cfd4ace
Allow a user of libLTO to specify the full pathname of the gcc executable to
...
run when assembling.
Wire this up to the gold plugin. You can now pass --plugin-opt gcc=/foo/bar/gcc
and it will run that gcc instead of looking for it on the path.
llvm-svn: 70490
2009-04-30 15:24:09 +00:00
Nick Lewycky
d0b10fefba
Remove warning about declaration does not declare anything. This class was
...
already declared in the other headers.
llvm-svn: 60261
2008-11-30 00:36:34 +00:00
Owen Anderson
2c1d54952b
Use raw_ostream throughout the AsmPrinter.
...
llvm-svn: 55092
2008-08-21 00:14:44 +00:00
Nick Kledzik
59b22302bb
fix dangling pointer and argv off by one errors. Add support for --disable-inlining
...
llvm-svn: 53249
2008-07-08 21:14:10 +00:00
Devang Patel
af72f3b02e
Provide a hook to set the code generation debug options to investigate lto failures.
...
llvm-svn: 53119
2008-07-03 22:53:14 +00:00
Devang Patel
41de5d3b17
Rename new lto2 tool as lto.
...
lto2->lto
llvm-svn: 52912
2008-06-30 18:15:01 +00:00