[mlir][LLVM] `LLVMTypeConverter`: Tighten materialization checks (#116532)
[llvm-project.git] / llvm / test / CodeGen / RISCV / pei-crash.ll
blob7778f9580cf69dfbff1b0a45bcb6f5d931afd69a
1 ; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --version 2
2 ; RUN: llc -O0 --frame-pointer=none -mtriple=riscv32 -mattr=+zcmp \
3 ; RUN:   -verify-machineinstrs < %s | FileCheck %s
4 define dso_local i64 @a() #0 {
5 ; CHECK-LABEL: a:
6 ; CHECK:       # %bb.0: # %entry
7 ; CHECK-NEXT:    addi sp, sp, -16
8 ; CHECK-NEXT:  .LBB0_1: # %entry
9 ; CHECK-NEXT:    # =>This Inner Loop Header: Depth=1
10 ; CHECK-NEXT:    rdcycleh a0
11 ; CHECK-NEXT:    sw a0, 8(sp) # 4-byte Folded Spill
12 ; CHECK-NEXT:    rdcycle a1
13 ; CHECK-NEXT:    sw a1, 12(sp) # 4-byte Folded Spill
14 ; CHECK-NEXT:    rdcycleh a1
15 ; CHECK-NEXT:    bne a0, a1, .LBB0_1
16 ; CHECK-NEXT:  # %bb.2: # %entry
17 ; CHECK-NEXT:    lw a1, 8(sp) # 4-byte Folded Reload
18 ; CHECK-NEXT:    lw a0, 12(sp) # 4-byte Folded Reload
19 ; CHECK-NEXT:    addi sp, sp, 16
20 ; CHECK-NEXT:    ret
21 entry:
22   %0 = call i64 @llvm.readcyclecounter()
23   ret i64 %0
26 declare i64 @llvm.readcyclecounter() #1
28 attributes #0 = { noinline nounwind optnone }