73 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py2; RUN: llc -mtriple=riscv32 -mattr=+v -verify-machineinstrs < %s | FileCheck %s3; RUN: llc -mtriple=riscv64 -mattr=+v -verify-machineinstrs < %s | FileCheck %s4 5define void @load_store_v1i1(ptr %x, ptr %y) {6; CHECK-LABEL: load_store_v1i1:7; CHECK: # %bb.0:8; CHECK-NEXT: lbu a0, 0(a0)9; CHECK-NEXT: andi a0, a0, 110; CHECK-NEXT: sb a0, 0(a1)11; CHECK-NEXT: ret12 %a = load <1 x i1>, ptr %x13 store <1 x i1> %a, ptr %y14 ret void15}16 17define void @load_store_v2i1(ptr %x, ptr %y) {18; CHECK-LABEL: load_store_v2i1:19; CHECK: # %bb.0:20; CHECK-NEXT: lbu a0, 0(a0)21; CHECK-NEXT: andi a0, a0, 322; CHECK-NEXT: sb a0, 0(a1)23; CHECK-NEXT: ret24 %a = load <2 x i1>, ptr %x25 store <2 x i1> %a, ptr %y26 ret void27}28 29define void @load_store_v4i1(ptr %x, ptr %y) {30; CHECK-LABEL: load_store_v4i1:31; CHECK: # %bb.0:32; CHECK-NEXT: lbu a0, 0(a0)33; CHECK-NEXT: andi a0, a0, 1534; CHECK-NEXT: sb a0, 0(a1)35; CHECK-NEXT: ret36 %a = load <4 x i1>, ptr %x37 store <4 x i1> %a, ptr %y38 ret void39}40 41define void @load_store_v8i1(ptr %x, ptr %y) {42; CHECK-LABEL: load_store_v8i1:43; CHECK: # %bb.0:44; CHECK-NEXT: lbu a0, 0(a0)45; CHECK-NEXT: sb a0, 0(a1)46; CHECK-NEXT: ret47 %a = load <8 x i1>, ptr %x48 store <8 x i1> %a, ptr %y49 ret void50}51 52define void @load_store_v16i1(ptr %x, ptr %y) {53; CHECK-LABEL: load_store_v16i1:54; CHECK: # %bb.0:55; CHECK-NEXT: lh a0, 0(a0)56; CHECK-NEXT: sh a0, 0(a1)57; CHECK-NEXT: ret58 %a = load <16 x i1>, ptr %x59 store <16 x i1> %a, ptr %y60 ret void61}62 63define void @load_store_v32i1(ptr %x, ptr %y) {64; CHECK-LABEL: load_store_v32i1:65; CHECK: # %bb.0:66; CHECK-NEXT: lw a0, 0(a0)67; CHECK-NEXT: sw a0, 0(a1)68; CHECK-NEXT: ret69 %a = load <32 x i1>, ptr %x70 store <32 x i1> %a, ptr %y71 ret void72}73