[llvm] [Analysis] Attribute Range should not prevent tail call optimization (PR #91122)
Matt Arsenault via llvm-commits
llvm-commits at lists.llvm.org
Tue May 7 11:20:34 PDT 2024
================
@@ -28,6 +28,24 @@ define range(i64 0, 8) i64 @testmsxs(float %x) {
; CHECK: # %bb.0: # %entry
; CHECK-NEXT: jmp llroundf at PLT # TAILCALL
entry:
- %0 = tail call i64 @llvm.llround.f32(float %x)
- ret i64 %0
+ %ret = tail call i64 @llvm.llround.f32(float %x)
+ ret i64 %ret
+}
+
+declare i32 @callee()
+
+define range(i32 0, 2) i32 @func_with_range_attr() {
+; CHECK-LABEL: func_with_range_attr:
+; CHECK: # %bb.0:
+; CHECK-NEXT: jmp callee at PLT # TAILCALL
+ %1 = musttail call i32 @callee()
+ ret i32 %1
----------------
arsenm wrote:
Use named values
https://github.com/llvm/llvm-project/pull/91122
More information about the llvm-commits
mailing list