Bump version to 19.1.0-rc3
[llvm-project.git] / llvm / test / Transforms / GlobalOpt / naked_functions.ll
blob3b6064746a3e7c15d58c27f8d88c0b1187a0e6c4
1 ; RUN: opt < %s -passes=globalopt -S | FileCheck %s
3 ; Check that naked functions don't get marked with fast calling conventions
5 @g = common global i32 0, align 4
7 define i32 @bar() {
8 entry:
9   %call = call i32 @foo(ptr @g)
10 ; CHECK: %call = call i32 @foo(ptr @g)
11   ret i32 %call
14 define internal i32 @foo(ptr) #0 {
15 entry:
16   %retval = alloca i32, align 4
17   call void asm sideeffect "ldr r0, [r0] \0Abx lr        \0A", ""()
18   unreachable
21 ; CHECK: define internal i32 @foo(ptr %0)
23 attributes #0 = { naked }