11; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
22; RUN: llc -mtriple=arm64-apple-ios7.0 -o - %s | FileCheck %s --check-prefixes=CHECK,SDAG
3- ; RUN: llc -global-isel=1 -global-isel-abort=2 -mtriple=arm64-apple-ios7.0 -o - %s | FileCheck %s --check-prefixes=CHECK,CHECK-GISEL
3+ ; RUN: llc -global-isel=1 -global-isel-abort=2 -mtriple=arm64-apple-ios7.0 -o - %s 2>&1 | FileCheck %s --check-prefixes=CHECK,CHECK-GISEL
44
55; CHECK-GISEL-NOT: warning: Instruction selection used fallback path for test_v8i8_pre_load
66; CHECK-GISEL-NOT: warning: Instruction selection used fallback path for test_v8i8_post_load
620620; CHECK-GISEL-NOT: warning: Instruction selection used fallback path for load_single_extract_variable_index_i8
621621; CHECK-GISEL-NOT: warning: Instruction selection used fallback path for load_single_extract_variable_index_i16
622622; CHECK-GISEL-NOT: warning: Instruction selection used fallback path for load_single_extract_variable_index_i32
623- ; CHECK-GISEL-NOT: warning: Instruction selection used fallback path for load_single_extract_variable_index_v3i32_small_align
624- ; CHECK-GISEL-NOT: warning: Instruction selection used fallback path for load_single_extract_variable_index_v3i32_default_align
625- ; CHECK-GISEL-NOT: warning: Instruction selection used fallback path for load_single_extract_valid_const_index_v3i32
626623; CHECK-GISEL-NOT: warning: Instruction selection used fallback path for load_single_extract_variable_index_masked_i32
627624; CHECK-GISEL-NOT: warning: Instruction selection used fallback path for load_single_extract_variable_index_masked2_i32
628625
@@ -13786,11 +13783,18 @@ define ptr @test_v1f64_post_reg_st4lane(ptr %A, ptr %ptr, <1 x double> %B, <1 x
1378613783declare void @llvm.aarch64.neon.st4lane.v1f64.p0(<1 x double>, <1 x double>, <1 x double>, <1 x double>, i64, ptr)
1378713784
1378813785define <16 x i8> @test_v16i8_post_imm_ld1r(ptr %bar, ptr %ptr) {
13789- ; CHECK-LABEL: test_v16i8_post_imm_ld1r:
13790- ; CHECK: ; %bb.0:
13791- ; CHECK-NEXT: ld1r.16b { v0 }, [x0], #1
13792- ; CHECK-NEXT: str x0, [x1]
13793- ; CHECK-NEXT: ret
13786+ ; SDAG-LABEL: test_v16i8_post_imm_ld1r:
13787+ ; SDAG: ; %bb.0:
13788+ ; SDAG-NEXT: ld1r.16b { v0 }, [x0], #1
13789+ ; SDAG-NEXT: str x0, [x1]
13790+ ; SDAG-NEXT: ret
13791+ ;
13792+ ; CHECK-GISEL-LABEL: test_v16i8_post_imm_ld1r:
13793+ ; CHECK-GISEL: ; %bb.0:
13794+ ; CHECK-GISEL-NEXT: ld1r.16b { v0 }, [x0]
13795+ ; CHECK-GISEL-NEXT: add x8, x0, #1
13796+ ; CHECK-GISEL-NEXT: str x8, [x1]
13797+ ; CHECK-GISEL-NEXT: ret
1379413798 %tmp1 = load i8, ptr %bar
1379513799 %tmp2 = insertelement <16 x i8> <i8 undef, i8 undef, i8 undef, i8 undef, i8 undef, i8 undef, i8 undef, i8 undef, i8 undef, i8 undef, i8 undef, i8 undef, i8 undef, i8 undef, i8 undef, i8 undef>, i8 %tmp1, i32 0
1379613800 %tmp3 = insertelement <16 x i8> %tmp2, i8 %tmp1, i32 1
@@ -13814,11 +13818,18 @@ define <16 x i8> @test_v16i8_post_imm_ld1r(ptr %bar, ptr %ptr) {
1381413818}
1381513819
1381613820define <16 x i8> @test_v16i8_post_reg_ld1r(ptr %bar, ptr %ptr, i64 %inc) {
13817- ; CHECK-LABEL: test_v16i8_post_reg_ld1r:
13818- ; CHECK: ; %bb.0:
13819- ; CHECK-NEXT: ld1r.16b { v0 }, [x0], x2
13820- ; CHECK-NEXT: str x0, [x1]
13821- ; CHECK-NEXT: ret
13821+ ; SDAG-LABEL: test_v16i8_post_reg_ld1r:
13822+ ; SDAG: ; %bb.0:
13823+ ; SDAG-NEXT: ld1r.16b { v0 }, [x0], x2
13824+ ; SDAG-NEXT: str x0, [x1]
13825+ ; SDAG-NEXT: ret
13826+ ;
13827+ ; CHECK-GISEL-LABEL: test_v16i8_post_reg_ld1r:
13828+ ; CHECK-GISEL: ; %bb.0:
13829+ ; CHECK-GISEL-NEXT: ld1r.16b { v0 }, [x0]
13830+ ; CHECK-GISEL-NEXT: add x8, x0, x2
13831+ ; CHECK-GISEL-NEXT: str x8, [x1]
13832+ ; CHECK-GISEL-NEXT: ret
1382213833 %tmp1 = load i8, ptr %bar
1382313834 %tmp2 = insertelement <16 x i8> <i8 undef, i8 undef, i8 undef, i8 undef, i8 undef, i8 undef, i8 undef, i8 undef, i8 undef, i8 undef, i8 undef, i8 undef, i8 undef, i8 undef, i8 undef, i8 undef>, i8 %tmp1, i32 0
1382413835 %tmp3 = insertelement <16 x i8> %tmp2, i8 %tmp1, i32 1
@@ -13842,11 +13853,18 @@ define <16 x i8> @test_v16i8_post_reg_ld1r(ptr %bar, ptr %ptr, i64 %inc) {
1384213853}
1384313854
1384413855define <8 x i8> @test_v8i8_post_imm_ld1r(ptr %bar, ptr %ptr) {
13845- ; CHECK-LABEL: test_v8i8_post_imm_ld1r:
13846- ; CHECK: ; %bb.0:
13847- ; CHECK-NEXT: ld1r.8b { v0 }, [x0], #1
13848- ; CHECK-NEXT: str x0, [x1]
13849- ; CHECK-NEXT: ret
13856+ ; SDAG-LABEL: test_v8i8_post_imm_ld1r:
13857+ ; SDAG: ; %bb.0:
13858+ ; SDAG-NEXT: ld1r.8b { v0 }, [x0], #1
13859+ ; SDAG-NEXT: str x0, [x1]
13860+ ; SDAG-NEXT: ret
13861+ ;
13862+ ; CHECK-GISEL-LABEL: test_v8i8_post_imm_ld1r:
13863+ ; CHECK-GISEL: ; %bb.0:
13864+ ; CHECK-GISEL-NEXT: ld1r.8b { v0 }, [x0]
13865+ ; CHECK-GISEL-NEXT: add x8, x0, #1
13866+ ; CHECK-GISEL-NEXT: str x8, [x1]
13867+ ; CHECK-GISEL-NEXT: ret
1385013868 %tmp1 = load i8, ptr %bar
1385113869 %tmp2 = insertelement <8 x i8> <i8 undef, i8 undef, i8 undef, i8 undef, i8 undef, i8 undef, i8 undef, i8 undef>, i8 %tmp1, i32 0
1385213870 %tmp3 = insertelement <8 x i8> %tmp2, i8 %tmp1, i32 1
@@ -13862,11 +13880,18 @@ define <8 x i8> @test_v8i8_post_imm_ld1r(ptr %bar, ptr %ptr) {
1386213880}
1386313881
1386413882define <8 x i8> @test_v8i8_post_reg_ld1r(ptr %bar, ptr %ptr, i64 %inc) {
13865- ; CHECK-LABEL: test_v8i8_post_reg_ld1r:
13866- ; CHECK: ; %bb.0:
13867- ; CHECK-NEXT: ld1r.8b { v0 }, [x0], x2
13868- ; CHECK-NEXT: str x0, [x1]
13869- ; CHECK-NEXT: ret
13883+ ; SDAG-LABEL: test_v8i8_post_reg_ld1r:
13884+ ; SDAG: ; %bb.0:
13885+ ; SDAG-NEXT: ld1r.8b { v0 }, [x0], x2
13886+ ; SDAG-NEXT: str x0, [x1]
13887+ ; SDAG-NEXT: ret
13888+ ;
13889+ ; CHECK-GISEL-LABEL: test_v8i8_post_reg_ld1r:
13890+ ; CHECK-GISEL: ; %bb.0:
13891+ ; CHECK-GISEL-NEXT: ld1r.8b { v0 }, [x0]
13892+ ; CHECK-GISEL-NEXT: add x8, x0, x2
13893+ ; CHECK-GISEL-NEXT: str x8, [x1]
13894+ ; CHECK-GISEL-NEXT: ret
1387013895 %tmp1 = load i8, ptr %bar
1387113896 %tmp2 = insertelement <8 x i8> <i8 undef, i8 undef, i8 undef, i8 undef, i8 undef, i8 undef, i8 undef, i8 undef>, i8 %tmp1, i32 0
1387213897 %tmp3 = insertelement <8 x i8> %tmp2, i8 %tmp1, i32 1
0 commit comments