1062a7ea5SGuillaume Chatelet.. _compiler_support: 2062a7ea5SGuillaume Chatelet 3062a7ea5SGuillaume Chatelet================ 4062a7ea5SGuillaume ChateletCompiler Support 5062a7ea5SGuillaume Chatelet================ 6062a7ea5SGuillaume Chatelet 783e98c85SGuillaume Chatelet``LLVM libc`` compiles from both ``Clang`` and ``GCC`` but for maximum 8*282798feSKazu Hirataperformance we recommend using ``Clang``. 9062a7ea5SGuillaume Chatelet 1083e98c85SGuillaume ChateletIndeed, some memory function implementations rely on `compiler intrinsics`__ 1183e98c85SGuillaume Chateletthat are not currently available in ``GCC``. 12062a7ea5SGuillaume ChateletAs such we cannot guarantee optimal performance for these functions. 13062a7ea5SGuillaume Chatelet 14062a7ea5SGuillaume Chatelet.. __: https://clang.llvm.org/docs/LanguageExtensions.html#guaranteed-inlined-copy 15062a7ea5SGuillaume Chatelet 1683e98c85SGuillaume ChateletFor platforms where only ``GCC`` is natively available but maximum performance 1783e98c85SGuillaume Chateletis required it is possible to bootstrap ``Clang`` with ``GCC`` and then use 1883e98c85SGuillaume Chatelet``Clang`` to build the '`libc``" project. 1983e98c85SGuillaume Chatelet 20be721a38SSiva Chandra ReddyMinimum supported versions 21be721a38SSiva Chandra Reddy========================== 22062a7ea5SGuillaume Chatelet 23062a7ea5SGuillaume Chatelet - ``Clang 11`` 24be721a38SSiva Chandra Reddy - ``GCC 12.2`` 25