blob: 1274173256cfeddd6c3944b449f567da58759773 [file] [log] [blame]
Hal Finkel3bca0b92011-10-17 16:01:41 +00001; RUN: llc < %s -march=ppc32 | FileCheck %s
2; RUN: llc < %s -march=ppc32 -mcpu=440 | FileCheck %s -check-prefix=BE-CHK
Hal Finkelb31d3d22011-10-17 04:03:55 +00003
4define i32 @has_a_fence(i32 %a, i32 %b) nounwind {
5entry:
6 fence acquire
7 %cond = icmp eq i32 %a, %b
8 br i1 %cond, label %IfEqual, label %IfUnequal
9
10IfEqual:
11 fence release
Hal Finkel3bca0b92011-10-17 16:01:41 +000012; CHECK: sync
13; CHECK-NOT: msync
14; BE-CHK: msync
Hal Finkelb31d3d22011-10-17 04:03:55 +000015 br label %end
16
17IfUnequal:
18 fence release
Hal Finkel3bca0b92011-10-17 16:01:41 +000019; CHECK: sync
20; CHECK-NOT: msync
21; BE-CHK: msync
Hal Finkelb31d3d22011-10-17 04:03:55 +000022 ret i32 0
23
24end:
25 ret i32 1
26}
27