| OLD | NEW |
| 1 //===- subzero/crosstest/test_bitmanip.def - macros for tests -*- C++ -*---===// | 1 //===- subzero/crosstest/test_bitmanip.def - macros for tests -*- C++ -*---===// |
| 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 // This file defines macros for testing bit manipulation intrinsics. | 10 // This file defines macros for testing bit manipulation intrinsics. |
| 11 // | 11 // |
| 12 //===----------------------------------------------------------------------===// | 12 //===----------------------------------------------------------------------===// |
| 13 | 13 |
| 14 #ifndef TEST_BIT_MANIP_DEF | 14 #ifndef TEST_BIT_MANIP_DEF |
| 15 #define TEST_BIT_MANIP_DEF | 15 #define TEST_BIT_MANIP_DEF |
| 16 | 16 |
| 17 #include "xdefs.h" |
| 18 |
| 17 #define STR(s) #s | 19 #define STR(s) #s |
| 18 | 20 |
| 19 #define BMI_OPS \ | 21 #define BMI_OPS \ |
| 20 /* inst */ \ | 22 /* inst */ \ |
| 21 X(ctlz) \ | 23 X(ctlz) \ |
| 22 X(cttz) \ | 24 X(cttz) \ |
| 23 X(ctpop) | 25 X(ctpop) |
| 24 // #define X(inst) | 26 // #define X(inst) |
| 25 | 27 |
| 26 #define BMI_TYPES \ | 28 #define BMI_TYPES \ |
| 27 /* type */ \ | 29 /* type */ \ |
| 28 X(uint32_t) \ | 30 X(uint32) \ |
| 29 X(uint64_t) | 31 X(uint64) |
| 30 // #define X(type) | 32 // #define X(type) |
| 31 | 33 |
| 32 #define FOR_ALL_BMI_TYPES_INST(F, inst) \ | 34 #define FOR_ALL_BMI_TYPES_INST(F, inst) \ |
| 33 F(inst, uint32_t) \ | 35 F(inst, uint32) \ |
| 34 F(inst, uint64_t) | 36 F(inst, uint64) |
| 35 | 37 |
| 36 #define FOR_ALL_BMI_OP_TYPES(X) \ | 38 #define FOR_ALL_BMI_OP_TYPES(X) \ |
| 37 FOR_ALL_BMI_TYPES_INST(X, ctlz) \ | 39 FOR_ALL_BMI_TYPES_INST(X, ctlz) \ |
| 38 FOR_ALL_BMI_TYPES_INST(X, cttz) \ | 40 FOR_ALL_BMI_TYPES_INST(X, cttz) \ |
| 39 FOR_ALL_BMI_TYPES_INST(X, ctpop) | 41 FOR_ALL_BMI_TYPES_INST(X, ctpop) |
| 40 //#define X(inst, type) | 42 //#define X(inst, type) |
| 41 | 43 |
| 42 #define BSWAP_TABLE \ | 44 #define BSWAP_TABLE \ |
| 43 /* type, builtin_name */ \ | 45 /* type, builtin_name */ \ |
| 44 X(uint16_t, __builtin_bswap16) \ | 46 X(uint16_t, __builtin_bswap16) \ |
| 45 X(uint32_t, __builtin_bswap32) \ | 47 X(uint32, __builtin_bswap32) \ |
| 46 X(uint64_t, __builtin_bswap64) | 48 X(uint64, __builtin_bswap64) |
| 47 | 49 |
| 48 #endif // TEST_BIT_MANIP_DEF | 50 #endif // TEST_BIT_MANIP_DEF |
| OLD | NEW |