[clang][modules] Don't prevent translation of FW_Private includes when explicitly...
[llvm-project.git] / llvm / test / CodeGen / AArch64 / sitofp-fixed-legal.ll
blob5a5a669e92eebb3ee6afc65bc8b87d897cf46b17
1 ; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
2 ; RUN: llc -mtriple=aarch64-apple-ios %s -o - | FileCheck %s
4 define <16 x double> @test_sitofp_fixed(<16 x i32> %in) {
5 ; CHECK-LABEL: test_sitofp_fixed:
6 ; CHECK:       ; %bb.0:
7 ; CHECK-NEXT:    sshll2.2d v4, v0, #0
8 ; CHECK-NEXT:    sshll.2d v0, v0, #0
9 ; CHECK-NEXT:    sshll2.2d v5, v1, #0
10 ; CHECK-NEXT:    sshll.2d v6, v1, #0
11 ; CHECK-NEXT:    sshll.2d v7, v2, #0
12 ; CHECK-NEXT:    sshll2.2d v16, v2, #0
13 ; CHECK-NEXT:    sshll2.2d v17, v3, #0
14 ; CHECK-NEXT:    sshll.2d v18, v3, #0
15 ; CHECK-NEXT:    scvtf.2d v1, v4, #6
16 ; CHECK-NEXT:    scvtf.2d v0, v0, #6
17 ; CHECK-NEXT:    scvtf.2d v3, v5, #6
18 ; CHECK-NEXT:    scvtf.2d v2, v6, #6
19 ; CHECK-NEXT:    scvtf.2d v4, v7, #6
20 ; CHECK-NEXT:    scvtf.2d v5, v16, #6
21 ; CHECK-NEXT:    scvtf.2d v7, v17, #6
22 ; CHECK-NEXT:    scvtf.2d v6, v18, #6
23 ; CHECK-NEXT:    ret
25   %flt = sitofp <16 x i32> %in to <16 x double>
26   %res = fdiv <16 x double> %flt, <double 64.0, double 64.0, double 64.0, double 64.0, double 64.0, double 64.0, double 64.0, double 64.0, double 64.0, double 64.0, double 64.0, double 64.0, double 64.0, double 64.0, double 64.0, double 64.0>
27   ret <16 x double> %res
30 ; This one is small enough to satisfy isSimple, but still illegally large.
31 define <4 x double> @test_sitofp_fixed_shortish(<4 x i64> %in) {
32 ; CHECK-LABEL: test_sitofp_fixed_shortish:
33 ; CHECK:       ; %bb.0:
34 ; CHECK-NEXT:    scvtf.2d v0, v0, #6
35 ; CHECK-NEXT:    scvtf.2d v1, v1, #6
36 ; CHECK-NEXT:    ret
39   %flt = sitofp <4 x i64> %in to <4 x double>
40   %res = fdiv <4 x double> %flt, <double 64.0, double 64.0, double 64.0, double 64.0>
41   ret <4 x double> %res