[PATCH] [compiler-rt] atos and dladdr symbolizers for OS X

Kuba Brecka kuba.brecka at gmail.com
Wed Mar 11 06:59:36 PDT 2015


> Do you have a good understanding of why we need to use one code to run llvm-symbolizer on Mac and different code (forkpty etc.) to run atos on Mac? Can we instead make certain bits of StartSymbolizerProcess() platform-specific?


The reason to use forkpty is because `atos` doesn't flush its output fd after it gives a response.  So using regular pipes doesn't work here, because the response gets buffered within the C library.  To disable this, we make a new pseudo-terminal which makes all output from atos unbuffered.  This is not a problem for llvm-symbolizer, because it does a outs().flush() after each response.


http://reviews.llvm.org/D6588

EMAIL PREFERENCES
  http://reviews.llvm.org/settings/panel/emailpreferences/






More information about the llvm-commits mailing list