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

Unified Diff: crosstest/test_arith.cpp

Issue 265703002: Add Om1 lowering with no optimizations (Closed) Base URL: https://gerrit.chromium.org/gerrit/p/native_client/pnacl-subzero.git@master
Patch Set: Merge changed from Karl's committed CL Created 6 years, 7 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « crosstest/test_arith.h ('k') | crosstest/test_arith.def » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: crosstest/test_arith.cpp
diff --git a/crosstest/test_arith.cpp b/crosstest/test_arith.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..18b4b574d677d6caec1ad1123d1d427e0d5a0165
--- /dev/null
+++ b/crosstest/test_arith.cpp
@@ -0,0 +1,30 @@
+// This aims to test all the arithmetic bitcode instructions across
+// all PNaCl primitive data types.
+
+#include <stdint.h>
+
+#include "test_arith.h"
+
+#define X(inst, op, isdiv) \
+ bool test##inst(bool a, bool b) { return a op b; } \
+ uint8_t test##inst(uint8_t a, uint8_t b) { return a op b; } \
+ uint16_t test##inst(uint16_t a, uint16_t b) { return a op b; } \
+ uint32_t test##inst(uint32_t a, uint32_t b) { return a op b; } \
+ uint64_t test##inst(uint64_t a, uint64_t b) { return a op b; }
+UINTOP_TABLE
+#undef X
+
+#define X(inst, op, isdiv) \
+ bool test##inst(bool a, bool b) { return a op b; } \
+ int8_t test##inst(int8_t a, int8_t b) { return a op b; } \
+ int16_t test##inst(int16_t a, int16_t b) { return a op b; } \
+ int32_t test##inst(int32_t a, int32_t b) { return a op b; } \
+ int64_t test##inst(int64_t a, int64_t b) { return a op b; }
+SINTOP_TABLE
+#undef X
+
+#define X(inst, op, func) \
+ float test##inst(float a, float b) { return func(a op b); } \
+ double test##inst(double a, double b) { return func(a op b); }
+FPOP_TABLE
+#undef X
« no previous file with comments | « crosstest/test_arith.h ('k') | crosstest/test_arith.def » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698