brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.4 KiB · 6f27555 Raw
37 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_test_checks.py2; RUN: opt -mtriple=x86_64-unknown-linux-gnu -passes=slp-vectorizer -S %s | FileCheck %s3 4define void @test() {5; CHECK-LABEL: @test(6; CHECK-NEXT:  entry:7; CHECK-NEXT:    [[TMP0:%.*]] = lshr i64 0, 08; CHECK-NEXT:    [[TMP1:%.*]] = sub i64 0, 19; CHECK-NEXT:    [[TMP2:%.*]] = lshr i64 [[TMP1]], 010; CHECK-NEXT:    [[UMIN120:%.*]] = call i64 @llvm.umin.i64(i64 [[TMP0]], i64 [[TMP2]])11; CHECK-NEXT:    [[TMP3:%.*]] = sub i64 0, 012; CHECK-NEXT:    [[TMP4:%.*]] = lshr i64 [[TMP3]], 013; CHECK-NEXT:    [[UMIN122:%.*]] = call i64 @llvm.umin.i64(i64 [[UMIN120]], i64 [[TMP4]])14; CHECK-NEXT:    [[TMP5:%.*]] = add i64 0, 115; CHECK-NEXT:    [[TMP6:%.*]] = lshr i64 [[TMP5]], 016; CHECK-NEXT:    [[UMIN123:%.*]] = call i64 @llvm.umin.i64(i64 [[UMIN122]], i64 [[TMP6]])17; CHECK-NEXT:    [[UMIN124:%.*]] = call i64 @llvm.umin.i64(i64 [[UMIN123]], i64 0)18; CHECK-NEXT:    ret void19;20entry:21  %0 = mul i64 0, 022  %1 = lshr i64 %0, 023  %2 = sub i64 0, 124  %3 = lshr i64 %2, 025  %umin120 = call i64 @llvm.umin.i64(i64 %1, i64 %3)26  %4 = sub i64 0, 027  %5 = lshr i64 %4, 028  %umin122 = call i64 @llvm.umin.i64(i64 %umin120, i64 %5)29  %6 = add i64 0, 130  %7 = lshr i64 %6, 031  %umin123 = call i64 @llvm.umin.i64(i64 %umin122, i64 %7)32  %umin124 = call i64 @llvm.umin.i64(i64 %umin123, i64 0)33  ret void34}35 36declare i64 @llvm.umin.i64(i64, i64)37