[NFC][RemoveDIs] Prefer iterators over inst-pointers in InstCombine
[llvm-project.git] / llvm / test / CodeGen / AArch64 / vcvt-oversize.ll
blob380bdbcc7f74081d6385c4f9e484a519c8518c59
1 ; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
2 ; RUN: llc -mtriple=aarch64 < %s | FileCheck %s
4 define <8 x i8> @float_to_i8(ptr %in) {
5 ; CHECK-LABEL: float_to_i8:
6 ; CHECK:       // %bb.0:
7 ; CHECK-NEXT:    ldp q1, q0, [x0]
8 ; CHECK-NEXT:    fadd v1.4s, v1.4s, v1.4s
9 ; CHECK-NEXT:    fadd v0.4s, v0.4s, v0.4s
10 ; CHECK-NEXT:    fcvtzs v0.4s, v0.4s
11 ; CHECK-NEXT:    fcvtzs v1.4s, v1.4s
12 ; CHECK-NEXT:    xtn v0.4h, v0.4s
13 ; CHECK-NEXT:    xtn v1.4h, v1.4s
14 ; CHECK-NEXT:    uzp1 v0.8b, v1.8b, v0.8b
15 ; CHECK-NEXT:    ret
16   %l = load <8 x float>, ptr %in
17   %scale = fmul <8 x float> %l, <float 2.0, float 2.0, float 2.0, float 2.0, float 2.0, float 2.0, float 2.0, float 2.0>
18   %conv = fptoui <8 x float> %scale to <8 x i8>
19   ret <8 x i8> %conv