2

Precondition: I invoke gcc with -O2 optimization flag and clang with -O2 optimization flag.
Does it means the options list passed to the compilers will be the same?
Do clang understand standard GCC options like -funroll-loops?

I did not find anything useful about this question in manual:
http://llvm.org/releases/3.3/tools/clang/docs/UsersManual.html
I can not even find a list of possible GCC compatible options that can be used with clang.

Do clang even do anything with GCC options (or it just ignore them?)
I just need some clarifications on how it work.

9
  • Check clang manual for that. It understands that option but I'm not sure it'll understand ALL of them. Commented Dec 12, 2013 at 10:52
  • There is no guarantee that -O2 will mean the same in clang in gcc. Given that they have different optimizers, such a guarantee would not be possible anyway. Commented Dec 12, 2013 at 10:55
  • 1
    @Adriano The clang manual is surprisingly silent on what optimization options it actually supports, and their meaning. Commented Dec 12, 2013 at 10:55
  • @user4815162342 it's just an entry point for all documentation you need. For example this list of optimization flags. Commented Dec 12, 2013 at 11:01
  • @MikhailKalashnikov just read link I posted in previous comment. Manual is an entry point for other (more exhaustive) articles. Commented Dec 12, 2013 at 11:04

1 Answer 1

5

Although in general Clang attempts to copy the command-line options from GCC, there are different optimization passes in GCC and LLVM, so specific optimization flags are not shared. In particular, it means that -O2 does not behave the same in the two compilers.

If you want to see the list of optimizations that GCC applies under -O2, check its documentation; if you want to see the list Clang applies, check this related Stackoverflow question about how to see the list.

Sign up to request clarification or add additional context in comments.

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.