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, \
1943 #define OP_CMPXCHG_READ(TYPE, BITS, OP) \ argument
1967 #define OP_CRITICAL_READ(OP, LCK_ID) \ argument
1976 #define OP_GOMP_CRITICAL_READ(OP, FLAG) \ argument
1979 OP_CRITICAL_READ(OP, 0); \
1983 #define OP_GOMP_CRITICAL_READ(OP, FLAG)
1987 #define ATOMIC_FIXED_READ(TYPE_ID, OP_ID, TYPE, BITS, OP, GOMP_FLAG) \ argument
1990 OP_GOMP_CRITICAL_READ(OP## =, GOMP_FLAG) \
1991 new_value = KMP_TEST_THEN_ADD##BITS(loc, OP 0); \
1995 #define ATOMIC_CMPXCHG_READ(TYPE_ID, OP_ID, TYPE, BITS, OP, GOMP_FLAG) \ argument
1998 OP_GOMP_CRITICAL_READ(OP## =, GOMP_FLAG) \
1999 OP_CMPXCHG_READ(TYPE, BITS, OP) \
2007 #define ATOMIC_CRITICAL_READ(TYPE_ID, OP_ID, TYPE, OP, LCK_ID, GOMP_FLAG) \ argument
2010 OP_GOMP_CRITICAL_READ(OP## =, GOMP_FLAG) /* send assignment */ \
2011 OP_CRITICAL_READ(OP, LCK_ID) /* send assignment */ \
2021 #define OP_CRITICAL_READ_WRK(OP, LCK_ID) \ argument
2029 #define OP_GOMP_CRITICAL_READ_WRK(OP, FLAG) \ argument
2032 OP_CRITICAL_READ_WRK(OP, 0); \
2035 #define OP_GOMP_CRITICAL_READ_WRK(OP, FLAG)
2045 #define ATOMIC_CRITICAL_READ_WRK(TYPE_ID, OP_ID, TYPE, OP, LCK_ID, GOMP_FLAG) \ argument
2047 OP_GOMP_CRITICAL_READ_WRK(OP## =, GOMP_FLAG) /* send assignment */ \
2048 OP_CRITICAL_READ_WRK(OP, LCK_ID) /* send assignment */ \
2102 #define ATOMIC_XCHG_WR(TYPE_ID, OP_ID, TYPE, BITS, OP, GOMP_FLAG) \ argument
2104 OP_GOMP_CRITICAL(OP, GOMP_FLAG) \
2108 #define ATOMIC_XCHG_FLOAT_WR(TYPE_ID, OP_ID, TYPE, BITS, OP, GOMP_FLAG) \ argument
2110 OP_GOMP_CRITICAL(OP, GOMP_FLAG) \
2121 #define OP_CMPXCHG_WR(TYPE, BITS, OP) \ argument
2138 #define ATOMIC_CMPXCHG_WR(TYPE_ID, OP_ID, TYPE, BITS, OP, GOMP_FLAG) \ argument
2140 OP_GOMP_CRITICAL(OP, GOMP_FLAG) \
2141 OP_CMPXCHG_WR(TYPE, BITS, OP) \
2150 #define ATOMIC_CRITICAL_WR(TYPE_ID, OP_ID, TYPE, OP, LCK_ID, GOMP_FLAG) \ argument
2152 OP_GOMP_CRITICAL(OP, GOMP_FLAG) /* send assignment */ \
2153 OP_CRITICAL(OP, LCK_ID) /* send assignment */ \
2223 #define OP_CRITICAL_CPT(OP, LCK_ID) \ argument
2227 (*lhs) OP rhs; \
2231 (*lhs) OP rhs; \
2237 #define OP_UPDATE_CRITICAL_CPT(TYPE, OP, LCK_ID) \ argument
2241 (*lhs) = (TYPE)((*lhs)OP rhs); \
2245 (*lhs) = (TYPE)((*lhs)OP rhs); \
2253 #define OP_GOMP_CRITICAL_CPT(TYPE, OP, FLAG) \ argument
2256 OP_UPDATE_CRITICAL_CPT(TYPE, OP, 0); \
2259 #define OP_GOMP_CRITICAL_CPT(TYPE, OP, FLAG)
2269 #define OP_CMPXCHG_CPT(TYPE, BITS, OP) \ argument
2275 new_value = (TYPE)(old_value OP rhs); \
2281 new_value = (TYPE)(old_value OP rhs); \
2290 #define ATOMIC_CMPXCHG_CPT(TYPE_ID, OP_ID, TYPE, BITS, OP, GOMP_FLAG) \ argument
2294 OP_GOMP_CRITICAL_CPT(TYPE, OP, GOMP_FLAG) \
2295 OP_CMPXCHG_CPT(TYPE, BITS, OP) \
2299 #define ATOMIC_FIXED_ADD_CPT(TYPE_ID, OP_ID, TYPE, BITS, OP, GOMP_FLAG) \ argument
2303 OP_GOMP_CRITICAL_CPT(TYPE, OP, GOMP_FLAG) \
2305 old_value = KMP_TEST_THEN_ADD##BITS(lhs, OP rhs); \
2307 return old_value OP rhs; \
2450 #define ATOMIC_CMPXCHG_CPT_MIX(TYPE_ID, TYPE, OP_ID, BITS, OP, RTYPE_ID, \ argument
2455 OP_GOMP_CRITICAL_CPT(TYPE, OP, GOMP_FLAG) \
2456 OP_CMPXCHG_CPT(TYPE, BITS, OP) \
2460 #define ATOMIC_CRITICAL_CPT_MIX(TYPE_ID, TYPE, OP_ID, OP, RTYPE_ID, RTYPE, \ argument
2465 OP_GOMP_CRITICAL_CPT(TYPE, OP, GOMP_FLAG) /* send assignment */ \
2466 OP_UPDATE_CRITICAL_CPT(TYPE, OP, LCK_ID) /* send assignment */ \
2575 #define OP_CRITICAL_L_CPT(OP, LCK_ID) \ argument
2579 new_value OP rhs; \
2583 (*lhs) OP rhs; \
2590 #define OP_GOMP_CRITICAL_L_CPT(OP, FLAG) \ argument
2593 OP_CRITICAL_L_CPT(OP, 0); \
2597 #define OP_GOMP_CRITICAL_L_CPT(OP, FLAG)
2602 #define ATOMIC_CMPX_L_CPT(TYPE_ID, OP_ID, TYPE, BITS, OP, GOMP_FLAG) \ argument
2606 OP_GOMP_CRITICAL_L_CPT(= *lhs OP, GOMP_FLAG) \
2607 OP_CMPXCHG_CPT(TYPE, BITS, OP) \
2636 #define MIN_MAX_CRITSECT_CPT(OP, LCK_ID) \ argument
2639 if (*lhs OP rhs) { /* still need actions? */ \
2654 #define GOMP_MIN_MAX_CRITSECT_CPT(OP, FLAG) \ argument
2657 MIN_MAX_CRITSECT_CPT(OP, 0); \
2660 #define GOMP_MIN_MAX_CRITSECT_CPT(OP, FLAG)
2664 #define MIN_MAX_CMPXCHG_CPT(TYPE, BITS, OP) \ argument
2670 while (old_value OP rhs && /* still need actions? */ \
2686 #define MIN_MAX_CRITICAL_CPT(TYPE_ID, OP_ID, TYPE, OP, LCK_ID, GOMP_FLAG) \ argument
2689 if (*lhs OP rhs) { /* need actions? */ \
2690 GOMP_MIN_MAX_CRITSECT_CPT(OP, GOMP_FLAG) \
2691 MIN_MAX_CRITSECT_CPT(OP, LCK_ID) \
2696 #define MIN_MAX_COMPXCHG_CPT(TYPE_ID, OP_ID, TYPE, BITS, OP, GOMP_FLAG) \ argument
2700 if (*lhs OP rhs) { \
2701 GOMP_MIN_MAX_CRITSECT_CPT(OP, GOMP_FLAG) \
2702 MIN_MAX_CMPXCHG_CPT(TYPE, BITS, OP) \
2750 #define OP_GOMP_CRITICAL_EQV_CPT(OP, FLAG) \ argument
2753 OP_CRITICAL_CPT(OP, 0); \
2756 #define OP_GOMP_CRITICAL_EQV_CPT(OP, FLAG)
2759 #define ATOMIC_CMPX_EQV_CPT(TYPE_ID, OP_ID, TYPE, BITS, OP, GOMP_FLAG) \ argument
2764 OP_CMPXCHG_CPT(TYPE, BITS, OP) \
2792 #define ATOMIC_CRITICAL_CPT(TYPE_ID, OP_ID, TYPE, OP, LCK_ID, GOMP_FLAG) \ argument
2795 OP_GOMP_CRITICAL_CPT(TYPE, OP, GOMP_FLAG) /* send assignment */ \
2796 OP_UPDATE_CRITICAL_CPT(TYPE, OP, LCK_ID) /* send assignment */ \
2802 #define OP_CRITICAL_CPT_WRK(OP, LCK_ID) \ argument
2806 (*lhs) OP rhs; \
2810 (*lhs) OP rhs; \
2818 #define OP_GOMP_CRITICAL_CPT_WRK(OP, FLAG) \ argument
2821 OP_CRITICAL_CPT_WRK(OP## =, 0); \
2824 #define OP_GOMP_CRITICAL_CPT_WRK(OP, FLAG)
2835 #define ATOMIC_CRITICAL_CPT_WRK(TYPE_ID, OP_ID, TYPE, OP, LCK_ID, GOMP_FLAG) \ argument
2837 OP_GOMP_CRITICAL_CPT_WRK(OP, GOMP_FLAG) \
2838 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 */ \