forked from OSchip/llvm-project
[Clang] Fix the incorrect return type of atomic_is_lock_free
Fixing the return type of atomic_is_lock_free as per https://en.cppreference.com/w/c/atomic/atomic_is_lock_free Differential Revision: https://reviews.llvm.org/D79504
This commit is contained in:
parent
8dbbb22383
commit
9aee35bcc9
|
@ -724,7 +724,7 @@ ATOMIC_BUILTIN(__c11_atomic_fetch_max, "v.", "t")
|
|||
ATOMIC_BUILTIN(__c11_atomic_fetch_min, "v.", "t")
|
||||
BUILTIN(__c11_atomic_thread_fence, "vi", "n")
|
||||
BUILTIN(__c11_atomic_signal_fence, "vi", "n")
|
||||
BUILTIN(__c11_atomic_is_lock_free, "iz", "n")
|
||||
BUILTIN(__c11_atomic_is_lock_free, "bz", "n")
|
||||
|
||||
// GNU atomic builtins.
|
||||
ATOMIC_BUILTIN(__atomic_load, "v.", "t")
|
||||
|
@ -753,8 +753,8 @@ BUILTIN(__atomic_test_and_set, "bvD*i", "n")
|
|||
BUILTIN(__atomic_clear, "vvD*i", "n")
|
||||
BUILTIN(__atomic_thread_fence, "vi", "n")
|
||||
BUILTIN(__atomic_signal_fence, "vi", "n")
|
||||
BUILTIN(__atomic_always_lock_free, "izvCD*", "n")
|
||||
BUILTIN(__atomic_is_lock_free, "izvCD*", "n")
|
||||
BUILTIN(__atomic_always_lock_free, "bzvCD*", "n")
|
||||
BUILTIN(__atomic_is_lock_free, "bzvCD*", "n")
|
||||
|
||||
// OpenCL 2.0 atomic builtins.
|
||||
ATOMIC_BUILTIN(__opencl_atomic_init, "v.", "t")
|
||||
|
|
|
@ -343,20 +343,20 @@ struct Incomplete;
|
|||
int lock_free(struct Incomplete *incomplete) {
|
||||
// CHECK-LABEL: @lock_free
|
||||
|
||||
// CHECK: call i32 @__atomic_is_lock_free(i32 3, i8* null)
|
||||
// CHECK: call zeroext i1 @__atomic_is_lock_free(i32 3, i8* null)
|
||||
__c11_atomic_is_lock_free(3);
|
||||
|
||||
// CHECK: call i32 @__atomic_is_lock_free(i32 16, i8* {{.*}}@sixteen{{.*}})
|
||||
// CHECK: call zeroext i1 @__atomic_is_lock_free(i32 16, i8* {{.*}}@sixteen{{.*}})
|
||||
__atomic_is_lock_free(16, &sixteen);
|
||||
|
||||
// CHECK: call i32 @__atomic_is_lock_free(i32 17, i8* {{.*}}@seventeen{{.*}})
|
||||
// CHECK: call zeroext i1 @__atomic_is_lock_free(i32 17, i8* {{.*}}@seventeen{{.*}})
|
||||
__atomic_is_lock_free(17, &seventeen);
|
||||
|
||||
// CHECK: call i32 @__atomic_is_lock_free(i32 4, {{.*}})
|
||||
// CHECK: call zeroext i1 @__atomic_is_lock_free(i32 4, {{.*}})
|
||||
__atomic_is_lock_free(4, incomplete);
|
||||
|
||||
char cs[20];
|
||||
// CHECK: call i32 @__atomic_is_lock_free(i32 4, {{.*}})
|
||||
// CHECK: call zeroext i1 @__atomic_is_lock_free(i32 4, {{.*}})
|
||||
__atomic_is_lock_free(4, cs+1);
|
||||
|
||||
// CHECK-NOT: call
|
||||
|
|
|
@ -198,20 +198,20 @@ struct Seventeen {
|
|||
int lock_free(struct Incomplete *incomplete) {
|
||||
// CHECK: @lock_free
|
||||
|
||||
// CHECK: call i32 @__atomic_is_lock_free(i64 3, i8* null)
|
||||
// CHECK: call zeroext i1 @__atomic_is_lock_free(i64 3, i8* null)
|
||||
__c11_atomic_is_lock_free(3);
|
||||
|
||||
// CHECK: call i32 @__atomic_is_lock_free(i64 16, i8* {{.*}}@sixteen{{.*}})
|
||||
// CHECK: call zeroext i1 @__atomic_is_lock_free(i64 16, i8* {{.*}}@sixteen{{.*}})
|
||||
__atomic_is_lock_free(16, &sixteen);
|
||||
|
||||
// CHECK: call i32 @__atomic_is_lock_free(i64 17, i8* {{.*}}@seventeen{{.*}})
|
||||
// CHECK: call zeroext i1 @__atomic_is_lock_free(i64 17, i8* {{.*}}@seventeen{{.*}})
|
||||
__atomic_is_lock_free(17, &seventeen);
|
||||
|
||||
// CHECK: call i32 @__atomic_is_lock_free(i64 4, {{.*}})
|
||||
// CHECK: call zeroext i1 @__atomic_is_lock_free(i64 4, {{.*}})
|
||||
__atomic_is_lock_free(4, incomplete);
|
||||
|
||||
char cs[20];
|
||||
// CHECK: call i32 @__atomic_is_lock_free(i64 4, {{.*}})
|
||||
// CHECK: call zeroext i1 @__atomic_is_lock_free(i64 4, {{.*}})
|
||||
__atomic_is_lock_free(4, cs+1);
|
||||
|
||||
// CHECK-NOT: call
|
||||
|
|
Loading…
Reference in New Issue