On Wed, Mar 16, 2016 at 2:12 PM, jps...@gmail.com <jps...@gmail.com> wrote:
> David and all, a couple more questions. I stumbled upon > http://llvm.org/docs/Packaging.html and see a few other options. For a > typical clang build where I am not hacking on clang, but I do want good > error messages for debugging my programs, > Define "my programs" - are you using LLVM as a library? If so, you probably want a with-asserts build for development so you get better failures when you use LLVM incorrectly. If you're just using Clang as a normal compiler - a build without assertions should be just fine. If you hit a crash in the compiler you can still file it, and we'll run in with an assertions-enabled build to investigate further, generally. > which options are recommended [1]? It seems like I should use > --disable-assertions, but I'm not sure about enable-debug-symbols and > enable-optimized (which seem at odds with each other?). > If you're using LLVM as a library, but not expecting to be able to fix any bugs in it yourself, probably optimized with assertiotns and without debug info should be fine. If you're just using clang as a compiler, release (optimized), no assertions, no debug info. > I'm basically just looking for the same options that would come with a > packaged build, but I do want to build from source. > > Finally, when I'm done, how do I verify that the settings are correct? > clang --version doesn't tell me much about if I built it correctly. > Not sure > [2] > > Thank you, > Jim > > [1] --disable-assertions--enable-debug-symbols--enable-optimized > [2] > > $ clang --version > > clang version 3.9.0 (trunk 263648) > > Target: x86_64-apple-darwin15.0.0 > > Thread model: posix > > InstalledDir: /Users/jim/toolchains/llvm/bin > > On Wed, Mar 16, 2016 at 2:05 PM, jps...@gmail.com <jps...@gmail.com> > wrote: > >> Got it -- thanks! >> >> >> On Wednesday, March 16, 2016, David Blaikie <dblai...@gmail.com> wrote: >> >>> >>> >>> On Wed, Mar 16, 2016 at 7:25 AM, jps...@gmail.com via cfe-users < >>> cfe-users@lists.llvm.org> wrote: >>> >>>> Hi, I recently installed "Release" clang (svn r263305) from source on >>>> my OSX machine, and it's compiling a 20 file C++ program about 50% slower >>>> than the natively installed clang 3.7 (that came with xcode, I believe, >>>> although I don't use xcode). I currently have both sets of tools installed >>>> and am able to switch back and forth and verify using time that clang 3.7 >>>> takes about 30 seconds and clang 3.9 takes about 45 seconds, on average >>>> (all flags, settings, etc. are the same for both). I did build with >>>> "Release" as the build type, although I also did set >>>> DLLVM_ENABLE_ASSERTIONS=ON (could this be the problem?). >>>> >>> >>> Yes, the build system should print a warning telling you that an >>> assertions enabled build can be up to ten times slower. Performance >>> comparisons/measurements of an assertions enabled compiler aren't something >>> we really do/tune for. >>> >>> >>>> More details below. Please let me know if you have any ideas about why >>>> this newer clang would be noticable slower. >>>> >>>> Generally, I'm just trying to use clang as a user, not a clang >>>> developer, so if you have general recommendations for how to configure >>>> this, please let me know. >>>> >>>> Thank you, >>>> Jim >>>> >>>> How I configured and installed: >>>> >>>> cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release >>>> -DLLVM_ENABLE_ASSERTIONS=ON ../llvm >>>> make >>>> cmake -DCMAKE_INSTALL_PREFIX=$CLANG_PREFIX -P cmake_install.cmake >>>> >>>> >>>> Here are some specifics: >>>> >>>> $ uname -a >>>> Darwin localhost 15.0.0 Darwin Kernel Version 15.0.0: Wed Aug 26 >>>> 16:57:32 PDT 2015; root:xnu-3247.1.106~1/RELEASE_X86_64 x86_64 >>>> >>>> $ clang --version >>>> clang version 3.9.0 (trunk 263305) >>>> Target: x86_64-apple-darwin15.0.0 >>>> Thread model: posix >>>> InstalledDir: /Users/jim/toolchains/llvm/bin >>>> >>>> _______________________________________________ >>>> cfe-users mailing list >>>> cfe-users@lists.llvm.org >>>> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-users >>>> >>>> >>> >
_______________________________________________ cfe-users mailing list cfe-users@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-users