Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(657)

Side by Side Diff: crosstest/test_select_main.cpp

Issue 877003003: Subzero: Use a "known" version of clang-format. (Closed) Base URL: https://chromium.googlesource.com/native_client/pnacl-subzero.git@master
Patch Set: Add a clang-format blacklist. Fix formatting "errors". Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « crosstest/test_icmp_main.cpp ('k') | crosstest/test_stacksave.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 //===- subzero/crosstest/test_select_main.cpp - Driver for tests ----------===// 1 //===- subzero/crosstest/test_select_main.cpp - Driver for tests ----------===//
2 // 2 //
3 // The Subzero Code Generator 3 // The Subzero Code Generator
4 // 4 //
5 // This file is distributed under the University of Illinois Open Source 5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details. 6 // License. See LICENSE.TXT for details.
7 // 7 //
8 //===----------------------------------------------------------------------===// 8 //===----------------------------------------------------------------------===//
9 // 9 //
10 // Driver for crosstesting the select bitcode instruction 10 // Driver for crosstesting the select bitcode instruction
(...skipping 14 matching lines...) Expand all
25 #include "test_select.h" 25 #include "test_select.h"
26 } 26 }
27 27
28 static const size_t MaxTestsPerFunc = 100000; 28 static const size_t MaxTestsPerFunc = 100000;
29 29
30 template <typename T, typename TI1> 30 template <typename T, typename TI1>
31 void testSelect(size_t &TotalTests, size_t &Passes, size_t &Failures) { 31 void testSelect(size_t &TotalTests, size_t &Passes, size_t &Failures) {
32 typedef typename Vectors<T>::Ty Ty; 32 typedef typename Vectors<T>::Ty Ty;
33 typedef typename Vectors<TI1>::Ty TyI1; 33 typedef typename Vectors<TI1>::Ty TyI1;
34 volatile unsigned Values[] = { 34 volatile unsigned Values[] = {
35 0x0, 0x1, 0x7ffffffe, 0x7fffffff, 35 0x0, 0x1, 0x7ffffffe, 0x7fffffff, 0x80000000, 0x80000001,
36 0x80000000, 0x80000001, 0xfffffffe, 0xffffffff, 36 0xfffffffe, 0xffffffff, 0x7e, 0x7f, 0x80, 0x81,
37 0x7e, 0x7f, 0x80, 0x81, 37 0xfe, 0xff, 0x100, 0x101, 0x7ffe, 0x7fff,
38 0xfe, 0xff, 0x100, 0x101, 38 0x8000, 0x8001, 0xfffe, 0xffff, 0x10000, 0x10001};
39 0x7ffe, 0x7fff, 0x8000, 0x8001,
40 0xfffe, 0xffff, 0x10000, 0x10001
41 };
42 static const size_t NumValues = sizeof(Values) / sizeof(*Values); 39 static const size_t NumValues = sizeof(Values) / sizeof(*Values);
43 static const size_t NumElements = Vectors<T>::NumElements; 40 static const size_t NumElements = Vectors<T>::NumElements;
44 PRNG Index; 41 PRNG Index;
45 for (size_t i = 0; i < MaxTestsPerFunc; ++i) { 42 for (size_t i = 0; i < MaxTestsPerFunc; ++i) {
46 TyI1 Cond; 43 TyI1 Cond;
47 Ty Value1, Value2; 44 Ty Value1, Value2;
48 for (size_t j = 0; j < NumElements; ++j) { 45 for (size_t j = 0; j < NumElements; ++j) {
49 Cond[j] = Index() % 2; 46 Cond[j] = Index() % 2;
50 Value1[j] = Values[Index() % NumValues]; 47 Value1[j] = Values[Index() % NumValues];
51 Value2[j] = Values[Index() % NumValues]; 48 Value2[j] = Values[Index() % NumValues];
52 } 49 }
53 Ty ResultLlc = select(Cond, Value1, Value2); 50 Ty ResultLlc = select(Cond, Value1, Value2);
54 Ty ResultSz = Subzero_::select(Cond, Value1, Value2); 51 Ty ResultSz = Subzero_::select(Cond, Value1, Value2);
55 ++TotalTests; 52 ++TotalTests;
56 if (!memcmp(&ResultLlc, &ResultSz, sizeof(ResultLlc))) { 53 if (!memcmp(&ResultLlc, &ResultSz, sizeof(ResultLlc))) {
57 ++Passes; 54 ++Passes;
58 } else { 55 } else {
59 ++Failures; 56 ++Failures;
60 std::cout << "select<" << Vectors<T>::TypeName << ">(Cond="; 57 std::cout << "select<" << Vectors<T>::TypeName << ">(Cond=";
61 std::cout << vectAsString<TI1>(Cond) 58 std::cout << vectAsString<TI1>(Cond)
62 << ", Value1=" << vectAsString<T>(Value1) 59 << ", Value1=" << vectAsString<T>(Value1)
63 << ", Value2=" << vectAsString<T>(Value2) << ")\n"; 60 << ", Value2=" << vectAsString<T>(Value2) << ")\n";
64 std::cout << "llc=" << vectAsString<T>(ResultLlc) << "\n"; 61 std::cout << "llc=" << vectAsString<T>(ResultLlc) << "\n";
65 std::cout << "sz =" << vectAsString<T>(ResultSz) << "\n"; 62 std::cout << "sz =" << vectAsString<T>(ResultSz) << "\n";
66 } 63 }
67 } 64 }
68 } 65 }
69 66
70 template<> void 67 template <>
71 testSelect<v4f32, v4i1>(size_t &TotalTests, size_t &Passes, size_t &Failures) { 68 void testSelect<v4f32, v4i1>(size_t &TotalTests, size_t &Passes,
69 size_t &Failures) {
72 static const float NegInf = -1.0 / 0.0; 70 static const float NegInf = -1.0 / 0.0;
73 static const float PosInf = 1.0 / 0.0; 71 static const float PosInf = 1.0 / 0.0;
74 static const float Nan = 0.0 / 0.0; 72 static const float Nan = 0.0 / 0.0;
75 static const float NegNan = -0.0 / 0.0; 73 static const float NegNan = -0.0 / 0.0;
76 volatile float Values[] = FP_VALUE_ARRAY(NegInf, PosInf, NegNan, Nan); 74 volatile float Values[] = FP_VALUE_ARRAY(NegInf, PosInf, NegNan, Nan);
77 static const size_t NumValues = sizeof(Values) / sizeof(*Values); 75 static const size_t NumValues = sizeof(Values) / sizeof(*Values);
78 static const size_t NumElements = 4; 76 static const size_t NumElements = 4;
79 PRNG Index; 77 PRNG Index;
80 for (size_t i = 0; i < MaxTestsPerFunc; ++i) { 78 for (size_t i = 0; i < MaxTestsPerFunc; ++i) {
81 v4si32 Cond; 79 v4si32 Cond;
(...skipping 13 matching lines...) Expand all
95 std::cout << "select<v4f32>(Cond="; 93 std::cout << "select<v4f32>(Cond=";
96 std::cout << vectAsString<v4i1>(Cond) 94 std::cout << vectAsString<v4i1>(Cond)
97 << ", Value1=" << vectAsString<v4f32>(Value1) 95 << ", Value1=" << vectAsString<v4f32>(Value1)
98 << ", Value2=" << vectAsString<v4f32>(Value2) << ")\n"; 96 << ", Value2=" << vectAsString<v4f32>(Value2) << ")\n";
99 std::cout << "llc=" << vectAsString<v4f32>(ResultLlc) << "\n"; 97 std::cout << "llc=" << vectAsString<v4f32>(ResultLlc) << "\n";
100 std::cout << "sz =" << vectAsString<v4f32>(ResultSz) << "\n"; 98 std::cout << "sz =" << vectAsString<v4f32>(ResultSz) << "\n";
101 } 99 }
102 } 100 }
103 } 101 }
104 102
105 template<typename T> 103 template <typename T>
106 void testSelectI1(size_t &TotalTests, size_t &Passes, size_t &Failures) { 104 void testSelectI1(size_t &TotalTests, size_t &Passes, size_t &Failures) {
107 typedef typename Vectors<T>::Ty Ty; 105 typedef typename Vectors<T>::Ty Ty;
108 static const size_t NumElements = Vectors<T>::NumElements; 106 static const size_t NumElements = Vectors<T>::NumElements;
109 PRNG Index; 107 PRNG Index;
110 for (size_t i = 0; i < MaxTestsPerFunc; ++i) { 108 for (size_t i = 0; i < MaxTestsPerFunc; ++i) {
111 Ty Cond; 109 Ty Cond;
112 Ty Value1, Value2; 110 Ty Value1, Value2;
113 for (size_t j = 0; j < NumElements; ++j) { 111 for (size_t j = 0; j < NumElements; ++j) {
114 Cond[j] = Index() % 2; 112 Cond[j] = Index() % 2;
115 Value1[j] = Index() % 2; 113 Value1[j] = Index() % 2;
(...skipping 30 matching lines...) Expand all
146 testSelect<v16ui8, v16i1>(TotalTests, Passes, Failures); 144 testSelect<v16ui8, v16i1>(TotalTests, Passes, Failures);
147 testSelectI1<v4i1>(TotalTests, Passes, Failures); 145 testSelectI1<v4i1>(TotalTests, Passes, Failures);
148 testSelectI1<v8i1>(TotalTests, Passes, Failures); 146 testSelectI1<v8i1>(TotalTests, Passes, Failures);
149 testSelectI1<v16i1>(TotalTests, Passes, Failures); 147 testSelectI1<v16i1>(TotalTests, Passes, Failures);
150 148
151 std::cout << "TotalTests=" << TotalTests << " Passes=" << Passes 149 std::cout << "TotalTests=" << TotalTests << " Passes=" << Passes
152 << " Failures=" << Failures << "\n"; 150 << " Failures=" << Failures << "\n";
153 151
154 return Failures; 152 return Failures;
155 } 153 }
OLDNEW
« no previous file with comments | « crosstest/test_icmp_main.cpp ('k') | crosstest/test_stacksave.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698