On Mon, 2014-01-20 at 15:58 -0800, David Majnemer wrote: > > // Handle pseudo-target flags '-m32' and '-m64'. > > > Shouldn't this comment mention -m16?
Indeed it should; thanks. New patch attached with that trivial change. -- David Woodhouse Open Source Technology Centre [email protected] Intel Corporation
From d0c6e2625a9ba7a151266b1fd3edca98bbaf525a Mon Sep 17 00:00:00 2001 From: David Woodhouse <[email protected]> Date: Wed, 8 Jan 2014 18:45:32 +0000 Subject: [PATCH] Add -m16 option for using x86-*-*-code16 triple --- include/clang/Driver/Options.td | 1 + lib/Driver/Driver.cpp | 14 +++++++++++--- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/include/clang/Driver/Options.td b/include/clang/Driver/Options.td index 6682039..5e8a3b8 100644 --- a/include/clang/Driver/Options.td +++ b/include/clang/Driver/Options.td @@ -951,6 +951,7 @@ def lazy__framework : Separate<["-"], "lazy_framework">, Flags<[LinkerInput]>; def lazy__library : Separate<["-"], "lazy_library">, Flags<[LinkerInput]>; def EL : Flag<["-"], "EL">, Flags<[DriverOption]>; def EB : Flag<["-"], "EB">, Flags<[DriverOption]>; +def m16 : Flag<["-"], "m16">, Group<m_Group>, Flags<[DriverOption, CoreOption]>; def m32 : Flag<["-"], "m32">, Group<m_Group>, Flags<[DriverOption, CoreOption]>; def mqdsp6_compat : Flag<["-"], "mqdsp6-compat">, Group<m_Group>, Flags<[DriverOption,CC1Option]>, HelpText<"Enable hexagon-qdsp6 backward compatibility">; diff --git a/lib/Driver/Driver.cpp b/lib/Driver/Driver.cpp index ad938b8..83f14b2 100644 --- a/lib/Driver/Driver.cpp +++ b/lib/Driver/Driver.cpp @@ -1900,13 +1900,21 @@ static llvm::Triple computeTargetTriple(StringRef DefaultTargetTriple, Target.getOS() == llvm::Triple::Minix) return Target; - // Handle pseudo-target flags '-m32' and '-m64'. - if (Arg *A = Args.getLastArg(options::OPT_m32, options::OPT_m64)) { + // Handle pseudo-target flags '-m16', '-m32' and '-m64'. + if (Arg *A = Args.getLastArg(options::OPT_m32, options::OPT_m64, options::OPT_m16)) { llvm::Triple::ArchType AT; if (A->getOption().matches(options::OPT_m32)) AT = Target.get32BitArchVariant().getArch(); - else + else if (A->getOption().matches(options::OPT_m64)) AT = Target.get64BitArchVariant().getArch(); + else if (A->getOption().matches(options::OPT_m16)) { + AT = Target.get32BitArchVariant().getArch(); + if (AT == llvm::Triple::x86) + Target.setEnvironment(llvm::Triple::CODE16); + else + AT = llvm::Triple::UnknownArch; + } + if (AT != llvm::Triple::UnknownArch) Target.setArch(AT); } -- 1.8.4.2
smime.p7s
Description: S/MIME cryptographic signature
_______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
