Home | History | Annotate | Download | only in ARM
      1 ; RUN: llc -mtriple armv7-eabi -o - %s | FileCheck %s
      2 ; RUN: llc -mtriple thumbv6m-eabi -o - %s | FileCheck %s
      3 ; RUN: llc -mtriple thumbv7-eabi -o - %s | FileCheck %s
      4 
      5 declare void @llvm.arm.hint(i32) nounwind
      6 
      7 define void @hint_nop() {
      8 entry:
      9   tail call void @llvm.arm.hint(i32 0) nounwind
     10   ret void
     11 }
     12 
     13 ; CHECK-LABEL: hint_nop
     14 ; CHECK: nop
     15 
     16 define void @hint_yield() {
     17 entry:
     18   tail call void @llvm.arm.hint(i32 1) nounwind
     19   ret void
     20 }
     21 
     22 ; CHECK-LABEL: hint_yield
     23 ; CHECK: yield
     24 
     25 define void @hint_wfe() {
     26 entry:
     27   tail call void @llvm.arm.hint(i32 2) nounwind
     28   ret void
     29 }
     30 
     31 ; CHECK-LABEL: hint_wfe
     32 ; CHECK: wfe
     33 
     34 define void @hint_wfi() {
     35 entry:
     36   tail call void @llvm.arm.hint(i32 3) nounwind
     37   ret void
     38 }
     39 
     40 ; CHECK-LABEL: hint_wfi
     41 ; CHECK: wfi
     42 
     43 define void @hint_sev() {
     44 entry:
     45   tail call void @llvm.arm.hint(i32 4) nounwind
     46   ret void
     47 }
     48 
     49 ; CHECK-LABEL: hint_sev
     50 ; CHECK: sev
     51 
     52 define void @hint_sevl() {
     53 entry:
     54   tail call void @llvm.arm.hint(i32 5) nounwind
     55   ret void
     56 }
     57 
     58 ; CHECK-LABEL: hint_sevl
     59 ; CHECK: hint #5
     60 
     61 define void @hint_undefined() {
     62 entry:
     63   tail call void @llvm.arm.hint(i32 8) nounwind
     64   ret void
     65 }
     66 
     67 ; CHECK-LABEL: hint_undefined
     68 ; CHECK: hint #8
     69 
     70