As already discussed in the review that lead to the removal of the CppBackend, it seems to be a good idea to merge LLVMTargetMachine and TargetMachine together. This patch is a first step, hopefully correct.
To put things into perspective, this work is (at least partly) motivated by the desire to make TargetMachine thread-safe, so that we can simplify the splitCodeGen() logic currently used by LTO. While the two projects may be considered orthogonal, I prefer to tackle this yak shaving.
Details
Details
Diff Detail
Diff Detail
Event Timeline
Comment Actions
Given the library dependencies I would assume the final version has to live in lib/CodeGen, no?
lib/Target/TargetMachine.cpp | ||
---|---|---|
151 | Can you change this to be non-virtual now? |
lib/Target/TargetMachine.cpp | ||
---|---|---|
151 | Not entirely sure because PPC and Hexagon still override that? Can we somehow avoid it? ../lib/Target/PowerPC/PPCTargetMachine.h:48:42: error: only virtual member functions can be marked 'override' TargetIRAnalysis getTargetIRAnalysis() override; ^~~~~~~~ |
Can you change this to be non-virtual now?