| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,41 @@ | ||
| ; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py | ||
| ; RUN: llc -mtriple=riscv32 -verify-machineinstrs < %s \ | ||
| ; RUN: | FileCheck -check-prefix=RV32I %s | ||
| ; RUN: llc -mtriple=riscv32 -mattr=+a -verify-machineinstrs < %s \ | ||
| ; RUN: | FileCheck -check-prefix=RV32I %s | ||
|
|
||
| define void @fence_acquire() nounwind { | ||
| ; RV32I-LABEL: fence_acquire: | ||
| ; RV32I: # %bb.0: | ||
| ; RV32I-NEXT: fence r, rw | ||
| ; RV32I-NEXT: ret | ||
| fence acquire | ||
| ret void | ||
| } | ||
|
|
||
| define void @fence_release() nounwind { | ||
| ; RV32I-LABEL: fence_release: | ||
| ; RV32I: # %bb.0: | ||
| ; RV32I-NEXT: fence rw, w | ||
| ; RV32I-NEXT: ret | ||
| fence release | ||
| ret void | ||
| } | ||
|
|
||
| define void @fence_acq_rel() nounwind { | ||
| ; RV32I-LABEL: fence_acq_rel: | ||
| ; RV32I: # %bb.0: | ||
| ; RV32I-NEXT: fence.tso | ||
| ; RV32I-NEXT: ret | ||
| fence acq_rel | ||
| ret void | ||
| } | ||
|
|
||
| define void @fence_seq_cst() nounwind { | ||
| ; RV32I-LABEL: fence_seq_cst: | ||
| ; RV32I: # %bb.0: | ||
| ; RV32I-NEXT: fence rw, rw | ||
| ; RV32I-NEXT: ret | ||
| fence seq_cst | ||
| ret void | ||
| } |