Add runtime support for __cpu_model (__builtin_cpu_supports)
authorAlina Sbirlea <asbirlea@google.com>
Thu, 14 Jul 2016 22:02:35 +0000 (22:02 +0000)
committerAlina Sbirlea <asbirlea@google.com>
Thu, 14 Jul 2016 22:02:35 +0000 (22:02 +0000)
commit36f57fbc66a70bc427805e47605d720c16dcf522
treecf413adcf1e5945ead4b24bd8fec224dcf3ddb72
parent7aea5906c0cd284098294d9c626e8f9aae86fdbe
Add runtime support for __cpu_model (__builtin_cpu_supports)

Summary:
    This aims to add support for __cpu_model and address Bug 25510. It uses
    the code from lib/Support/Host.cpp for cpu detection, and creates
    __cpu_model with that info.

    Tested on OSX and built on Linux as well (though libgcc is the default).
    The use of "asm" required -std=gnu99, hence the cmake change. Corrections
    on better addressing this are welcome.

    Previously reverted, up for review again to iron out outstanding issues.

Reviewers: llvm-commits, joerg, echristo, mehdi_amini

Subscribers: mehdi_amini

Differential Revision: http://reviews.llvm.org/D22181

llvm-svn: 275484
compiler-rt/lib/builtins/CMakeLists.txt
compiler-rt/lib/builtins/cpu_model.c [new file with mode: 0644]
compiler-rt/test/builtins/Unit/cpu_model_test.c [new file with mode: 0644]