razeh
razeh

Reputation: 2765

How do I get to all of the command line options described inside of clang?

When I look through the LLVM and clang code base I see all sorts of command line options that I can't seem to get to. For example, inside of AliasAnalysisCounter.cpp I see:

static cl::opt<bool>
PrintAll("count-aa-print-all-queries", cl::ReallyHidden, cl::init(true));
static cl::opt<bool>
PrintAllFailures("count-aa-print-all-failed-queries", cl::ReallyHidden);

When I try to get at them from the command line:

~ robertzeh$ clang++ -count-aa-print-all-failed-queries foo.c
clang: warning: treating 'c' input as 'c++' when in C++ mode, this behavior is deprecated
clang: warning: argument unused during compilation: '-count-aa-print-all-failed-queries'

The clang version reports:

~ robertzeh$ clang++ --version
Apple LLVM version 5.0 (clang-500.2.79) (based on LLVM 3.3svn)
Target: x86_64-apple-darwin12.5.0

What am I doing wrong or misunderstanding?

Upvotes: 2

Views: 2116

Answers (2)

Anton Korobeynikov
Anton Korobeynikov

Reputation: 9324

You cannot access the options defined in various transformation passes directly. Try doing clang++ -mllvm -count-aa-print-all-failed-queries foo.c

Upvotes: 1

Eli Bendersky
Eli Bendersky

Reputation: 273496

A good place to snoop on options clang (the driver) and clang cc1 (the frontend) accept is:

  • include/clang/Driver/Options.td
  • include/clang/Driver/CC1Options.td

Upvotes: 2

Related Questions