brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.6 KiB · 80a0efb Raw
54 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py2; RUN: llc -mtriple=riscv32 -verify-machineinstrs < %s \3; RUN:   | FileCheck %s --check-prefix=RV32I4; RUN: llc -mtriple=riscv64 -verify-machineinstrs < %s \5; RUN:   | FileCheck %s --check-prefix=RV64I6 7define void @cast0(ptr addrspace(1) %ptr) {8; RV32I-LABEL: cast0:9; RV32I:       # %bb.0:10; RV32I-NEXT:    sw zero, 0(a0)11; RV32I-NEXT:    ret12;13; RV64I-LABEL: cast0:14; RV64I:       # %bb.0:15; RV64I-NEXT:    sw zero, 0(a0)16; RV64I-NEXT:    ret17  %ptr0 = addrspacecast ptr addrspace(1) %ptr to ptr addrspace(0)18  store i32 0, ptr %ptr019  ret void20}21 22define void @cast1(ptr %ptr) {23; RV32I-LABEL: cast1:24; RV32I:       # %bb.0:25; RV32I-NEXT:    addi sp, sp, -1626; RV32I-NEXT:    .cfi_def_cfa_offset 1627; RV32I-NEXT:    sw ra, 12(sp) # 4-byte Folded Spill28; RV32I-NEXT:    .cfi_offset ra, -429; RV32I-NEXT:    call foo30; RV32I-NEXT:    lw ra, 12(sp) # 4-byte Folded Reload31; RV32I-NEXT:    .cfi_restore ra32; RV32I-NEXT:    addi sp, sp, 1633; RV32I-NEXT:    .cfi_def_cfa_offset 034; RV32I-NEXT:    ret35;36; RV64I-LABEL: cast1:37; RV64I:       # %bb.0:38; RV64I-NEXT:    addi sp, sp, -1639; RV64I-NEXT:    .cfi_def_cfa_offset 1640; RV64I-NEXT:    sd ra, 8(sp) # 8-byte Folded Spill41; RV64I-NEXT:    .cfi_offset ra, -842; RV64I-NEXT:    call foo43; RV64I-NEXT:    ld ra, 8(sp) # 8-byte Folded Reload44; RV64I-NEXT:    .cfi_restore ra45; RV64I-NEXT:    addi sp, sp, 1646; RV64I-NEXT:    .cfi_def_cfa_offset 047; RV64I-NEXT:    ret48  %castptr = addrspacecast ptr %ptr to ptr addrspace(10)49  call void @foo(ptr addrspace(10) %castptr)50  ret void51}52 53declare void @foo(ptr addrspace(10))54