• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1; RUN: llc < %s -mtriple=powerpc-apple-darwin -march=ppc32 -verify-machineinstrs | FileCheck %s
2; RUN: llc < %s -mtriple=powerpc-apple-darwin -march=ppc64 -verify-machineinstrs | FileCheck %s
3; RUN: llc < %s -mtriple=powerpc-apple-darwin -mcpu=440 | FileCheck %s --check-prefix=PPC440
4
5; Fences
6define void @fence_acquire() {
7; CHECK-LABEL: fence_acquire
8; CHECK: lwsync
9; PPC440-NOT: lwsync
10; PPC440: msync
11  fence acquire
12  ret void
13}
14define void @fence_release() {
15; CHECK-LABEL: fence_release
16; CHECK: lwsync
17; PPC440-NOT: lwsync
18; PPC440: msync
19  fence release
20  ret void
21}
22define void @fence_seq_cst() {
23; CHECK-LABEL: fence_seq_cst
24; CHECK: sync
25; PPC440: msync
26  fence seq_cst
27  ret void
28}
29