blob: cb548584db0c3fedde67a5e08ac3343271a592aa [file] [log] [blame]
Daniel Neilson2574d7c2017-07-27 16:49:39 +00001; 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 -rewrite-statepoints-for-gc < %s | FileCheck %s
Fedor Sergeev4b86d792017-12-15 09:32:11 +00005; RUN: opt -S -passes=rewrite-statepoints-for-gc < %s | FileCheck %s
Daniel Neilson2574d7c2017-07-27 16:49:39 +00006
7declare double @ldexp(double %x, i32 %n) nounwind readnone
8
9define double @test_libcall(double %x) gc "statepoint-example" {
10; CHECK-LABEL: test_libcall
11; CHECK-NEXT: %res = call double @ldexp(double %x, i32 5)
12; CHECK-NEXT: ret double %res
13 %res = call double @ldexp(double %x, i32 5) nounwind readnone
14 ret double %res
15}