Re-land [openmp] Fix warnings when building on Windows with latest MSVC or Clang...
[llvm-project.git] / llvm / test / CodeGen / RISCV / stack-protector-target.ll
blob13abde7878f3a5d865d98e4f1c72fb02da0766e6
1 ; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
3 ;; Test target-specific stack cookie location.
5 ; RUN: llc -mtriple=riscv64-fuchsia < %s | FileCheck --check-prefix=FUCHSIA-RISCV64 %s
7 define void @func() sspreq nounwind {
8 ; FUCHSIA-RISCV64-LABEL: func:
9 ; FUCHSIA-RISCV64:       # %bb.0:
10 ; FUCHSIA-RISCV64-NEXT:    addi sp, sp, -32
11 ; FUCHSIA-RISCV64-NEXT:    sd ra, 24(sp) # 8-byte Folded Spill
12 ; FUCHSIA-RISCV64-NEXT:    ld a0, -16(tp)
13 ; FUCHSIA-RISCV64-NEXT:    sd a0, 16(sp)
14 ; FUCHSIA-RISCV64-NEXT:    addi a0, sp, 12
15 ; FUCHSIA-RISCV64-NEXT:    call capture
16 ; FUCHSIA-RISCV64-NEXT:    ld a0, -16(tp)
17 ; FUCHSIA-RISCV64-NEXT:    ld a1, 16(sp)
18 ; FUCHSIA-RISCV64-NEXT:    bne a0, a1, .LBB0_2
19 ; FUCHSIA-RISCV64-NEXT:  # %bb.1: # %SP_return
20 ; FUCHSIA-RISCV64-NEXT:    ld ra, 24(sp) # 8-byte Folded Reload
21 ; FUCHSIA-RISCV64-NEXT:    addi sp, sp, 32
22 ; FUCHSIA-RISCV64-NEXT:    ret
23 ; FUCHSIA-RISCV64-NEXT:  .LBB0_2: # %CallStackCheckFailBlk
24 ; FUCHSIA-RISCV64-NEXT:    call __stack_chk_fail
25   %1 = alloca i32, align 4
26   call void @capture(ptr %1)
27   ret void
30 declare void @capture(ptr)