diff options
author | Philipp Krones <philipp.krones@embecosm.com> | 2021-05-23 14:15:23 -0700 |
---|---|---|
committer | Fangrui Song <i@maskray.me> | 2021-05-23 14:15:23 -0700 |
commit | c2f819af73c54a8cf923e5a25099ca95dbe76312 (patch) | |
tree | 97a4ff834d4680ecbbd3f7c1fde1c749d2398f26 /llvm/tools/llvm-ml/llvm-ml.cpp | |
parent | cb1511645170ec23036631790398d8143a832265 (diff) | |
download | llvm-c2f819af73c54a8cf923e5a25099ca95dbe76312.zip llvm-c2f819af73c54a8cf923e5a25099ca95dbe76312.tar.gz llvm-c2f819af73c54a8cf923e5a25099ca95dbe76312.tar.bz2 |
[MC] Refactor MCObjectFileInfo initialization and allow targets to create MCObjectFileInfo
This makes it possible for targets to define their own MCObjectFileInfo.
This MCObjectFileInfo is then used to determine things like section alignment.
This is a follow up to D101462 and prepares for the RISCV backend defining the
text section alignment depending on the enabled extensions.
Reviewed By: MaskRay
Differential Revision: https://reviews.llvm.org/D101921
Diffstat (limited to 'llvm/tools/llvm-ml/llvm-ml.cpp')
-rw-r--r-- | llvm/tools/llvm-ml/llvm-ml.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/llvm/tools/llvm-ml/llvm-ml.cpp b/llvm/tools/llvm-ml/llvm-ml.cpp index c61cacc..14f75d0 100644 --- a/llvm/tools/llvm-ml/llvm-ml.cpp +++ b/llvm/tools/llvm-ml/llvm-ml.cpp @@ -281,10 +281,10 @@ int main(int Argc, char **Argv) { // FIXME: This is not pretty. MCContext has a ptr to MCObjectFileInfo and // MCObjectFileInfo needs a MCContext reference in order to initialize itself. - MCObjectFileInfo MOFI; - MCContext Ctx(TheTriple, MAI.get(), MRI.get(), &MOFI, STI.get(), &SrcMgr); - MOFI.initMCObjectFileInfo(Ctx, /*PIC=*/false, - /*LargeCodeModel=*/true); + MCContext Ctx(TheTriple, MAI.get(), MRI.get(), STI.get(), &SrcMgr); + std::unique_ptr<MCObjectFileInfo> MOFI(TheTarget->createMCObjectFileInfo( + Ctx, /*PIC=*/false, /*LargeCodeModel=*/true)); + Ctx.setObjectFileInfo(MOFI.get()); if (InputArgs.hasArg(OPT_save_temp_labels)) Ctx.setAllowTemporaryLabels(false); |