forked from OSchip/llvm-project
27 lines
874 B
LLVM
27 lines
874 B
LLVM
; RUN: opt -passes=function-attrs -stats -disable-output %s 2>&1 | FileCheck %s
|
|
|
|
; REQUIRES: asserts
|
|
|
|
@g = global i32 20
|
|
|
|
define i32 @test_only_read_arg(ptr %ptr) {
|
|
entry:
|
|
%l = load i32, ptr %ptr
|
|
ret i32 %l
|
|
}
|
|
|
|
define void @test_write_global() {
|
|
entry:
|
|
store i32 0, ptr @g
|
|
ret void
|
|
}
|
|
|
|
; CHECK: 2 function-attrs - Number of functions with improved memory attribute
|
|
; CHECK-NEXT: 1 function-attrs - Number of arguments marked nocapture
|
|
; CHECK-NEXT: 1 function-attrs - Number of functions marked as nofree
|
|
; CHECK-NEXT: 2 function-attrs - Number of functions marked as norecurse
|
|
; CHECK-NEXT: 2 function-attrs - Number of functions marked as nosync
|
|
; CHECK-NEXT: 2 function-attrs - Number of functions marked as nounwind
|
|
; CHECK-NEXT: 1 function-attrs - Number of arguments marked readonly
|
|
; CHECK-NEXT: 2 function-attrs - Number of functions marked as willreturn
|