diff options
author | Matthias Braun <matze@braunis.de> | 2017-12-14 03:59:24 +0000 |
---|---|---|
committer | Matthias Braun <matze@braunis.de> | 2017-12-14 03:59:24 +0000 |
commit | 5dd72adbecb3c52e1bba6b823fbc4db3f592c8f7 (patch) | |
tree | dce9ca2510f0ca71488ab953bbbf651f413a5f4c /llvm/lib/MC/MCMachOStreamer.cpp | |
parent | 123adb507380a9061f66f75420ce7943166ce83f (diff) | |
download | bcm5719-llvm-5dd72adbecb3c52e1bba6b823fbc4db3f592c8f7.tar.gz bcm5719-llvm-5dd72adbecb3c52e1bba6b823fbc4db3f592c8f7.zip |
MC/AsmPrinter: Reduce code duplication.
Factor out duplicated code emitting mach-o version-min specifiers.
This should be NFC but happens to fix a bug where the code in
MCMachoStreamer didn't take the version skew between darwin and macos
versions into account.
llvm-svn: 320666
Diffstat (limited to 'llvm/lib/MC/MCMachOStreamer.cpp')
-rw-r--r-- | llvm/lib/MC/MCMachOStreamer.cpp | 22 |
1 files changed, 2 insertions, 20 deletions
diff --git a/llvm/lib/MC/MCMachOStreamer.cpp b/llvm/lib/MC/MCMachOStreamer.cpp index 6e1dca82033..82b75afabb3 100644 --- a/llvm/lib/MC/MCMachOStreamer.cpp +++ b/llvm/lib/MC/MCMachOStreamer.cpp @@ -502,26 +502,8 @@ MCStreamer *llvm::createMachOStreamer(MCContext &Context, MCMachOStreamer *S = new MCMachOStreamer(Context, std::move(MAB), OS, std::move(CE), DWARFMustBeAtTheEnd, LabelSections); - const Triple &TT = Context.getObjectFileInfo()->getTargetTriple(); - if (TT.isOSDarwin()) { - unsigned Major, Minor, Update; - TT.getOSVersion(Major, Minor, Update); - // If there is a version specified, Major will be non-zero. - if (Major) { - MCVersionMinType VersionType; - if (TT.isWatchOS()) - VersionType = MCVM_WatchOSVersionMin; - else if (TT.isTvOS()) - VersionType = MCVM_TvOSVersionMin; - else if (TT.isMacOSX()) - VersionType = MCVM_OSXVersionMin; - else { - assert(TT.isiOS() && "Must only be iOS platform left"); - VersionType = MCVM_IOSVersionMin; - } - S->EmitVersionMin(VersionType, Major, Minor, Update); - } - } + const Triple &Target = Context.getObjectFileInfo()->getTargetTriple(); + S->EmitVersionForTarget(Target); if (RelaxAll) S->getAssembler().setRelaxAll(true); return S; |