brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.2 KiB · 8eb1f35 Raw
66 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_analyze_test_checks.py2; RUN: opt -disable-output "-passes=print<scalar-evolution>" < %s 2>&1 | FileCheck %s3 4declare i32 @llvm.umax.i32(i32, i32)5declare i32 @llvm.umin.i32(i32, i32)6declare i32 @llvm.smax.i32(i32, i32)7declare i32 @llvm.smin.i32(i32, i32)8 9define i32 @umax(i32 %x, i32 %y) {10; CHECK-LABEL: 'umax'11; CHECK-NEXT:  Classifying expressions for: @umax12; CHECK-NEXT:    %z = call i32 @llvm.umax.i32(i32 %x, i32 %y)13; CHECK-NEXT:    --> (%x umax %y) U: full-set S: full-set14; CHECK-NEXT:  Determining loop execution counts for: @umax15;16  %z = call i32 @llvm.umax.i32(i32 %x, i32 %y)17  ret i32 %z18}19 20define i32 @umin(i32 %x, i32 %y) {21; CHECK-LABEL: 'umin'22; CHECK-NEXT:  Classifying expressions for: @umin23; CHECK-NEXT:    %z = call i32 @llvm.umin.i32(i32 %x, i32 %y)24; CHECK-NEXT:    --> (%x umin %y) U: full-set S: full-set25; CHECK-NEXT:  Determining loop execution counts for: @umin26;27  %z = call i32 @llvm.umin.i32(i32 %x, i32 %y)28  ret i32 %z29}30 31define i32 @smax(i32 %x, i32 %y) {32; CHECK-LABEL: 'smax'33; CHECK-NEXT:  Classifying expressions for: @smax34; CHECK-NEXT:    %z = call i32 @llvm.smax.i32(i32 %x, i32 %y)35; CHECK-NEXT:    --> (%x smax %y) U: full-set S: full-set36; CHECK-NEXT:  Determining loop execution counts for: @smax37;38  %z = call i32 @llvm.smax.i32(i32 %x, i32 %y)39  ret i32 %z40}41 42define i32 @smin(i32 %x, i32 %y) {43; CHECK-LABEL: 'smin'44; CHECK-NEXT:  Classifying expressions for: @smin45; CHECK-NEXT:    %z = call i32 @llvm.smin.i32(i32 %x, i32 %y)46; CHECK-NEXT:    --> (%x smin %y) U: full-set S: full-set47; CHECK-NEXT:  Determining loop execution counts for: @smin48;49  %z = call i32 @llvm.smin.i32(i32 %x, i32 %y)50  ret i32 %z51}52 53define i32 @clamp(i32 %x) {54; CHECK-LABEL: 'clamp'55; CHECK-NEXT:  Classifying expressions for: @clamp56; CHECK-NEXT:    %y = call i32 @llvm.umax.i32(i32 %x, i32 10)57; CHECK-NEXT:    --> (10 umax %x) U: [10,0) S: [10,0)58; CHECK-NEXT:    %z = call i32 @llvm.umin.i32(i32 %y, i32 20)59; CHECK-NEXT:    --> (20 umin (10 umax %x)) U: [10,21) S: [10,21)60; CHECK-NEXT:  Determining loop execution counts for: @clamp61;62  %y = call i32 @llvm.umax.i32(i32 %x, i32 10)63  %z = call i32 @llvm.umin.i32(i32 %y, i32 20)64  ret i32 %z65}66