diff options
author | Anders Carlsson <andersca@mac.com> | 2010-02-11 08:02:13 +0000 |
---|---|---|
committer | Anders Carlsson <andersca@mac.com> | 2010-02-11 08:02:13 +0000 |
commit | 5d40c6f6580d23bed71a2e07a669ee8ab603c932 (patch) | |
tree | 1a8a629bea8d4f0a242da57bf7858601bd963ba9 /clang/lib/Frontend/CompilerInvocation.cpp | |
parent | 50228be0f3cf4d01d9ac7db410f829875531d2be (diff) | |
download | llvm-5d40c6f6580d23bed71a2e07a669ee8ab603c932.zip llvm-5d40c6f6580d23bed71a2e07a669ee8ab603c932.tar.gz llvm-5d40c6f6580d23bed71a2e07a669ee8ab603c932.tar.bz2 |
Check in the beginnings of my new vtable layout builder idea.
Right now, it's off by default but can be tested by passing -fdump-vtable-layouts to clang -cc1. This option will cause all vtables that will normally be emitted as part of codegen to also be dumped using the new layout code.
I've also added a very simple new vtable layout test case.
llvm-svn: 95865
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
-rw-r--r-- | clang/lib/Frontend/CompilerInvocation.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/clang/lib/Frontend/CompilerInvocation.cpp b/clang/lib/Frontend/CompilerInvocation.cpp index 2a63cda..7287d42 100644 --- a/clang/lib/Frontend/CompilerInvocation.cpp +++ b/clang/lib/Frontend/CompilerInvocation.cpp @@ -1166,7 +1166,7 @@ static void ParseLangArgs(LangOptions &Opts, ArgList &Args, if (Args.hasArg(OPT_fno_lax_vector_conversions)) Opts.LaxVectorConversions = 0; if (Args.hasArg(OPT_fno_threadsafe_statics)) - Opts.ThreadsafeStatics = 0; + Opts.ThreadsafeStatics = 0; Opts.Exceptions = Args.hasArg(OPT_fexceptions); Opts.RTTI = !Args.hasArg(OPT_fno_rtti); Opts.Blocks = Args.hasArg(OPT_fblocks); @@ -1193,6 +1193,7 @@ static void ParseLangArgs(LangOptions &Opts, ArgList &Args, Opts.PICLevel = getLastArgIntValue(Args, OPT_pic_level, 0, Diags); Opts.SjLjExceptions = Args.hasArg(OPT_fsjlj_exceptions); Opts.Static = Args.hasArg(OPT_static_define); + Opts.DumpVtableLayouts = Args.hasArg(OPT_fdump_vtable_layouts); Opts.OptimizeSize = 0; // FIXME: Eliminate this dependency. |