235089bdaefabcef9e9cde28eb3b0d8937b12a0d |
|
07-Aug-2013 |
Shuxin Yang <shuxin.llvm@gmail.com> |
Change public functions of LTOCodeGenerator from ret-false-on-succ to ret-true-on-succ. As of this revision, all functions of LTOCodeGenerator are consistent in ret-true-on-succ. Tested on multiple OSes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187864 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
0880939a590abab124c8520aaa4ac5a46f1937c6 |
|
06-Aug-2013 |
Shuxin Yang <shuxin.llvm@gmail.com> |
Change private functions of LTOCodeGenerator from ret-false-on-succ to ret-true-on-succ. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187819 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
01d7203ef8316fdd71c3cec59f8e68fb869e0dbf |
|
06-Aug-2013 |
Tom Stellard <thomas.stellard@amd.com> |
Factor FlattenCFG out from SimplifyCFG Patch by: Mei Ye git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187764 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
57e6b2d1f3de0bf459e96f7038e692d624f7e580 |
|
27-Jul-2013 |
Tom Stellard <thomas.stellard@amd.com> |
SimplifyCFG: Use parallel-and and parallel-or mode to consolidate branch conditions Merge consecutive if-regions if they contain identical statements. Both transformations reduce number of branches. The transformation is guarded by a target-hook, and is currently enabled only for +R600, but the correctness has been tested on X86 target using a variety of CPU benchmarks. Patch by: Mei Ye git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187278 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
c679d6b461932966eb99b218845fd69df2257e82 |
|
23-Jul-2013 |
Shuxin Yang <shuxin.llvm@gmail.com> |
remove unnecessary space git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186931 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
8945f753edf14b998fe57fd0a8b675b61aeb0164 |
|
22-Jul-2013 |
Shuxin Yang <shuxin.llvm@gmail.com> |
Initialize/Register LTO passes to enable flags like -print-after=<lto-pass> There already have two "dead" functions, initialize{IPO|IPA}, defined for similar purpose. I decide not to call these two functions for two reasons: o. they don't cover all LTO passes (which will soon be separated into IPO and post-IPO passes) o. We have not yet figured out the right passes and the ordering for IPO and post-IPO stages, meaning this change is only for the time being. Since LTO passes are registered, we are now able to print IR before and after particular point. For OSX users: -------------- "...-Wl,-mllvm -Wl,-print-after=<pass-name>" will print IR after the specified pass. For Other UNIX with GNU gold linker: ------------------------------------ "-Wl,-plugin-opt=-print-after=<pass-name>" should work. (NOTE: no need for "-Wl,-mllvm") Strip "-Wl," if flags are fed directly to linker instead of clang/clang++. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186853 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
c1b49b56d4132efa2e06deb8f23508d0de4c8800 |
|
16-Jul-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Add a wrapper for open. This centralizes the handling of O_BINARY and opens the way for hiding more differences (like how open behaves with directories). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186447 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
c6fbaa97016beb90a7508dd6442c83565c27c241 |
|
09-Jul-2013 |
Bill Wendling <isanbard@gmail.com> |
Don't run internalize if we're outputing bit-code and not an object file. The problem with running internalize before we're ready to output an object file is that it may change a 'weak' symbol into an internal one, but that symbol could be needed by an external object file --- e.g. with arclite. <rdar://problem/14334895> git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185882 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
1276b396130a0cdbbb8e6c05a6e43123df18ed60 |
|
05-Jul-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Use sys::fs::createTemporaryFile. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185719 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
99cb622041a0839c7dfcf0263c5102a305a0fdb5 |
|
18-Jun-2013 |
Bill Wendling <isanbard@gmail.com> |
Use pointers to the MCAsmInfo and MCRegInfo. Someone may want to do something crazy, like replace these objects if they change or something. No functionality change intended. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184175 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
68c0efac35021516bf46b2793e56e0d9d804c9e8 |
|
17-Jun-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Don't use PathV1.h in LTOCodeGenerator.cpp This patch also adds a simpler version of sys::fs::remove and a tool_output_file constructor for when we already have an open file. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184095 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
b7e2188f7fb9a1c1cb6dbd32b206e44b11b4a157 |
|
13-Jun-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Don't use PathV1.h in Signals.h. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183947 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
cc5a882c96af6e36bc029b7ff69f62f94e2d041d |
|
29-May-2013 |
Bill Wendling <isanbard@gmail.com> |
Don't reach into the middle of TargetMachine and cache one of its ivars. Not only does this break encapsulation, it's gross. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182876 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
8c18a6fe370f7f1fb3208a12434e862fc5e9b2e6 |
|
23-May-2013 |
Bill Wendling <isanbard@gmail.com> |
The command line options need to be processed before we create the TargetMachine. Move the processing of the command line options to right before we create the TargetMachine instead of after. <rdar://problem/13468287> git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182611 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
fca88631650af3e862f7df012f34d9c724a9ed7c |
|
04-May-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Last batch of cleanups to Linker.h. Update comments, fix * placement, fix method names that are not used in clang, add a linkInModule that takes a Mode and put it in Linker.cpp. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181099 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
105193772d84057493968310c1d1c6dd0f1ae735 |
|
04-May-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Don't construct or delete a module on the Linker. The linker is now responsible only for actually linking the modules, it is up to the clients to create and destroy them. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181098 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
ae8f1f3fde1d9618bfcf8f629ffd68c26015f921 |
|
04-May-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Remove unused members and constructor arguments. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181096 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
d4ee3920c928f51e4c4d70b4fae97f4d99be2583 |
|
24-Apr-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Don't produce an empty llvm.compiler.used in LTO. LTO was always creating an empty llvm.compiler.used. With this patch we now first check if there is anything to be added first. Unfortunately, there is no good way to test libLTO in isolation as it needs gold or ld64, but there are bots doing LTO builds that found this problem. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@180202 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
d696544eacbab22277924bc5f5acd85f615f31ea |
|
30-Mar-2013 |
Bob Wilson <bob.wilson@apple.com> |
Run the ObjCARCContract pass for LTO. <rdar://problem/13538084> git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178385 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
a991b254f71173f3911be3b313b5304dd9b3b862 |
|
13-Mar-2013 |
Lang Hames <lhames@gmail.com> |
Make LTO codegen use a PassManager, rather than a FunctionPassManager, for the codegen passes. This brings it in to line with clang and llc's codegen setup, and tidies up the code. If I understand correctly, adding ModulePasses to a FunctionPassManager is bogus. It only seems to explode if an added ModulePass depends on a FunctionPass though, which might be why this code has survived so long. Fixes <rdar://problem/13386816>. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176977 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
6303b661b390ef37185f7e5f5cdd352287caf1fc |
|
28-Feb-2013 |
Bill Wendling <isanbard@gmail.com> |
Add the -disable-opt option to LTO. This adds: - Consistency with opt (which supports the same option with the same meaning and description). - Debugging gold plugin-based linking without optimizations getting in the way. - Debugging programs linked with the gold plugin while preserving the original debug info. - Fine-grained control over LTO passes using the gold plugin in combination with opt (or clang/dragonegg). Patch by Cristiano Giuffrida! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176257 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
1c1ff3b7ff3b473acd1b92970ceeed3c62fbee5a |
|
15-Jan-2013 |
Nadav Rotem <nrotem@apple.com> |
LTO: Also init TTI for codegen passes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@172499 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
aeef83c6afa1e18d1cf9d359cc678ca0ad556175 |
|
07-Jan-2013 |
Chandler Carruth <chandlerc@gmail.com> |
Switch TargetTransformInfo from an immutable analysis pass that requires a TargetMachine to construct (and thus isn't always available), to an analysis group that supports layered implementations much like AliasAnalysis does. This is a pretty massive change, with a few parts that I was unable to easily separate (sorry), so I'll walk through it. The first step of this conversion was to make TargetTransformInfo an analysis group, and to sink the nonce implementations in ScalarTargetTransformInfo and VectorTargetTranformInfo into a NoTargetTransformInfo pass. This allows other passes to add a hard requirement on TTI, and assume they will always get at least on implementation. The TargetTransformInfo analysis group leverages the delegation chaining trick that AliasAnalysis uses, where the base class for the analysis group delegates to the previous analysis *pass*, allowing all but tho NoFoo analysis passes to only implement the parts of the interfaces they support. It also introduces a new trick where each pass in the group retains a pointer to the top-most pass that has been initialized. This allows passes to implement one API in terms of another API and benefit when some other pass above them in the stack has more precise results for the second API. The second step of this conversion is to create a pass that implements the TargetTransformInfo analysis using the target-independent abstractions in the code generator. This replaces the ScalarTargetTransformImpl and VectorTargetTransformImpl classes in lib/Target with a single pass in lib/CodeGen called BasicTargetTransformInfo. This class actually provides most of the TTI functionality, basing it upon the TargetLowering abstraction and other information in the target independent code generator. The third step of the conversion adds support to all TargetMachines to register custom analysis passes. This allows building those passes with access to TargetLowering or other target-specific classes, and it also allows each target to customize the set of analysis passes desired in the pass manager. The baseline LLVMTargetMachine implements this interface to add the BasicTTI pass to the pass manager, and all of the tools that want to support target-aware TTI passes call this routine on whatever target machine they end up with to add the appropriate passes. The fourth step of the conversion created target-specific TTI analysis passes for the X86 and ARM backends. These passes contain the custom logic that was previously in their extensions of the ScalarTargetTransformInfo and VectorTargetTransformInfo interfaces. I separated them into their own file, as now all of the interface bits are private and they just expose a function to create the pass itself. Then I extended these target machines to set up a custom set of analysis passes, first adding BasicTTI as a fallback, and then adding their customized TTI implementations. The fourth step required logic that was shared between the target independent layer and the specific targets to move to a different interface, as they no longer derive from each other. As a consequence, a helper functions were added to TargetLowering representing the common logic needed both in the target implementation and the codegen implementation of the TTI pass. While technically this is the only change that could have been committed separately, it would have been a nightmare to extract. The final step of the conversion was just to delete all the old boilerplate. This got rid of the ScalarTargetTransformInfo and VectorTargetTransformInfo classes, all of the support in all of the targets for producing instances of them, and all of the support in the tools for manually constructing a pass based around them. Now that TTI is a relatively normal analysis group, two things become straightforward. First, we can sink it into lib/Analysis which is a more natural layer for it to live. Second, clients of this interface can depend on it *always* being available which will simplify their code and behavior. These (and other) simplifications will follow in subsequent commits, this one is clearly big enough. Finally, I'm very aware that much of the comments and documentation needs to be updated. As soon as I had this working, and plausibly well commented, I wanted to get it committed and in front of the build bots. I'll be doing a few passes over documentation later if it sticks. Commits to update DragonEgg and Clang will be made presently. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171681 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
b24ce3ec45be18dda4dd5d1d848871ef680b7f72 |
|
05-Jan-2013 |
Chandler Carruth <chandlerc@gmail.com> |
Fix another place where we build the TTI pass to the new interface. Sorry for the noise here, 'make check' doesn't build this code. =/ git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171623 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
0b8c9a80f20772c3793201ab5b251d3520b9cea3 |
|
02-Jan-2013 |
Chandler Carruth <chandlerc@gmail.com> |
Move all of the header files which are involved in modelling the LLVM IR into their new header subdirectory: include/llvm/IR. This matches the directory structure of lib, and begins to correct a long standing point of file layout clutter in LLVM. There are still more header files to move here, but I wanted to handle them in separate commits to make tracking what files make sense at each layer easier. The only really questionable files here are the target intrinsic tablegen files. But that's a battle I'd rather not fight today. I've updated both CMake and Makefile build systems (I think, and my tests think, but I may have missed something). I've also re-sorted the includes throughout the project. I'll be committing updates to Clang, DragonEgg, and Polly momentarily. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171366 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
7f00f87767036e74445aad0164eea13cf2642610 |
|
02-Jan-2013 |
Chandler Carruth <chandlerc@gmail.com> |
Sort a few more #include lines in tools/... unittests/... and utils/... git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171363 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
f2a68db4264690b0ccb197e54af3414054b42e51 |
|
11-Dec-2012 |
NAKAMURA Takumi <geek4civic@gmail.com> |
llvm/tools: Add #include "llvm/TargetTransformInfo.h" git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169817 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
50f318384c4db1419f9c48d85af350260c4976b8 |
|
10-Dec-2012 |
Bill Wendling <isanbard@gmail.com> |
Revert r169656. The linker will call `lto_codegen_add_must_preserve_symbol' on all globals that should be kept around. The linker will pretend that a dylib is being created. <rdar://problem/12528059> git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169770 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
12a38adc58fe16217f194dc151970c89de0e73b4 |
|
10-Dec-2012 |
Bill Wendling <isanbard@gmail.com> |
Revert to old behavior until linker can pass export-dynamic option. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169720 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
f62b9cd8905fd04e78775e29a01f41667286e67c |
|
08-Dec-2012 |
Bill Wendling <isanbard@gmail.com> |
Add the `lto_codegen_set_export_dynamic' function. This function sets the `_exportDynamic' ivar. When that's set, we export all symbols (e.g. we don't run the internalize pass). This is equivalent to the `--export-dynamic' linker flag in GNU land: --export-dynamic When creating a dynamically linked executable, add all symbols to the dynamic symbol table. The dynamic symbol table is the set of symbols which are visible from dynamic objects at run time. If you do not use this option, the dynamic symbol table will normally contain only those symbols which are referenced by some dynamic object mentioned in the link. If you use dlopen to load a dynamic object which needs to refer back to the symbols defined by the program, rather than some other dynamic object, then you will probably need to use this option when linking the program itself. The Darwin linker will support this via the `-export_dynamic' flag. We should modify clang to support this via the `-rdynamic' flag. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169656 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
f010c464a11444733ec67e31aace8bcebeaf2588 |
|
04-Dec-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Sort the #include lines for tools/... Again, tools are trickier to pick the main module header for than library source files. I've started to follow the pattern of using LLVMContext.h when it is included as a stub for program source files. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169252 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
6eda0813459547fe8094dd5d31f7dd2214b5ca7a |
|
29-Nov-2012 |
Pedro Artigas <partigas@apple.com> |
One more step towards making doInitialization and doFinalization useful for start up and clean up module passes, now that ASAN and TSAN are fixed the tests pass git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168905 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
9780d352b9108d49097970f6686fd61aba58d7fc |
|
27-Nov-2012 |
Owen Anderson <resistor@mac.com> |
Revert r168635 "Step towards implementation of pass manager with doInitialization and doFinalization per module detangled from runOn?? calls, still has temporary code not to break ASAN to be removed when that pass conforms to the proposed model". It appears to have broken at least one buildbot. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168654 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
0d30d30d58253de6b8836a11effcfc38d7566841 |
|
27-Nov-2012 |
Owen Anderson <resistor@mac.com> |
Step towards implementation of pass manager with doInitialization and doFinalization per module detangled from runOn?? calls, still has temporary code not to break ASAN to be removed when that pass conforms to the proposed model Patch by Pedro Artigas, with feedback from by Chandler Carruth. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168635 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
40b6fdb81e12b40dd41c9f9f07befb60ec7291c3 |
|
15-Nov-2012 |
Owen Anderson <resistor@mac.com> |
Add doInitialization and doFinalization methods to ModulePass's, to allow them to be re-initialized and reused on multiple Module's. Patch by Pedro Artigas. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168008 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
cbd9a19b5d6ff93efa82c467508ede78b8af3bac |
|
19-Oct-2012 |
Nadav Rotem <nrotem@apple.com> |
Reapply the TargerTransformInfo changes, minus the changes to LSR and Lowerinvoke. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@166248 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
3b9a911efcf280950f878a050728450423875639 |
|
18-Oct-2012 |
Bob Wilson <bob.wilson@apple.com> |
Temporarily revert the TargetTransform changes. The TargetTransform changes are breaking LTO bootstraps of clang. I am working with Nadav to figure out the problem, but I am reverting it for now to get our buildbots working. This reverts svn commits: 165665 165669 165670 165786 165787 165997 and I have also reverted clang svn 165741 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@166168 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
88bcf797abebb941fe9ace6de50eb7ede80d5ea7 |
|
16-Oct-2012 |
Nadav Rotem <nrotem@apple.com> |
LTO also needs to initialize the TargetTransform infrastructure. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165997 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
47ed8a161caa898cc00c85c8f8a063a0e18d8915 |
|
12-Oct-2012 |
Bob Wilson <bob.wilson@apple.com> |
Set default CPU for Darwin targets with LTO. <rdar://problem/12457841> This is a temporary hack until Bill's project to record command line options in the LLVM IR is ready. Clang currently sets a default CPU but that isn't recorded anywhere and it doesn't get used in the final LTO compilation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165809 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
791cfc211a9801002bfda6b3eb4de7e041f04f53 |
|
08-Oct-2012 |
Micah Villmow <villmow@gmail.com> |
Move TargetData to DataLayout. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165403 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
0b95a9949ba6d9823be202c384c60ab9ef9404d8 |
|
06-Sep-2012 |
Bill Wendling <isanbard@gmail.com> |
Explicitly erase the file from disk if something bad happened. <rdar://problem/12184899> git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163349 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
0ca36afc9d30aa2fe550750b2c3f1d3acf8c9fed |
|
09-Aug-2012 |
Bill Wendling <isanbard@gmail.com> |
Remove some coding violations. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161530 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
eda3fc673450552808edfbf076d6bf26798acc64 |
|
07-Aug-2012 |
Bill Wendling <isanbard@gmail.com> |
Reduce indentation by early exiting. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161356 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
9ac0aaa6afe4162b4db32833f9f176ac05ce6f8f |
|
06-Aug-2012 |
Bill Wendling <isanbard@gmail.com> |
Add a way to grab the target options from the LTO command line. When the command line target options were removed from the LLVM libraries, LTO lost its ability to specify things like `-disable-fp-elim'. Add this back by adding the command line variables to the `lto' project. <rdar://problem/12038729> git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161353 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
4f56a30e0d604a3081c1e696467e57784267bc20 |
|
30-May-2012 |
David Blaikie <dblaikie@gmail.com> |
Reinstate -O3 for LTO. This broke in r144788 when the CodeGenOpt option was moved from everywhere else (specifically, from addPassesToEmitFile) to createTargetMachine. Since LTOCodeGenerator wasn't passing the 4th argument, when the 4th parameter became the 3rd, it silently continued to compile (int->bool conversion) but meant something completely different. This change preserves the existing (accidental) and previous (default) semantics of the addPassesToEmitFile and restores the previous/intended CodeGenOpt argument by passing it appropriately to createTargetMachine. (discovered by pending changes to -Wconversion to catch constant->bool conversions) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157705 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
4d2e9d9a1c213db144785f386ce661914d17afb6 |
|
16-Apr-2012 |
Rafael Espindola <rafael.espindola@gmail.com> |
Remove lto_codegen_set_whole_program_optimization. It is a work in progress, so we don't want it to show up in the stable 3.1 interface. While at it, add a comment about why LTOCodeGenerator manually creates the internalize pass. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154807 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
64fae7587ad7cb8082ca5615fd061a4e4d3f711e |
|
10-Apr-2012 |
Bill Wendling <isanbard@gmail.com> |
Revert the 'EnableInitializing' flag. There is debate on whether we should run that pass by default in LTO. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154356 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
64d5b282c92b3599c56ef987d6f6971611d716e6 |
|
10-Apr-2012 |
Bill Wendling <isanbard@gmail.com> |
Apply the scope restrictions after parsing the command line options. There may be some which are used in that function. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154348 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
3029a0c56a1e4249746ff6b54d825e88fee6cddf |
|
09-Apr-2012 |
Bill Wendling <isanbard@gmail.com> |
Add a hook to turn on the internalize pass through the LTO interface. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154306 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
97d990323607d6eb50a84f672b2169ac4ba1697d |
|
05-Apr-2012 |
Bill Wendling <isanbard@gmail.com> |
The internalize pass can be dangerous for LTO. Consider the following program: $ cat main.c void foo(void) { } int main(int argc, char *argv[]) { foo(); return 0; } $ cat bundle.c extern void foo(void); void bar(void) { foo(); } $ clang -o main main.c $ clang -o bundle.so bundle.c -bundle -bundle_loader ./main $ nm -m bundle.so 0000000000000f40 (__TEXT,__text) external _bar (undefined) external _foo (from executable) (undefined) external dyld_stub_binder (from libSystem) $ clang -o main main.c -O4 $ clang -o bundle.so bundle.c -bundle -bundle_loader ./main Undefined symbols for architecture x86_64: "_foo", referenced from: _bar in bundle-elQN6d.o ld: symbol(s) not found for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation) The linker was told that the 'foo' in 'main' was 'internal' and had no uses, so it was dead stripped. Another situation is something like: define void @foo() { ret void } define void @bar() { call asm volatile "call _foo" ... ret void } The only use of 'foo' is inside of an inline ASM call. Since we don't look inside those for uses of functions, we don't specify this as a "use." Get around this by not invoking the 'internalize' pass by default. This is an admitted hack for LTO correctness. <rdar://problem/11185386> git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154124 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
3197b4453d214aa96de3a42da8f8fe189fff2077 |
|
03-Apr-2012 |
Bill Wendling <isanbard@gmail.com> |
Add an option to turn off the expensive GVN load PRE part of GVN. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153902 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
7baa27d3b331c9388bc81995c819c289a3c6fe7e |
|
31-Mar-2012 |
Bill Wendling <isanbard@gmail.com> |
Move trivial functions into the class definition. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153810 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
deee238128ac2c2ddda1aa942127f9f378030306 |
|
31-Mar-2012 |
Bill Wendling <isanbard@gmail.com> |
Trim headers. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153809 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
c94c5626926161a9258f6af7e4243ca13b3bc988 |
|
31-Mar-2012 |
Bill Wendling <isanbard@gmail.com> |
Indent according to LLVM's style guide. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153808 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
ab53bc76fd0f4863c9bdccf666fe8eed3d6bf702 |
|
31-Mar-2012 |
Bill Wendling <isanbard@gmail.com> |
Cleanup whitespace and trim some of the #includes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153807 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
f2cc2ee449bf5756a10959d130414e087a16555d |
|
31-Mar-2012 |
Bill Wendling <isanbard@gmail.com> |
These strings aren't 'const char *' but 'char *'. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153805 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
76b13ed403ccda3ccbe7d17096e314ae83709b7f |
|
31-Mar-2012 |
Bill Wendling <isanbard@gmail.com> |
Cleanup whitespace. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153804 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
caf71d41851fa9f3efb04123de893c1f7961eed5 |
|
31-Mar-2012 |
Bill Wendling <isanbard@gmail.com> |
Free the codegen options when deleting LTO code generator object. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153803 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
4d6ccb5f68cd7c6418a209f1fa4dbade569e4493 |
|
20-Jan-2012 |
David Blaikie <dblaikie@gmail.com> |
More dead code removal (using -Wunreachable-code) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148578 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
8a8d479214745c82ef00f08d4e4f1c173b5f9ce2 |
|
02-Dec-2011 |
Nick Lewycky <nicholas@mxc.ca> |
Move global variables in TargetMachine into new TargetOptions class. As an API change, now you need a TargetOptions object to create a TargetMachine. Clang patch to follow. One small functionality change in PTX. PTX had commented out the machine verifier parts in their copy of printAndVerify. That now calls the version in LLVMTargetMachine. Users of PTX who need verification disabled should rely on not passing the command-line flag to enable it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145714 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
988fdc5f28692a0c4ee9f1b5f85f51f19272d63f |
|
05-Nov-2011 |
Peter Collingbourne <peter@pcc.me.uk> |
Now that the linker supports lazily materialising globals, don't materialise them in LTO. I observed a ~0.5-1% speedup for an LTO link of opt. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143784 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
0173864d8a87d9243d304fbf91b556e20b5a32fc |
|
01-Nov-2011 |
Sebastian Pop <spop@codeaurora.org> |
rename getHostTriple into getDefaultTargetTriple git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143502 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
3e74d6fdd248e20a280f1dff3da9a6c689c2c4c3 |
|
24-Aug-2011 |
Evan Cheng <evan.cheng@apple.com> |
Move TargetRegistry and TargetSelect from Target to Support where they belong. These are strictly utilities for registering targets and components. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138450 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
3f0e2377609e916d77e192fff2badc7f6c05be4f |
|
18-Aug-2011 |
John Criswell <criswell@uiuc.edu> |
Fixed compilation warning on Linux by fixing the type of a return value. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137913 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
c684e83e4554bfaf6180426f86b9253b65dd46ec |
|
02-Aug-2011 |
Rafael Espindola <rafael.espindola@gmail.com> |
Move methods in PassManagerBuilder offline. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136727 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
3d453ac1317f910b0589d87c061f056be29e36cd |
|
02-Aug-2011 |
Rafael Espindola <rafael.espindola@gmail.com> |
move PassManagerBuilder.h to IPO. This is a non intuitive place to put it, but it solves a layering violation since things in Support are not supposed to use things in Transforms. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136726 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
fce6b5058afd20dff33da1a1cc7bc14f0a230f82 |
|
25-Jul-2011 |
Nick Lewycky <nicholas@mxc.ca> |
Fix typo. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135971 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
e78085a3c03de648a481e9751c3094c517bd7123 |
|
22-Jul-2011 |
Evan Cheng <evan.cheng@apple.com> |
Combine all MC initialization routines into one. e.g. InitializeX86MCAsmInfo, InitializeX86MCInstrInfo, etc. are combined into InitializeX86TargetMC. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135812 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
203576aa0cb9d8bf2d2e4d910ebab4b7a63262ae |
|
20-Jul-2011 |
Evan Cheng <evan.cheng@apple.com> |
Goodbye TargetAsmInfo. This eliminate last bit of CodeGen and Target in llvm-mc. There is still a bit more refactoring left to do in Targets. But we are now very close to fixing all the layering issues in MC. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135611 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
e76a33b9567d78a5744dc52fcec3a6056d6fb576 |
|
20-Jul-2011 |
Evan Cheng <evan.cheng@apple.com> |
Add MCObjectFileInfo and sink the MCSections initialization code from TargetLoweringObjectFileImpl down to MCObjectFileInfo. TargetAsmInfo is done to one last method. It's *almost* gone! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135569 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
439661395fd2a2a832dba01c65bc88718528313c |
|
19-Jul-2011 |
Evan Cheng <evan.cheng@apple.com> |
Introduce MCCodeGenInfo, which keeps information that can affect codegen (including compilation, assembly). Move relocation model Reloc::Model from TargetMachine to MCCodeGenInfo so it's accessible even without TargetMachine. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135468 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
0e6a052331f674dd70e28af41f654a7874405eab |
|
18-Jul-2011 |
Evan Cheng <evan.cheng@apple.com> |
Sink getDwarfRegNum, getLLVMRegNum, getSEHRegNum from TargetRegisterInfo down to MCRegisterInfo. Also initialize the mapping at construction time. This patch eliminate TargetRegisterInfo from TargetAsmInfo. It's another step towards fixing the layering violation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135424 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
db125cfaf57cc83e7dd7453de2d509bc8efd0e5e |
|
18-Jul-2011 |
Chris Lattner <sabre@nondot.org> |
land David Blaikie's patch to de-constify Type, with a few tweaks. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135375 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
1abf2cb59b8d63415780a03329307c0997b2670c |
|
15-Jul-2011 |
Evan Cheng <evan.cheng@apple.com> |
Rename createAsmInfo to createMCAsmInfo and move registration code to MCTargetDesc to prepare for next round of changes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135219 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
bf843e6974007a9a125453a61a2c4a64ee3a6186 |
|
12-Jul-2011 |
Cameron Zwarich <zwarich@apple.com> |
Fix LTO after the recent MC subtarget refactoring. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134930 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
276365dd4bc0c2160f91fd8062ae1fc90c86c324 |
|
30-Jun-2011 |
Evan Cheng <evan.cheng@apple.com> |
Fix the ridiculous SubtargetFeatures API where it implicitly expects CPU name to be the first encoded as the first feature. It then uses the CPU name to look up features / scheduling itineray even though clients know full well the CPU name being used to query these properties. The fix is to just have the clients explictly pass the CPU name! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134127 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
ab8be96fd30ca9396e6b84fdddf1ac6208984cad |
|
29-Jun-2011 |
Evan Cheng <evan.cheng@apple.com> |
Sink SubtargetFeature and TargetInstrItineraries (renamed MCInstrItineraries) into MC. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134049 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
817a01ffb24504f5b00fdac9d79aa034c918f28b |
|
22-May-2011 |
Chris Lattner <sabre@nondot.org> |
switch bugpoint and liblto to PassManagerBuilder. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131821 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
6421a8815e14189121a5e20731fd005ea08793e1 |
|
22-Mar-2011 |
Rafael Espindola <rafael.espindola@gmail.com> |
Add a lto_codegen_compile_to_file to avoid producing a file, reading it to memory and writing it back to disk. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128108 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
11d1803770f54dad441007a6ebafc70cb9395695 |
|
22-Mar-2011 |
Rafael Espindola <rafael.espindola@gmail.com> |
We don't need a null terminator for the output file. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128098 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
f19d7a7af3f10b6d43f9e8b0271f0f836a33d52c |
|
18-Mar-2011 |
Rafael Espindola <rafael.espindola@gmail.com> |
Use lazy parsing in LTO. Unfortunately this is only a 3% time saving for 'ar'. Have to figure out how to make libLTO even lazier. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127901 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
38c4e535493363b96eac47af9e7c056530137bea |
|
02-Mar-2011 |
Rafael Espindola <rafael.espindola@gmail.com> |
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 :-) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126830 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
e9efea1194691580c74520aad48887d95fd0ce1b |
|
24-Feb-2011 |
Rafael Espindola <rafael.espindola@gmail.com> |
Switch LTO to use MC. This takes the linking of libxul.so from about 7m to 6m30. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126426 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
cd6c93ec48937ab4f76dfd3bf5dc7e68ed781508 |
|
20-Feb-2011 |
Rafael Espindola <rafael.espindola@gmail.com> |
Fix some memory leaks and avoid looking in the hash tables twice. libxul links in 7m0.403s. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126085 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
2e3066b319866fbc8798bd0e56b535ba1f82620d |
|
12-Feb-2011 |
Rafael Espindola <rafael.espindola@gmail.com> |
Preserve aliases if needed. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125439 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
d7401b35e3a4d08e43b4ab81dffd58099a37c90d |
|
12-Feb-2011 |
Rafael Espindola <rafael.espindola@gmail.com> |
Fix a silly bug I introduced when dropping std::string. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125420 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
ef1860a117b4a35918eb9793a7b94715e12a3a42 |
|
11-Feb-2011 |
Rafael Espindola <rafael.espindola@gmail.com> |
Remove std::string version of getNameWithPrefix. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125363 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
3ff9563c3e391954b2e224afcf8b2b0fcc3888aa |
|
16-Dec-2010 |
Michael J. Spencer <bigcheesegs@gmail.com> |
MemoryBuffer now return an error_code and returns a OwningPtr<MemoryBuffer> via an out parm. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121958 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
89b9372605db2ce3b0085c84089e389f7bc1fbdd |
|
10-Dec-2010 |
Rafael Espindola <rafael.espindola@gmail.com> |
Fixed version of 121434 with no new memory leaks. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121471 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
f7fd4aa2610f46467369de07f3ec669561d79be0 |
|
10-Dec-2010 |
Rafael Espindola <rafael.espindola@gmail.com> |
Revert my previous patch to make the valgrind bots happy. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121461 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
1c952b9cc98e84b28f68f0f6cf11197263f89863 |
|
10-Dec-2010 |
Rafael Espindola <rafael.espindola@gmail.com> |
Initial support for the cfi directives. This is just enough to get f: .cfi_startproc nop .cfi_endproc assembled (on ELF). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121434 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
f2f516fc2680168caac9981a4dd17cc37c639c71 |
|
09-Dec-2010 |
Michael J. Spencer <bigcheesegs@gmail.com> |
More code not compiled by CMake. :(. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121387 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
9267d140dead8feec68f8503076fb9c743cce0f1 |
|
06-Dec-2010 |
Devang Patel <dpatel@apple.com> |
Do not try luck by using given name to create temporary file. In parallel builds it may not work. This time for .s file. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121016 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
b7bbd461223924e7fa05d98dbeadfc4b4a0093d1 |
|
04-Dec-2010 |
Devang Patel <dpatel@apple.com> |
Do not try luck by using given name to create temporary file. In parallel builds it may not work. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120860 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
3cc52ea33c0b96d1682f14fc45c45b57df0f39b6 |
|
29-Nov-2010 |
Michael J. Spencer <bigcheesegs@gmail.com> |
I swear I did a make clean and make before committing all this... git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120304 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
9f36c4e1562c3ad6bf9faac496446970d86f7cc4 |
|
07-Oct-2010 |
Dan Gohman <gohman@apple.com> |
This file needs ToolOutputFile.h too. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115976 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
d4c454317a38d65957edebe62bfc69fc8d9885e8 |
|
01-Sep-2010 |
Dan Gohman <gohman@apple.com> |
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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112706 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
f29140106f74d15ba357aa0a7f109adc939c3104 |
|
20-Aug-2010 |
Dan Gohman <gohman@apple.com> |
Convert tools to use tool_output_file, and introduce error checking to places which previously lacked it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111651 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
2d643ef32891859ec73b6eea2959748f5ebc3af7 |
|
11-Aug-2010 |
Rafael Espindola <rafael.espindola@gmail.com> |
Make it possible to set the cpu used for codegen. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110759 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
98197e55c10176c3ef9100f7d852abbd2347225f |
|
10-Aug-2010 |
Rafael Espindola <rafael.espindola@gmail.com> |
Make it possible to set the flags passed to the assembler. Nick, please review. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110705 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
d27047f87dae7c6eb59069b1e5d1368a0b2db5ff |
|
27-May-2010 |
Dan Gohman <gohman@apple.com> |
Eliminate some unnessary Path::exists() calls. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@104888 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
4b7416b75db2a4b80ccffe6e15c0d7b6996a8201 |
|
27-May-2010 |
Dan Gohman <gohman@apple.com> |
When handling raw_ostream errors manually, use clear_error() so that raw_ostream doesn't try to do its own error handling. Also, close the raw_ostream before checking for errors so that any errors that occur during closing are caught by the manual check. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@104882 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
81043ee5dc4cca470db8d45e080ba0a38efbffc2 |
|
11-May-2010 |
Bill Wendling <isanbard@gmail.com> |
The getDefaultSubtargetFeatures method of SubtargetFeature did actually return a string of features for that target. However LTO was using that string to pass into the "create target machine" stuff. That stuff needed the feature string to be in a particular form. In particular, it needed the CPU specified first and then the attributes. If there isn't a CPU specified, it required it to be blank -- e.g., ",+altivec". Yuck. Modify the getDefaultSubtargetFeatures method to be a non-static member function. For all attributes for a specific subtarget, it will add them in like normal. It will also take a CPU string so that it can satisfy this horrible syntax. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103451 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
57b6e9eb6ccb757b74beeb377c7c16d08468d3e8 |
|
02-May-2010 |
Duncan Sands <baldrick@free.fr> |
Remove the -enable-sjlj-eh option, which doesn't do anything. Remove the -enable-eh option which is only used by the JIT, and replace it with -jit-enable-eh. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102865 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
c3d0e0c8efad3277433f81b415d441f758467871 |
|
27-Apr-2010 |
Bill Wendling <isanbard@gmail.com> |
r98363 deleted a '!' when cleaning up whitespace. This caused globals which are *not* declarations to *not* be placed in the "preserve" list. <rdar://problem/7870735> git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102405 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
43bc70ebef7faafbe986dbc5950db0e56e9f05b4 |
|
17-Apr-2010 |
Dan Gohman <gohman@apple.com> |
Fix more -Wcast-qual warnings. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101656 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
51ecc389a9b6ae82ff799a62cde882629fad53b0 |
|
24-Mar-2010 |
Dan Gohman <gohman@apple.com> |
Trim #includes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99416 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
b87c305fa77650ee581d4a8c65a0757f88002441 |
|
12-Mar-2010 |
Chris Lattner <sabre@nondot.org> |
give Mangler access to TargetData. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98378 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
5ef31a039dbb9c36cfd78442b3554d1b6974ec4c |
|
12-Mar-2010 |
Chris Lattner <sabre@nondot.org> |
make the mangler take an MCContext instead of an MAI. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98363 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
5669e3009761dff20b67e18a382c334041887928 |
|
03-Feb-2010 |
Chris Lattner <sabre@nondot.org> |
change addPassesToEmitFile to return true on failure instead of its input, add -filetype=null for performance testing and remove -filetype=dynlib, which isn't planned to be implemented. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95202 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
3813d8adf3788dd01a4cb9db01c122cd5e6a13b9 |
|
02-Feb-2010 |
Chris Lattner <sabre@nondot.org> |
Remove a bunch of stuff around the edges of the ELF writer. Now the only use of the ELF writer is the JIT, which won't be easy to fix in the short term. :( :( git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95148 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
211edae4843f5c2ee9c376e88e4cf0ecc8745f03 |
|
02-Feb-2010 |
Chris Lattner <sabre@nondot.org> |
eliminate FileModel::Model, just use CodeGenFileType. The client of the code generator shouldn't care what object format a target uses. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95124 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
b5c5160a554cb0debeb7913287d9c099a753a59e |
|
02-Feb-2010 |
Chris Lattner <sabre@nondot.org> |
eliminate all forms of addPassesToEmitMachineCode except the one used by the JIT. Remove all forms of addPassesToEmitFileFinish except the one used by the static code generator. Inline the remaining version of addPassesToEmitFileFinish into its only caller. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95109 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
390444a704499a24ed61487edb67bcdad3e8078e |
|
02-Feb-2010 |
Chris Lattner <sabre@nondot.org> |
remove dead code, we're requesting TargetMachine::AssemblyFile here. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95105 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
f0356fe140af1a30587b9a86bcfb1b2c51b8ce20 |
|
27-Jan-2010 |
Jeffrey Yasskin <jyasskin@google.com> |
Kill ModuleProvider and ghost linkage by inverting the relationship between Modules and ModuleProviders. Because the "ModuleProvider" simply materializes GlobalValues now, and doesn't provide modules, it's renamed to "GVMaterializer". Code that used to need a ModuleProvider to materialize Functions can now materialize the Functions directly. Functions no longer use a magic linkage to record that they're materializable; they simply ask the GVMaterializer. Because the C ABI must never change, we can't remove LLVMModuleProviderRef or the functions that refer to it. Instead, because Module now exposes the same functionality ModuleProvider used to, we store a Module* in any LLVMModuleProviderRef and translate in the wrapper methods. The bindings to other languages still use the ModuleProvider concept. It would probably be worth some time to update them to follow the C++ more closely, but I don't intend to do it. Fixes http://llvm.org/PR5737 and http://llvm.org/PR5735. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94686 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
c0dba723d119adc8c7b49c6d0e97d10eac4428fc |
|
17-Jan-2010 |
Chris Lattner <sabre@nondot.org> |
now that mangler is in libtarget, it can use MCAsmInfo instead of clients having to pass various fields from it in. Simplify. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93686 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
45111d160cf0910030eeb6a949c69273502e5ad5 |
|
16-Jan-2010 |
Chris Lattner <sabre@nondot.org> |
move the mangler into libtarget from vmcore. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93664 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
c5451065e03a47a43f61d579eec2721cb68b1b04 |
|
16-Jan-2010 |
Chris Lattner <sabre@nondot.org> |
remove use of getMangledName. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93655 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
469340493c48eb22b630bbd311db867c9d7953d6 |
|
16-Jan-2010 |
Chris Lattner <sabre@nondot.org> |
switch liblto to use the new getNameWithPrefix() method instead of getMangledName. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93643 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
3fe980b127a61608bd6d44c0939ba716ca21625c |
|
15-Jan-2010 |
Nate Begeman <natebegeman@mac.com> |
Hook up llc's -filetype=obj to use MCStreamer if an MCCodeEmitter is available. Remove most of old Mach-O Writer support, it has been replaced by MCMachOStreamer Further refactoring to completely remove MachOWriter and drive the object file writer with the AsmPrinter MCInst/MCSection logic is forthcoming. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93527 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
d4f195999a7774611e5f9e457a86f14d5e257324 |
|
11-Jan-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Reimplement getToken and SplitString as "StringRef helper functions" - getToken is modeled after StringRef::split but it can split on multiple separator chars and skips leading seperators. - SplitString is a StringRef::split variant for more than 2 elements with the same behaviour as getToken. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93161 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
308f6630a3f413ab32763bc78ab7802df372751d |
|
25-Nov-2009 |
Viktor Kutuzov <vkutuzov@accesssoftek.com> |
Rollback changes r89516: Added two SubtargetFeatures::AddFeatures methods, which accept a comma-separated string or already parsed command line parameters as input, and some code re-factoring to use these new methods. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89893 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
054b52c366256e7cde9c937006df944372e09acc |
|
21-Nov-2009 |
Viktor Kutuzov <vkutuzov@accesssoftek.com> |
Added two SubtargetFeatures::AddFeatures methods, which accept a comma-separated string or already parsed command line parameters as input, and some code re-factoring to use these new methods. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89516 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
e823db8bae7fe42cd4f1fa861bec8c36a636702b |
|
18-Nov-2009 |
Viktor Kutuzov <vkutuzov@accesssoftek.com> |
Added getDefaultSubtargetFeatures method to SubtargetFeatures class which returns a correct feature string for given triple. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89236 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
51cdac02c4125b8545728eb30ab5f54e437d6377 |
|
17-Nov-2009 |
Viktor Kutuzov <vkutuzov@accesssoftek.com> |
Added getArchNameForAssembler method to the Triple class for which returns OS and Vendor independent target assembler arch. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89122 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
de05902114950a181c439aa4c3b9b06170256a61 |
|
25-Aug-2009 |
Dan Gohman <gohman@apple.com> |
Delete some unnecessary flushes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80013 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
baa26395ccf17fc988bb9cf62d6659ca8415ece9 |
|
25-Aug-2009 |
Dan Gohman <gohman@apple.com> |
Make LLVM command-line tools overwrite their output files without -f. This is conventional command-line tool behavior. -f now just means "enable binary output on terminals". Add a -f option to llvm-extract and llvm-link, for consistency. Remove F_Force from raw_fd_ostream and enable overwriting and truncating by default. Introduce an F_Excl flag to permit users to enable a failure when the file already exists. This flag is currently unused. Update Makefiles and documentation accordingly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79990 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
74382b7c699120fbec5cb5603c9cf4212eb37f06 |
|
24-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
Prune #includes from llvm/Linker.h and llvm/System/Path.h, forcing them down into various .cpp files. This change also: 1. Renames TimeValue::toString() and Path::toString() to ::str() for similarity with the STL. 2. Removes all stream insertion support for sys::Path, forcing clients to call .str(). 3. Removes a use of Config/alloca.h from bugpoint, using smallvector instead. 4. Weans llvm-db off <iostream> sys::Path really needs to be gutted, but I don't have the desire to do it at this point. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79869 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
b683ea4712836e22b98d24bf8e40e599224d024e |
|
23-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
eliminate the ostream version of CheckBitcodeOutputToConsole, change the raw_ostream one to take the raw_ostream byref instead of byptr. Prune #includes, eliminate a use of Streams.h git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79863 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
b515d75856f58a8b3b71d782eb00916d686329ad |
|
23-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
eliminate the std::ostream forms of the bitcode writing APIs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79840 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
17e9edc4a7bbeadf756494cf39fcacc9eff72202 |
|
23-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
Change raw_fd_ostream to take flags as an optional bitmask instead of as two bools. Use this to add a F_Append flag which has the obvious behavior. Other unrelated changes conflated into this patch: 1. REmove EH stuff from llvm-dis and llvm-as, the try blocks are dead. 2. Simplify the filename inference code in llvm-as/llvm-dis, because raw_fd_ostream does the right thing with '-'. 3. Switch machine verifier to use raw_ostream instead of ostream (Which is the thing that needed append in the first place). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79807 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
af76e592c7f9deff0e55c13dbb4a34f07f1c7f64 |
|
22-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
Rename TargetAsmInfo (and its subclasses) to MCAsmInfo. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79763 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
815944d923345f6c327da1d23ae3078b3a4cdffd |
|
13-Aug-2009 |
Dan Gohman <gohman@apple.com> |
Simplify this code so that it doesn't depend on raw_ostream being copyable. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78915 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
1b747ad8a0694b86e8d98a8b9a05ddfe74ec0cd3 |
|
11-Aug-2009 |
Jim Grosbach <grosbach@apple.com> |
SjLj based exception handling unwinding support. This patch is nasty, brutish and short. Well, it's kinda short. Definitely nasty and brutish. The front-end generates the register/unregister calls into the SjLj runtime, call-site indices and landing pad dispatch. The back end fills in the LSDA with the call-site information provided by the front end. Catch blocks are not yet implemented. Built on Darwin and verified no llvm-core "make check" regressions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78625 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
4b3d57228cae1cba0897b80a73fddd4b8a61894a |
|
04-Aug-2009 |
Daniel Dunbar <daniel@zuster.org> |
No really, it's unused. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78047 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
3e4c41a84a2c0f055e2bfef48a66b5890bcfd5e5 |
|
03-Aug-2009 |
Nick Lewycky <nicholas@mxc.ca> |
Remove the GCC path from libLTO. This has been superceded by setAssemblerPath. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77960 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
4bd03abe593222b26e84066223feb321bf738625 |
|
03-Aug-2009 |
Daniel Dunbar <daniel@zuster.org> |
Remove now unused arguments from TargetRegistry::lookupTarget. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77950 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
3c2d4bf97fa96fe171883cd80e4ea93fc43563e6 |
|
03-Aug-2009 |
Daniel Dunbar <daniel@zuster.org> |
Pass target triple string in to TargetMachine constructor. This is not just a matter of passing in the target triple from the module; currently backends are making decisions based on the build and host architecture. The goal is to migrate to making these decisions based off of the triple (in conjunction with the feature string). Thus most clients pass in the target triple, or the host triple if that is empty. This has one important change in the way behavior of the JIT and llc. For the JIT, it was previously selecting the Target based on the host (naturally), but it was setting the target machine features based on the triple from the module. Now it is setting the target machine features based on the triple of the host. For LLC, -march was previously only used to select the target, the target machine features were initialized from the module's triple (which may have been empty). Now the target triple is taken from the module, or the host's triple is used if that is empty. Then the triple is adjusted to match -march. The take away is that -march for llc is now used in conjunction with the host triple to initialize the subtarget. If users want more deterministic behavior from llc, they should use -mtriple, or set the triple in the input module. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77946 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
d42b58b61cd773e9f798d02c42652488d67d38df |
|
27-Jul-2009 |
Nick Lewycky <nicholas@mxc.ca> |
Fix libLTO: * Call InitializeAllTargets on every path where we might query the TargetRegistry. This fixes PR4604. * flush the formatted_raw_ostream& or else not all of the assembly will make it to the .s file. (It doesn't do this in its destructor?!) * Due to a reversed conditional, libLTO was reporting many symbols as both defined and undefined, including two definitions of the same symbol name in its symbol list. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77170 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
a5881e3060aee9f82aef3747a97650e5eafe893a |
|
26-Jul-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add TargetRegistry::lookupTarget. - This is a simplified mechanism which just looks up a target based on the target triple, with a few additional flags. - Remove getClosestStaticTargetForModule, the moral equivalent is now: lookupTarget(Mod->getTargetTriple, true, false, ...); - This no longer does the fuzzy matching with target data (based on endianness and pointer width) that getClosestStaticTargetForModule was doing, but this was deemed unnecessary. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77111 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
3d5126fbad17647088b7335cd5fea178407211e2 |
|
22-Jul-2009 |
Daniel Dunbar <daniel@zuster.org> |
Switch some clients to Value::getName(), and other getName() user simplification. - NFC git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76789 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
ff9834ab9daeee25dbb67ae5e2341930cde46c86 |
|
16-Jul-2009 |
Daniel Dunbar <daniel@zuster.org> |
Kill off last uses of TargetMachineRegistry class. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75892 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
51b198af83cb0080c2709b04c129a3d774c07765 |
|
15-Jul-2009 |
Daniel Dunbar <daniel@zuster.org> |
Reapply TargetRegistry refactoring commits. --- Reverse-merging r75799 into '.': U test/Analysis/PointerTracking U include/llvm/Target/TargetMachineRegistry.h U include/llvm/Target/TargetMachine.h U include/llvm/Target/TargetRegistry.h U include/llvm/Target/TargetSelect.h U tools/lto/LTOCodeGenerator.cpp U tools/lto/LTOModule.cpp U tools/llc/llc.cpp U lib/Target/PowerPC/PPCTargetMachine.h U lib/Target/PowerPC/AsmPrinter/PPCAsmPrinter.cpp U lib/Target/PowerPC/PPCTargetMachine.cpp U lib/Target/PowerPC/PPC.h U lib/Target/ARM/ARMTargetMachine.cpp U lib/Target/ARM/AsmPrinter/ARMAsmPrinter.cpp U lib/Target/ARM/ARMTargetMachine.h U lib/Target/ARM/ARM.h U lib/Target/XCore/XCoreTargetMachine.cpp U lib/Target/XCore/XCoreTargetMachine.h U lib/Target/PIC16/PIC16TargetMachine.cpp U lib/Target/PIC16/PIC16TargetMachine.h U lib/Target/Alpha/AsmPrinter/AlphaAsmPrinter.cpp U lib/Target/Alpha/AlphaTargetMachine.cpp U lib/Target/Alpha/AlphaTargetMachine.h U lib/Target/X86/X86TargetMachine.h U lib/Target/X86/X86.h U lib/Target/X86/AsmPrinter/X86ATTAsmPrinter.h U lib/Target/X86/AsmPrinter/X86AsmPrinter.cpp U lib/Target/X86/AsmPrinter/X86IntelAsmPrinter.h U lib/Target/X86/X86TargetMachine.cpp U lib/Target/MSP430/MSP430TargetMachine.cpp U lib/Target/MSP430/MSP430TargetMachine.h U lib/Target/CppBackend/CPPTargetMachine.h U lib/Target/CppBackend/CPPBackend.cpp U lib/Target/CBackend/CTargetMachine.h U lib/Target/CBackend/CBackend.cpp U lib/Target/TargetMachine.cpp U lib/Target/IA64/IA64TargetMachine.cpp U lib/Target/IA64/AsmPrinter/IA64AsmPrinter.cpp U lib/Target/IA64/IA64TargetMachine.h U lib/Target/IA64/IA64.h U lib/Target/MSIL/MSILWriter.cpp U lib/Target/CellSPU/SPUTargetMachine.h U lib/Target/CellSPU/SPU.h U lib/Target/CellSPU/AsmPrinter/SPUAsmPrinter.cpp U lib/Target/CellSPU/SPUTargetMachine.cpp U lib/Target/Mips/AsmPrinter/MipsAsmPrinter.cpp U lib/Target/Mips/MipsTargetMachine.cpp U lib/Target/Mips/MipsTargetMachine.h U lib/Target/Mips/Mips.h U lib/Target/Sparc/AsmPrinter/SparcAsmPrinter.cpp U lib/Target/Sparc/SparcTargetMachine.cpp U lib/Target/Sparc/SparcTargetMachine.h U lib/ExecutionEngine/JIT/TargetSelect.cpp U lib/Support/TargetRegistry.cpp git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75820 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
a1bdcedc3879510a874d24c450e07feb170d9cd6 |
|
15-Jul-2009 |
Dan Gohman <gohman@apple.com> |
Add a Force option to raw_fd_ostream to specify whether opening an existing file is considered an error. Convert several tools to use raw_fd_ostream instead of std::ostream, and to use this new option instead of doing a manual check. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75801 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
2286f8dc4cec0625f7d7a14e2570926cf8599646 |
|
15-Jul-2009 |
Stuart Hastings <stuart@apple.com> |
Revert 75762, 75763, 75766..75769, 75772..75775, 75778, 75780, 75782 to repair broken LLVM-GCC build. Will revert 75770 in the llvm-gcc trunk. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75799 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
dec9803b69ad6dcae9f6f1902e461214a26bd7e7 |
|
15-Jul-2009 |
Daniel Dunbar <daniel@zuster.org> |
Switch some obvious clients to using the new TargetRegistry. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75767 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
71847813bc419f7a0667468136a07429c6d9f164 |
|
14-Jul-2009 |
David Greene <greened@obbligato.org> |
Have asm printers use formatted_raw_ostream directly to avoid a dynamic_cast<>. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75670 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
b8158acc23f5f0bf235fb1c6a8182a38ec9b00b2 |
|
14-Jul-2009 |
Chris Lattner <sabre@nondot.org> |
Reapply my previous asmprinter changes now with more testing and two additional bug fixes: 1. The bug that everyone hit was a problem in the asmprinter where it would remove $stub but keep the L prefix on a name when emitting the indirect symbol. This is easy to fix by keeping the name of the stub and the name of the symbol in a StringMap instead of just keeping a StringSet and trying to reconstruct it late. 2. There was a problem printing the personality function. The current logic to print out the personality function from the DWARF information is a bit of a cesspool right now that duplicates a bunch of other logic in the asm printer. The short version of it is that it depends on emitting both the L and _ prefix for symbols (at least on darwin) and until I can untangle it, it is best to switch the mangler back to emitting both prefixes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75646 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
1f316e321a8f2fa0e193c5444584a67a8aabe9a8 |
|
14-Jul-2009 |
Daniel Dunbar <daniel@zuster.org> |
Revert r7561{9,8,7,6}, which depend on r75610. --- Reverse-merging r75619 into '.': U lib/Target/DarwinTargetAsmInfo.cpp U lib/CodeGen/AsmPrinter/AsmPrinter.cpp --- Reverse-merging r75618 into '.': U lib/CodeGen/ELFWriter.cpp U lib/CodeGen/MachOCodeEmitter.cpp U lib/CodeGen/MachOWriter.cpp --- Reverse-merging r75617 into '.': U lib/Target/CBackend/CBackend.cpp --- Reverse-merging r75616 into '.': U tools/bugpoint/Miscompilation.cpp U tools/lto/LTOCodeGenerator.cpp U tools/lto/LTOModule.cpp git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75638 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
b5851462d08bc4d5c3f8348faac9fd2f6387d078 |
|
14-Jul-2009 |
Chris Lattner <sabre@nondot.org> |
rename getValueName -> getMangledName git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75616 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
ac57e6e498abccb117e0d61c2fa0f733845e50cb |
|
06-Jul-2009 |
Bruno Cardoso Lopes <bruno.cardoso@gmail.com> |
Add the Object Code Emitter class. Original patch by Aaron Gray, I did some cleanup, removed some #includes and moved Object Code Emitter out-of-line. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74813 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
0e7a54672cf346ee7c4aae10822c74f7c74f3fed |
|
02-Jul-2009 |
Owen Anderson <resistor@mac.com> |
Maintain the old LTO API, by using the global context. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74678 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
4434ed44c45c87a72b7a0bf2f91211f895022b91 |
|
02-Jul-2009 |
Owen Anderson <resistor@mac.com> |
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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74655 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
31895e73591d3c9ceae731a1274c8f56194b9616 |
|
01-Jul-2009 |
Owen Anderson <resistor@mac.com> |
Hold the LLVMContext by reference rather than by pointer. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74640 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
8b477ed579794ba6d76915d56b3f448a7dd20120 |
|
01-Jul-2009 |
Owen Anderson <resistor@mac.com> |
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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74614 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
855a168dbeddfb905ca4cb1e9402a2ec2eab27ea |
|
26-Jun-2009 |
Evan Cheng <evan.cheng@apple.com> |
Indentation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74281 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
75d6ffd53fcee04edfb961cca8b37122867fa660 |
|
22-Jun-2009 |
Bob Wilson <bob.wilson@apple.com> |
Recognize and handle ARM v7 target triples for Darwin. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73889 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
2deb58f72ec6547a2f760fc48f86b4d95d0a4a02 |
|
17-Jun-2009 |
Chris Lattner <sabre@nondot.org> |
switch to using llvm/Target/TargetSelect.h git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73611 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
8189d40a8d92daf81492c28276f152db71082445 |
|
17-Jun-2009 |
Nick Lewycky <nicholas@mxc.ca> |
Fix libLTO by #include'ing the initializers for all targets and all asm printers. While I'm here, alphabetize. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73606 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
f403cd7838aefaacef11bbc1398f165b76ba131f |
|
09-Jun-2009 |
Rafael Espindola <rafael.espindola@gmail.com> |
Bug fix: string::find returns string::npos if the substring is not found. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73145 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
d8b4711a16a38f446f2d0e902d13790e03196dee |
|
04-Jun-2009 |
Nick Kledzik <kledzik@apple.com> |
<rdar://problem/6944342> libLTO for darwin should add -static when assembling .s git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72881 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
cbad58624090933cb8fb85587e03be613a481309 |
|
04-Jun-2009 |
Nick Kledzik <kledzik@apple.com> |
<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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72823 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
f5a1c35f1b62556d31b95e874863b262ef46f974 |
|
04-Jun-2009 |
Nick Kledzik <kledzik@apple.com> |
<rdar://problem/6941517> C++ static constructors not preserved for static executable using LTO Move setRelocationModel() to be called before TargetMachine is instantiated. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72816 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
e0f0e0be1c5f6f80cd866d84643509ef399eec96 |
|
03-Jun-2009 |
Daniel Dunbar <daniel@zuster.org> |
Change LTO to run the global opt pass twice. - This matches llvm-ld. It took a bit of archeology to figure out what the right thing to do was (whether this was intentionally added or intentionally removed). My final conclusion is that Chris added this intentionally here: http://llvm.org/viewvc/llvm-project?view=rev&revision=16913 but the changes weren't propogated to llvm-ld until here: http://llvm.org/viewvc/llvm-project?view=rev&revision=34058 which was after lto.cpp had been cloned off (of llvm-ld), here: http://llvm.org/viewvc/llvm-project?view=rev&revision=29494 From the commit message, it looks like the motivation for running global opt again is because we ran it prior to inlining. Based on that I updated the comment and also only run the pass if we actually ran the inliner. Chris, please review. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72811 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
006a03482880a5b614dfbb8601e0ae92593a595c |
|
03-Jun-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add createStandardLTOPasses to StandardPasses.h, and move lto and llvm-ld over. - I know it sounds crazy, but I think all the pass lists are now coalesced into StandardPasses.h. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72805 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
195bea3498a7de1d84ace6d4685f02d4d7485468 |
|
30-Apr-2009 |
Nick Lewycky <nicholas@mxc.ca> |
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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70490 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
b8cb0bb08c7f9f2dfcdfa5f7d72a4c56a9c93228 |
|
30-Apr-2009 |
Bill Wendling <isanbard@gmail.com> |
Remove LTO optimization level. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70445 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
98a366d547772010e94609e4584489b3e5ce0043 |
|
30-Apr-2009 |
Bill Wendling <isanbard@gmail.com> |
Instead of passing in an unsigned value for the optimization level, use an enum, which better identifies what the optimization is doing. And is more flexible for future uses. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70440 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
a7e326b0a95b7e672248c686c54c3b4fbb222259 |
|
29-Apr-2009 |
Bill Wendling <isanbard@gmail.com> |
Don't use 'false' for 'fast isel' here. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70411 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
9f777c64c51f45a5e0a6773d99a4fd031076db56 |
|
01-Apr-2009 |
Evan Cheng <evan.cheng@apple.com> |
Recognize arm triplets. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68229 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
677c2c2a6257657d85f16871addc93f37cd40454 |
|
26-Feb-2009 |
Nick Lewycky <nicholas@mxc.ca> |
Add the function attributes pass during LTO time. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65508 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
a9183c8020c3203f7597d1fbfe4244dd99c7981e |
|
23-Feb-2009 |
Nick Lewycky <nicholas@mxc.ca> |
If nobody minds, I'm using LTO to produce faster binaries. Switch fast codegen off in libLTO. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65310 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
38ed388fb3b30c30cb46a40704fefb1d2485a45b |
|
17-Feb-2009 |
Devang Patel <dpatel@apple.com> |
Remove changes that were accidently included in previous commit. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@64835 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
13319ceffdd99d153e62011c5dda08b95e3279e3 |
|
17-Feb-2009 |
Devang Patel <dpatel@apple.com> |
The debugger sometimes lookup dynamically in the runtime to find ivar info of any Objective-C classes. It would be very helpful to debugger if the compiler encodes runtime version number in DWARF. Add support for two additional DWARF attributes to encode Objective-C runtime version number. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@64834 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
0d9eb9b4917340acbfc831890655b8e9724959f6 |
|
13-Nov-2008 |
Daniel Dunbar <daniel@zuster.org> |
Add Binary flag to raw_fd_ostream constructor. Document raw_fd_ostream's treatment of "-". git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59219 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
f75e78900cec3500c01938f0a89bf5a3f7ae8dca |
|
05-Nov-2008 |
Devang Patel <dpatel@apple.com> |
On darwin, 32-bit x86 target is i386-apple-darwin... git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58731 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
ed3e8b4ed2a3ab44d316e16a54d963f8927c6783 |
|
21-Aug-2008 |
Dan Gohman <gohman@apple.com> |
Don't silently ignore errors when opening output streams. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55120 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
cb3718832375a581c5ea23f15918f3ea447a446c |
|
21-Aug-2008 |
Owen Anderson <resistor@mac.com> |
Use raw_ostream throughout the AsmPrinter. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55092 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
3688f268cb31dbfb5b36131d96af668fa2fc6a8d |
|
15-Aug-2008 |
Owen Anderson <resistor@mac.com> |
Remove GCSE, ValueNumbering, and LoadValueNumbering. These have been deprecated for almost a year; it's finally time for them to go away. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54822 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
920ae9863b51ce1e33a1bf702e672e0483c04cd8 |
|
08-Jul-2008 |
Nick Kledzik <kledzik@apple.com> |
fix dangling pointer and argv off by one errors. Add support for --disable-inlining git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53249 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
a93ae711a91dd151ca4d28e4172e0de89d1594f3 |
|
04-Jul-2008 |
Devang Patel <dpatel@apple.com> |
Provide a hook to set the code generation debug options to investigate lto failures. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53119 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|
ebd69421a2acf0c64f368de87d0795451060ed34 |
|
30-Jun-2008 |
Devang Patel <dpatel@apple.com> |
Rename new lto2 tool as lto. lto2->lto git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52912 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/lto/LTOCodeGenerator.cpp
|