aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Frontend/CompilerInvocation.cpp
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2015-02-20 18:08:57 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2015-02-20 18:08:57 +0000
commit6b07a1c6ee50dcf4d52a4a314b4774347f9b22c0 (patch)
tree4cc8c21d84f5ad56ef4c8addf953a1cab14f5b5b /clang/lib/Frontend/CompilerInvocation.cpp
parent5c56fb55b0857181d7bb89c40cce9d87c0942c00 (diff)
downloadllvm-6b07a1c6ee50dcf4d52a4a314b4774347f9b22c0.zip
llvm-6b07a1c6ee50dcf4d52a4a314b4774347f9b22c0.tar.gz
llvm-6b07a1c6ee50dcf4d52a4a314b4774347f9b22c0.tar.bz2
Add -funique-section-names and -fno-unique-section-names options.
For now -funique-section-names is the default, so no change in default behavior. The total .o size in a build of llvm and clang goes from 241687775 to 230649031 bytes if -fno-unique-section-names is used. llvm-svn: 230031
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
-rw-r--r--clang/lib/Frontend/CompilerInvocation.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/clang/lib/Frontend/CompilerInvocation.cpp b/clang/lib/Frontend/CompilerInvocation.cpp
index 7a53ced..bfd9429 100644
--- a/clang/lib/Frontend/CompilerInvocation.cpp
+++ b/clang/lib/Frontend/CompilerInvocation.cpp
@@ -472,6 +472,9 @@ static bool ParseCodeGenArgs(CodeGenOptions &Opts, ArgList &Args, InputKind IK,
OPT_fno_function_sections, false);
Opts.DataSections = Args.hasFlag(OPT_fdata_sections,
OPT_fno_data_sections, false);
+ Opts.UniqueSectionNames = Args.hasFlag(OPT_funique_section_names,
+ OPT_fno_unique_section_names, true);
+
Opts.MergeFunctions = Args.hasArg(OPT_fmerge_functions);
Opts.MSVolatile = Args.hasArg(OPT_fms_volatile);