Lines Matching refs:OP

726 #define OP_CRITICAL(OP, LCK_ID)                                                \  argument
729 (*lhs) OP(rhs); \
733 #define OP_UPDATE_CRITICAL(TYPE, OP, LCK_ID) \ argument
735 (*lhs) = (TYPE)((*lhs)OP rhs); \
761 #define OP_GOMP_CRITICAL(OP, FLAG) \ argument
764 OP_CRITICAL(OP, 0); \
768 #define OP_UPDATE_GOMP_CRITICAL(TYPE, OP, FLAG) \ argument
771 OP_UPDATE_CRITICAL(TYPE, OP, 0); \
775 #define OP_GOMP_CRITICAL(OP, FLAG) argument
776 #define OP_UPDATE_GOMP_CRITICAL(TYPE, OP, FLAG) argument
790 #define OP_CMPXCHG(TYPE, BITS, OP) \ argument
794 new_value = (TYPE)(old_value OP rhs); \
801 new_value = (TYPE)(old_value OP rhs); \
812 #define OP_CMPXCHG_WORKAROUND(TYPE, BITS, OP) \ argument
822 new_value.cmp = (TYPE)(old_value.cmp OP rhs); \
829 new_value.cmp = (TYPE)(old_value.cmp OP rhs); \
839 #define OP_CMPXCHG(TYPE, BITS, OP) \ argument
849 new_value.cmp = old_value.cmp OP rhs; \
856 new_value.cmp = old_value.cmp OP rhs; \
861 #define OP_UPDATE_CRITICAL(TYPE, OP, LCK_ID) \ argument
863 (*lhs) = (*lhs)OP rhs; \
872 #define ATOMIC_FIXED_ADD(TYPE_ID, OP_ID, TYPE, BITS, OP, LCK_ID, MASK, \ argument
875 OP_UPDATE_GOMP_CRITICAL(TYPE, OP, GOMP_FLAG) \
877 KMP_TEST_THEN_ADD##BITS(lhs, OP rhs); \
880 #define ATOMIC_CMPXCHG(TYPE_ID, OP_ID, TYPE, BITS, OP, LCK_ID, MASK, \ argument
883 OP_UPDATE_GOMP_CRITICAL(TYPE, OP, GOMP_FLAG) \
884 OP_CMPXCHG(TYPE, BITS, OP) \
889 #define ATOMIC_CMPXCHG_WORKAROUND(TYPE_ID, OP_ID, TYPE, BITS, OP, LCK_ID, \ argument
892 OP_UPDATE_GOMP_CRITICAL(TYPE, OP, GOMP_FLAG) \
893 OP_CMPXCHG_WORKAROUND(TYPE, BITS, OP) \
901 #define ATOMIC_FIXED_ADD(TYPE_ID, OP_ID, TYPE, BITS, OP, LCK_ID, MASK, \ argument
904 OP_UPDATE_GOMP_CRITICAL(TYPE, OP, GOMP_FLAG) \
907 KMP_TEST_THEN_ADD##BITS(lhs, OP rhs); \
910 OP_UPDATE_CRITICAL(TYPE, OP, \
915 #define ATOMIC_CMPXCHG(TYPE_ID, OP_ID, TYPE, BITS, OP, LCK_ID, MASK, \ argument
918 OP_UPDATE_GOMP_CRITICAL(TYPE, OP, GOMP_FLAG) \
920 OP_CMPXCHG(TYPE, BITS, OP) /* aligned address */ \
923 OP_UPDATE_CRITICAL(TYPE, OP, \
930 #define ATOMIC_CMPXCHG_WORKAROUND(TYPE_ID, OP_ID, TYPE, BITS, OP, LCK_ID, \ argument
933 OP_UPDATE_GOMP_CRITICAL(TYPE, OP, GOMP_FLAG) \
935 OP_CMPXCHG(TYPE, BITS, OP) /* aligned address */ \
938 OP_UPDATE_CRITICAL(TYPE, OP, \
1079 #define ATOMIC_CRIT_L(TYPE_ID, OP_ID, TYPE, OP, LCK_ID, GOMP_FLAG) \ argument
1081 OP_GOMP_CRITICAL(= *lhs OP, GOMP_FLAG) \
1082 OP_CRITICAL(= *lhs OP, LCK_ID) \
1089 #define ATOMIC_CMPX_L(TYPE_ID, OP_ID, TYPE, BITS, OP, LCK_ID, MASK, GOMP_FLAG) \ argument
1091 OP_GOMP_CRITICAL(= *lhs OP, GOMP_FLAG) \
1092 OP_CMPXCHG(TYPE, BITS, OP) \
1098 #define ATOMIC_CMPX_L(TYPE_ID, OP_ID, TYPE, BITS, OP, LCK_ID, MASK, GOMP_FLAG) \
1100 OP_GOMP_CRITICAL(= *lhs OP, GOMP_FLAG) \
1102 OP_CMPXCHG(TYPE, BITS, OP) /* aligned address */ \
1105 OP_CRITICAL(= *lhs OP, LCK_ID) /* unaligned - use critical */ \
1136 #define MIN_MAX_CRITSECT(OP, LCK_ID) \ argument
1139 if (*lhs OP rhs) { /* still need actions? */ \
1146 #define GOMP_MIN_MAX_CRITSECT(OP, FLAG) \ argument
1149 MIN_MAX_CRITSECT(OP, 0); \
1153 #define GOMP_MIN_MAX_CRITSECT(OP, FLAG)
1157 #define MIN_MAX_CMPXCHG(TYPE, BITS, OP) \ argument
1163 while (old_value OP rhs && /* still need actions? */ \
1175 #define MIN_MAX_CRITICAL(TYPE_ID, OP_ID, TYPE, OP, LCK_ID, GOMP_FLAG) \ argument
1177 if (*lhs OP rhs) { /* need actions? */ \
1178 GOMP_MIN_MAX_CRITSECT(OP, GOMP_FLAG) \
1179 MIN_MAX_CRITSECT(OP, LCK_ID) \
1187 #define MIN_MAX_COMPXCHG(TYPE_ID, OP_ID, TYPE, BITS, OP, LCK_ID, MASK, \ argument
1190 if (*lhs OP rhs) { \
1191 GOMP_MIN_MAX_CRITSECT(OP, GOMP_FLAG) \
1192 MIN_MAX_CMPXCHG(TYPE, BITS, OP) \
1199 #define MIN_MAX_COMPXCHG(TYPE_ID, OP_ID, TYPE, BITS, OP, LCK_ID, MASK, \
1202 if (*lhs OP rhs) { \
1203 GOMP_MIN_MAX_CRITSECT(OP, GOMP_FLAG) \
1205 MIN_MAX_CMPXCHG(TYPE, BITS, OP) /* aligned address */ \
1208 MIN_MAX_CRITSECT(OP, LCK_ID) /* unaligned address */ \
1259 #define ATOMIC_CRIT_EQV(TYPE_ID, OP_ID, TYPE, OP, LCK_ID, GOMP_FLAG) \ argument
1269 #define ATOMIC_CMPX_EQV(TYPE_ID, OP_ID, TYPE, BITS, OP, LCK_ID, MASK, \ argument
1273 OP_CMPXCHG(TYPE, BITS, OP) \
1279 #define ATOMIC_CMPX_EQV(TYPE_ID, OP_ID, TYPE, BITS, OP, LCK_ID, MASK, \
1284 OP_CMPXCHG(TYPE, BITS, OP) /* aligned address */ \
1315 #define ATOMIC_CRITICAL(TYPE_ID, OP_ID, TYPE, OP, LCK_ID, GOMP_FLAG) \ argument
1317 OP_UPDATE_GOMP_CRITICAL(TYPE, OP, GOMP_FLAG) /* send assignment */ \
1318 OP_UPDATE_CRITICAL(TYPE, OP, LCK_ID) /* send assignment */ \
1419 #define OP_CRITICAL_REV(TYPE, OP, LCK_ID) \ argument
1422 (*lhs) = (TYPE)((rhs)OP(*lhs)); \
1427 #define OP_GOMP_CRITICAL_REV(TYPE, OP, FLAG) \ argument
1430 OP_CRITICAL_REV(TYPE, OP, 0); \
1435 #define OP_GOMP_CRITICAL_REV(TYPE, OP, FLAG)
1456 #define OP_CMPXCHG_REV(TYPE, BITS, OP) \ argument
1462 new_value = (TYPE)(rhs OP old_value); \
1470 new_value = (TYPE)(rhs OP old_value); \
1475 #define ATOMIC_CMPXCHG_REV(TYPE_ID, OP_ID, TYPE, BITS, OP, LCK_ID, GOMP_FLAG) \ argument
1477 OP_GOMP_CRITICAL_REV(TYPE, OP, GOMP_FLAG) \
1478 OP_CMPXCHG_REV(TYPE, BITS, OP) \
1564 #define ATOMIC_CRITICAL_REV(TYPE_ID, OP_ID, TYPE, OP, LCK_ID, GOMP_FLAG) \ argument
1566 OP_GOMP_CRITICAL_REV(TYPE, OP, GOMP_FLAG) \
1567 OP_CRITICAL_REV(TYPE, OP, LCK_ID) \
1639 #define ATOMIC_CRITICAL_FP(TYPE_ID, TYPE, OP_ID, OP, RTYPE_ID, RTYPE, LCK_ID, \ argument
1642 OP_UPDATE_GOMP_CRITICAL(TYPE, OP, GOMP_FLAG) /* send assignment */ \
1643 OP_UPDATE_CRITICAL(TYPE, OP, LCK_ID) /* send assignment */ \
1650 #define ATOMIC_CMPXCHG_MIX(TYPE_ID, TYPE, OP_ID, BITS, OP, RTYPE_ID, RTYPE, \ argument
1653 OP_UPDATE_GOMP_CRITICAL(TYPE, OP, GOMP_FLAG) \
1654 OP_CMPXCHG(TYPE, BITS, OP) \
1660 #define ATOMIC_CMPXCHG_MIX(TYPE_ID, TYPE, OP_ID, BITS, OP, RTYPE_ID, RTYPE, \
1663 OP_UPDATE_GOMP_CRITICAL(TYPE, OP, GOMP_FLAG) \
1665 OP_CMPXCHG(TYPE, BITS, OP) /* aligned address */ \
1668 OP_UPDATE_CRITICAL(TYPE, OP, \
1677 #define ATOMIC_CMPXCHG_REV_MIX(TYPE_ID, TYPE, OP_ID, BITS, OP, RTYPE_ID, \ argument
1680 OP_GOMP_CRITICAL_REV(TYPE, OP, GOMP_FLAG) \
1681 OP_CMPXCHG_REV(TYPE, BITS, OP) \
1683 #define ATOMIC_CRITICAL_REV_FP(TYPE_ID, TYPE, OP_ID, OP, RTYPE_ID, RTYPE, \ argument
1686 OP_GOMP_CRITICAL_REV(TYPE, OP, GOMP_FLAG) \
1687 OP_CRITICAL_REV(TYPE, OP, LCK_ID) \
1876 #define ATOMIC_CMPXCHG_CMPLX(TYPE_ID, TYPE, OP_ID, BITS, OP, RTYPE_ID, RTYPE, \ argument
1879 OP_UPDATE_GOMP_CRITICAL(TYPE, OP, GOMP_FLAG) \
1880 OP_CMPXCHG_WORKAROUND(TYPE, BITS, OP) \
1884 #define ATOMIC_CMPXCHG_CMPLX(TYPE_ID, TYPE, OP_ID, BITS, OP, RTYPE_ID, RTYPE, \
1887 OP_UPDATE_GOMP_CRITICAL(TYPE, OP, GOMP_FLAG) \
1888 OP_CMPXCHG(TYPE, BITS, OP) \
1894 #define ATOMIC_CMPXCHG_CMPLX(TYPE_ID, TYPE, OP_ID, BITS, OP, RTYPE_ID, RTYPE, \
1897 OP_UPDATE_GOMP_CRITICAL(TYPE, OP, GOMP_FLAG) \
1899 OP_CMPXCHG(TYPE, BITS, OP) /* aligned address */ \
1902 OP_UPDATE_CRITICAL(TYPE, OP, \
1944 #define OP_CMPXCHG_READ(TYPE, BITS, OP) \ argument
1968 #define OP_CRITICAL_READ(OP, LCK_ID) \ argument
1977 #define OP_GOMP_CRITICAL_READ(OP, FLAG) \ argument
1980 OP_CRITICAL_READ(OP, 0); \
1984 #define OP_GOMP_CRITICAL_READ(OP, FLAG)
1988 #define ATOMIC_FIXED_READ(TYPE_ID, OP_ID, TYPE, BITS, OP, GOMP_FLAG) \ argument
1991 OP_GOMP_CRITICAL_READ(OP## =, GOMP_FLAG) \
1992 new_value = KMP_TEST_THEN_ADD##BITS(loc, OP 0); \
1996 #define ATOMIC_CMPXCHG_READ(TYPE_ID, OP_ID, TYPE, BITS, OP, GOMP_FLAG) \ argument
1999 OP_GOMP_CRITICAL_READ(OP## =, GOMP_FLAG) \
2000 OP_CMPXCHG_READ(TYPE, BITS, OP) \
2008 #define ATOMIC_CRITICAL_READ(TYPE_ID, OP_ID, TYPE, OP, LCK_ID, GOMP_FLAG) \ argument
2011 OP_GOMP_CRITICAL_READ(OP## =, GOMP_FLAG) /* send assignment */ \
2012 OP_CRITICAL_READ(OP, LCK_ID) /* send assignment */ \
2022 #define OP_CRITICAL_READ_WRK(OP, LCK_ID) \ argument
2030 #define OP_GOMP_CRITICAL_READ_WRK(OP, FLAG) \ argument
2033 OP_CRITICAL_READ_WRK(OP, 0); \
2036 #define OP_GOMP_CRITICAL_READ_WRK(OP, FLAG)
2046 #define ATOMIC_CRITICAL_READ_WRK(TYPE_ID, OP_ID, TYPE, OP, LCK_ID, GOMP_FLAG) \ argument
2048 OP_GOMP_CRITICAL_READ_WRK(OP## =, GOMP_FLAG) /* send assignment */ \
2049 OP_CRITICAL_READ_WRK(OP, LCK_ID) /* send assignment */ \
2103 #define ATOMIC_XCHG_WR(TYPE_ID, OP_ID, TYPE, BITS, OP, GOMP_FLAG) \ argument
2105 OP_GOMP_CRITICAL(OP, GOMP_FLAG) \
2109 #define ATOMIC_XCHG_FLOAT_WR(TYPE_ID, OP_ID, TYPE, BITS, OP, GOMP_FLAG) \ argument
2111 OP_GOMP_CRITICAL(OP, GOMP_FLAG) \
2122 #define OP_CMPXCHG_WR(TYPE, BITS, OP) \ argument
2139 #define ATOMIC_CMPXCHG_WR(TYPE_ID, OP_ID, TYPE, BITS, OP, GOMP_FLAG) \ argument
2141 OP_GOMP_CRITICAL(OP, GOMP_FLAG) \
2142 OP_CMPXCHG_WR(TYPE, BITS, OP) \
2151 #define ATOMIC_CRITICAL_WR(TYPE_ID, OP_ID, TYPE, OP, LCK_ID, GOMP_FLAG) \ argument
2153 OP_GOMP_CRITICAL(OP, GOMP_FLAG) /* send assignment */ \
2154 OP_CRITICAL(OP, LCK_ID) /* send assignment */ \
2224 #define OP_CRITICAL_CPT(OP, LCK_ID) \ argument
2228 (*lhs) OP rhs; \
2232 (*lhs) OP rhs; \
2238 #define OP_UPDATE_CRITICAL_CPT(TYPE, OP, LCK_ID) \ argument
2242 (*lhs) = (TYPE)((*lhs)OP rhs); \
2246 (*lhs) = (TYPE)((*lhs)OP rhs); \
2254 #define OP_GOMP_CRITICAL_CPT(TYPE, OP, FLAG) \ argument
2257 OP_UPDATE_CRITICAL_CPT(TYPE, OP, 0); \
2260 #define OP_GOMP_CRITICAL_CPT(TYPE, OP, FLAG)
2270 #define OP_CMPXCHG_CPT(TYPE, BITS, OP) \ argument
2276 new_value = (TYPE)(old_value OP rhs); \
2282 new_value = (TYPE)(old_value OP rhs); \
2291 #define ATOMIC_CMPXCHG_CPT(TYPE_ID, OP_ID, TYPE, BITS, OP, GOMP_FLAG) \ argument
2295 OP_GOMP_CRITICAL_CPT(TYPE, OP, GOMP_FLAG) \
2296 OP_CMPXCHG_CPT(TYPE, BITS, OP) \
2300 #define ATOMIC_FIXED_ADD_CPT(TYPE_ID, OP_ID, TYPE, BITS, OP, GOMP_FLAG) \ argument
2304 OP_GOMP_CRITICAL_CPT(TYPE, OP, GOMP_FLAG) \
2306 old_value = KMP_TEST_THEN_ADD##BITS(lhs, OP rhs); \
2308 return old_value OP rhs; \
2451 #define ATOMIC_CMPXCHG_CPT_MIX(TYPE_ID, TYPE, OP_ID, BITS, OP, RTYPE_ID, \ argument
2456 OP_GOMP_CRITICAL_CPT(TYPE, OP, GOMP_FLAG) \
2457 OP_CMPXCHG_CPT(TYPE, BITS, OP) \
2461 #define ATOMIC_CRITICAL_CPT_MIX(TYPE_ID, TYPE, OP_ID, OP, RTYPE_ID, RTYPE, \ argument
2466 OP_GOMP_CRITICAL_CPT(TYPE, OP, GOMP_FLAG) /* send assignment */ \
2467 OP_UPDATE_CRITICAL_CPT(TYPE, OP, LCK_ID) /* send assignment */ \
2576 #define OP_CRITICAL_L_CPT(OP, LCK_ID) \ argument
2580 new_value OP rhs; \
2584 (*lhs) OP rhs; \
2591 #define OP_GOMP_CRITICAL_L_CPT(OP, FLAG) \ argument
2594 OP_CRITICAL_L_CPT(OP, 0); \
2598 #define OP_GOMP_CRITICAL_L_CPT(OP, FLAG)
2603 #define ATOMIC_CMPX_L_CPT(TYPE_ID, OP_ID, TYPE, BITS, OP, GOMP_FLAG) \ argument
2607 OP_GOMP_CRITICAL_L_CPT(= *lhs OP, GOMP_FLAG) \
2608 OP_CMPXCHG_CPT(TYPE, BITS, OP) \
2637 #define MIN_MAX_CRITSECT_CPT(OP, LCK_ID) \ argument
2640 if (*lhs OP rhs) { /* still need actions? */ \
2655 #define GOMP_MIN_MAX_CRITSECT_CPT(OP, FLAG) \ argument
2658 MIN_MAX_CRITSECT_CPT(OP, 0); \
2661 #define GOMP_MIN_MAX_CRITSECT_CPT(OP, FLAG)
2665 #define MIN_MAX_CMPXCHG_CPT(TYPE, BITS, OP) \ argument
2671 while (old_value OP rhs && /* still need actions? */ \
2687 #define MIN_MAX_CRITICAL_CPT(TYPE_ID, OP_ID, TYPE, OP, LCK_ID, GOMP_FLAG) \ argument
2690 if (*lhs OP rhs) { /* need actions? */ \
2691 GOMP_MIN_MAX_CRITSECT_CPT(OP, GOMP_FLAG) \
2692 MIN_MAX_CRITSECT_CPT(OP, LCK_ID) \
2697 #define MIN_MAX_COMPXCHG_CPT(TYPE_ID, OP_ID, TYPE, BITS, OP, GOMP_FLAG) \ argument
2701 if (*lhs OP rhs) { \
2702 GOMP_MIN_MAX_CRITSECT_CPT(OP, GOMP_FLAG) \
2703 MIN_MAX_CMPXCHG_CPT(TYPE, BITS, OP) \
2751 #define OP_GOMP_CRITICAL_EQV_CPT(OP, FLAG) \ argument
2754 OP_CRITICAL_CPT(OP, 0); \
2757 #define OP_GOMP_CRITICAL_EQV_CPT(OP, FLAG)
2760 #define ATOMIC_CMPX_EQV_CPT(TYPE_ID, OP_ID, TYPE, BITS, OP, GOMP_FLAG) \ argument
2765 OP_CMPXCHG_CPT(TYPE, BITS, OP) \
2793 #define ATOMIC_CRITICAL_CPT(TYPE_ID, OP_ID, TYPE, OP, LCK_ID, GOMP_FLAG) \ argument
2796 OP_GOMP_CRITICAL_CPT(TYPE, OP, GOMP_FLAG) /* send assignment */ \
2797 OP_UPDATE_CRITICAL_CPT(TYPE, OP, LCK_ID) /* send assignment */ \
2803 #define OP_CRITICAL_CPT_WRK(OP, LCK_ID) \ argument
2807 (*lhs) OP rhs; \
2811 (*lhs) OP rhs; \
2819 #define OP_GOMP_CRITICAL_CPT_WRK(OP, FLAG) \ argument
2822 OP_CRITICAL_CPT_WRK(OP## =, 0); \
2825 #define OP_GOMP_CRITICAL_CPT_WRK(OP, FLAG)
2836 #define ATOMIC_CRITICAL_CPT_WRK(TYPE_ID, OP_ID, TYPE, OP, LCK_ID, GOMP_FLAG) \ argument
2838 OP_GOMP_CRITICAL_CPT_WRK(OP, GOMP_FLAG) \
2839 OP_CRITICAL_CPT_WRK(OP## =, LCK_ID) \
2934 #define OP_CRITICAL_CPT_REV(TYPE, OP, LCK_ID) \ argument
2939 (*lhs) = (TYPE)((rhs)OP(*lhs)); \
2943 (*lhs) = (TYPE)((rhs)OP(*lhs)); \
2950 #define OP_GOMP_CRITICAL_CPT_REV(TYPE, OP, FLAG) \ argument
2953 OP_CRITICAL_CPT_REV(TYPE, OP, 0); \
2956 #define OP_GOMP_CRITICAL_CPT_REV(TYPE, OP, FLAG)
2966 #define OP_CMPXCHG_CPT_REV(TYPE, BITS, OP) \ argument
2972 new_value = (TYPE)(rhs OP old_value); \
2978 new_value = (TYPE)(rhs OP old_value); \
2987 #define ATOMIC_CMPXCHG_CPT_REV(TYPE_ID, OP_ID, TYPE, BITS, OP, GOMP_FLAG) \ argument
2991 OP_GOMP_CRITICAL_CPT_REV(TYPE, OP, GOMP_FLAG) \
2992 OP_CMPXCHG_CPT_REV(TYPE, BITS, OP) \
3059 #define ATOMIC_CRITICAL_CPT_REV(TYPE_ID, OP_ID, TYPE, OP, LCK_ID, GOMP_FLAG) \ argument
3063 OP_GOMP_CRITICAL_CPT_REV(TYPE, OP, GOMP_FLAG) \
3064 OP_CRITICAL_CPT_REV(TYPE, OP, LCK_ID) \
3092 #define OP_CRITICAL_CPT_REV_WRK(OP, LCK_ID) \ argument
3096 (*lhs) = (rhs)OP(*lhs); \
3100 (*lhs) = (rhs)OP(*lhs); \
3108 #define OP_GOMP_CRITICAL_CPT_REV_WRK(OP, FLAG) \ argument
3111 OP_CRITICAL_CPT_REV_WRK(OP, 0); \
3114 #define OP_GOMP_CRITICAL_CPT_REV_WRK(OP, FLAG)
3118 #define ATOMIC_CRITICAL_CPT_REV_WRK(TYPE_ID, OP_ID, TYPE, OP, LCK_ID, \ argument
3121 OP_GOMP_CRITICAL_CPT_REV_WRK(OP, GOMP_FLAG) \
3122 OP_CRITICAL_CPT_REV_WRK(OP, LCK_ID) \
3163 #define ATOMIC_CMPXCHG_CPT_REV_MIX(TYPE_ID, TYPE, OP_ID, BITS, OP, RTYPE_ID, \ argument
3168 OP_GOMP_CRITICAL_CPT_REV(TYPE, OP, GOMP_FLAG) \
3169 OP_CMPXCHG_CPT_REV(TYPE, BITS, OP) \
3173 #define ATOMIC_CRITICAL_CPT_REV_MIX(TYPE_ID, TYPE, OP_ID, OP, RTYPE_ID, RTYPE, \ argument
3178 OP_GOMP_CRITICAL_CPT_REV(TYPE, OP, GOMP_FLAG) /* send assignment */ \
3179 OP_CRITICAL_CPT_REV(TYPE, OP, LCK_ID) /* send assignment */ \