[compiler-rt] r274867 - Add default initialization. Add unit test.

Alina Sbirlea via llvm-commits llvm-commits at lists.llvm.org
Fri Jul 8 09:18:38 PDT 2016


Author: asbirlea
Date: Fri Jul  8 11:18:38 2016
New Revision: 274867

URL: http://llvm.org/viewvc/llvm-project?rev=274867&view=rev
Log:
Add default initialization. Add unit test.

Added:
    compiler-rt/trunk/test/builtins/Unit/cpu_model_test.c
Modified:
    compiler-rt/trunk/lib/builtins/cpu_model.c

Modified: compiler-rt/trunk/lib/builtins/cpu_model.c
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/builtins/cpu_model.c?rev=274867&r1=274866&r2=274867&view=diff
==============================================================================
--- compiler-rt/trunk/lib/builtins/cpu_model.c (original)
+++ compiler-rt/trunk/lib/builtins/cpu_model.c Fri Jul  8 11:18:38 2016
@@ -706,7 +706,7 @@ struct __processor_model {
   unsigned int __cpu_type;
   unsigned int __cpu_subtype;
   unsigned int __cpu_features[1];
-} __cpu_model;
+} __cpu_model = { 0, 0, 0, { 0 } };
 
 /* A constructor function that is sets __cpu_model and __cpu_features with
    the right values.  This needs to run only once.  This constructor is

Added: compiler-rt/trunk/test/builtins/Unit/cpu_model_test.c
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/test/builtins/Unit/cpu_model_test.c?rev=274867&view=auto
==============================================================================
--- compiler-rt/trunk/test/builtins/Unit/cpu_model_test.c (added)
+++ compiler-rt/trunk/test/builtins/Unit/cpu_model_test.c Fri Jul  8 11:18:38 2016
@@ -0,0 +1,19 @@
+//===-- cpu_model_test.c - Test __builtin_cpu_supports -------------------------------===//
+//
+//                     The LLVM Compiler Infrastructure
+//
+// This file is dual licensed under the MIT and the University of Illinois Open
+// Source Licenses. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+//
+// This file tests __builtin_cpu_supports for the compiler_rt library.
+//
+//===----------------------------------------------------------------------===//
+
+int main (void) {
+  if(__builtin_cpu_supports("avx2"))
+    return 4;
+  else
+    return 3;
+}




More information about the llvm-commits mailing list