Lines Matching defs:lck
152 extern int __kmp_acquire_tas_lock(kmp_tas_lock_t *lck, kmp_int32 gtid);
153 extern int __kmp_test_tas_lock(kmp_tas_lock_t *lck, kmp_int32 gtid);
154 extern int __kmp_release_tas_lock(kmp_tas_lock_t *lck, kmp_int32 gtid);
155 extern void __kmp_init_tas_lock(kmp_tas_lock_t *lck);
156 extern void __kmp_destroy_tas_lock(kmp_tas_lock_t *lck);
158 extern int __kmp_acquire_nested_tas_lock(kmp_tas_lock_t *lck, kmp_int32 gtid);
159 extern int __kmp_test_nested_tas_lock(kmp_tas_lock_t *lck, kmp_int32 gtid);
160 extern int __kmp_release_nested_tas_lock(kmp_tas_lock_t *lck, kmp_int32 gtid);
161 extern void __kmp_init_nested_tas_lock(kmp_tas_lock_t *lck);
162 extern void __kmp_destroy_nested_tas_lock(kmp_tas_lock_t *lck);
211 extern int __kmp_acquire_futex_lock(kmp_futex_lock_t *lck, kmp_int32 gtid);
212 extern int __kmp_test_futex_lock(kmp_futex_lock_t *lck, kmp_int32 gtid);
213 extern int __kmp_release_futex_lock(kmp_futex_lock_t *lck, kmp_int32 gtid);
214 extern void __kmp_init_futex_lock(kmp_futex_lock_t *lck);
215 extern void __kmp_destroy_futex_lock(kmp_futex_lock_t *lck);
217 extern int __kmp_acquire_nested_futex_lock(kmp_futex_lock_t *lck,
219 extern int __kmp_test_nested_futex_lock(kmp_futex_lock_t *lck, kmp_int32 gtid);
220 extern int __kmp_release_nested_futex_lock(kmp_futex_lock_t *lck,
222 extern void __kmp_init_nested_futex_lock(kmp_futex_lock_t *lck);
223 extern void __kmp_destroy_nested_futex_lock(kmp_futex_lock_t *lck);
290 extern int __kmp_acquire_ticket_lock(kmp_ticket_lock_t *lck, kmp_int32 gtid);
291 extern int __kmp_test_ticket_lock(kmp_ticket_lock_t *lck, kmp_int32 gtid);
292 extern int __kmp_test_ticket_lock_with_cheks(kmp_ticket_lock_t *lck,
294 extern int __kmp_release_ticket_lock(kmp_ticket_lock_t *lck, kmp_int32 gtid);
295 extern void __kmp_init_ticket_lock(kmp_ticket_lock_t *lck);
296 extern void __kmp_destroy_ticket_lock(kmp_ticket_lock_t *lck);
298 extern int __kmp_acquire_nested_ticket_lock(kmp_ticket_lock_t *lck,
300 extern int __kmp_test_nested_ticket_lock(kmp_ticket_lock_t *lck,
302 extern int __kmp_release_nested_ticket_lock(kmp_ticket_lock_t *lck,
304 extern void __kmp_init_nested_ticket_lock(kmp_ticket_lock_t *lck);
305 extern void __kmp_destroy_nested_ticket_lock(kmp_ticket_lock_t *lck);
398 extern int __kmp_acquire_queuing_lock(kmp_queuing_lock_t *lck, kmp_int32 gtid);
399 extern int __kmp_test_queuing_lock(kmp_queuing_lock_t *lck, kmp_int32 gtid);
400 extern int __kmp_release_queuing_lock(kmp_queuing_lock_t *lck, kmp_int32 gtid);
401 extern void __kmp_init_queuing_lock(kmp_queuing_lock_t *lck);
402 extern void __kmp_destroy_queuing_lock(kmp_queuing_lock_t *lck);
404 extern int __kmp_acquire_nested_queuing_lock(kmp_queuing_lock_t *lck,
406 extern int __kmp_test_nested_queuing_lock(kmp_queuing_lock_t *lck,
408 extern int __kmp_release_nested_queuing_lock(kmp_queuing_lock_t *lck,
410 extern void __kmp_init_nested_queuing_lock(kmp_queuing_lock_t *lck);
411 extern void __kmp_destroy_nested_queuing_lock(kmp_queuing_lock_t *lck);
495 extern int __kmp_acquire_drdpa_lock(kmp_drdpa_lock_t *lck, kmp_int32 gtid);
496 extern int __kmp_test_drdpa_lock(kmp_drdpa_lock_t *lck, kmp_int32 gtid);
497 extern int __kmp_release_drdpa_lock(kmp_drdpa_lock_t *lck, kmp_int32 gtid);
498 extern void __kmp_init_drdpa_lock(kmp_drdpa_lock_t *lck);
499 extern void __kmp_destroy_drdpa_lock(kmp_drdpa_lock_t *lck);
501 extern int __kmp_acquire_nested_drdpa_lock(kmp_drdpa_lock_t *lck,
503 extern int __kmp_test_nested_drdpa_lock(kmp_drdpa_lock_t *lck, kmp_int32 gtid);
504 extern int __kmp_release_nested_drdpa_lock(kmp_drdpa_lock_t *lck,
506 extern void __kmp_init_nested_drdpa_lock(kmp_drdpa_lock_t *lck);
507 extern void __kmp_destroy_nested_drdpa_lock(kmp_drdpa_lock_t *lck);
527 static inline int __kmp_acquire_bootstrap_lock(kmp_bootstrap_lock_t *lck) {
528 return __kmp_acquire_ticket_lock(lck, KMP_GTID_DNE);
531 static inline int __kmp_test_bootstrap_lock(kmp_bootstrap_lock_t *lck) {
532 return __kmp_test_ticket_lock(lck, KMP_GTID_DNE);
535 static inline void __kmp_release_bootstrap_lock(kmp_bootstrap_lock_t *lck) {
536 __kmp_release_ticket_lock(lck, KMP_GTID_DNE);
539 static inline void __kmp_init_bootstrap_lock(kmp_bootstrap_lock_t *lck) {
540 __kmp_init_ticket_lock(lck);
543 static inline void __kmp_destroy_bootstrap_lock(kmp_bootstrap_lock_t *lck) {
544 __kmp_destroy_ticket_lock(lck);
559 static inline int __kmp_acquire_lock(kmp_lock_t *lck, kmp_int32 gtid) {
560 return __kmp_acquire_ticket_lock(lck, gtid);
563 static inline int __kmp_test_lock(kmp_lock_t *lck, kmp_int32 gtid) {
564 return __kmp_test_ticket_lock(lck, gtid);
567 static inline void __kmp_release_lock(kmp_lock_t *lck, kmp_int32 gtid) {
568 __kmp_release_ticket_lock(lck, gtid);
571 static inline void __kmp_init_lock(kmp_lock_t *lck) {
572 __kmp_init_ticket_lock(lck);
575 static inline void __kmp_destroy_lock(kmp_lock_t *lck) {
576 __kmp_destroy_ticket_lock(lck);
630 extern kmp_int32 (*__kmp_get_user_lock_owner_)(kmp_user_lock_p lck);
632 static inline kmp_int32 __kmp_get_user_lock_owner(kmp_user_lock_p lck) {
634 return (*__kmp_get_user_lock_owner_)(lck);
637 extern int (*__kmp_acquire_user_lock_with_checks_)(kmp_user_lock_p lck,
643 #define __kmp_acquire_user_lock_with_checks(lck, gtid) \
648 lck->tas.lk.depth_locked != -1) { \
651 if ((gtid >= 0) && (lck->tas.lk.poll - 1 == gtid)) { \
655 if (lck->tas.lk.poll != 0 || \
656 !__kmp_atomic_compare_store_acq(&lck->tas.lk.poll, 0, gtid + 1)) { \
659 KMP_FSYNC_PREPARE(lck); \
665 lck->tas.lk.poll != 0 || \
666 !__kmp_atomic_compare_store_acq(&lck->tas.lk.poll, 0, gtid + 1)); \
668 KMP_FSYNC_ACQUIRED(lck); \
671 (*__kmp_acquire_user_lock_with_checks_)(lck, gtid); \
675 static inline int __kmp_acquire_user_lock_with_checks(kmp_user_lock_p lck,
678 return (*__kmp_acquire_user_lock_with_checks_)(lck, gtid);
682 extern int (*__kmp_test_user_lock_with_checks_)(kmp_user_lock_p lck,
690 static inline int __kmp_test_user_lock_with_checks(kmp_user_lock_p lck,
696 lck->tas.lk.depth_locked != -1) {
700 return ((lck->tas.lk.poll == 0) &&
701 __kmp_atomic_compare_store_acq(&lck->tas.lk.poll, 0, gtid + 1));
704 return (*__kmp_test_user_lock_with_checks_)(lck, gtid);
708 static inline int __kmp_test_user_lock_with_checks(kmp_user_lock_p lck,
711 return (*__kmp_test_user_lock_with_checks_)(lck, gtid);
715 extern int (*__kmp_release_user_lock_with_checks_)(kmp_user_lock_p lck,
718 static inline void __kmp_release_user_lock_with_checks(kmp_user_lock_p lck,
721 (*__kmp_release_user_lock_with_checks_)(lck, gtid);
724 extern void (*__kmp_init_user_lock_with_checks_)(kmp_user_lock_p lck);
726 static inline void __kmp_init_user_lock_with_checks(kmp_user_lock_p lck) {
728 (*__kmp_init_user_lock_with_checks_)(lck);
733 extern void (*__kmp_destroy_user_lock_)(kmp_user_lock_p lck);
735 static inline void __kmp_destroy_user_lock(kmp_user_lock_p lck) {
737 (*__kmp_destroy_user_lock_)(lck);
740 extern void (*__kmp_destroy_user_lock_with_checks_)(kmp_user_lock_p lck);
742 static inline void __kmp_destroy_user_lock_with_checks(kmp_user_lock_p lck) {
744 (*__kmp_destroy_user_lock_with_checks_)(lck);
747 extern int (*__kmp_acquire_nested_user_lock_with_checks_)(kmp_user_lock_p lck,
752 #define __kmp_acquire_nested_user_lock_with_checks(lck, gtid, depth) \
757 lck->tas.lk.depth_locked == -1) { \
761 if (lck->tas.lk.poll - 1 == gtid) { \
762 lck->tas.lk.depth_locked += 1; \
765 if ((lck->tas.lk.poll != 0) || \
766 !__kmp_atomic_compare_store_acq(&lck->tas.lk.poll, 0, gtid + 1)) { \
769 KMP_FSYNC_PREPARE(lck); \
775 (lck->tas.lk.poll != 0) || \
776 !__kmp_atomic_compare_store_acq(&lck->tas.lk.poll, 0, gtid + 1)); \
778 lck->tas.lk.depth_locked = 1; \
781 KMP_FSYNC_ACQUIRED(lck); \
784 *depth = (*__kmp_acquire_nested_user_lock_with_checks_)(lck, gtid); \
789 __kmp_acquire_nested_user_lock_with_checks(kmp_user_lock_p lck, kmp_int32 gtid,
792 *depth = (*__kmp_acquire_nested_user_lock_with_checks_)(lck, gtid);
796 extern int (*__kmp_test_nested_user_lock_with_checks_)(kmp_user_lock_p lck,
800 static inline int __kmp_test_nested_user_lock_with_checks(kmp_user_lock_p lck,
807 lck->tas.lk.depth_locked == -1) {
812 if (lck->tas.lk.poll - 1 ==
813 gtid) { /* __kmp_get_tas_lock_owner( lck ) == gtid */
814 return ++lck->tas.lk.depth_locked; /* same owner, depth increased */
816 retval = ((lck->tas.lk.poll == 0) &&
817 __kmp_atomic_compare_store_acq(&lck->tas.lk.poll, 0, gtid + 1));
820 lck->tas.lk.depth_locked = 1;
825 return (*__kmp_test_nested_user_lock_with_checks_)(lck, gtid);
829 static inline int __kmp_test_nested_user_lock_with_checks(kmp_user_lock_p lck,
832 return (*__kmp_test_nested_user_lock_with_checks_)(lck, gtid);
836 extern int (*__kmp_release_nested_user_lock_with_checks_)(kmp_user_lock_p lck,
840 __kmp_release_nested_user_lock_with_checks(kmp_user_lock_p lck,
843 return (*__kmp_release_nested_user_lock_with_checks_)(lck, gtid);
846 extern void (*__kmp_init_nested_user_lock_with_checks_)(kmp_user_lock_p lck);
849 __kmp_init_nested_user_lock_with_checks(kmp_user_lock_p lck) {
851 (*__kmp_init_nested_user_lock_with_checks_)(lck);
854 extern void (*__kmp_destroy_nested_user_lock_with_checks_)(kmp_user_lock_p lck);
857 __kmp_destroy_nested_user_lock_with_checks(kmp_user_lock_p lck) {
859 (*__kmp_destroy_nested_user_lock_with_checks_)(lck);
875 extern int (*__kmp_is_user_lock_initialized_)(kmp_user_lock_p lck);
879 extern const ident_t *(*__kmp_get_user_lock_location_)(kmp_user_lock_p lck);
881 static inline const ident_t *__kmp_get_user_lock_location(kmp_user_lock_p lck) {
883 return (*__kmp_get_user_lock_location_)(lck);
889 extern void (*__kmp_set_user_lock_location_)(kmp_user_lock_p lck,
892 static inline void __kmp_set_user_lock_location(kmp_user_lock_p lck,
895 (*__kmp_set_user_lock_location_)(lck, loc);
899 extern kmp_lock_flags_t (*__kmp_get_user_lock_flags_)(kmp_user_lock_p lck);
901 extern void (*__kmp_set_user_lock_flags_)(kmp_user_lock_p lck,
904 static inline void __kmp_set_user_lock_flags(kmp_user_lock_p lck,
907 (*__kmp_set_user_lock_flags_)(lck, flags);
985 kmp_user_lock_p lck);
1200 #define KMP_SET_I_LOCK_LOCATION(lck, loc) \
1202 if (__kmp_indirect_set_location[(lck)->type] != NULL) \
1203 __kmp_indirect_set_location[(lck)->type]((lck)->lock, loc); \
1209 #define KMP_SET_I_LOCK_FLAGS(lck, flag) \
1211 if (__kmp_indirect_set_flags[(lck)->type] != NULL) \
1212 __kmp_indirect_set_flags[(lck)->type]((lck)->lock, flag); \
1218 #define KMP_GET_I_LOCK_LOCATION(lck) \
1219 (__kmp_indirect_get_location[(lck)->type] != NULL \
1220 ? __kmp_indirect_get_location[(lck)->type]((lck)->lock) \
1226 #define KMP_GET_I_LOCK_FLAGS(lck) \
1227 (__kmp_indirect_get_flags[(lck)->type] != NULL \
1228 ? __kmp_indirect_get_flags[(lck)->type]((lck)->lock) \