| ; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py | |
| ; RUN: llc --mtriple=mipsel-linux-gnu -mcpu=mips1 < %s | FileCheck %s --check-prefix=MIPS1 | |
| ; RUN: llc --mtriple=mipsel-linux-gnu -mcpu=mips2 < %s | FileCheck %s --check-prefix=MIPS2 | |
| define void @fence_singlethread() { | |
| ; MIPS1-LABEL: fence_singlethread: | |
| ; MIPS1: # %bb.0: | |
| ; MIPS1-NEXT: #MEMBARRIER | |
| ; MIPS1-NEXT: jr $ra | |
| ; MIPS1-NEXT: nop | |
| ; MIPS2-LABEL: fence_singlethread: | |
| ; MIPS2: # %bb.0: | |
| ; MIPS2-NEXT: #MEMBARRIER | |
| ; MIPS2-NEXT: jr $ra | |
| ; MIPS2-NEXT: nop | |
| fence syncscope("singlethread") seq_cst | |
| ret void | |
| } | |
| define void @fence() { | |
| ; MIPS1-LABEL: fence: | |
| ; MIPS1: # %bb.0: | |
| ; MIPS1-NEXT: #MEMBARRIER | |
| ; MIPS1-NEXT: jr $ra | |
| ; MIPS1-NEXT: nop | |
| ; MIPS2-LABEL: fence: | |
| ; MIPS2: # %bb.0: | |
| ; MIPS2-NEXT: sync | |
| ; MIPS2-NEXT: jr $ra | |
| ; MIPS2-NEXT: nop | |
| fence seq_cst | |
| ret void | |
| } |