While NFC for now, this will allow more flexibility on the client side
to hold state necessary to back up the stream.
Also when adding caching, this class will grow in complexity.
Note I blindly modified the gold-plugin as I can't compile it.
Paths
| Differential D23542
[LTO] Introduce an Output class to wrap the output stream creation (NFC) ClosedPublic Authored by mehdi_amini on Aug 15 2016, 11:00 PM.
Details Summary While NFC for now, this will allow more flexibility on the client side Note I blindly modified the gold-plugin as I can't compile it.
Diff Detail Event Timelinemehdi_amini retitled this revision from to [LTO] Introduce an Output class to wrap the output stream creation (NFC). mehdi_amini updated this object. Comment Actions Looks ok, let me download the patch and try with gold though. Will get back later today.
Comment Actions Looks ok to me. I can't test the gold plugin easily (I'm on my macbook laptop without access to a Linux machine) either. Comment Actions Fix gold-plugin build
Comment Actions Will give the changes a try and report back.
Comment Actions Do you have a companion clang change? BackendUtil.cpp needs an update for the new arg to thinBackend. mehdi_amini added a child revision: D23579: [ThinLTO] Adapt backend invocation to llvm API changes..Aug 16 2016, 2:09 PM This revision is now accepted and ready to land.Aug 16 2016, 3:07 PM Closed by commit rL278907: [LTO] Introduce an Output class to wrap the output stream creation (NFC) (authored by mehdi_amini). · Explain WhyAug 16 2016, 11:31 PM This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 68244 include/llvm/LTO/Config.h
include/llvm/LTO/LTO.h
include/llvm/LTO/LTOBackend.h
lib/LTO/LTO.cpp
lib/LTO/LTOBackend.cpp
tools/gold/gold-plugin.cpp
tools/llvm-lto2/llvm-lto2.cpp
|
Maybe "NativeObjectOutput" or something like that to make it clear - one thing I would like to change eventually is the fact that this callback is passed to the WriteIndexesThinBackend, which doesn't write a native object file.