Lines Matching refs:EXCLUSIVE_LOCK_FUNCTION
11 #define EXCLUSIVE_LOCK_FUNCTION(...) __attribute__ ((exclusive_lock_function(__VA_ARGS__)))
29 void Lock() EXCLUSIVE_LOCK_FUNCTION();
78 void needLock() EXCLUSIVE_LOCK_FUNCTION(foomu);
82 void needLock() EXCLUSIVE_LOCK_FUNCTION(foomu);
564 #if !__has_attribute(exclusive_lock_function)
565 #error "Should support exclusive_lock_function attribute"
570 void elf_function() EXCLUSIVE_LOCK_FUNCTION();
572 void elf_function_args() EXCLUSIVE_LOCK_FUNCTION(mu1, mu2);
574 int elf_testfn(int y) EXCLUSIVE_LOCK_FUNCTION();
577 int x EXCLUSIVE_LOCK_FUNCTION() = y; // \
578 // expected-warning {{'exclusive_lock_function' attribute only applies to functions and methods}}
582 int elf_test_var EXCLUSIVE_LOCK_FUNCTION(); // \
583 // expected-warning {{'exclusive_lock_function' attribute only applies to functions and methods}}
587 int test_field EXCLUSIVE_LOCK_FUNCTION(); // \
588 // expected-warning {{'exclusive_lock_function' attribute only applies to functions and methods}}
589 void test_method() EXCLUSIVE_LOCK_FUNCTION();
592 class EXCLUSIVE_LOCK_FUNCTION() ElfTestClass { // \
593 // expected-warning {{'exclusive_lock_function' attribute only applies to functions and methods}}
596 void elf_fun_params(int lvar EXCLUSIVE_LOCK_FUNCTION()); // \
597 // expected-warning {{'exclusive_lock_function' attribute only applies to functions and methods}}
602 int elf_function_1() EXCLUSIVE_LOCK_FUNCTION(muWrapper.mu);
603 int elf_function_2() EXCLUSIVE_LOCK_FUNCTION(muDoubleWrapper.muWrapper->mu);
604 int elf_function_3() EXCLUSIVE_LOCK_FUNCTION(muWrapper.getMu());
605 int elf_function_4() EXCLUSIVE_LOCK_FUNCTION(*muWrapper.getMuPointer());
606 int elf_function_5() EXCLUSIVE_LOCK_FUNCTION(&mu1);
607 int elf_function_6() EXCLUSIVE_LOCK_FUNCTION(muRef);
608 int elf_function_7() EXCLUSIVE_LOCK_FUNCTION(muDoubleWrapper.getWrapper()->getMu());
609 int elf_function_8() EXCLUSIVE_LOCK_FUNCTION(muPointer);
610 int elf_function_9(Mutex x) EXCLUSIVE_LOCK_FUNCTION(1);
611 int elf_function_9(Mutex x, Mutex y) EXCLUSIVE_LOCK_FUNCTION(1,2);
615 int elf_function_bad_2() EXCLUSIVE_LOCK_FUNCTION("mu"); // \
616 // expected-warning {{ignoring 'exclusive_lock_function' attribute because its argument is invalid}}
617 int elf_function_bad_3() EXCLUSIVE_LOCK_FUNCTION(muDoublePointer); // \
618 // expected-warning {{'exclusive_lock_function' attribute requires arguments that are class type or point to class type}}
619 int elf_function_bad_4() EXCLUSIVE_LOCK_FUNCTION(umu); // \
620 // expected-warning {{'exclusive_lock_function' attribute requires arguments whose type is annotated with 'lockable' attribute}}
622 int elf_function_bad_1() EXCLUSIVE_LOCK_FUNCTION(1); // \
623 // expected-error {{'exclusive_lock_function' attribute parameter 1 is out of bounds: no parameters to index into}}
624 int elf_function_bad_5(Mutex x) EXCLUSIVE_LOCK_FUNCTION(0); // \
625 // expected-error {{'exclusive_lock_function' attribute parameter 1 is out of bounds: can only be 1, since there is one parameter}}
626 int elf_function_bad_6(Mutex x, Mutex y) EXCLUSIVE_LOCK_FUNCTION(0); // \
627 // expected-error {{'exclusive_lock_function' attribute parameter 1 is out of bounds: must be between 1 and 2}}
628 int elf_function_bad_7() EXCLUSIVE_LOCK_FUNCTION(0); // \
629 // expected-error {{'exclusive_lock_function' attribute parameter 1 is out of bounds: no parameters to index into}}
1288 void lock() EXCLUSIVE_LOCK_FUNCTION() { }
1412 void lock() EXCLUSIVE_LOCK_FUNCTION();