xref: /llvm-project/llvm/test/Transforms/RewriteStatepointsForGC/libcall.ll (revision 3528e63d89305907b3d6e0f59f7b03b94a12dacc)
1; A call to a libcall function is not a statepoint.
2; This test verifies that calls to libcalls functions do not get converted to
3; statepoint calls.
4; RUN: opt -S -passes=rewrite-statepoints-for-gc < %s | FileCheck %s
5
6declare double @ldexp(double %x, i32 %n) nounwind readnone
7
8define double @test_libcall(double %x) gc "statepoint-example" {
9; CHECK-LABEL: test_libcall
10; CHECK-NEXT: %res = call double @ldexp(double %x, i32 5)
11; CHECK-NEXT: ret double %res
12  %res = call double @ldexp(double %x, i32 5) nounwind readnone
13  ret double %res
14}
15