38 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py2; RUN: llc -mtriple=aarch64-unknown-linux-gnu < %s | FileCheck %s3 4define i32 @test_minsize(i32 %X) optsize minsize nounwind readnone {5; CHECK-LABEL: test_minsize:6; CHECK: // %bb.0:7; CHECK-NEXT: mov w8, #5 // =0x58; CHECK-NEXT: mov w9, #42 // =0x2a9; CHECK-NEXT: udiv w8, w0, w810; CHECK-NEXT: add w8, w8, w8, lsl #211; CHECK-NEXT: cmp w0, w812; CHECK-NEXT: mov w8, #-10 // =0xfffffff613; CHECK-NEXT: csel w0, w9, w8, eq14; CHECK-NEXT: ret15 %rem = urem i32 %X, 516 %cmp = icmp eq i32 %rem, 017 %ret = select i1 %cmp, i32 42, i32 -1018 ret i32 %ret19}20 21define i32 @test_optsize(i32 %X) optsize nounwind readnone {22; CHECK-LABEL: test_optsize:23; CHECK: // %bb.0:24; CHECK-NEXT: mov w8, #52429 // =0xcccd25; CHECK-NEXT: mov w9, #858993459 // =0x3333333326; CHECK-NEXT: movk w8, #52428, lsl #1627; CHECK-NEXT: mul w8, w0, w828; CHECK-NEXT: cmp w8, w929; CHECK-NEXT: mov w8, #-10 // =0xfffffff630; CHECK-NEXT: mov w9, #42 // =0x2a31; CHECK-NEXT: csel w0, w9, w8, ls32; CHECK-NEXT: ret33 %rem = urem i32 %X, 534 %cmp = icmp eq i32 %rem, 035 %ret = select i1 %cmp, i32 42, i32 -1036 ret i32 %ret37}38