components/llvm/patches/013-solaris-clang-libclangFrontend.patch
changeset 6637 22d5f6c97e6f
parent 6512 92717ce71105
equal deleted inserted replaced
6636:1c4ef2cb001a 6637:22d5f6c97e6f
       
     1 # 24378340 clang -fopenmp must include the path to the omp.h header file
       
     2 # 24378393 clang -fopenmp must define _OPENMP to 201307
     1 # Solaris GCC Toolchain.
     3 # Solaris GCC Toolchain.
     2 # 3.9.X upstream.
     4 # 3.9.X upstream.
     3 --- tools/clang/lib/Frontend/CompilerInvocation.cpp	2016-01-12 16:01:56.000000000 -0500
     5 --- tools/clang/lib/Frontend/CompilerInvocation.cpp	2016-01-12 13:01:56.000000000 -0800
     4 +++ tools/clang/lib/Frontend/CompilerInvocation.cpp	2016-05-08 23:19:20.574431774 -0400
     6 +++ tools/clang/lib/Frontend/CompilerInvocation.cpp	2016-08-08 08:15:38.179011582 -0700
       
     7 @@ -1424,7 +1424,7 @@
       
     8    return DefaultVisibility;
       
     9  }
       
    10  
       
    11 -static void ParseLangArgs(LangOptions &Opts, ArgList &Args, InputKind IK,
       
    12 +static void ParseLangArgs(LangOptions &Opts, InputArgList &Args, InputKind IK,
       
    13                            DiagnosticsEngine &Diags) {
       
    14    // FIXME: Cleanup per-file based stuff.
       
    15    LangStandard::Kind LangStd = LangStandard::lang_unspecified;
     5 @@ -1718,6 +1718,7 @@
    16 @@ -1718,6 +1718,7 @@
     6    Opts.EmitAllDecls = Args.hasArg(OPT_femit_all_decls);
    17    Opts.EmitAllDecls = Args.hasArg(OPT_femit_all_decls);
     7    Opts.PackStruct = getLastArgIntValue(Args, OPT_fpack_struct_EQ, 0, Diags);
    18    Opts.PackStruct = getLastArgIntValue(Args, OPT_fpack_struct_EQ, 0, Diags);
     8    Opts.MaxTypeAlign = getLastArgIntValue(Args, OPT_fmax_type_align_EQ, 0, Diags);
    19    Opts.MaxTypeAlign = getLastArgIntValue(Args, OPT_fmax_type_align_EQ, 0, Diags);
     9 +  Opts.GXXABIVersion = getLastArgIntValue(Args, OPT_fabi_version_EQ, 0, Diags);
    20 +  Opts.GXXABIVersion = getLastArgIntValue(Args, OPT_fabi_version_EQ, 0, Diags);
    10    Opts.PICLevel = getLastArgIntValue(Args, OPT_pic_level, 0, Diags);
    21    Opts.PICLevel = getLastArgIntValue(Args, OPT_pic_level, 0, Diags);
    11    Opts.PIELevel = getLastArgIntValue(Args, OPT_pie_level, 0, Diags);
    22    Opts.PIELevel = getLastArgIntValue(Args, OPT_pie_level, 0, Diags);
    12    Opts.Static = Args.hasArg(OPT_static_define);
    23    Opts.Static = Args.hasArg(OPT_static_define);
       
    24 @@ -1811,7 +1812,13 @@
       
    25    }
       
    26  
       
    27    // Check if -fopenmp is specified.
       
    28 -  Opts.OpenMP = Args.hasArg(options::OPT_fopenmp);
       
    29 +  Opts.OpenMP = Args.getLastArgNoClaim(options::OPT_fopenmp) ||
       
    30 +    Args.getLastArgNoClaim(options::OPT_fopenmp_EQ);
       
    31 +
       
    32 +  // OpenMP implies threads.
       
    33 +  if (Opts.OpenMP)
       
    34 +    Opts.POSIXThreads = Opts.OpenMP;
       
    35 +
       
    36    Opts.OpenMPUseTLS =
       
    37        Opts.OpenMP && !Args.hasArg(options::OPT_fnoopenmp_use_tls);
       
    38    Opts.OpenMPIsDevice =
       
    39 @@ -1819,7 +1826,6 @@
       
    40  
       
    41    // Get the OpenMP target triples if any.
       
    42    if (Arg *A = Args.getLastArg(options::OPT_omptargets_EQ)) {
       
    43 -
       
    44      for (unsigned i = 0; i < A->getNumValues(); ++i) {
       
    45        llvm::Triple TT(A->getValue(i));
       
    46  
       
    47 ###
    13 --- tools/clang/lib/Frontend/InitHeaderSearch.cpp	2015-12-29 22:40:23.000000000 -0500
    48 --- tools/clang/lib/Frontend/InitHeaderSearch.cpp	2015-12-29 22:40:23.000000000 -0500
    14 +++ tools/clang/lib/Frontend/InitHeaderSearch.cpp	2016-05-08 23:19:20.575431798 -0400
    49 +++ tools/clang/lib/Frontend/InitHeaderSearch.cpp	2016-05-08 23:19:20.575431798 -0400
    15 @@ -118,7 +118,7 @@
    50 @@ -118,7 +118,7 @@
    16    // Add the path with sysroot prepended, if desired and this is a system header
    51    // Add the path with sysroot prepended, if desired and this is a system header
    17    // group.
    52    // group.