43 const Driver &D,
const llvm::opt::ArgList &Args,
44 llvm::opt::ArgStringList &CmdArgs,
48 void RenderTargetOptions(
const llvm::Triple &EffectiveTriple,
49 const llvm::opt::ArgList &Args,
bool KernelOrKext,
50 llvm::opt::ArgStringList &CmdArgs)
const;
52 void AddAArch64TargetArgs(
const llvm::opt::ArgList &Args,
53 llvm::opt::ArgStringList &CmdArgs)
const;
54 void AddAMDGPUTargetArgs(
const llvm::opt::ArgList &Args,
55 llvm::opt::ArgStringList &CmdArgs)
const;
56 void AddARMTargetArgs(
const llvm::Triple &Triple,
57 const llvm::opt::ArgList &Args,
58 llvm::opt::ArgStringList &CmdArgs,
59 bool KernelOrKext)
const;
60 void AddLoongArchTargetArgs(
const llvm::opt::ArgList &Args,
61 llvm::opt::ArgStringList &CmdArgs)
const;
62 void AddMIPSTargetArgs(
const llvm::opt::ArgList &Args,
63 llvm::opt::ArgStringList &CmdArgs)
const;
64 void AddPPCTargetArgs(
const llvm::opt::ArgList &Args,
65 llvm::opt::ArgStringList &CmdArgs)
const;
66 void AddRISCVTargetArgs(
const llvm::opt::ArgList &Args,
67 llvm::opt::ArgStringList &CmdArgs)
const;
68 void AddSparcTargetArgs(
const llvm::opt::ArgList &Args,
69 llvm::opt::ArgStringList &CmdArgs)
const;
70 void AddSystemZTargetArgs(
const llvm::opt::ArgList &Args,
71 llvm::opt::ArgStringList &CmdArgs)
const;
72 void AddX86TargetArgs(
const llvm::opt::ArgList &Args,
73 llvm::opt::ArgStringList &CmdArgs)
const;
74 void AddHexagonTargetArgs(
const llvm::opt::ArgList &Args,
75 llvm::opt::ArgStringList &CmdArgs)
const;
76 void AddLanaiTargetArgs(
const llvm::opt::ArgList &Args,
77 llvm::opt::ArgStringList &CmdArgs)
const;
78 void AddWebAssemblyTargetArgs(
const llvm::opt::ArgList &Args,
79 llvm::opt::ArgStringList &CmdArgs)
const;
80 void AddVETargetArgs(
const llvm::opt::ArgList &Args,
81 llvm::opt::ArgStringList &CmdArgs)
const;
83 enum RewriteKind { RK_None, RK_Fragile, RK_NonFragile };
85 ObjCRuntime AddObjCRuntimeArgs(
const llvm::opt::ArgList &args,
87 llvm::opt::ArgStringList &cmdArgs,
88 RewriteKind rewrite)
const;
90 void AddClangCLArgs(
const llvm::opt::ArgList &Args,
types::ID InputType,
91 llvm::opt::ArgStringList &CmdArgs)
const;
93 mutable std::unique_ptr<llvm::raw_fd_ostream> CompilationDatabase =
nullptr;
94 void DumpCompilationDatabase(
Compilation &
C, StringRef Filename,
97 const llvm::opt::ArgList &Args)
const;
99 void DumpCompilationDatabaseFragmentToDir(
101 const InputInfo &Input,
const llvm::opt::ArgList &Args)
const;
115 const llvm::opt::ArgList &TCArgs,
116 const char *LinkingOutput)
const override;
123 :
Tool(
"clang::as",
"clang integrated assembler", TC) {}
124 void AddLoongArchTargetArgs(
const llvm::opt::ArgList &Args,
125 llvm::opt::ArgStringList &CmdArgs)
const;
126 void AddMIPSTargetArgs(
const llvm::opt::ArgList &Args,
127 llvm::opt::ArgStringList &CmdArgs)
const;
128 void AddX86TargetArgs(
const llvm::opt::ArgList &Args,
129 llvm::opt::ArgStringList &CmdArgs)
const;
130 void AddRISCVTargetArgs(
const llvm::opt::ArgList &Args,
131 llvm::opt::ArgStringList &CmdArgs)
const;
138 const llvm::opt::ArgList &TCArgs,
139 const char *LinkingOutput)
const override;