brintos

brintos / llvm-project-archived public Read only

0
0
Text · 737 B · 074d658 Raw
24 lines · plain
1; RUN: llc -mattr=+sme -stop-after=finalize-isel < %s | FileCheck %s2 3target triple = "aarch64"4 5; Check that we don't define FPMR for 'smstart za' and 'smstop za'6define void @smstart_za() "aarch64_new_za" nounwind {7  ; CHECK-LABEL:    name: smstart_za8  ; CHECK-NOT:        implicit-def {{[^,]*}}$fpmr9  ret void10}11 12; Check that we do define FPMR for 'smstart sm' and 'smstop sm'13define void @smstart_sm() nounwind {14  ; CHECK-LABEL: name: smstart_sm15  ; CHECK:          MSRpstatesvcrImm1 1, 1,16  ; CHECK-SAME:       implicit-def {{[^,]*}}$fpmr17  ; CHECK:          MSRpstatesvcrImm1 1, 0,18  ; CHECK-SAME:       implicit-def {{[^,]*}}$fpmr19  call void @require_sm()20  ret void21}22 23declare void @require_sm() "aarch64_pstate_sm_enabled"24