45 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --version 22; RUN: llc -mtriple=riscv64 -mattr=+v -verify-machineinstrs -M no-aliases < %s | FileCheck %s3 4target triple = "riscv64-unknown-unknown-elf"5 6%my_type = type [3 x <vscale x 1 x double>]7 8define void @test(ptr %addr) {9; CHECK-LABEL: test:10; CHECK: # %bb.0: # %entry11; CHECK-NEXT: addi sp, sp, -1612; CHECK-NEXT: .cfi_def_cfa_offset 1613; CHECK-NEXT: csrrs a1, vlenb, zero14; CHECK-NEXT: slli a2, a1, 115; CHECK-NEXT: add a1, a2, a116; CHECK-NEXT: sub sp, sp, a117; CHECK-NEXT: .cfi_escape 0x0f, 0x0d, 0x72, 0x00, 0x11, 0x10, 0x22, 0x11, 0x03, 0x92, 0xa2, 0x38, 0x00, 0x1e, 0x22 # sp + 16 + 3 * vlenb18; CHECK-NEXT: csrrs a1, vlenb, zero19; CHECK-NEXT: vl1re64.v v8, (a0)20; CHECK-NEXT: slli a2, a1, 121; CHECK-NEXT: add a3, a0, a222; CHECK-NEXT: vl1re64.v v9, (a3)23; CHECK-NEXT: addi a3, sp, 1624; CHECK-NEXT: add a0, a0, a125; CHECK-NEXT: add a1, a3, a126; CHECK-NEXT: vl1re64.v v10, (a0)27; CHECK-NEXT: add a2, a3, a228; CHECK-NEXT: vs1r.v v8, (a3)29; CHECK-NEXT: vs1r.v v9, (a2)30; CHECK-NEXT: vs1r.v v10, (a1)31; CHECK-NEXT: csrrs a0, vlenb, zero32; CHECK-NEXT: slli a1, a0, 133; CHECK-NEXT: add a0, a1, a034; CHECK-NEXT: add sp, sp, a035; CHECK-NEXT: .cfi_def_cfa sp, 1636; CHECK-NEXT: addi sp, sp, 1637; CHECK-NEXT: .cfi_def_cfa_offset 038; CHECK-NEXT: jalr zero, 0(ra)39entry:40 %ret = alloca %my_type, align 841 %val = load %my_type, ptr %addr42 store %my_type %val, ptr %ret, align 843 ret void44}45