<div dir="ltr"><br><br><div class="gmail_quote"><div dir="ltr">On Sat, Jan 23, 2016 at 5:06 AM Hongping Lim via cfe-dev <<a href="mailto:cfe-dev@lists.llvm.org">cfe-dev@lists.llvm.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Actually it seems "--" without anything after just means to not have any compile options at all?<div><br></div><div>I went through the options in my compile_command.json file, and it seems this isysroot option is what is causing the command to be slow for this particular source file. If I remove it then the command runs quickly.</div><div><br></div><div>-isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS9.2.sdk<br></div><div><br></div><div>However, with the same compile options including the above isysroot option, running on another source file that I have which is 2200 lines, and causes 735 warnings in non-user code as well, clang-tidy takes less than one second.</div></div></blockquote><div><br></div><div>1. If you don't have the right isysroot, you probably get actual compiler errors, and clang-tidy checks will not run</div><div>2. It might be that the transitive closure of includes is just very large when the TU takes long to process, but that'd need some more detailed benchmarking</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><br></div><div>Thanks,</div><div>Hongping</div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Jan 22, 2016 at 7:42 PM, Hongping Lim <span dir="ltr"><<a href="mailto:hongping.lim@gmail.com" target="_blank">hongping.lim@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">I have managed to build a release version of clang-tidy on my Mac, and checked that it is optimized with --version.<div><br></div><div>~/llvm-build/bin/clang-tidy --version<br></div><div><div>LLVM (<a href="http://llvm.org/" target="_blank">http://llvm.org/</a>):</div><div>LLVM version 3.8.0svn</div><div>Optimized build.</div><div>Built Jan 15 2016 (13:18:26).</div><div>Default target: x86_64-apple-darwin15.0.0</div><div>Host CPU: broadwell</div></div><div><br></div><div><br></div><div>I am working with an Objective-C project in Xcode, and have managed to generate the required compile_commands.json file using xcodebuild/xcpretty, and am able to run it.</div><div><br></div><div>When I run it on a single file that has 2700 lines with just the compile_commands.json file (stripped down to just one command), it takes clang-tidy around 23 seconds to complete.</div><div><br></div><div>~/llvm-build/bin/clang-tidy MyFile.m</div><div><div>...</div><div>Suppressed 719 warnings (719 in non-user code).</div><div>Use -header-filter=.* to display errors from all non-system headers.</div></div><div><br></div><div>If I run the same command with "--", then it is much faster.</div><div><div>~/llvm-build/bin/clang-tidy MyFile.m --</div><div>...</div></div><div><div>Suppressed 6 warnings (6 in non-user code).</div><div>Use -header-filter=.* to display errors from all non-system headers.</div></div><div><br></div><div><br></div><div><br></div><div>It seems the difference is that with --, some header files aren't processed? If I am just interested in errors in the specific file I am running on, is using -- the right thing to do?</div><div><br></div><div>Thanks,</div><div>Hongping</div><div><br></div></div>
</blockquote></div><br></div>
_______________________________________________<br>
cfe-dev mailing list<br>
<a href="mailto:cfe-dev@lists.llvm.org" target="_blank">cfe-dev@lists.llvm.org</a><br>
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev</a><br>
</blockquote></div></div>