[llvm] 74c4d1e - [Inliner] Add more tests for deducing return attributes of callsites when inlining; NFC

Noah Goldstein via llvm-commits llvm-commits at lists.llvm.org
Wed Aug 16 20:41:44 PDT 2023


Author: Noah Goldstein
Date: 2023-08-16T22:43:04-05:00
New Revision: 74c4d1e42251592704c8eed2d46f2118f886240e

URL: https://github.com/llvm/llvm-project/commit/74c4d1e42251592704c8eed2d46f2118f886240e
DIFF: https://github.com/llvm/llvm-project/commit/74c4d1e42251592704c8eed2d46f2118f886240e.diff

LOG: [Inliner] Add more tests for deducing return attributes of callsites when inlining; NFC

Differential Revision: https://reviews.llvm.org/D156842

Added: 
    

Modified: 
    llvm/test/Transforms/Inline/nonnull.ll

Removed: 
    


################################################################################
diff  --git a/llvm/test/Transforms/Inline/nonnull.ll b/llvm/test/Transforms/Inline/nonnull.ll
index 5f8af7f78fde7f..270f753ca6f842 100644
--- a/llvm/test/Transforms/Inline/nonnull.ll
+++ b/llvm/test/Transforms/Inline/nonnull.ll
@@ -129,3 +129,60 @@ define void @caller6(ptr %arg) {
   ret void
 }
 
+declare ptr @buz()
+define nonnull ptr @callee7() {
+; CHECK-LABEL: define nonnull ptr @callee7() {
+; CHECK-NEXT:    [[R:%.*]] = call ptr @buz() #[[ATTR0:[0-9]+]]
+; CHECK-NEXT:    ret ptr [[R]]
+;
+  %r = call ptr @buz() willreturn nounwind
+  ret ptr %r
+}
+
+define ptr @caller7() {
+; CHECK-LABEL: define ptr @caller7() {
+; CHECK-NEXT:    [[R_I:%.*]] = call ptr @buz() #[[ATTR0]]
+; CHECK-NEXT:    ret ptr [[R_I]]
+;
+  %r = call ptr @callee7()
+  ret ptr %r
+}
+
+define nonnull ptr @callee8() {
+; CHECK-LABEL: define nonnull ptr @callee8() {
+; CHECK-NEXT:    [[R:%.*]] = call ptr @buz()
+; CHECK-NEXT:    ret ptr [[R]]
+;
+  %r = call ptr @buz()
+  ret ptr %r
+}
+
+define ptr @caller8() {
+; CHECK-LABEL: define ptr @caller8() {
+; CHECK-NEXT:    [[R_I:%.*]] = call ptr @buz()
+; CHECK-NEXT:    ret ptr [[R_I]]
+;
+  %r = call nonnull ptr @callee8()
+  ret ptr %r
+}
+
+define ptr @callee9() {
+; CHECK-LABEL: define ptr @callee9() {
+; CHECK-NEXT:    [[R:%.*]] = call ptr @buz()
+; CHECK-NEXT:    call void @foo() #[[ATTR1:[0-9]+]]
+; CHECK-NEXT:    ret ptr [[R]]
+;
+  %r = call ptr @buz()
+  call void @foo() nounwind
+  ret ptr %r
+}
+
+define ptr @caller9() {
+; CHECK-LABEL: define ptr @caller9() {
+; CHECK-NEXT:    [[R_I:%.*]] = call ptr @buz()
+; CHECK-NEXT:    call void @foo() #[[ATTR1]]
+; CHECK-NEXT:    ret ptr [[R_I]]
+;
+  %r = call nonnull ptr @callee9()
+  ret ptr %r
+}


        


More information about the llvm-commits mailing list