================
@@ -0,0 +1,51 @@
+// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
UTC_ARGS: --version 5
+// RUN: %clang_cc1 -triple amdgcn-amd-amdhsa %s -emit-llvm -o - | FileCheck %s
--check-prefix AMDGPU
+// RUN: %clang_cc1 -triple nvptx64-nvidia-cuda %s -emit-llvm -o - | FileCheck
%s --check-prefix NVPTX
+
+double sin(double);
+double cos(double);
+double sqrt(double);
+
+// AMDGPU-LABEL: define dso_local void @libcalls(
+// AMDGPU-SAME: ) #[[ATTR0:[0-9]+]] {
+// AMDGPU-NEXT: [[ENTRY:.*:]]
+// AMDGPU-NEXT: [[CALL:%.*]] = call double @sin(double noundef
0.000000e+00) #[[ATTR3:[0-9]+]]
+// AMDGPU-NEXT: [[CALL1:%.*]] = call double @cos(double noundef
0.000000e+00) #[[ATTR3]]
+// AMDGPU-NEXT: [[CALL2:%.*]] = call double @sqrt(double noundef
0.000000e+00) #[[ATTR3]]
+// AMDGPU-NEXT: ret void
+//
+// NVPTX-LABEL: define dso_local void @libcalls(
+// NVPTX-SAME: ) #[[ATTR0:[0-9]+]] {
+// NVPTX-NEXT: [[ENTRY:.*:]]
+// NVPTX-NEXT: [[CALL:%.*]] = call double @sin(double noundef 0.000000e+00)
#[[ATTR3:[0-9]+]]
+// NVPTX-NEXT: [[CALL1:%.*]] = call double @cos(double noundef
0.000000e+00) #[[ATTR3]]
+// NVPTX-NEXT: [[CALL2:%.*]] = call double @sqrt(double noundef
0.000000e+00) #[[ATTR3]]
+// NVPTX-NEXT: ret void
+//
+void libcalls() {
+ (void)sin(0.);
+ (void)cos(0.);
+ (void)sqrt(0.);
----------------
arsenm wrote:
This test really ought to be comprehensive and test every single math function,
and cover the float and double versions
https://github.com/llvm/llvm-project/pull/98209
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits