Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(525)

Side by Side Diff: lib/Driver/Tools.cpp

Issue 1767393002: Allow overriding -fno-gnu-inline-assembly (Closed) Base URL: https://chromium.googlesource.com/a/native_client/pnacl-clang.git@master
Patch Set: Created 4 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 //===--- Tools.cpp - Tools Implementations --------------------------------===// 1 //===--- Tools.cpp - Tools Implementations --------------------------------===//
2 // 2 //
3 // The LLVM Compiler Infrastructure 3 // The LLVM Compiler Infrastructure
4 // 4 //
5 // This file is distributed under the University of Illinois Open Source 5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details. 6 // License. See LICENSE.TXT for details.
7 // 7 //
8 //===----------------------------------------------------------------------===// 8 //===----------------------------------------------------------------------===//
9 9
10 #include "Tools.h" 10 #include "Tools.h"
(...skipping 1752 matching lines...) Expand 10 before | Expand all | Expand 10 after
1763 CmdArgs.push_back ("-enable-hexagon-ieee-rnd-near"); 1763 CmdArgs.push_back ("-enable-hexagon-ieee-rnd-near");
1764 } 1764 }
1765 CmdArgs.push_back ("-mllvm"); 1765 CmdArgs.push_back ("-mllvm");
1766 CmdArgs.push_back ("-machine-sink-split=0"); 1766 CmdArgs.push_back ("-machine-sink-split=0");
1767 } 1767 }
1768 1768
1769 void Clang::AddLe32TargetArgs(const ArgList &Args, 1769 void Clang::AddLe32TargetArgs(const ArgList &Args,
1770 ArgStringList &CmdArgs) const { 1770 ArgStringList &CmdArgs) const {
1771 Args.ClaimAllArgs(options::OPT_emit_obj); 1771 Args.ClaimAllArgs(options::OPT_emit_obj);
1772 1772
1773 CmdArgs.push_back("-fno-gnu-inline-asm"); 1773 // -fno-gnu-inline-asm is default.
1774 if (!Args.hasFlag(options::OPT_fgnu_inline_asm,
1775 options::OPT_fno_gnu_inline_asm, false))
1776 CmdArgs.push_back("-fno-gnu-inline-asm");
1774 } 1777 }
1775 1778
1776 // Decode AArch64 features from string like +[no]featureA+[no]featureB+... 1779 // Decode AArch64 features from string like +[no]featureA+[no]featureB+...
1777 static bool DecodeAArch64Features(const Driver &D, StringRef text, 1780 static bool DecodeAArch64Features(const Driver &D, StringRef text,
1778 std::vector<const char *> &Features) { 1781 std::vector<const char *> &Features) {
1779 SmallVector<StringRef, 8> Split; 1782 SmallVector<StringRef, 8> Split;
1780 text.split(Split, StringRef("+"), -1, false); 1783 text.split(Split, StringRef("+"), -1, false);
1781 1784
1782 for (unsigned I = 0, E = Split.size(); I != E; ++I) { 1785 for (unsigned I = 0, E = Split.size(); I != E; ++I) {
1783 const char *result = llvm::StringSwitch<const char *>(Split[I]) 1786 const char *result = llvm::StringSwitch<const char *>(Split[I])
(...skipping 7335 matching lines...) Expand 10 before | Expand all | Expand 10 after
9119 CmdArgs.push_back("-lmsvcrt"); 9122 CmdArgs.push_back("-lmsvcrt");
9120 AddRunTimeLibs(TC, D, CmdArgs, Args); 9123 AddRunTimeLibs(TC, D, CmdArgs, Args);
9121 } 9124 }
9122 } 9125 }
9123 9126
9124 const std::string Linker = TC.GetProgramPath("ld"); 9127 const std::string Linker = TC.GetProgramPath("ld");
9125 Exec = Args.MakeArgString(Linker); 9128 Exec = Args.MakeArgString(Linker);
9126 9129
9127 C.addCommand(llvm::make_unique<Command>(JA, *this, Exec, CmdArgs)); 9130 C.addCommand(llvm::make_unique<Command>(JA, *this, Exec, CmdArgs));
9128 } 9131 }
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698